@charset "utf-8";
/* CSS Document */
.pc-only {
	display: none !important;
}
html {
	font-size: 62.5%;
}
body {
	font-size: 1.6rem;
	font-family: YakuHanJP_Noto, 'Noto Sans JP', "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "MS Pゴシック", sans-serif;
	color: #333;
	line-height: 1.8 !important;
	font-weight: 500;
}
p {
	line-height: 1.8;
	font-feature-settings: "palt";
}
.inner {
	width: 100%;
	padding: 0 4%;
}
img {
	max-width: 100%;
}
.cr_fade {
	opacity: 0;
	transform: translate(0, 5rem);
	transition: 1s cubic-bezier(0,.53,.68,.99);
}
.cr_fade.active {
	opacity: 1;
	transform: translate(0, 0);
}
/*----------------------------------------------------------------------------------------------------------------*/
.cruise {
	padding: 55px 0 0 0;
}
.cruise-mv {
	position: relative;
	 overflow: hidden;
}
.cruise-mv img {
  width: 100%;
}
.cruise-cta {
	background-color: #f66e3e;
	padding: 2rem 0 3rem;
	position: relative;
}
.top-wave {
	position: absolute;
	bottom: -0.1rem;
	left: 0;
}
.bot-wave {
	margin: -.1rem 0 0;
}
.bot-wave .wave-item img {
	transform: rotate(180deg);
}
@keyframes infinity-scroll-left {
from {
  transform: translateX(0);
}
  to {
  transform: translateX(-100%);
}
}
@keyframes infinity-scroll-right {
from {
  transform: translateX(-100%);
}
  to {
  transform: translateX(0%);
}
}
.scroll-infinity_wrap {
  display: flex;
  overflow: hidden;
}
.top-wave .wave-wrap {
	animation: infinity-scroll-left 20s infinite linear 0.5s both;
}
.bot-wave .wave-wrap {
	animation: infinity-scroll-right 20s infinite linear 0.5s both;
}
.wave-item {
	 width: 100vw;
}
.wave-wrap img {
  	width: 100%;
  	display: block;
}
.cruise-cta h2 {
	padding: 0 1rem 1rem;
}
.cruise-cta a.cta-btn {
	background-color: #fff;
	border: .2rem solid #4a6ccc;
	color: #f66e3e;
	font-size: 1.6rem;
	display: block;
	padding: 1.7rem;
	border-radius: 1rem;
	position: relative;
	filter: drop-shadow(0 .3rem 0 rgba(74,108,204,1));
}
.cruise-cta a.cta-btn span {
	font-size: 1.9rem;
}
.cruise-cta a.cta-btn:before {
	position: absolute;
	content: '';
	background-image: url(../img/cruise/cta-handle.svg);
	background-repeat: no-repeat;
	background-size: contain;
	top: 50%;
	right: 1rem;
	transform: translateY(-50%);
	width: 2.7rem;
	height: 3rem;
}
/*----------------------------------------------------------------------------------------------------------------*/
.cruise-disney {
	padding: 3rem 0 0;
}
.cruise-disney .inner {
		padding: 0 4%;
}
/*----------------------------------------------------------------------------------------------------------------*/
/*----------------------------------------------------------------------------------------------------------------*/
.cruise-works {
	padding: 5rem 0 0;
}
.cruise h2.title {
	padding: 0 0 2rem;
}
.cruise-works h2.title {
	padding: 4rem 0 2rem;
}
.cruise-works ul li:not(:last-child) {
	padding: 0 0 2.5rem;
}
/*----------------------------------------------------------------------------------------------------------------*/
.cruise-class {
	padding: 5rem 0 0;
}
.cruise-class h3 {
	width: 71.7%;
	margin: 0 auto;
}
.cruise-class h4 {
	width: 86.7%;
	margin: 2rem auto;
}
.cruise-class ul li {
	padding: 0 0 2.5rem;
}
/*----------------------------------------------------------------------------------------------------------------*/
.cruise-qualification {
	padding: 5rem 0 0;
}
.cruise-qualification h3 {
	padding: 0 0 2rem;
}
/*----------------------------------------------------------------------------------------------------------------*/
.cruise-outlook {
	padding: 5rem 0 0;
}
.cruise-outlook h2 {
	padding: 0 0 3rem;
}
/*----------------------------------------------------------------------------------------------------------------*/
.cruise-record {
	padding: 5rem 0 0;
}
.cruise-record ul li:first-child {
	padding: 0 0 2rem;
}
/*----------------------------------------------------------------------------------------------------------------*/
.cruise-voice {
	padding: 5rem 0 0;
}
/*----------------------------------------------------------------------------------------------------------------*/
.cruise-room {
	padding: 5rem 0 0 0;
}
.cruise-room ul li:not(:last-child) {
	padding: 0 0 2.5rem;
}


/*----------------------------------------------------------------------------------------------------------------*/
/*----------------------------------------------------------------------------------------------------------------*/
/*----------------------------------------------タブレット／ブレイクポイント-------------------------------------------*/
/*----------------------------------------------------------------------------------------------------------------*/
/*----------------------------------------------------------------------------------------------------------------*/
@media screen and (min-width:768px) {
	.sp-only {
		display: none !important;
	}
	.pc-only {
		display: block !important;
	}
	a[href^="tel:"] {
		pointer-events: none;
	}
	.cruise {
		padding: 100px 0 0 0;
	}
	.cruise-disney .inner {
		padding: 0;
	}
	.cruise-disney h2 {
		padding: 0 0 2rem;
	}
	.cruise-cta h2 {
		width: 47.4rem;
		margin: 0 auto;
	}
	.cruise-cta a.cta-btn {
		width: 60rem;
		margin: 0 auto;
		font-size: 2.5rem;
		text-align: center;
	}
	.cruise-cta a.cta-btn span {
		font-size: 3rem;
	}
	.cruise h2.title {
		width: 50rem;
		margin: 0 auto;
	}
	.cruise-class h4 {
		width: 41.8rem;
		margin: 3rem auto;
	}
	.cruise-class ul {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	.cruise-class ul li {
		width: calc((100% - 2rem) / 2);
	}
	.cruise-record ul {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	.cruise-record ul li {
		width: calc((100% - 2rem) / 2);
	}
	

}
/*----------------------------------------------------------------------------------------------------------------*/
/*----------------------------------------------------------------------------------------------------------------*/
/*-------------------------------------------PC／ブレイクポイント-------------------------------------------*/
/*----------------------------------------------------------------------------------------------------------------*/
/*----------------------------------------------------------------------------------------------------------------*/
	@media screen and (min-width:1200px) {
		.inner {
			width: 1200px;
			margin: 0 auto;
			padding: 0;
		}
		.top-wave .wave-wrap {
	animation: infinity-scroll-left 30s infinite linear 0.5s both;
}
.bot-wave .wave-wrap {
	animation: infinity-scroll-right 30s infinite linear 0.5s both;
}

		.cruise-cta {
			padding: 4rem 0 5rem;
		}
		.cruise-cta h2 {
			width: 50rem;
			padding: 0 0 2rem;
		}
		.cruise-cta a.cta-btn {
			padding: 3rem 1rem;
			border-radius: 2rem;
			filter: drop-shadow(0 .5rem 0 rgba(74, 108, 204, 1));
			transition: .3s;
		}
		.cruise-cta a.cta-btn:hover {
			filter: none;
			transform: translate(0, .5rem);
		}
		.cruise-cta a.cta-btn:before {
			transition: .5s;
		}
		.cruise-cta a.cta-btn:hover:before {
			transform: translateY(-50%) rotate(100deg);
		}
		.cruise-cta a.cta-btn:before {
			width: 4.3rem;
			height: 4.8rem;
			right: 2rem;
		}
		.cruise-disney h2 img {
			width: 98rem;
			margin: 0 auto;
			display: block;
		}
		.cruise-disney {
			padding: 10rem 0 0;
		}
		.cruise-works {
			padding: 10rem 0 0;
		}
		.cruise-works-img {
			width: 100%;
		}
		.cruise h2.title {
			width: 69rem;
			padding: 0 0 5rem;
		}
		.cruise-works h2.title {
			padding: 7rem 0 5rem;
		}
		.cruise-works ul li:not(:last-child) {
			padding: 0 0 5rem;
		}
		.cruise-class {
			padding: 10rem 0 0;
		}
		.cruise-class h3 {
			width: 74rem;
		}
		.cruise-class ul li {
        	width: calc((100% - 6rem) / 2);
    	}
		.cruise-class ul li {
			padding: 0 0 6rem;
		}
		.cruise-qualification {
			padding: 10rem 0 0;
		}
		.cruise-qualification h3 img {
			width: 91rem;
			margin: 0 auto;
			display: block;
			padding: 0 0 3rem;
		}
		.cruise-outlook {
			padding: 10rem 0 0;
		}
		.cruise-outlook h2 img {
			width: 100%;
		}
		.cruise-outlook h2 {
			padding: 0 0 6rem;
		}
		.cruise-record {
			padding: 10rem 0 0;
		}
		.cruise-voice {
			padding: 10rem 0 0;
		}
		.cruise-room {
			padding: 10rem 0 0 0;
		}
		.cruise-room ul {
			width: 90rem;
			margin: 0 auto;
		}
		.cruise-room ul li:not(:last-child) {
			padding: 0 0 5rem;
		}

	}

.title {
	max-width:initial;
}

float__link {
	font-size: 17px !important;
}

.gnavi__item {
	font-size:18px !important;
}

.footer-navi__next, .footer-navi__acc {
	font-size: 17px !important;
}

.footer-navi__link {
	font-size: 15px !important;
}

.footer-icons__title {
	font-size: 20px !important;
}


.footer-other__link {
	font-size: 14px !important;
}

.footer__copy {
	font-size: 10px !important;
}

.float2__link {
	font-size: 16px !important;
}
.float__link {
	font-size: 17px !important;
}

@media(min-width:768px) {
	
.gnavi__item {
	font-size:14px !important;
}

.footer-navi__next, .footer-navi__acc {
	font-size: 16px !important;
}

.footer-navi__link {
	font-size: 14px !important;
}

.footer-icons__title {
	font-size: 20px !important;
}


.footer-other__link {
	font-size: 15px !important;
}

.footer__copy {
	font-size: 14px !important;
}

.float2__link {
	font-size: 16px !important;
}
	
.float__link {
	font-size: 18px !important;
}
}

