@charset "utf-8";

.pmain {
	background: url('../common/img/index/banner-product.jpg') center top/cover no-repeat;
}
.localnav-item:nth-child(3){
	display: none;
}
/*============================ #lead ============================*/
.lcl-lead {
	padding: 40px 0 95px;
	position: relative;
}
/* ---------------------- option ---- */
.lcl-lead-in {
	align-items: flex-start;
	z-index: 2;
	padding-bottom: 60px;
}
.lcl-lead-item {
	width: 100%;
	position: relative;
}
.lcl-lead-item:not(:last-child) {
	margin-bottom: 105px;
}
/* ---------------------- option ---- */
.lcl-lead-item .block__ttlen {
	top: -80px;
	position: relative;
	z-index: 2;
}
.lcl-lead-mainttl {
	font-size: 30px;
	letter-spacing: 0.05em;
	line-height: 1.5;
	color: #da261d;
	padding: 0;
	font-weight: bold;
	margin-bottom: 20px;
	position: relative;
	z-index: 2;
}
.lcl-lead-mainttl__sub {
	display: block;
	font-size: 40px;
}
.lcl-lead-txt {
	position: relative;
	z-index: 2;
	max-width: 1000px;
}
.lcl-lead-img {
	margin-bottom: 15px;
}
.lcl-lead__img {
	width: calc(100% - 200px);
	display: block;
	position: absolute;
	top: -140px;
	right: 0;
	margin: auto;
}

.lcl-lead-item:nth-child(2n + 1) .lcl-lead__img {
	right: 0;
	background: url(../img/lead/img_01.jpg) center /cover no-repeat;
	height: 360px;
}

.lcl-lead-item:nth-child(2n) .lcl-lead__img {
	top: -80px;
	right: 200px;
	background: url(../img/lead/img_02.jpg) center /cover no-repeat;
	height: 360px;
}

/* ---------------------- option ---- */
@media screen and (min-width: 768px) {
	.lcl-lead-item:nth-child(2n + 1)::before {
		left: 24%;
	}

	/* ---------------------- option ---- */
	.lcl-lead-item:nth-child(2n) {
		text-align: right;
	}
	.lcl-lead-item:nth-child(2n) .lcl-lead-mainttl {
		text-align: right;
	}
	.lcl-lead-item:nth-child(2n)::before {
		right: -50px;
	}
	.lcl-lead-item:nth-child(2n) .block__ttlen {
		text-align: right;
		top: 100px;
		margin-bottom: 100px;
		right: -0.6em;
		left: auto;
	}

	.lcl-lead-item:nth-child(2n) .lcl-lead-txt {
		display: inline-block;
		text-align: left;
	}
}
/* ---------------------- option ---- */
.lcl-lead-nav {
	justify-content: center;
	margin-bottom: 45px;
}
.lcl-lead-nav .linkbtn:not(:last-child) {
	margin-right: 20px;
}
#infinite_slide {
	height: 13.35vw;
	overflow: hidden;
}
/*============================ #lineup ============================*/
.lcl-lineup {
	background-color: rgba(31,90,178,.1);
	padding: 55px 0 120px;
	position: relative;
}
.text-anim {
	position: absolute;
	z-index: 0;
	top: -80px;
	left: calc(30vw - 300px);
	font-size: 250px;
	color: #da261d;
	font-weight: 700;
	opacity: .15;
}
.text-anim2 {
	position: absolute;
	z-index: 0;
	top: 1050px;
	right: calc(30vw - 500px);
	font-size: 250px;
	color: #da261d;
	font-weight: 700;
	opacity: .15;
}
.text-anim3 {
	position: absolute;
	z-index: 0;
	top: 2300px;
	left: calc(30vw - 500px);
	font-size: 250px;
	color: #da261d;
	font-weight: 700;
	opacity: .15;
}
.lcl-lineup-in {
	margin-top: 80px;
}
/* ---------------------- option ---- */
.lcl-lineup-nav {
	position: absolute;
	top: 170px;
	left: 0;
	width: calc(100% - 200px);
	background-color: #fff;
	margin-left: auto;
	margin-right: auto;
	right: 0;
}
@media screen and (min-width: 768px) {
	.lcl-lineup-nav {
		max-width: 1500px;
		min-width: 1000px;
	}
}
.lcl-lineup-nav.stay {
	position: fixed;
	top: 80px;
	z-index: 10;
}

.lcl-lineup-nav.stop {
	position: absolute;
	top: auto;
	bottom: 0px;
}
.lcl-lineup-nav-item {
	width: calc((100% - 3px)/4);
	height: 50px;

	background-color: #313131;
	background-image: linear-gradient(45deg, #fff 50%, transparent 50%);
	background-position: 100%;
	background-size: 400%;
	-webkit-transition: background 0.6s ease;
	transition: background 0.6s ease;
}
@media screen and (min-width: 768px) {
	.lcl-lineup-nav-item:nth-child(-n + 4) {
		margin-bottom: 1px;
	}

	.lcl-lineup-nav-item:hover {
		background-position: 0;
		color: #333;
	}
	.lcl-lineup-nav-item:hover .lcl-lineup-nav__link {
		color: #333;
	}
	.lcl-rowslide {
		height: 13.35vw;
		overflow: hidden;
	}
}
.lcl-lineup-nav__link {
	display: flex;
	width: 100%;
	height: 100%;
	color: #fff;
	font-size: 14px;
	letter-spacing: 0.05em;
	line-height: 1.2;
	align-items: center;
	justify-content: flex-start;
	padding: 0 10%;
	font-weight: bold;
	transition: 0.5s ease;
}
.lcl-lineup-nav__num {
	font-size: 15px;
	color: #52d3fd;
	display: inline-block;
	margin-right: 5%;
}
.lcl-lineup-list {
}
.lcl-lineup-item {
	position: relative;
	padding-top: 100px;
}
.lcl-lineup-item:not(:last-child) {
	margin-bottom: 80px;
}
.lcl-lineup-slide {
	width: calc(100% - 600px);
	background-color: #fff;
	transform: translateY(-60px);
	position: relative;
	z-index: 2;
	box-shadow: 0 2rem 3rem 0 rgba(0, 0, 0, 0.3);
}
.lcl-lineup-txt {
	width: 700px;
	background-color: #444444;
	color: #fff;
	position: absolute;
	bottom: 0;
}
.lcl-lineup__ttl {
	font-size: 26px;
	letter-spacing: 0.05em;
	line-height: 1.1;
	font-weight: bold;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	margin-bottom: 25px;
}
.lcl-lineup__num {
	width: 50px;
	height: 50px;
	background-color: #fff;
	border-radius: 50%;
	font-size: 18px;
	letter-spacing: 0.08em;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #da261d;
	margin-right: 15px;
}
.lcl-lineup__ttl-in {
	position: relative;
	display: inline-block;
}
.lcl-lineup__ttl-in::after {
	content: '';
	width: 100%;
	height: 11px;
	background-color: #00a0e9;
	position: absolute;
	left: 0;
	bottom: -3px;
	z-index: 0;
}
.lcl-lineup__uline {
	position: relative;
	z-index: 1;
}
.lcl-lineup__txt {
	margin-bottom: 40px;
}
/* ---------------------- option ---- */
.slick-dots {
	position: relative;
	margin: auto;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	height: 50px;
	padding: 0 25px;
}
.slick-dots li {
	color: #d2d2d2;
	font-size: 12px;
	margin: 0 7px;
	cursor: pointer;
	transition: 0.3s ease;
}
.slick-dots li:hover,
.slick-dots li.slick-active {
	color: #da261d;
}

@media screen and (min-width: 768px) {
	/* ---------------------- option ---- */
	.lcl-lineup-txt {
		min-height: 360px;
	}
	.lcl-lineup-item {
		max-width: 1300px;
		width: 100%;
		margin-left: auto;
		margin-right: auto;
	}
	.lcl-lineup-item:nth-child(2n + 1) {
		margin-left: 0;
	}
	.lcl-lineup-item:nth-child(2n + 1) .lcl-lineup-txt {
		left: calc(100% - 700px);
		padding: 50px 50px 50px 150px;
	}
	/* ---------------------- option ---- */
	.lcl-lineup-item:nth-child(2n) {
		margin-right: 0;
	}
	.lcl-lineup-item:nth-child(2n) .lcl-lineup-txt {
		right: calc(100% - 700px);
		padding: 50px 150px 50px 50px;
	}
	.lcl-lineup-item:nth-child(2n) .lcl-lineup-slide {
		margin-left: auto;
	}
}
/*============================ #btmwrp ============================*/
.lcl-btmwrp {
	position: relative;
}
.lcl-btmwrp:before {
	content: '';
	width: 100%;
	height: 100%;
	background: url(../img/movie/bg_01.jpg) center /cover no-repeat fixed;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	left: 0;
	margin: auto;
}

/*============================ #movie ============================*/
.lcl-movie {
	width: 100%;
}

.lcl-movie-in {
	padding: 50px 0 65px;
}

.lcl-moviebox {
	width: 800px;
	margin-left: auto;
	margin-right: auto;
	position: relative;
}
.lcl-moviebox-in {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}

.lcl-moviebox iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
}
/*============================ #merit ============================*/
.lcl-merit {
	width: 100%;
	background: #fff url(../../../common/img/bg/bg_wh.jpg) center /cover no-repeat;
	padding: 70px 0 80px;
	position: relative;
}
.lcl-merit-in.block__in {
}
.lcl-meritlist {
	margin-bottom: 60px;
}
.lcl-merit-item {
	width: 150px;
	height: 150px;
	border: 2px solid #da261d;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	font-size: 18px;
	font-weight: bold;
	color: #da261d;
	background-color: #fff;
}
.lcl-merit__num {
	width: 50px;
	height: 50px;
	background-color: #da261d;
	border-radius: 50%;
	position: absolute;
	top: 0;
	left: 0;
	margin: auto;
	color: #fff;
	font-size: 18px;
	letter-spacing: 0.05em;
	font-weight: bold;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
}
/*============================ #cocis ============================*/
.lcl-cocis {
	width: 100%;
	background: #fff;
	padding: 45px 0 35px;
	box-shadow: 0 1rem 3rem -1rem rgba(0, 0, 0, 0.3);
	border-radius: 10px;
}
.lcl-cocis__txt {
	margin-bottom: 30px;
}
.lcl-cocis__logo {
	width: 738px;
	height: 112px;
	background: url(../img/merit/img_01.png) center /100% no-repeat;
	display: block;
	margin-left: auto;
	margin-right: auto;
}
/*============================ #achievement ============================*/
.lcl-achievement {
	width: 100%;
	position: relative;
	background: #e8eef7 url(../../../common/img/contact/bg_01.png) right bottom /1300px 480px no-repeat;
	padding: 60px 0 50px;
}

.lcl-achievement-img {
	background-color: #fff;
	padding: 10px;
	box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.1);
	width: 500px;
}
.js-achievement-slide .slick-dots {
	position: absolute;
	top: -65px;
	justify-content: center;
	width: 100%;
}
.lcl-achievement-txt {
	padding: 0 60px;
	width: calc(100% - 500px);
	margin-bottom: 20px;
}
.lcl-achievement__txt {
	margin-bottom: 60px;
}

/*============================ #showroom ============================*/
.lcl-showroom {
	padding: 60px 0 50px;
	color: #fff;
}
.lcl-showroom .lcl-achievement-in {
	flex-direction: row-reverse;
}

@media screen and (min-width: 768px) {
	.contactbox {
		padding-top: 100px;
	}
}

@media screen and (max-width: 767px) {
	/* ---------------------------------------------------------------- SP ---- */
	.lcl-lead {
		padding: 30px 20px 40px;
	}
	.lcl-lead-in {
		padding-bottom: 25px;
	}
	.lcl-lead-item::before {
		width: 52%;
		height: 290px;
		top: -20px;
	}
	.lcl-lead-item:not(:last-child) {
		margin-bottom: 65px;
	}
	.lcl-lead-item .block__ttlen {
		top: -14vw;
		position: absolute;
	}
	.lcl-lead__img {
		width: 100%;
		position: relative;
		top: 0;
		right: 0;
		margin: 0 auto 15px;
	}
	.lcl-lead-mainttl {
		font-size: 4.6vw;
		padding: 0;
		margin-bottom: 13px;
		line-height: 1.8;
	}
	.lcl-lead-mainttl__sub {
		font-size: 5.8vw;
	}
	/* ---------------------- option ---- */
	.lcl-lead-item .block__ttlen{
		left: initial;
	}
	.lcl-lead-item:nth-child(2n + 1)::before {
		left: -15px;
	}
	/* ---------------------- option ---- */
	.lcl-lead-item:nth-child(2n)::before {
		right: -15px;
	}
	.lcl-lead-item:nth-child(2n) .block__ttlen {
		right: initial;
	}
	/* ---------------------- option ---- */
	.lcl-lead-nav {
		margin-bottom: 25px;
	}
	.lcl-lead-nav .linkbtn:not(:last-child) {
		margin: 0 auto 10px;
	}
	.lcl-lead-item:nth-child(2n + 1) .lcl-lead__img {
		height: 41.4vw;
	}
	.lcl-lead-item:nth-child(2n) .lcl-lead__img {
		top: initial;
		right: initial;
		height: 41.4vw;
	}

	#infinite_slide {
		height: 22.35vw;
	}
	/*============================ #lineup ============================*/
	.lcl-lineup {
		padding: 25px 0 0;
	}

	.text-anim,
	.text-anim2,
	.text-anim3 {
		display: none;
	}
	.lcl-lineup-in{
		margin-top: 50px;
	}
	.lcl-lineup-item{
		padding-top: 0;
	}
	/* ---------------------- option ---- */
	.lcl-lineup-nav {
		position: initial;
		top: initial;
		margin-bottom: 40px;
		width: calc(100% - 30px);
		margin: 0 auto;
		align-items: stretch;
		background-color: transparent;
	}
	.lcl-lineup-nav-item {
		width: 49.5%;
		height: auto;
		margin-bottom: 2px;
		align-items: stretch;
		text-align: center;
		padding: 10px;
	}
	.lcl-lineup-nav__link {
		font-size: 12px;
		padding: 0;
		display: block;
	}
	.lcl-lineup-nav__num {
		font-size: 12px;
		margin-right: 0;
		display: block;
		margin-bottom: 5px;
	}
	/* ---------------------- option ---- */
	.lcl-lineup-slide {
		width: 90%;
		height: 60vw;
		overflow: hidden;
		transform: translateY(0);
		box-shadow: 0 0.5rem 2rem 0 rgba(0, 0, 0, 0.3);
	}

	.lcl-lineup-item:not(:last-child) {
		margin-bottom: 0;
	}
	.lcl-lineup-txt {
		width: 95%;
		height: auto;
		position: relative;
		top: 0;
		transform: translateY(-50px);
	}
	.lcl-lineup__ttl {
		font-size: 5vw;
		margin-bottom: 15px;
	}
	.lcl-lineup__num {
		width: 30px;
		height: 30px;
		font-size: 12px;
		margin-right: 10px;
	}
	.lcl-lineup__txt {
		margin-bottom: 25px;
	}
	.lcl-lineup-btn {
		display: block;
	}
	.lcl-lineup-btn .linkbtn:not(:last-child) {
		margin-bottom: 10px;
	}
	/* ---------------------- option ---- */
	.slick-dots {
		height: 25px;
		padding: 0 10px;
	}
	.slick-dots li {
		font-size: 10px;
		margin: 0 5px;
	}

	/* ---------------------- option ---- */
	.lcl-lineup-item:nth-child(2n + 1) .lcl-lineup-txt {
		margin-left: auto;
		right: 0;
		padding: 70px 25px 30px 25px;
	}
	/* ---------------------- option ---- */
	.lcl-lineup-item:nth-child(2n) .lcl-lineup-txt {
		margin-right: auto;
		left: 0;
		padding: 70px 25px 30px 25px;
	}
	/*.lcl-lineup-item:not(:nth-child(2n)) .lcl-lineup-slide{
		left: 15px;
	}*/
	.lcl-lineup-item:nth-child(2n) .lcl-lineup-slide {
		margin-left: auto;
		/*right: 15px;*/
	}
	/*============================ #moviebox ============================*/
	.lcl-moviebox {
		width: 100%;
		margin: 0 auto 25px;
		padding: 0px 20px 0px;
	}
	.lcl-movie-in{
		padding: 30px 0px 35px;
	}
	/*============================ #merit ============================*/
	.lcl-merit {
		padding: 35px 20px;
	}
	.lcl-meritlist {
		margin-bottom: 20px;
	}
	.lcl-merit-item {
		width: 28vw;
		height: 28vw;
		border: 1px solid #da261d;
		font-size: 12px;
		margin-bottom: 15px;
		letter-spacing: 0;
	}
	.lcl-merit__num {
		width: 35px;
		height: 35px;
		font-size: 12px;
	}

	/*============================ #cocis ============================*/
	.lcl-cocis {
		padding: 25px 25px 20px;
		box-shadow: 0 1rem 2rem -1rem rgba(0, 0, 0, 0.3);
		border-radius: 10px;
		overflow: hidden;
	}
	.lcl-cocis__txt {
		margin-bottom: 15px;
	}
	.lcl-cocis__logo {
		width: 100%;
		height: 0;
		padding-top: 14.213198%;
	}
	/*============================ #achievement ============================*/
	.lcl-achievement {
		padding: 30px 0 20px;
		background: #e8eef7 url(../img/contact/bg_01.png) right bottom /1300px 480px no-repeat;
	}
	.js-achievement-slide .slick-dots {
		top: auto;
	}
	.lcl-achievement-img,
	.lcl-achievement-txt {
		width: 100%;
	}
	.lcl-achievement-img {
		padding: 5px;
	}
	.js-achievement-slide {
		height: 62vw;
		overflow: hidden;
	}
	.lcl-achievement-txt {
		padding: 20px 0;
		margin-bottom: 0px;
	}
	.lcl-achievement__txt {
		margin-bottom: 30px;
	}
	.lcl-achievement-txt .linkbtn {
		margin-left: auto;
		margin-right: auto;
	}
	/*============================ #header ============================*/
	.lcl-showroom {
		padding: 30px 0 20px;
	}
}
