@charset "utf-8";

.f_breadcrumbs.s_facility {
	margin-bottom: 30px;
}

.f_breadcrumbs.s_facility > ol > li + li:before {
	margin-left: 8px;
}

.m_checkbox.s_facility input[type=checkbox] + span {
	color: #ffffff;
	border-bottom-color: #5c5c5c;
	user-select: none;
}

.m_checkbox.s_facility.s_floor input[type=checkbox] + span {
	color: #5c5c5c;
}

.m_checkbox.s_facility input[type=checkbox]:checked + span {
	color: #ddbf56;
	border-bottom-color: #35c64b;
}

.m_tbl.s_type2.s_fixture th, .m_tbl.s_type2.s_fixture td, .m_tbl.s_type2.s_access th, .m_tbl.s_type2.s_access td {
	padding-top: 15px;
	padding-bottom: 15px;
}

.m_tbl.s_type2.s_fixture td.s_aL, .m_tbl.s_type2.s_access td {
	text-align: left;
	padding-right: 15px;
	padding-left: 15px;
}

.m_tbl.s_type2.s_floor {
	line-height: 1.5;
}

.m_tbl.s_type2.s_floor tr:hover td, .m_tbl.s_type2.s_regulation tr:hover td {
	background-color: #ffffff;
}

.m_tbl.s_type2.s_floor td {
	padding-top: 8px;
	padding-bottom: 8px;
}

.m_tbl.s_type2.s_floor td:first-child {
	border-left: 1px solid #adadad;
}

.m_tbl.s_type2.s_floor td a {
	color: #35c64b;
	text-decoration: underline;
}

.m_tbl.s_type2.s_floor td a:hover {
	text-decoration: none;
}

.m_tabArea2.s_floor {
	margin-top: 10px;
}

.m_tabArea2 .p_tabList2 ul > li a.s_school br, .m_tabArea2 .p_tabList2 ul > li a.s_island br {
	display: none;
}

.m_tabArea2 .p_tabList2 ul > li a.s_theater::before, .m_tabArea2 .p_tabList2 ul > li a.s_island::before, .m_tabArea2 .p_tabList2 ul > li a.s_ro::before, .m_tabArea2 .p_tabList2 ul > li a.s_ko::before {
	height: 22px;
}

@media screen and (max-width: 768px) {
	.m_checkbox.s_facility input[type=checkbox] + span {
		font-size: 1.4rem;
		padding-top: 12px;
		padding-bottom: 12px;
	}
}

@media screen and (max-width: 767px) {
	.m_tabArea2.s_floor {
		margin-top: 0;
	}

	.m_tabArea2.s_floor .p_tabList2 ul {
		display: flex;
		flex-wrap: wrap;
		border-bottom: 1px solid #f2e7c0;
	}

	.m_tabArea2.s_floor .p_tabList2 ul > li {
		width: 33.3%;
		height: auto;
		line-height: 1.5;
	}

	.m_tabArea2.s_floor .p_tabList2 ul > li:nth-child(1), .m_tabArea2.s_floor .p_tabList2 ul > li:nth-child(2), .m_tabArea2.s_floor .p_tabList2 ul > li:nth-child(3) {
		border-bottom: 1px solid #f2e7c0;
	}

	.m_tabArea2.s_floor .p_tabList2 ul > li + li {
		margin-left: 0;
	}

	.m_tabArea2.s_floor .p_tabList2 ul > li a {
		height: 100%;
		text-decoration: none;
		padding-top: 50px;
		padding-bottom: 8px;
		padding-left: 0;
	}

	.m_tabArea2.s_floor .p_tabList2 ul > li a.s_school {
		padding-top: 40px;
	}

	.m_tabArea2 .p_tabList2 ul > li a.s_school br, .m_tabArea2 .p_tabList2 ul > li a.s_island br {
		display: block;
	}

	.m_tabArea2.s_floor .p_tabList2 ul > li a::before {
		top: 20px;
		right: 0;
		bottom: auto;
	}

	.m_tabArea2.s_floor .p_tabList2 ul > li a.s_school::before {
		top: 28px;
	}

	.m_tabArea2.s_floor .p_tabContents2 {
		margin-left: -10px;
		margin-right: -15px;
	}

	.m_tabArea2.s_layout .p_tabContents2 {
		margin-left: 0;
		margin-right: 0;
	}

	.m_tbl.s_type2.s_fixture th, .m_tbl.s_type2.s_fixture td, .m_tbl.s_type2.s_access th, .m_tbl.s_type2.s_access td {
		padding-top: 8px;
		padding-bottom: 8px;
	}

	.m_tbl.s_type2.s_floor th {
		padding-top: 5px;
		padding-bottom: 5px;
	}
}

.swiper-button-next, .swiper-button-prev {
	width: 40px;
	height: 40px;
	background-image: none;
	background-color: #232323;
}

.fcl_footerLink .swiper-button-next, .fcl_footerLink .swiper-button-prev {
	display: none;
}

.swiper-button-next {
	right: 0;
}

.swiper-button-prev {
	left: 0;
}

.swiper-button-next::before, .swiper-button-prev::before {
	content: "";
	position: absolute;
	display: block;
	width: 10px;
	height: 10px;
	top: 0;
	bottom: 0;
	margin: auto;
	border-top: 2px solid #ffffff;
	border-right: 2px solid #ffffff;
}

.swiper-button-next::before {
	right: 18px;
	transform: rotate(45deg);
	transform-origin: center center;
}

.swiper-button-prev::before {
	left: 16px;
	transform: rotate(-135deg);
	transform-origin: center center;
}

@media screen and (max-width: 767px) {
	.fcl_footerLink .swiper-button-next, .fcl_footerLink .swiper-button-prev {
		display: block;
	}
}

.fcl_contentInner {
	margin-right: auto;
	margin-left: auto;
	padding-right: 15px;
	padding-left: 15px;
}

.fcl_content {
	line-height: 1.85;
	margin-bottom: 65px;
}

.fcl_content.s_feature, .fcl_content.s_download {
	margin-bottom: 125px;
}

.fcl_content.s_header, .fcl_content.s_footerContact, .fcl_content.s_footerLink, .fcl_content.s_footerSearch, .fcl_content.s_olr {
	margin-bottom: 0;
}

.fcl_content.s_footerLink {
	position: relative;
}

.fcl_contentInner {
	max-width: 1030px;
}

.fcl_contentInner.s_hasBottomLine, .fcl_contentInner.s_hasTopLine {
	position: relative;
}

.fcl_contentInner.s_hasTopLine {
	padding-top: 70px;
}

.fcl_contentInner.s_hasBottomLine {
	margin-bottom: 70px;
	padding-bottom: 70px;
}

.fcl_contentInner.s_hasTopLine::before, .fcl_contentInner.s_hasBottomLine::before {
	content: "";
	position: absolute;
	display: block;
	width: calc(100% - 30px);
	height: 2px;
	left: 15px;
	background-color: #ebebeb;
}

.fcl_contentInner.s_hasTopLine::before {
	top: 0;
}

.fcl_contentInner.s_hasBottomLine::before {
	bottom: 0;
}

.fcl_sectionL {
	margin-bottom: 40px;
}

.fcl_sectionM {
	margin-bottom: 30px;
}

.fcl_sectionS {
	margin-bottom: 25px;
}

.fcl_floorLayoutWrap {
	display: block;
}

.fcl_floorLayoutWrap:hover, .fcl_footerLink a:hover {
	text-decoration: none;
	opacity: 0.7;
}

.fcl_floorLayoutWrap:hover img, .fcl_footerLink a:hover img {
	opacity: 1;
}

.fcl_titleL {
	color: #35c64b;
	font-size: 2rem;
	text-align: center;
	margin-bottom: 30px;
}

.fcl_mapFrame {
	position: relative;
	height: 500px;
	margin-bottom: 35px;
	overflow: hidden;
}

.fcl_mapFrame iframe {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

.fcl_map3col {
	display: flex;
	justify-content: space-around;
}

.fcl_map3col > div {
	width: 27.4%;
}

.fcl_mapName {
	font-size: 1.8rem;
	border-bottom: 1px solid #35c64b;
}

.fcl_mapTitle {
	font-size: 1.6rem;
	margin-bottom: 5px;
}

.fcl_mapList {
	margin-left: 1em;
}

.fcl_mapList li {
	text-indent: 0.5em;
}

.fcl_mapList li + li {
	margin-top: 5px;
}

.fcl_link a, .fcl_pdfLink a {
	display: block;
	text-align: center;
	padding: 16px 10px;
	background-color: #ffffff;
	border: 1px solid #999999;
}

.fcl_link.s_noBorder a {
	display: inline-block;
	padding-top: 5px;
	padding-bottom: 5px;
	border: none;
}

.fcl_link a:hover, .fcl_pdfLink a:hover {
	opacity: 0.7;
}

.fcl_link a > span, .fcl_pdfLink a > span {
	display: inline-block;
}

.fcl_link a > span::after {
	content: "";
	display: inline-block;
	width: 12px;
	height: 12px;
	vertical-align: middle;
	margin-left: 1em;
	transform: rotate(180deg) translateY(1px);
}

.fcl_Textlink a, .fcl_blankLink a {
	color: #35c64b;
}

.fcl_Textlink a {
	text-decoration: underline;
}

.fcl_Textlink a:hover {
	text-decoration: none;
}

.fcl_pdfLink a > span {
	padding-left: 32px;
}

.fcl_blankLink a {
	display: inline-block;
}

.fcl_blankLink a::before {
	content: "";
	display: inline-block;
	width: 16px;
	height: 16px;
	vertical-align: middle;
	margin-right: 0.5em;
}

.fcl_2col, .fcl_4col {
	display: flex;
}

.fcl_2col {
	justify-content: space-between;
}

.fcl_2col.s_reverse {
	flex-direction: row-reverse;
}

.fcl_2col.s_wrap, .fcl_4col {
	flex-wrap: wrap;
}

.fcl_2col > * {
	width: 49%;
}

.fcl_4col > * {
	width: 23.5%;
	margin-left: 2%;
	margin-bottom: 20px;
}

.fcl_4col > *:nth-child(4n+1) {
	margin-left: 0;
}

.fcl_box {
	border: 1px solid #adadad;
}

.fcl_box.s_noBorder {
	border-right: none;
	border-bottom: none;
}

.fcl_box.s_catering2col {
	margin-bottom: 20px;
}

.fcl_box.s_catering4col {
	display: flex;
	flex-direction: column;
}

.fcl_box.s_cateringRecommend {
	display: table;
	width: 100%;
	margin-bottom: 20px;
}

.fcl_box.s_cateringRecommend > * {
	display: table-cell;
	vertical-align: middle;
}

.fcl_boxHead, .fcl_boxBody {
	padding: 20px;
}

.fcl_box.s_noBorder .fcl_boxHead {
	border-right: 1px solid #adadad;
}

.fcl_box.s_catering4col .fcl_boxHead, .fcl_box.s_catering4col .fcl_boxBody {
	padding-top: 10px;
}

.fcl_box.s_catering4col .fcl_boxHead span.s_noImage {
	display: inline-block;
	height: 130px;
}

.fcl_boxBodyWrap, .fcl_box.s_catering2col .fcl_boxBody + .fcl_boxBody:not(.s_half) {
	border-top: 1px solid #adadad;
}

.fcl_box.s_cateringRecommend .fcl_boxHead {
	width: 76.5%;
}

.fcl_boxBodyWrap {
	display: flex;
	flex-wrap: wrap;
}

.fcl_boxBody {
	background-color: #f2f0ec;
}

.fcl_boxBody.s_half {
	width: 50%;
}

.fcl_box.s_catering2col .fcl_boxBody {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.fcl_box.s_catering2col .fcl_boxBody.s_half {
	border-right: 1px solid #adadad;
}

.fcl_box.s_catering2col .fcl_boxBody.s_half:nth-child(n-3) {
	border-bottom: 1px solid #adadad;
}

.fcl_box.s_catering2col .fcl_boxBodyRight {
	width: 196px;
}

.fcl_box.s_catering4col .fcl_boxBody {
	min-height: 99px;
	margin-top: auto;
}

.fcl_box.s_cateringRecommend .fcl_boxBody {
	width: 23.5%;
}

.fcl_boxHeadTitle {
	font-size: 1.8rem;
	line-height: 1.5;
}

.fcl_box.s_cateringRecommend .fcl_boxHeadTitle {
	font-size: 2.2rem;
	color: #35c64b;
	margin-bottom: 5px;
}

.fcl_imgCol {
	display: flex;
	justify-content: center;
	text-align: center;
}

.fcl_imgCol > div {
	width: 33%;
	padding-right: 2%;
	padding-left: 2%;
}

.fcl_imgCol > div img {
	width: 100%;
}

.fcl_pc {
	display: block;
}

.fcl_sp {
	display: none;
}

.fcl_acPc {
	text-align: center;
}

.fcl_mw330 {
	max-width: 330px;
	margin-right: auto;
	margin-left: auto;
}

.fcl_mbXXL {
	margin-bottom: 60px;
}

.fcl_featureCatch {
	text-align: center;
	margin-bottom: 45px;
}

.fcl_floorWrap {
	position: relative;
	padding-bottom: 90px;
}

.fcl_floorTitle {
	position: relative;
	color: #beb5a2;
	font-size: 4.0rem;
	margin-bottom: 25px;
}

.fcl_floorTitle::before {
	content: "";
	position: absolute;
	display: block;
	height: 2px;
	top: 3px;
	background-color: #beb5a2;
}

.fcl_floorTitle::before {
	width: 100%;
}

.fcl_floorTitle span {
	font-size: 2.4rem;
}

.fcl_floor {
	display: flex;
	justify-content: space-between;
}

.fcl_floor.s_one {
	display: block;
}

.fcl_floorName {
	font-size: 1.8rem;
	letter-spacing: 0.1em;
	margin-bottom: 15px;
}

.fcl_floorImage {
	width: 22.6%;
}

.fcl_floorTable {
	width: 73.3%;
}

.fcl_floorTable.s_one {
	width: auto;
}

.fcl_floorMap {
	position: absolute;
	width: 330px;
	right: 0;
	bottom: 0;
}

.fcl_floorLayoutWrap {
	position: relative;
	max-width: 640px;
	margin-right: auto;
	margin-left: auto;
	padding-bottom: 55px;
	border: 1px solid #d6d6d6;
}

.fcl_floorLayoutWrap::before, .fcl_floorLayout::before, .fcl_floorLayout::after {
	content: "";
	position: absolute;
	display: block;
}

.fcl_floorLayoutWrap::before {
	width: 40px;
	height: 40px;
	right: 0;
	bottom: 0;
	background-color: #35c64b;
	cursor: pointer;
}

.fcl_floorLayout::before, .fcl_floorLayout::after {
	width: 14px;
	height: 2px;
	right: 13px;
	bottom: 19px;
	background-color: #ffffff;
	transform-origin: center center;
}

.fcl_floorLayout::after {
	transform: rotate(90deg);
}

.fcl_floorLayoutTitle {
	padding: 20px 30px 13px;
	border-bottom: 2px solid #35c64b;
}

.fcl_floorLayout ul {
	display: flex;
	padding: 15px 30px;
}

.fcl_floorLayout ul li + li {
	margin-left: 25px;
}

.fcl_floorNote {
	margin-top: 45px;
	padding-top: 45px;
	border-top: 2px solid #ebebeb;
}

.fcl_floorNoteTitle, .fcl_floorNoteList > li {
	font-size: 1.2rem;
}

.fcl_floorNoteTitle {
	font-weight: bold;
}

.fcl_floorNoteListNum {
	float: left;
	width: 2em;
}

.fcl_regulationTitle {
	font-size: 2rem;
	margin-bottom: 25px;
	border-bottom: 1px solid #d6d6d6;
}

.fcl_regulationTitleNum {
	color: #35c64b;
	display: inline-block;
	font-size: 4rem;
	font-weight: 300;
	letter-spacing: 0.1em;
}

.fcl_regulationListNum {
	float: left;
	width: 30px;
	text-align: center;
}

.fcl_footerContact {
	text-align: center;
	padding-top: 80px;
	padding-bottom: 50px;
	background-color: #f3f2ee;
}

.fcl_footerContact.s_olr {
	background-color: #ffffff;
}

.fcl_footerContactTitle {
	margin-bottom: 30px;
}

.fcl_footerContactTitle > span {
	color: #35c64b;
	display: block;
}

.fcl_footerContactNum, .fcl_footerContactLink {
	display: flex;
	justify-content: center;
}

.fcl_footerContactNum {
	margin-bottom: 25px;
}

.fcl_footerContactNum > * {
	padding: 6px 7%;
}

.fcl_footerContactNum dt {
	width: 58px;
	margin-right: 18px;
	padding-top: 15px;
	padding-bottom: 15px;
}

.fcl_footerContactNum dd {
	font-size: 2.8rem;
}

.fcl_footerContactNumFax {
	border-left: 1px solid #adadad;
}

.fcl_footerContactLink > div {
	width: 50%;
}

.fcl_footerContactLink > div + div {
	position: relative;
}

.fcl_footerContactLink > div + div::before {
	content: "";
	position: absolute;
	display: block;
	width: 1px;
	height: 22px;
	top: 0;
	bottom: 0;
	left: -1px;
	margin: auto;
	background-color: #adadad;
}

.fcl_footerContactLink a {
	display: block;
	padding: 10px;
}

.fcl_footerContactLink a span::before {
	content: "";
	display: inline-block;
	width: 5px;
	height: 5px;
	vertical-align: 2px;
	margin-right: 0.5em;
	border-top: 1px solid #333333;
	border-right: 1px solid #333333;
	transform: rotate(45deg);
}

.fcl_footerLink {
	color: #ffffff;
	background-color: #474747;
}

.fcl_footerLink ul {
	display: flex;
}

.fcl_footerLink ul li {
	height: auto;
	flex: 1;
}

.fcl_footerLink a {
	display: block;
	height: 100%;
}

.fcl_footerLink a {
	padding: 70px 8%;
}

.fcl_footerLink a:hover {
	background-color: #5c5c5c;
}

.fcl_footerLinkImage {
	text-align: center;
	margin-bottom: 30px;
}

.fcl_footerLinkTitle {
	font-size: 1.8rem;
	text-align: center;
	margin-bottom: 25px;
}

.m_tabArea2.s_hasSwitching, .m_tabArea2.s_hasAnchor {
	position: relative;
}

@media screen and (min-width: 1201px) {
	.fcl_un1200 {
		display: none !important;
	}
}

@media screen and (max-width: 1200px) {
	.fcl_ov1200 {
		display: none !important;
	}
}

@media screen and (max-width: 767px) {
	.fcl_content.s_feature, .fcl_content.s_download {
		margin-bottom: 65px;
	}

	.fcl_pc {
		display: none;
	}

	.fcl_sp {
		display: block;
	}

	.fcl_sectionM {
		margin-bottom: 70px;
	}

	.fcl_sectionS {
		margin-bottom: 40px;
	}

	.fcl_box.s_cateringRecommend, .fcl_box.s_cateringRecommend > * {
		display: block;
	}

	.fcl_box.s_cateringRecommend .fcl_boxHead, .fcl_box.s_cateringRecommend .fcl_boxBody {
		width: auto;
	}

	.fcl_map3col {
		display: block;
	}

	.fcl_scrollArea {
		overflow: hidden;
	}

	.fcl_scrollAreaInner01 {
		padding: 10px;
		overflow-x: auto;
	}

	.fcl_scrollAreaInner01 .fcl_floorLayout {
		margin-left: -10px;
	}

	.fcl_scrollAreaInner01 .fcl_floorLayoutImage {
		padding-left: 20px;
	}

	.fcl_scrollAreaInner02 {
		width: 1000px;
		height: auto;
	}

	.fcl_scrollAreaInner02.s_w910 {
		width: 910px;
	}

	.fcl_scrollAreaInner02.s_w730 {
		width: 730px;
	}

	.fcl_scrollAreaInner02.s_w640 {
		width: 640px;
	}

	.fcl_scrollAreaInner02.s_w502 {
		width: 502px;
	}

	.fcl_mapFrame {
		height: 250px;
	}

	.fcl_mapName {
		margin-bottom: 20px;
	}

	.fcl_map3col > div, .fcl_boxBody.s_half {
		width: auto;
	}

	.fcl_map3colCenter {
		margin-bottom: 30px;
	}

	.fcl_2colLeft {
		margin-bottom: 20px;
	}

	.fcl_box.s_catering2col .fcl_boxBodyLeft {
		margin-bottom: 10px;
	}

	.fcl_box.s_catering4col .fcl_boxHead span.s_noImage {
		display: none;
	}

	.fcl_box.s_catering4col .fcl_boxBody {
		min-height: auto;
	}

	.fcl_box.s_cateringRecommend .fcl_boxHeadTitle {
		font-size: 2rem;
	}

	.fcl_imgCol > div {
		width: auto;
		max-width: 400px;
		margin-right: auto;
		margin-left: auto;
	}

	.fcl_imgCol > div + div {
		margin-top: 15px;
	}

	.fcl_acPc {
		text-align: left;
	}

	.fcl_mbXXL {
		margin-bottom: 30px;
	}

	.fcl_featureCatch {
		margin-bottom: 60px;
	}

	.fcl_floorWrap {
		padding-bottom: 0;
	}

	.fcl_floor, .fcl_2col, .fcl_4col, .fcl_box.s_catering2col .fcl_boxBody, .fcl_imgCol {
		display: block;
	}

	.fcl_floorImage {
		width: 97%;
		margin-right: auto;
		margin-bottom: 10px;
		margin-left: auto;
	}

	.fcl_floorLink {
		width: 67.5%;
		margin-right: auto;
		margin-left: auto;
	}

	.fcl_floorTable {
		width: auto;
		margin-left: -10px;
		margin-right: -15px;
	}

	.fcl_floorMap {
		position: static;
		width: auto;
		max-width: 330px;
		margin-right: auto;
		margin-left: auto;
	}

	.fcl_2col > *, .fcl_4col > *, .fcl_box.s_catering2col .fcl_boxBodyRight {
		width: auto;
	}

	.fcl_4col > * {
		margin-left: 0;
	}

	.fcl_footerContact {
		padding-top: 50px;
		padding-bottom: 25px;
	}

	.fcl_footerContactTitle {
		margin-bottom: 20px;
	}

	.fcl_footerContactNum {
		display: block;
		margin-bottom: 15px;
	}

	.fcl_footerContactNum > * {
		padding-right: 0;
		padding-left: 0;
	}

	.fcl_footerContactNum dl {
		justify-content: center;
	}

	.fcl_footerContactNumFax {
		border-left: none;
	}

	.fcl_footerLink ul {
		width: 300%;
	}

	.fcl_footerLink ul li {
		flex: none;
		padding-right: 10px;
		padding-left: 10px;
	}

	.fcl_footerLink a {
		padding-top: 50px;
		padding-bottom: 50px;
	}
}
