span[itemtype='http://schema.org/Organization']{display:none;}
.cast_wrapper{
	width:100%;
	min-width:1120px; 
	max-width:1248px;
	margin:0 auto;
}

/******************************************************************
	HEADER
******************************************************************/
.header{
	position:relative;
	z-index:10;
}

#header_main{
	height:120px;
	background-color:#FFF;
}

#header_main .header_wrapper{
	display:grid;
	grid-template-columns: 200px auto;
}

#header_main .header_identity{
	position:relative;
	grid-row: span 2;
	text-align:center;
	padding-top:30px;
}

#header_main .header_identity a{
	cursor:pointer;
	display:inline-block;
	width:172px;
	height:48px;
	background-image:url('/common/source/picture/bi_yabai.svg');
	background-repeat:no-repeat;
	background-position:left center;
	background-size:contain;
}

#header_main .header_ux{
	position:relative;
	padding-top:12px;
}

#header_main .header_ux .header_ux_list{
	display:flex;
	justify-content: right;
}

#header_main .header_ux .header_ux_list li:not(:first-child):before{
	content:"|";
	color: var(--color-light);
	padding-left: 8px;
	padding-right: 8px;
}

#header_main .header_ux .header_ux_list  a{line-height:24px; color: var(--color-watery);}
#header_main .header_ux .header_ux_list  a:hover{color: var(--color-bold);}

#header_main .header_ux .header_nav{
	display:none;
}

#header_main .header_cateogry{
	height:60px;
	padding-top:12px;
}

#header_main .header_cateogry .header_category_list{
	display:flex;
	justify-content: center;
}

#header_main .header_cateogry .header_category_list li:not(:first-child):before{
	content:"";
	padding-left: 36px;
	padding-right: 36px;
}

#header_main .header_cateogry .header_category_list a{
	font-size:1.375rem; 
	font-weight:600; 
	color:var(--color-bold); 
	line-height:36px;
}


/******************************************************************
	BODY
******************************************************************/
.body{
	position:relative;
	min-height:600px;
	z-index:1;
}

.page_container{
	max-width:1248px;
	min-width:1184px;
	padding-bottom:60px;
	margin:0 auto;
}

.page_container.listed{
	width:1184px;
	margin:0 auto;
}

.page_container.formed{
	width:840px;
	min-width: auto;
	margin:0 auto;
}

.page_container.confined{
	width:600px;
	min-width: auto;
	margin:0 auto;
}

.page_container.full{
	width:100%;
	min-width:auto;
}

.page_head .page_title{
	font-size:3rem;
	font-weight:600;
	color: var(--color-bold);
	text-align:center;
	padding-top: 60px;
	padding-bottom: 60px;
}


/******************************************************************
	RESERVATION
******************************************************************/
#reservation_page .passenger_block,
#reservation_page .remark_box{margin-top:36px;}
#reservation_page .passenger_block:first-child{margin-top:0px;}
#reservation_page .passenger_head{display:flex;border-bottom:1px SOLID #BFC0C0;margin-bottom:16px;padding-bottom:12px;}
#reservation_page .passenger_head_label{flex-grow: 1;flex-shrink: 1;font-size:1.25rem;font-weight:600;color:#191A1A;line-height:24px;padding-left:12px;}
#reservation_page .passenger_head_function{flex-grow: 0;flex-shrink: 0;}

#reservation_page .remark_box .attention_title{display:flex;}
#reservation_page .remark_box .attention_title .material-icons{font-size:2rem;color:#191A1A;}
#reservation_page .remark_box .attention_title .icon_text{font-size:1.25rem;font-weight:600;color:#191A1A;padding-left:6px;}
#reservation_page .remark_box .article{line-height:160%;padding-top:12px;padding-left:26px;}
#reservation_page .remark_box .article .material-icons{vertical-align:middle;padding-right:6px;margin-left:-26px;}

#reservation_page .required_block{padding-top:48px;}
#reservation_page [name=order_remark]{min-height:120px;}
#reservation_page .provision_table{
	display:grid;
	grid-template-columns:repeat(4, 1fr);
	grid-row: 8 span 7;
	border:1px SOLID var(--border-form)
}

#reservation_page .provision_table .table_head{
	text-align:center; 
	font-weight:600;
	color: var(--color-bold);
	background-color: var(--background-hazy);
	border:1px SOLID var(--border-form);
	padding:12px
}

#reservation_page .provision_table .table_cell{padding:12px;border:1px SOLID var(--border-form)}

#reservation_page .provision_table li:nth-child(7){
	grid-row: span 3;
}

#reservation_page .provision_table li:nth-child(8){
	grid-row: span 7;
}


/******************************************************************
	DOCUMENT
******************************************************************/
.dragaware{cursor:default;}
.sort_icon{cursor:grab;}


.modal.modal-fixed-footer .modal-content{height: calc(100% - 60px);}
.modal .modal-body{
	min-height: calc(100% - 73px);
	margin-top: 73px;
	padding: 1.5rem;
}

.modal .flex-body{
	display:flex;
	height: calc(100% - 84px);
}

.under_line{text-decoration: underline;}

.doc_wrapper p{line-height:180%;}
.win_map_info{font-weight:600;color:#27343F;}
.doc_annotation_box{background:#FFF;border:1px SOLID #D0DAE2;border-radius:6px;padding:24px;}
.doc_annotation{color:#66B3FF;}
.doc_content{color:#595959;}
.doc_description{color:#999;}

.doc_attention:before{content:'※';padding-right:2px;}

.doc_quotation:before{content:'「';font-weight:600;color:#27343F;padding-right:2px;margin-left:-6px;}
.doc_quotation:after{content:'」';font-weight:600;color:#27343F;padding-left:2px;margin-right:-6px;}

.doc_emphasis_box{background:#FFE6F2;border:1px SOLID #D0DAE2;border-radius:6px;padding: 16px 24px !important;margin-top:12px !important;}
.doc_emphasis{color:#FF0080;}

.doc_remark_box{background:#F2F2F2;border:1px SOLID #D0DAE2;border-radius:6px;padding: 16px 24px !important;margin-top:12px !important;}
.doc_remark{color:#718FA8;}

.doc_annotation_box{background:#FFF;border:1px SOLID #D0DAE2;border-radius:6px;padding: 16px 24px !important;margin-top:12px !important;}
.doc_annotation{color:#66B3FF;}
.doc_content{color:#595959;}
.doc_description{color:#999;}

.doc_attention:before{content:'※';padding-right:2px;}

.doc_quotation:before{content:'「';font-weight:600;color:#27343F;padding-right:2px;margin-left:-6px;}
.doc_quotation:after{content:'」';font-weight:600;color:#27343F;padding-left:2px;margin-right:-6px;}

.document_container h1{font-size:2.5rem;color:#191A1A;font-weight:600;text-align:center;letter-spacing:-0.05em;word-spacing:0.03em;}
.document_container h2{font-size:2rem;color:#191A1A;font-weight:600;text-align:center;}
.document_container h3{font-size:1.5rem;color:#191A1A;font-weight:600;}
.document_container h4{font-size:1.25rem;color:#191A1A;font-weight:600;}
.document_container h5{font-size:1rem;color:#191A1A;font-weight:600;}
.document_container h6{font-size:0.9375rem;color:#191A1A;font-weight:600;}

.document_container h1:not(.tnp){padding-top:48px;padding-bottom:48px;}
.document_container h2:not(.tnp){padding-top:60px;padding-bottom:24px;}
.document_container h3:not(.tnp){padding-top:48px;padding-bottom:12px;padding-left:6px;}
.document_container h4:not(.tnp){padding-top:32px;padding-bottom:12px;padding-left:6px;}
.document_container h5:not(.tnp){padding-top:24px;padding-bottom:6px;padding-left:6px;}
.document_container h6:not(.tnp){padding-top:20px;padding-bottom:6px;padding-left:6px;}
.document_container > h1:first-child,
.document_container > h2:first-child,
.document_container > h3:first-child,
.document_container > h4:first-child,
.document_container > h5:first-child,
.document_container > h6:first-child{padding-top:0 !important}
.document_container p{line-height:180% !important;}

.terms_block h1{font-size:2.5rem;}
.terms_block h2{font-size:2rem;}
.terms_block h3{font-size:1.5rem;}
.terms_block h4{font-size:1.25rem;}
.terms_block h5{font-size:1rem;}
.terms_block h6{font-size:0.9375rem;}

.map_wrapper{aspect-ratio:16/9;background-color:#F9FAFB;border:1px SOLID #D0DAE2;border-radius:6px;}
/******************************************************************/


/******************************************************************
	FOOTER
******************************************************************/
.footer {
	border-top: 1px SOLID var(--color-bold);
}

#footer_menu{
	padding-top:36px;
	padding-bottom: 36px;
}

#footer_menu .footer_menu_list{
	display:inline-flex;
}

#footer_menu .footer_menu_list li:not(:first-child):before{
	content:"|";
	color: var(--color-watery);
	padding-left: 24px;
	padding-right: 24px;
}

#footer_menu .footer_menu_list a{
	font-size:1rem; 
	font-weight:600; 
	line-height:36px; 
	color: var(--color-middle);
}

#footer_menu .footer_menu_list a:hover{
	color: var(--color-bold);
}

#footer_content .footer_content_section{
	display:flex; 
	justify-content:space-between;
}

#footer_content .footer_content_section .footer_content{
	width:360px;
}

#footer_content .footer_content .footer_label .label{
	flex-grow: 1;
	flex-shrink: 1;
	font-size:2rem;
	font-weight:600;
	color: var(--color-bold);
} 

#footer_content .footer_content .footer_article{line-height:24px;}
#footer_content .footer_content .footer_article .label{font-weight:100;color: var(--color-washy);}
#footer_content .footer_content .footer_article .label:after{content:':';color: var(--color-washy);padding-left:6px;padding-right:6px;}
#footer_content .footer_content .footer_article .content{font-weight:100;line-height:24px;}
#footer_content .footer_content .footer_article a{display:inline-block;font-size:0.8125rem;line-height:24px;color:var(--color-white);background-color:var(--color-pale);border-radius:4px;margin-left:12px;padding:0 6px;}
#footer_content .footer_content .footer_article a:hover{background-color:#191A1A;color:#FFF;}

#footer_content .footer_content .customer_center{
	background-color:var(--color-weak);border-radius:12px;padding-top:16px;padding-bottom:24px;
}
#footer_content .customer_center .contact_phone{text-align:center;font-size:2.5rem; color:#12383B; font-weight:900;}

#footer_content .customer_center .remark{display:flex; justify-content: space-between;color:#237076; padding-top:12px;}
#footer_content .customer_center .remark .label{flex-grow: 0;flex-shrink: 0;color:#39b4bd;padding-left:60px;}
#footer_content .customer_center .remark .label:after{content:':';color:#9ddde2;padding-left:6px;padding-right:6px;}
#footer_content .customer_center .remark .cont{flex-grow: 1;flex-shrink: 1;line-height:140%;}


#footer_content .copyright{color:var(--color-washy);padding-top:48px;padding-bottom:60px;}


/******************************************************************
	GNB
******************************************************************/
.topping_section{
	display:block;
	position:fixed;
	bottom:24px;
	right:24px;
	width:60px;
	height:60px;
	z-index:800;
}

.topping_section button{
	width:60px;
	height:60px;
	color: var(--color-bold);
	background-color:var(--color-white);
	border:none;
	border-radius:30px;
	box-shadow: 0 0 10px var(--color-pale);
}

.topping_section button:hover{
	box-shadow: 0 0 8px var(--color-watery);
}

@media only screen and (max-width: 767px) {
	.topping_section{
		bottom:12px;
		right:12px;
	}
}

/******************************************************************
	POPUP
******************************************************************/
.popup{
	position:fixed;
	left:0;
	top:0;
	width: 100%;
	height:100vh;
	background-color:rgba(0,0,0,0.4);
	z-index:900;
}

.popup_container{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	background-color:#000;
	box-shadow: 0 0 6px rgba(0,0,0,0.7);
}

.popup_inner{
	position:relative;
	width: 100%;
	height:100%;
}

.popup_wrapper{
	display:flex;
	justify-content: space-between;
	flex-direction: column;
	height:100%;
}

.popup_body{
	flex-grow: 1;
	flex-shrink: 1;
}

.popup_foot{
	display:flex;
	flex-grow: 0;
	flex-shrink: 0;
	height:36px;
}

.popup_foot .space{
	flex-grow: 1;
	flex-shrink: 1;
}

.popup_foot .function{
	flex-grow: 0;
	flex-shrink: 0;
	padding:6px;
}

.popup_foot button{
	display:inline-flex;
	height:24px;
	color:rgba(255,255,255,0.7);
	border:none;
	background-color:transparent
}

.popup_foot button:hover{
	color:#FFF;
}

.popup_foot .function .label{
	line-height: 24px;
	padding:0 6px;
}

.popup_foot .function .icon{
	height:24px;
	line-height:0;
}