/**
 * ----------------------------------------------------------------------------
 * Main Visual
 * ----------------------------------------------------------------------------
 */

.slider {
	display: none;
}

.slider img {
	display: none;
}

.slider.slick-initialized {
	display: block;
	/*slick-initializedが付与されたら表示*/
}

.slider.slick-initialized img {
	display: block;
	/*slick-initializedが付与されたら表示*/
}

.mv {
	position: relative;
	width: 100%;
}

@media (max-width: 768px) {
	.mv {
		background: url(../img/product/mv-sp.jpg) center/cover no-repeat;
		height: 250px;
	}
}

@media (min-width: 769px) {
	.mv {
		background: url(../img/product/mv.jpg) center/cover no-repeat;
		height: 500px;
	}
}

/**
 * ----------------------------------------------------------------------------
 * Introduction
 * ----------------------------------------------------------------------------
 */
@media (max-width: 768px) {
	.intro {
		margin: 40px auto 0;
		padding: 0 20px;
		width: 100%;
	}
}

@media (min-width: 769px) {
	.intro {
		margin: 50px auto 0;
		width: 660px;
	}
}

.intro-h {
	font-weight: 500;
}

@media (max-width: 768px) {
	.intro-h {
		font-size: 18px;
		line-height: 32px;
	}
}

@media (min-width: 769px) {
	.intro-h {
		font-size: 22px;
		line-height: 45px;
		text-align: center;
	}
}

@media (max-width: 768px) {
	.intro-desc {
		line-height: 32px;
		margin: 30px 0 0;
	}
}

@media (min-width: 769px) {
	.intro-desc {
		line-height: 39px;
		margin: 40px 0 0;
		text-align: center;
	}
}

/**
 * ----------------------------------------------------------------------------
 * Product
 * ----------------------------------------------------------------------------
 */
@media (max-width: 768px) {
	.product {
		background: url(../img/product/product-bg.png) right top/contain no-repeat;
		margin: 45px 0 0;
		padding: 0 20px;
		width: 100%;
	}
}

@media (min-width: 769px) {
	.product {
		background: url(../img/product/product-bg.png) center top/contain no-repeat;
		margin: 100px auto 0;
		padding: 0 calc(50% - 430px);
		width: 100%;
	}
}

.product-list {
	display: flex;
	flex-wrap: wrap;
}

@media (max-width: 768px) {
	.product-list {
		justify-content: space-between;
		margin: 40px 0 0;
	}
}

@media (min-width: 769px) {
	.product-list {
		justify-content: flex-start;
		margin: 80px 0 0;
	}
}

@media (max-width: 768px) {
	.product-list-item {
		width: calc(50vw - 30px);
	}

	.product-list-item + .product-list-item:not(:nth-child(2)) {
		margin-top: 20px;
	}
}

@media (min-width: 769px) {
	.product-list-item {
		height: 325px;
		width: 185px;
	}

	.product-list-item:nth-child(2n) {
		margin-top: 40px;
	}

	.product-list-item + .product-list-item:not(:nth-child(5n)) {
		margin-left: 40px;
	}
}

.product-list-item a {
	display: block;
	height: 100%;
	position: relative;
	width: 100%;
}

.product-list-item a:hover {
	opacity: 1;
}

@media (max-width: 768px) {
	.product-list-item-img {
		height: calc((50vw - 30px) / 155 * 120);
		object-fit: cover;
		object-position: center;
		font-family: "object-fit: cover; object-position: center;";
		width: calc(50vw - 30px);
	}
}

.product-list-item-title {
	align-items: center;
	background: rgba(43, 170, 226, 0.7);
	bottom: 0;
	color: #fff;
	display: flex;
	font-weight: 700;
	justify-content: center;
	left: 0;
	letter-spacing: .03em;
	line-height: 1.2;
	text-align: center;
	position: absolute;
	transition: height .2s ease;
	width: 100%;
}

@media (max-width: 768px) {
	.product-list-item-title {
		font-size: 13px;
		height: 50%;
	}
}

@media (min-width: 769px) {
	.product-list-item-title {
		font-size: 15px;
		height: 66px;
	}
}

@media (min-width: 769px) {
	.product-list-item:hover .product-list-item-title {
		height: 100%;
	}
}

/**
 * ----------------------------------------------------------------------------
 * Slide
 * ----------------------------------------------------------------------------
 */
.slide-container {
	position: relative;
}

@media (max-width: 768px) {
	.slide-container {
		height: 530px;
		margin: 50px 0;
		width: 100%;
	}
}

@media (min-width: 769px) {
	.slide-container {
		height: 500px;
		margin: 100px auto;
		width: 860px;
	}
}

.slide {
	left: 0;
	position: absolute;
	top: 0;
	transition: opacity .3s ease;
}

@media (max-width: 768px) {
	.slide {
		height: 530px;
		width: 100%;
	}
}

@media (min-width: 769px) {
	.slide {
		height: 500px;
		width: 860px;
	}
}

.slide-title {
	align-items: center;
	background: #333;
	display: flex;
	flex-direction: column;
	justify-content: center;
	position: absolute;
	z-index: 3;
}

@media (max-width: 768px) {
	.slide-title {
		height: 180px;
		left: 0;
		margin: auto;
		right: 0;
		top: 0;
		width: 180px;
	}
}

@media (min-width: 769px) {
	.slide-title {
		height: 260px;
		left: 0;
		top: 0;
		width: 260px;
	}
}

.slide-title-number {
	color: #2baae2;
	font-size: 30px;
	font-weight: 900;
}

.slide-title-text {
	color: #fff;
	font-weight: 700;
	letter-spacing: .1em;
	text-align: center;
}

@media (max-width: 768px) {
	.slide-title-text {
		font-size: 16px;
		line-height: 1.4;
		margin: 16px 0 0;
		letter-spacing: 0.05em;
	}
}

@media (min-width: 769px) {
	.slide-title-text {
		font-size: 20px;
		line-height: 35px;
		margin: 20px 0 0;
	}
}

.slide-slider {
	bottom: 0;
	position: absolute;
	z-index: 2;
}

@media (max-width: 768px) {
	.slide-slider {
		height: 420px;
		left: 0;
		margin: auto;
		right: 0;
		width: calc(100% - 40px);
	}
}

@media (min-width: 769px) {
	.slide-slider {
		height: 430px;
		right: 0;
		width: 680px;
	}
}

.slide-slider-item {
	height: 100%;
	width: 100%;
}

.slide-slider-item img {
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
	transform: scale(0.97);
}

@media (max-width: 768px) {
	.slide-slider-item img {
		height: 420px;
		object-fit: cover;
		object-position: center;
		font-family: "object-fit: cover; object-position: center;";
		width: 100%;
	}
}

@media (min-width: 769px) {
	.slide-slider-item img {
		height: 100%;
		width: 100%;
	}
}

.slide-slider .slick-dots {
	bottom: -40px;
	text-align: right;
}

.slide-slider .slick-dots li {
	margin: 0 2px;
}

.slide-slider .slick-dots li button {
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: #1d187a;
	opacity: .5;
	padding: 0;
}

.slide-slider .slick-dots li button::before {
	content: none;
}

.slide-slider .slick-dots li.slick-active button {
	opacity: 1;
}

.slide::after {
	background: #65bde4;
	content: "";
	position: absolute;
	z-index: 1;
}

@media (max-width: 768px) {
	.slide::after {
		height: 480px;
		left: 0;
		top: 60px;
		width: 85%;
	}
}

@media (min-width: 769px) {
	.slide::after {
		height: 390px;
		left: 50px;
		top: 40px;
		width: 730px;
	}
}

@media (max-width: 768px) {
	.slide-nav {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		margin: 80px auto 120px;
		width: calc(100% - 40px);
	}
}

@media (min-width: 769px) {
	.slide-nav {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		margin: 80px auto 120px;
		width: 860px;
	}
}

.slide-nav-item {
	height: 60px;
}

@media (max-width: 768px) {
	.slide-nav-item {
		margin: 0 0 20px;
		width: calc(50% - 10px);
	}
}

@media (min-width: 769px) {
	.slide-nav-item {
		margin: 0 0 20px;
		width: 200px;
	}

	.slide-nav-item + .slide-nav-item:not(:nth-child(5n)) {
		margin-left: 20px;
	}
}

.slide-nav-item a {
	align-items: center;
	border: 1px solid #2baae2;
	color: #2baae2;
	display: flex;
	font-weight: 700;
	height: 100%;
	justify-content: center;
	letter-spacing: .05em;
	transition: all .2s ease;
	width: 100%;
}

@media (max-width: 768px) {
	.slide-nav-item a {
		font-size: 12px;
		line-height: 1.2;
	}
}

@media (min-width: 769px) {
	.slide-nav-item a {
		font-size: 14px;
		line-height: 1.4;
	}
}

.slide-nav-item a.current {
	background: #333;
	border: 1px solid #333;
	color: #fff;
}

/*# sourceMappingURL=product.css.map */
