@charset "utf-8";


.ship_introduction {
	/* background-color: #fff; */
}
.contents__heading {
	background-color: #f4f3ef;
}

/* アンカーリンク */
.anc_section {
	background: #595959;
	width: 100%;
}
.anc_link {
	max-width: 1236px;
	margin: 0 auto;
	padding: 0;
	display: flex;
	list-style: none;
}
.anc_link li {
  width: calc(100% / 3);
}
.anc_link a {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	height: 115px;
	text-decoration: none;
	color: #fff;
	position: relative;
	transition: 0.3s;
	font-size: 2.6rem;
	font-weight: bold;
	letter-spacing: 0.2em;
}
.anc_link a::after {
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 8px 9px 0 9px;
	border-color: #fff transparent transparent transparent;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 21px;
	margin: auto;
}
.anc_link a:hover {
	background: #02147f;
}

@media (min-width: 769px) {
}
@media (max-width: 768px) {
	.anc_link a {
		height: 70px;
		font-size: 3.73vw;
	}
	.anc_link a::after {
		border-width: 6px 7px 0 7px;
		bottom: 10px;
	}

}

.section.ship_introduction {
	padding-top: 0;
}

/* 既存CSS追加 */
.information__heading{
	margin-bottom: 40px;
}
.information .content-outer{
	width: 100%;
}


/* 客室商会 table */
.information {
	padding-top: 70px;
}

.ship_info_table{
	max-width: 965px;
	width: 100%;
	margin: auto;
	table-layout: fixed;
}
.ship_info_table tr{
	border-bottom: 1px solid #686666;
}
.ship_info_table .head,
.ship_info_table .data{
	text-align: center;
}
.ship_info_table .head{
	font-size: 1.8rem;
	color: #3a2e02;
}
.ship_info_table thead .head{
	padding-bottom: 40px;
	font-weight: 600;
	
}
.ship_info_table tbody .head,
.ship_info_table tbody .data{
	padding: 28px 0;
}
.ship_info_table tbody .head{
}
@media (min-width: 769px) {
	.ship_info_table thead .head:nth-child(n+2){
		max-width: calc(183 / 965 * 100%);
	}
}
@media (max-width: 768px) {
	.information {
		padding-top: 30px;
	}

	.ship_info_table .head{
		font-size: 3.3vw;
	}
	.ship_info_table thead .head{
		padding-bottom: 10px;
	}
	.ship_info_table thead .head:first-child{
		min-width: 20%;
	}
	.ship_info_table thead .head:nth-child(n+2){
		max-width: calc(120 / 670 * 100%);
	}
	.ship_info_table tbody .data{
		font-size: 5.2vw;
	}
	.ship_info_table tbody .head,
	.ship_info_table tbody .data{
		padding: 20px 0;
	}
}



/* コース商会 */
.content.course{
	background: #fff;
	padding-top: 90px;
	padding-bottom: 127px;
}
.content.course .content__heading{
	margin-bottom: 155px;
}
.course_block{
	max-width: 940px;
	padding: 0 20px;
	margin: auto;
	display: flex;
}
.course_block .course_item{
	width: calc((100% - 184px) / 2);
	font-size: 2rem;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}
.course_block .course_item:first-child{
	margin-right: calc(184 / 900 * 100%);
}
.course_block .course_ttl{
	line-height: 1.2;
	font-weight: bold;
}
.course_block .course_text{
	line-height: 1.5;
	font-weight: 500;
	margin-top: 20px;
	flex-grow: 1;
}
.course_block .course_link{
	color: #333333;
	position: relative;
	padding-right: 20px;
	margin-top: 10px;
	font-weight: 500;
	display: inline-block;
}
.course_block .course_link::before{
	position: absolute;
	content: '＞';
	right: 0;
}
.course_block .course_link::after{
	position: absolute;
	content:  "";
	width: 100%;
	height: 1px;
	background: #333;
	bottom: 0;
	left: 0;
}
.course_block .course_link:hover::after{
	content:  none;
}
.course_block .course_image{
	margin-top: 40px;
}

@media (min-width: 769px) {

}
@media (max-width: 768px) {
	.content.course{
		padding-top: 45px;
		padding-bottom: 62px;
	}
	.content.course .content__heading{
		margin-bottom: 40px;
	}
	.course_block .course_item:first-child{
		margin-right: calc(40 / 670 * 100%);
	}
	.course_block .course_item{
		width: 100%;
		font-size: 3.73vw;
	}
	.course_block .course_text{
		margin-top: 10px;
	}
	.course_block .course_image{
		margin-top: 20px;
	}
}

.link-outer {
	background-color: #fff;
}

.section .content.onboard {
	background-color: #faf5e1;
	padding-bottom: 10px;
}
.section .content.onboard .introduction__wrap {
	background-color: #fff;
}

@media (min-width: 769px) {
	.section .content.onboard .introduction__wrap {
		padding: 70px 50px 30px;
	}
	.section .content.onboard .introduction__text {
		margin-bottom: 0;
		padding: 0;
		width: 100%;
	}
}
@media (max-width: 768px) {
	.section .content.onboard .introduction__wrap {
		margin-bottom: clamp(45px, (100vw - 374px) * (90 - 10) / 624 + 10px, 90px);
		padding: clamp(65px, (100vw - 374px) * (75 - 35) / 624 + 35px, 70px) 30px 30px;
		background-color: #ffffff;
	}
	.section .content.onboard .introduction__text {
		margin-bottom: 0;
	}
}

.section .content.onboard .introduction__flex {
	display: flex;
	gap: 30px;
}
.section .content.onboard .introduction__flex > *{
	width: calc((100% - 30px) / 2);
}
.section .content.onboard .introduction__benefit {
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.section .content.onboard .introduction__benefit__list {
	padding-left: 1em;
}
.section .content.onboard .introduction__benefit__list li {
	text-indent: -1em;
}
@media (max-width: 768px) {
	
	.section .content.onboard .introduction__flex {
		flex-direction: column;
	}
	.section .content.onboard .introduction__flex > *{
		width: 100%;
	}
	.section .content.onboard .introduction__benefit {

	}
}

.company img{
	width: 100%;
	max-width: fit-content;
}
@media (min-width: 769px) {
	.top_section-inner{
		background-image: url(../images/bg-main_header-bottom.jpg);
	}
}
.top_section-inner{
	color: #ffffff;
}
.top_section-inner::before{
	background-image: url(../images/bg-main_header-top__.png);
}
.main__heading .en{
	color: #b8b080;
}
.main__heading::after {
	background-image: url(../images/icon-ship.png);
}
.company .content__link span {
	font-size: 85%;
	letter-spacing: 0;
}
@media (min-width: 1921px) {
	.top_section-inner::before{
	background-position: center bottom 398px;
	}
}
@media (max-width: 768px) {
	.top_section-inner::before{
		background-image: url(../images/bg-main_header-top-sp.png);
	}
}

.recommend_link{
	a{
		display: block;
		width: fit-content;
		margin: auto;
		border: 1px solid #000000;
	}
}

.content:not(.information){
	padding: clamp(50px, (100vw - 374px) * ( 100 - 50 ) / 624 + 50px, 100px) 0;
}
.introduction__header{
	margin-bottom: clamp(45px, (100vw - 374px) * ( 90 - 10 ) / 624 + 10px, 90px);
	padding: 30px;
	background-color: #ffffff;
}
.introduction__heading{
	position: relative;
	top: 0;
	margin-bottom: clamp(10px, (100vw - 374px) * ( 20 - 10 ) / 624 + 10px, 20px);
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	font-size: 2.4rem;
	font-weight: bold;
	text-shadow: #ffffff 2px 0px 2px, #ffffff -2px 0px 2px, #ffffff 0px -2px 2px, #ffffff -2px 0px 2px, #ffffff 2px 2px 2px, #ffffff -2px 2px 2px, #ffffff 2px -2px 2px, #ffffff -2px -2px 2px, #ffffff 1px 2px 2px, #ffffff -1px 2px 2px, #ffffff 1px -2px 2px, #ffffff -1px -2px 2px, #ffffff 2px 1px 2px, #ffffff -2px 1px 2px, #ffffff 2px -1px 2px, #ffffff -2px -1px 2px, #ffffff 1px 1px 2px, #ffffff -1px 1px 2px, #ffffff 1px -1px 2px, #ffffff -1px -1px 2px;
}
.introduction__heading span{
	position: relative;
	top: 0;
	z-index: 1;
}
.introduction__text{
	width: 100%;
	margin-bottom: 0;
}
.introduction__list{
	font-family: 'Noto Sans JP', sans-serif;
}
.imageContainer__item{
	/* max-width: 590px; */
	margin: auto;
}
.imageContainer__item{
	position: relative;
}
.caption{
	position: absolute;
	right: 5px;
	bottom: 5px;
	color: #000000;
	/* font-size: 1.4rem; */
	font-size: clamp(1.2rem, 0.661rem + 0.45vw, 1.4rem);
	text-shadow:1px 1px 3px #ffffff, -1px -1px 3px #ffffff,
	-1px 1px 3px #ffffff, 1px -1px 3px #ffffff,
	0px 1px 3px #ffffff,  0-1px 3px #ffffff,
	-1px 0 3px #ffffff, 1px 0 3px #ffffff;
	font-weight: 700;
}
.textContainer__description {
	font-size: 1.8rem;
}
.textContainer__description .bold {
	font-weight: bold;
}
.cassette {
    display: flex;
    flex-direction: column;
}
.cassette__body {
    height: stretch;
    display: flex;
    flex-direction: column;
}
@media (min-width: 769px){
	.content__heading{
		margin-top: -10px;
		padding-top: 10px;
	}
	.textContainer__description a:hover{
		text-decoration: underline;
	}
}
@media (max-width: 768px){
	.content__heading{
		/* margin-top: -50px;
		padding-top: 50px;  */
		margin-bottom: 40px;
		padding-bottom: 0;
	}
	.content__heading{
		margin-bottom: 40px;
		padding-bottom: 0;
	}
	.introduction__heading{
		font-size: 4.3vw;
	}
	.introduction__text{
		padding: 0;
	}
	.imageContainer__item + .imageContainer__item{
		margin-top: 20px;
	}
	.text-container dt{
		margin-bottom: 10px;
	}
}

button {
	border: none;
	cursor: pointer;
}
.button {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 80px;
	max-width: 592px;
	margin: clamp(40px, (100vw - 374px) * ( 80 - 40 ) / 624 + 40px, 80px) auto 0;
	border-radius: 40px;
	font-family: var(--font-fnoto_sans);
	font-size: clamp(1.6rem, 0.857rem + 1.34vw, 2.4rem);
	line-height: 1.2;
	transition: all 0.3s ease-out;
	z-index: 1;
	font-weight: bold;
}
.button::before {
	content: "";
	position: absolute;
	left: 3px;
	top: 3px;
	display: block;
	width: calc( 100% - 8px );
	height: calc( 80px - 8px );
	border-width: 1px;
	border-style: solid;
	border-radius: 40px;
}
.button::after {
	content: "";
	display: block;
	position: absolute;
	right: 38px;
	width: 11px;
	height: 11px;
	top: 30px;
	transform: rotate(135deg);
	border-top-width: 3px;
	border-right-width: 3px;
	border-top-style: solid;
	border-right-style: solid;
}
.button.-yellow{
	background-color: #fff11d;
	color: #333333;
}
.button.-blue{
	background-image: linear-gradient(90deg, #00316c, #496b94 50%, #00316c);
	color: #ffffff;
}
.button.-yellow::before {
	border-color: #333333;
}
.button.-blue::before{
	border-color: #ffffff;
}
.button.-blue::after{
	transform: rotate(45deg);
	top: 33px;
}
@media (min-width: 769px){
	.button:hover{
		background: transparent;
		background-color: #ffffff;
	}
	.button.-blue:hover{
		color: #00316c;
	}
	.button.-blue:hover::before{
		border-color: #00316c;
	}
}
@media (max-width: 768px){
	.button {
		height: 60px;
		border-radius: 30px;
	}
	.button::before {
		height: calc( 60px - 8px );
	}
	.button::after {
		width: 8px;
		height: 8px;
	}
	.button.-yellow::after {
		top: 23px;
	}
	.button.-blue::after {
		top: 23px;
	}
}
/* .js-accordion-item{
	display: none;
}
.js-accordion-toggle .close_text {
	display: none;
}
.js-accordion-toggle.is-close::after {
	top: 45%;
	transform: rotate(-45deg);
}
.js-accordion-toggle.is-close .open_text {
	display: none;
}
.js-accordion-toggle.is-close .close_text {
	display: block;
} */

.content_nav{
	width: 100%;
	background-color: #595959;
}
.content_nav__list{
	display: flex;
	justify-content: center;
	height: 115px;
}
.content_nav__item{
	flex: 1;
}
.content_nav__item a{
	background-color: #595959;
}
.content_nav__item a::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	bottom: 25px;
	width: 17px;
	height: 9px;
	background: #ffffff;
	clip-path: polygon(0 0, 50% 100%, 100% 0);
}
@media (min-width: 769px){
	.top_section-inner{
		height: 1060px !important;
	}
	.content_nav__item a:hover{
		background-color: #b10a32;
		color: #ffffff;
	}
	.content_nav__item a:hover::after {
		background-color: #ffffff;
	}
}
@media (max-width: 768px){
	.content_nav__list{
		padding: 0;
		height: 60px;
	}
	.content_nav__item a{
		letter-spacing: -0.05em;
		white-space: nowrap;
	}
	.content_nav__item a::after {
		bottom: 5px;
		width: 10px;
		height: 5px;
	}
}

@media (max-width: 450px) {
	.content_nav__list{
		padding: 0 15px;
	}
}

.content__body{
	padding-top: 0;
}
@media (min-width: 769px){
	.grid__list{
		display: grid;
		grid-template-columns: 1fr 1fr;
		column-gap: 30px;
	}
	.col1 {
		grid-column: 1 / 3;
	}
}

#main_features:focus {
  outline: none;
  box-shadow: none;
}
.main_features{
	background-color: #cac4a3;
}
.main_features .introduction__header{
	padding-top: clamp(35px, (100vw - 374px) * ( 75 - 35 ) / 624 + 35px, 70px);
}
.main_features .introduction__heading{
	margin-bottom: clamp(30px, (100vw - 374px) * ( 90 - 30 ) / 624 + 30px, 90px);
}
.main_features .introduction__heading::before{
	content: "";
	position: absolute;
	left: 0;
	width: 100%;
	height: 106px;
	background: url(/cruise/_ship_common/images/company/text-point.png) no-repeat left center / auto;
}
/* @media (min-width: 1256px){
	.main_features__item:first-of-type .text-container{
		height: 175px;
	}
	.main_features__item:nth-of-type(3) .text-container,
	.main_features__item:nth-of-type(5) .text-container{
		height: 204px;
	}
} */
@media (min-width: 769px){
	.main_features__list{
		row-gap: 70px;
	}
	.main_features__list .col1 .image-container{
		display: grid;
		grid-template-columns: 1fr 1fr;
		column-gap: 50px;
		row-gap: 50px;
	}
	.main_features__list .col1 .image-container.w100{
		grid-template-columns: 1fr
	}
	.image-container.w100 .imageContainer__item{
		max-width: 100%;
	}
	.image-container img{
		min-height: 1px;
	}
}
@media (max-width: 768px){
	.main_features .content__heading .en img{
		width: calc( 152 / 750 * 100vw );
	}
	.main_features .introduction__heading{
		display: block;
	}
	.main_features .introduction__heading::before{
		position: static;
		height: 10.9vw;
		width: calc( 426 / 750 * 100% );
		display: block;
		margin: 0 auto 4vw;
		background: url(/cruise/_ship_common/images/company/text-point-sp.png) no-repeat center top / 100% auto;
	}
	.main_features__item + .main_features__item{
		margin-top: 35px;
	}
}


.content.guest_room{
	padding-bottom: 0;
	background-color: #132540;
}
.guest_room .content__body{
	padding-bottom: clamp(75px, (100vw - 374px) * ( 150 - 75 ) / 624 + 75px, 150px);
}
.guest_room__list{
	/* grid-template-columns: 1fr 1fr; */
	margin-top: clamp(25px, (100vw - 374px) * ( 50 - 25 ) / 624 + 25px, 50px);
}
.guest_room__list .cassette__heading{
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: clamp(20px, (100vw - 374px) * ( 40 - 20 ) / 624 + 20px, 40px);
	padding-bottom: 20px;
	background: url(/cruise/_ship_common/images/company/line.png) no-repeat center bottom / 440px;
	color: #ffffff;
	font-size: 3.6rem;
	text-align: center;
	line-height: 1.2;
	font-weight: bold;
}

.guest_room__list .text-container{
	background-color: #eff3f5;
}
.textContainer__heading{
	margin-bottom: 5px;
	font-size: 2rem;
	font-weight: bold;
	line-height: 1.4;

}
@media (min-width: 769px){
	.guest_room__list .cassette__heading:first-child {
		height: 106px;
		flex-shrink: 0;
	}
	/* [data-content="guest_room"].cassette:nth-of-type(3){
		.cassette__heading{
			height: 106px;
		}
	} */
}
@media (max-width: 768px){
	.guest_room .content__heading .en img{
		width: calc( 254 / 750 * 100vw );
	}
	.guest_room__list .cassette__heading{
		font-size: 2.7rem;
		background-size: calc( 470 / 750 * 100vw );
	}
	.privilege__heading{
		margin-top: -80px;
		padding-top: 80px;
	}
	#butler_service{
		padding-top: 30px;
	}
}
@media (min-width: 1256px) {
	.guest_room__item:first-of-type .text-container {
	  height: 469px;
	}
}


.content__heading .tour__heading-jp {
	display: flex;
	align-items: center;
	justify-content: center;
	color: #355f88;
	font-size: clamp(2.4rem, 0.955rem + 2.73vw, 4.8rem);
	font-family: 'Noto Serif JP', serif;
	font-weight: 600;
}
.tour__heading{
	padding-bottom: 15px;
	border-bottom: 1px solid #426990;
}
.tour__heading-jp::before, .tour__heading-jp::after{
	content: "";
	display: inline-block;
	background-image: none;
	width: 100px;

	height: 49px;
}
.button_container{
	margin-top: 0;
}
@media (max-width: 768px){
	.tour__heading{
		width: calc( 635 / 750 * 100vw );
		padding: 0;
	}
	.tour__heading-jp::before, .tour__heading-jp::after{
		width: calc( 80 / 750 * 100vw );
		background-size: calc( 49 / 750 * 100vw );
		background-position: center center;
	}
	.tour__heading .en img{
		width: calc( 169 / 750 * 100vw );
	}
}

.button-pagetop{
	background-color: #595959;
}
.bullet_style-circle::before{
	top: 7px;
	transform: translateY(0);
	background-color: #cac4a3;
}
@media (min-width: 769px) and (max-width: 1255px){
	.bullet_style-circle::before {
		top: 0.4vw;
	}
}
@media (max-width: 768px){
	.bullet_style-circle::before {
		top: 1.1vw;
	}
}

/* スクロール固定 */
#globalHeader{
	transition: .5s ease-in-out;
}
#globalHeader.is-hidden {
	opacity: 0;
	visibility: hidden;
}
#contentNav.is-fixed {
	top: 0;
	left: 0;
	z-index: 5;
}


.slick-prev:before, .slick-next:before{
	color: #154060;
}
.slick-dots{
	display: flex;
	width: 100%;
	justify-content: flex-end;
}
.slick-dots li{
	margin: 0;
}
.slick-dots li + li{
	margin-left: 10px;
}
.slick-dots li button:before{
	content: '';
	background-color: #ffffff;
	opacity: .70;
}
.slick-dots li button:before:hover{
	opacity: .75;
}
.slick-dots li.slick-active button:before{
	opacity: 1;
}
.slick-dots li button {
	padding: 0;
}
@media (max-width: 768px){
	.slick-dotted.slick-slider {
		margin-bottom: 40px;
	}
}





/* 船内紹介スライダー */
.main_features_section_title_block {
	text-align: center;
	color: #02147f;
	font-weight: bold;
}
.main_features_section_title {
	font-family: "Shippori Mincho", serif;
	letter-spacing: 0.06em;
	background-image: url("../images/main_features_title_line.webp");
	background-position: bottom center;
	background-repeat: no-repeat;
}
.main_features_section_subtitle {
	font-family: "Noto Serif JP", serif;
	font-weight: inherit;
	letter-spacing: 0.58em;
}
.main_features_slider .splide__arrow {
	background-color: #fff;
	opacity: 1;
}
.main_features_slider .splide__pagination__page {
	margin: 0;
	opacity: 1;
	background-color: #fff;
}
.main_features_slider .splide__pagination__page.is-active {
	background-color: #02147f;
	transform: none;
}
.main_features_slider_image {
	display: block;
}
.main_features_slider_detail {
	background-color: #fff;
}
.main_features_slider_title_block {
	text-align: center;
	color: #02147f;
}
.main_features_slider_title {
	font-family: "Noto Sans JP", sans-serif;
	letter-spacing: 0.06em;
	background-image: url("../images/main_features_title_line.webp");
	background-position: bottom center;
	background-repeat: no-repeat;
}
.main_features_slider_subtitle {
	font-family: "Noto Serif JP", serif;
}
.main_features_slider_description {
	font-family: "Noto Sans JP", sans-serif;
	color: #3a2e02;
	/* text-align: center; */
	display: flex;
	justify-content: center;
	align-items: center;
	padding-inline: 25px;
}
.main_features_slider_description span {
	display: inline-block;
}
.main_features_slider_description > span {
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.main_features_slider_description .price {
	text-indent: -.5em;
}
.main_features_slider_description .paid {
	color: #c82415;
}
.main_features_slider_description .free {
	color: #033059;
}
.main_features_slider_description .txt {
	text-align: center;
}


@media (min-width: 769px) {
	.main_features_section {
		margin-block: 100px;
		margin-inline: auto;
		width: min(1490px, 100%);
	}
	.main_features_section + .main_features_section {
		margin-top: 120px;
	}
	.main_features_section_title_block {
		margin-bottom: 40px;
	}
	.main_features_section_title {
		font-size: 50px;
		background-size: 600px 6px;
		padding-bottom: 8px;
		margin-bottom: 8px;
	}
	.main_features_section_subtitle {
		font-size: 32px;
	}
	.main_features_slider.splide {
		margin-inline: -50px;
	}
	.main_features_slider .splide__slide {
		box-sizing: border-box;
		padding: 85px 45px;
	}
	.main_features_slider_item {
		transition: scale 500ms ease;
		@media (prefers-reduced-motion) {
			transition: none;
		}
	}
	.is-active > .main_features_slider_item {
		scale: 1.35;
	}
	.main_features_slider .splide__arrow {
		width: 65px;
		height: 65px;
	}
	.main_features_slider .splide__arrow svg {
		width: 40%;
		height: 40%;
	}
	.main_features_slider .splide__arrow--prev {
		left: -40px;
	}
	.main_features_slider .splide__arrow--next {
		right: -40px;
	}
	.main_features_slider .splide__pagination {
		bottom: -40px;
	}
	.main_features_slider .splide__pagination__page {
		width: 20px;
		height: 20px;
		margin-inline: 15px;
	}
	.main_features_slider_image {
		margin-bottom: 10px;
	}
	.main_features_slider_detail {
		padding-top: 20px;
		padding-bottom: 25px;
	}
	.main_features_slider_title_block {
		margin-bottom: 20px;
	}
	.main_features_slider_title {
		font-size: 22px;
		background-size: 230px 4px;
		padding-bottom: 12px;
		margin-bottom: 8px;
	}
	.main_features_slider_title.-ls {
		letter-spacing: -0.05em;
	}
	.main_features_slider_subtitle {
		font-size: 16px;
	}
	.main_features_slider_description {
		font-size: 16px;
		min-height: 3lh;
		padding-inline: 25px;
	}
}
@media (max-width: 768px) {
	.main_features_section {
		margin-block: calc(80 * 100vw / 750);
		
	}
	.main_features_section + .main_features_section {
		margin-top: calc(110 * 100vw / 750);
	}
	.main_features_section_title_block {
		margin-bottom: calc(35 * 100vw / 750);
	}
	.main_features_section_title {
		font-size: calc(50 * 100vw / 750);
		background-size: calc(550 * 100vw / 750) calc(7 * 100vw / 750);
		padding-bottom: calc(10 * 100vw / 750);
		margin-bottom: calc(10 * 100vw / 750);
	}
	.main_features_section_subtitle {
		font-size: calc(30 * 100vw / 750);
	}
	.main_features_slider .splide__arrow {
		width: calc(65 * 100vw / 750);
		height: calc(65 * 100vw / 750);
		transform: translateY(-125%);
		touch-action: manipulation;
	}
	.main_features_slider .splide__arrow svg {
		width: 50%;
		height: 50%;
	}
	.main_features_slider .splide__pagination {
		bottom: calc(-50 * 100vw / 750);
	}
	.main_features_slider .splide__pagination__page {
		width: calc(23 * 100vw / 750);
		height: calc(23 * 100vw / 750);
		margin-inline: calc(16 * 100vw / 750);
	}
	.main_features_slider_detail {
		padding-top: calc(20 * 100vw / 750);
		padding-bottom: calc(25 * 100vw / 750);
	}
	.main_features_slider_title_block {
		margin-bottom: calc(20 * 100vw / 750);
	}
	.main_features_slider_title {
		font-size: calc(36 * 100vw / 750);
		background-size: calc(250 * 100vw / 750) calc(5 * 100vw / 750);
		padding-bottom: calc(10 * 100vw / 750);
		margin-bottom: calc(10 * 100vw / 750);
	}
	.main_features_slider_subtitle {
		font-size: calc(28 * 100vw / 750);
	}
	.main_features_slider_description {
		font-size: calc(28 * 100vw / 750);
		min-height: 4lh;
		padding-inline: calc(50 * 100vw / 750);
	}
}



.content.guest_room{
	padding-bottom: 0;
	background-color: #132540;
}
.guest_room .content__body{
	padding-bottom: clamp(75px, (100vw - 374px) * ( 150 - 75 ) / 624 + 75px, 150px);
}
.guest_room__list{
	/* grid-template-columns: 1fr 1fr; */
	margin-top: clamp(25px, (100vw - 374px) * ( 50 - 25 ) / 624 + 25px, 50px);
}
.guest_room__list .cassette__heading{
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: clamp(20px, (100vw - 374px) * ( 40 - 20 ) / 624 + 20px, 40px);
	padding-bottom: 20px;
	background: url(/cruise/_ship_common/images/company/line.png) no-repeat center bottom / 440px;
	color: #ffffff;
	font-size: 3.6rem;
	text-align: center;
	line-height: 1.2;
	font-weight: bold;
}
.guest_room__list .text-container{
	background-color: #eff3f5;
}
.textContainer__heading{
	margin-bottom: 5px;
	font-size: 111%;
	font-weight: bold;
	line-height: 1.4;
}
@media (min-width: 769px){
	[data-content="guest_room"].cassette:nth-of-type(3){
		.cassette__heading{
			height: 106px;
		}
	}
}
@media (max-width: 768px){
	.guest_room .content__heading .en img{
		width: calc( 254 / 750 * 100vw );
	}
	.guest_room__list .cassette__heading{
		font-size: 2.7rem;
		background-size: calc( 470 / 750 * 100vw );
	}
	.privilege__heading{
		margin-top: -80px;
		padding-top: 80px;
	}
	#butler_service{
		padding-top: 30px;
	}
}
@media (min-width: 1256px) {
	.guest_room__item:first-of-type .text-container {
	  height: 469px;
	}
}

