@charset "UTF-8";

/*---------------------------- 
	背景
----------------------------*/
.bg-fixed {
	background: url(../img/top/bg_top.webp) no-repeat;
	background-position: center top;
	background-repeat: no-repeat;
	background-size: cover;
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: -1;
}

/*---------------------------- 
	marquee-slider
----------------------------*/
.marquee-slider {
	overflow: hidden;
	width: 100%;
}

.marquee-slider__track {
	display: flex;
	gap: 10px;
	width: max-content;
	will-change: transform;
	animation: marquee-left 150s linear infinite;
}

.marquee-slider__item {
	flex: 0 0 auto;
}

.marquee-slider__item img {
	width: 100%;
	max-width: 523px;
	min-width: 294px;
	height: auto;
	border-radius: 10px;
	display: block;
}

@keyframes marquee-left {
	from { transform: translateX(0); }
	to   { transform: translateX(calc(-50% - 10px)); }
}

@media (prefers-reduced-motion: reduce) {
	.marquee-slider__track {
		animation: none;
		transform: translateX(0);
	}
}

@media screen and (max-width: 768px) {
	.marquee-slider__track {
		gap: 5px;
	}
	.marquee-slider__item img {
		max-width: 294px;
	}

}

/*---------------------------- 
	mv
----------------------------*/
.mv h1 {
	max-width: 670px;
	margin: 0 auto 60px;
}

.lead {
	font-family: var(--zenkakugothicnew);
	text-align: center;
	font-size: min(2rem, 1.563vw);
	font-weight: 500;
	padding-top: 72px;
	padding-bottom: 28px;
	line-height: 40px;
}

.lead p:first-child {
	font-size: min(2.8rem, 2.188vw);
	line-height: 25.431px;
}

@media screen and (max-width: 768px) {
	.mv h1 {
		margin: 40px auto 28px;
	}
	.lead {
		font-size: min(1.3rem, 3.467vw);
		padding-top: 38px;
		padding-bottom: 47px;
		line-height: 25px;
	}
	.lead p:first-child {
		font-size: min(1.7rem, 4.533vw);
		line-height: 25.431px;
	}

}

/*---------------------------- 
	contents
----------------------------*/
.contents {
	margin: 90px auto 0;
	padding-bottom: 8vw;
	position: relative;
}

.contents h2 {
	color: #434343;
	text-align: center;
	font-family: var(--zenkakugothicnew);
	font-size: min(2.5rem, 1.83vw);
	font-weight: 500;
	line-height: 50px;
}

.contents .inner-contents {
	max-width: 1140px;
	margin: 43px auto 0;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}

.contents .inner-contents .inner-contents-item {
	display: block;
	width: 31.3333%;
	background: #000;
	border-radius: 14px;
	color: #fff;
	margin: 0 10px 43px;
	padding: 28px 20px;
	transition: transform 0.3s ease;
}

.contents .inner-contents .inner-contents-item:hover {
	transform: translateY(-10px);
}

.contents .inner-contents .inner-contents-item.baby {
	background: linear-gradient(214deg, #FEBDAB 13.5%, #EC6B5A 94.37%);
}

.contents .inner-contents .inner-contents-item.kids {
	background: linear-gradient(221deg, #F4D668 14.28%, #E99C02 98.38%);
}

.contents .inner-contents .inner-contents-item.pool {
	background: var(--Linear, linear-gradient(198deg, #46DFF6 2.79%, #048BC5 97.89%));
}

.contents .inner-contents .inner-contents-item.pet {
	background: var(--Linear, linear-gradient(253deg, #23A8A1 3.62%, #5FDCBA 90.29%));
}

.contents .inner-contents .inner-contents-item.ski {
	background: var(--Linear, linear-gradient(143deg, #AFD6FB 20.24%, #7DA1E8 85.74%));
}

.contents .inner-contents .inner-contents-item h3 {
	margin: 0 auto;
}

.contents .inner-contents .inner-contents-item.baby h3 {
	width: 185px;
	height: 113px;
}

.contents .inner-contents .inner-contents-item.kids h3 {
	width: 198.261px;
	height: 114px;
}

.contents .inner-contents .inner-contents-item.pool h3 {
	width: 178.327px;
	height: 113px;
}

.contents .inner-contents .inner-contents-item.pet h3 {
	width: 173px;
	height: 113px;
}

.contents .inner-contents .inner-contents-item.ski h3 {
	width: 147px;
	height: 113px;
}

.contents .inner-contents .inner-contents-item .img {
	margin-top: 20px;
}

.contents .inner-contents .inner-contents-item .img img {
	border-radius: 10px;
}

.contents .inner-contents .inner-contents-item .txt {
	text-align: center;
	font-size: min(1.6rem, 1.171vw);
	font-weight: 400;
	line-height: 27px;
	margin-top: 10px;
}

.contents .inner-contents .inner-contents-item .txt02 {
	text-align: center;
	font-size: min(1.9rem, 1.391vw);
	font-weight: 600;
	line-height: 37px;
	position: relative;
}

.contents .inner-contents .inner-contents-item .txt02::after {
	content: '';
	background: url(../img/top/arrow_white.svg) no-repeat;
	background-size: 100%;
	display: block;
	width: 14px;
	height: 17px;
	position: absolute;
	top: 61%;
	right: 21%;
	transform: translate(-50%, -50%);
}

@media screen and (max-width: 768px) {
	.contents {
		width: 100%;
		overflow: hidden;
		margin-top: 50px;
	}
	.contents h2 {
		font-size: min(1.7rem, 4.533vw);
		line-height: 34px;
	}
	.contents .inner-contents {
		margin: 15px auto 0;
		padding: 0 20px;
		display: block;
	}
	.contents .inner-contents .inner-contents-item {
		width: 100%;
		border-radius: 13.421px;
		margin: 15px 0 40px;
		padding: 26px 20px;
	}
	.contents .inner-contents .inner-contents-item .txt {
		font-size: min(1.4rem, 3.733vw);
		line-height: 23.967px;
	}
	.contents .inner-contents .inner-contents-item .txt02 {
		font-size: min(1.4rem, 3.733vw);
		line-height: 28.964px;
	}
	.contents .inner-contents .inner-contents-item .txt02::after {
		right: 23%;
	}
}

/*---------------------------- 
	banner
----------------------------*/
.banner {
	background-color: #fff;
	padding: 95px 0;
}

.banner a {
	display: block;
	width: 500px;
	margin: 0 auto 50px;
}

.banner a:last-child {
	margin-bottom: 0;
}

@media screen and (max-width: 768px) {
	.banner {
		margin-top: 80px;
		padding: 95px 40px;
	}
	.banner a {
		width: 100%;
	}
	
}


/*---------------------------- 
	movie-section
----------------------------*/
.movie-section {
	width: 100%;
	padding-bottom: 120px;
}

.movie-wrap {
	width: 827px;
	max-width: 100%;
	height: 488px;
	margin: 0 auto;
}

.movie-wrap iframe {
	width: 100%;
	height: 100%;
	display: block;
}

@media screen and (max-width: 768px) {
	.movie-section {
		padding-bottom: 60px;
	}
	.movie-wrap {
		width: 100%;
		height: auto;
		aspect-ratio: 827 / 488;
	}
}


/*---------------------------- 
	travel-purpose
----------------------------*/
.travel-purpose {
	background: #fff;
	padding: 50px 0 62px;
	overflow: hidden;
}

.travel-purpose h2 {
	color: #434343;
	text-align: center;
	font-family: var(--zenkakugothicnew);
	font-size: min(2.5rem, 1.83vw);
	font-weight: 500;
	line-height: 41.4px;
	margin-bottom: 43px;
}

.travel-purpose-slider__track {
	width: 100%;
	margin: 0 auto;
}

.travel-purpose-slider__item {
	display: block;
	text-decoration: none;
	margin: 0 15px;
}

.travel-purpose-slider__item picture,
.travel-purpose-slider__item img {
	display: block;
	width: 100%;
}

.travel-purpose-slider__item figcaption {
	color: #434343;
	text-align: center;
	font-family: var(--zenkakugothicnew);
	font-size: min(1.8rem, 1.318vw);
	font-weight: 400;
	line-height: 29px;
	margin-top: 18px;
}

/* 矢印 */
.travel-purpose-slider__arrows {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 40px;
	margin-top: 35px;
}

.travel-purpose-slider__arrow {
	width: 22px;
	height: 22px;
	padding: 0;
	border: none;
	background: none;
	cursor: pointer;
}

.travel-purpose-slider__arrow img {
	display: block;
	width: 100%;
	height: auto;
}

/* slick調整 */
.travel-purpose .slick-list {
	overflow: visible;
}

.travel-purpose .slick-slide {
	height: auto;
}

.travel-purpose .slick-slide > div {
	height: 100%;
}

@media screen and (max-width: 768px) {
	.travel-purpose h2 {
		font-size: min(1.7rem, 4.533vw);
		line-height: 26.427px;
		margin-bottom: 26px;
	}
	.travel-purpose {
		padding: 40px 0;
	}
	.travel-purpose__title {
		font-size: 2.4rem;
		margin-bottom: 30px;
	}
	.travel-purpose-slider__item {
		margin: 0 8px;
	}
	.travel-purpose-slider__item figcaption {
		font-size: min(1.2rem, 3.2vw);
		line-height: 20px;
		margin-top: 12px;
	}
	.travel-purpose-slider__arrow {
		width: 22px;
		height: 22px;
	}
	.travel-purpose-slider__arrows {
		gap: 80px;
		margin-top: 20px;
	}
}
