/* ##### clearfix #####*/
.clearfix:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}

.clearfix {
	display: inline-table;
	min-height: 1%;
}

/*Hides from MacIE \*/
* html .clearfix {
	height: 1%;
}

.clearfix {
	display: block;
}

/*Hides from MacIE */

/* ##### custom reset ##### */
:root {
	font-size: 16px;
	font-family: "Crimson Text", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	font-feature-settings: "palt" 1;
	line-height: 1.5;
	color: #111111;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-weight: normal;
	letter-spacing: -1px;
}

ul,
li {
	list-style: none;
}

a img {
	border: 0;
}

a {
	text-decoration: none;
	color: #111111;
}

a:hover {
	filter: alpha(opacity=70);
	-moz-opacity: 0.7;
	opacity: 0.7;
}

article {
	width: 100%;
	overflow: hidden;
	padding-top: 140px;
}

footer {
	width: 100%;
	overflow: hidden;
}

a,
div,
span,
li {
	transition: all 0.2s ease-out;
}

/* transitionキャンセル */
.modal_mask,
.float_menu,
.header_menu_subbox,
#lightcase-case {
	transition: initial;
}

/* ##### bx slider override ##### */
.bx-wrapper {
	margin-bottom: 0 !important;
}

.bx-wrapper .bx-controls-direction a {
	z-index: 1000 !important;
}

/* ##### common ##### */
a.com_linkdecoration {
	text-decoration: underline;
	color: #00f;
}

a.com_linkpdf {
	display: inline-block;
	padding-right: 1.8em;
	background: url(/grand/common/images/icon_pdf.svg) right 30% no-repeat;
	background-size: 1.5em;
	text-decoration: underline;
}

.link_adjust {
	margin-top: -100px;
	border-top: 100px solid #ffffff;
}

.com_important {
	font-weight: bold;
	color: #DC0003;
}

.com_indent_inline {
	display: inline-block;
	padding-left: 1em;
	text-indent: -1em;
}

.com_indent {
	display: block;
	padding-left: 1em;
	text-indent: -1em;
}

.modal_mask {
	width: 100vw;
	height: 100vh;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 10011;
	display: none;
	background: rgba(255, 255, 255, 0.8);
}

.contentbox {
	width: 1200px;
	margin: 0 auto;
	position: relative;
}

.contentbox_pad {
	padding: 65px 0;
}

.contentbox_pad_bottom {
	padding: 0 0 65px 0;
}

.contentbox h1 {
	text-align: center;
	font-size: 36px;
	line-height: 24px;
	margin-bottom: 30px;
}

.contentbox h1 small {
	font-size: 14px;
}

.com_minilink {
	display: inline-block;
	font-size: 150%;
}

.com_minilink:before {
	content: "";
	display: inline-block;
	width: 0.7em;
	height: 0.7em;
	background: url(/grand/narashino/assets/img/common/com_thumb_linkhead.png);
	background-size: cover;
	margin-right: 0.3em;
}

.com_txtlink {
	display: inline-block;
	font-size: 125%;
}

.com_txtlink:before {
	content: "";
	display: inline-block;
	width: 0.7em;
	height: 0.7em;
	background: url(/grand/southernlinks/assets/img/common/com_thumb_linkhead.png);
	background-size: cover;
	margin-right: 0.3em;
}


.com_btn {
	line-height: 30px;
	font-size: 15px;
	display: inline-block;
	color: #ffffff;
	border-radius: 4px;
	background: #a16e00;
	background: -webkit-linear-gradient(#a16e00, #8f5900);
	background: -moz-linear-gradient(#a16e00, #8f5900);
	background: linear-gradient(#a16e00, #8f5900);
	padding: 0 20px 0 30px;
	position: relative;
	vertical-align: middle;
	font-weight: 100;
	white-space: nowrap;
}

.com_btn_gray {
	background: #666666;
	background: -webkit-linear-gradient(#666666, #525252);
	background: -moz-linear-gradient(#666666, #525252);
	background: linear-gradient(#666666, #525252);
}

.com_btn_green {
	background: #009c42;
	background: -webkit-linear-gradient(#009c42, #1f4c0b);
	background: -moz-linear-gradient(#009c42, #1f4c0b);
	background: linear-gradient(#009c42, #1f4c0b);
}

.com_btn_blue {
	background: #0f5183;
	background: -webkit-linear-gradient(#0f5183, #0c426c);
	background: -moz-linear-gradient(#0f5183, #0c426c);
	background: linear-gradient(#0f5183, #0c426c);
}

.com_btn_mypage {
	background: #009c42;
	background: -webkit-linear-gradient(#009c42, #1f4c0b);
	background: -moz-linear-gradient(#009c42, #1f4c0b);
	background: linear-gradient(#009c42, #1f4c0b);
}

.com_btn_pattern {
	background-image:
		url(/grand/narashino/assets/img/common/bg_pattern_colored.png),
		linear-gradient(#ffffff, #cccccc);
	background-blend-mode: multiply;
}

.com_btn_weak {
	color: #111111;
	background: none;
	border: #777777 1px solid;
}

.com_btn:before {
	top: 11px;
	left: 12px;
	width: 8px;
	height: 8px;
	border-top: 1px solid #ffffff;
	border-right: 1px solid #ffffff;
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);

	vertical-align: middle;
	position: absolute;
	content: "";
}

.com_btn_weak:before {
	border-top: 1px solid #777777;
	border-right: 1px solid #777777;
}

.com_btn.com_btn_reverse:before {
	-ms-transform: rotate(-135deg);
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);
}

.com_btn.com_btn_vr {
	margin-bottom: 5px;
}

.com_btn_strong {
	font-size: 1.2em;
	line-height: 1.8;
	padding-top: 0.2em;
}

.com_btn_strong:before {
	top: 0;
	bottom: 0;
	margin: auto;
}

.com_btn_noarrow {
	padding-left: 20px;
}

.com_btn_noarrow:before {
	display: none;
}


/* ## 箇条書き ## */
.common_textlist_wrapper {
	width: 100%;
	max-width: 960px;
	margin: 0 auto;
}

.common_textlist_lead {
	text-align: left;
}

.common_textlist_wrapper ul {
	margin: 20px 0 0 0;
	padding: 0;
}

.common_textlist_wrapper ul li {
	padding-left: 1em;
	text-indent: -1em;
}

.common_textlist_wrapper15 ul li {
	padding-left: 1.5em;
	text-indent: -1.5em;
}

.common_textlist_wrapper2 ul li {
	padding-left: 2em;
	text-indent: -2em;
}

.common_textlist_wrapper25 ul li {
	padding-left: 2.5em;
	text-indent: -2.5em;
}

.common_textlist_wrapper3 ul li {
	padding-left: 3em;
	text-indent: -3em;
}

/* ## 背景付きコピー ## */
span.com_copywithbg {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	margin: auto;
	background: url(/grand/narashino/assets/img/common/com_copybg_white.png);
	border: 1px solid #ffffff;
}

span.com_copywithbg_inner {
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	font-size: 30px;
	line-height: 24px;
}

span.com_copywithbg_inner small {
	font-size: 50%;
	display: block;
}

/* ## table基本 ## */
table.com_basictable {
	border: 0;
	padding: 0;
	margin: 0;
}

table.com_basictable-fixed {
	table-layout: fixed;
}

table.com_basictable+table.com_basictable {
	margin-top: 1em;
}

table.com_basictable th {
	background: #666666;
	color: #ffffff;
	font-weight: normal;
	text-align: left;
	border-bottom: 1px solid #cccccc;
}

table.com_basictable th.com_basictableTH-weak {
	background: #999999;
}

table.com_basictable th:first-child {
	border-right: 1px solid #999999;
}

table.com_basictable th+th {
	border-left: 1px solid #999999;
}

table.com_basictable td {
	background: #ffffff;
	border-bottom: 1px solid #cccccc;
}

table.com_basictable td:first-child {
	border-right: 1px solid #e0e0e0;
}

table.com_basictable td+td {
	border-left: 1px solid #e0e0e0;
}

table.com_basictable th,
table.com_basictable td {
	padding: 5px 20px;
}

table.com_basictable tr:last-child th,
table.com_basictable tr:last-child td {
	border-bottom: 0;
}

/* ## table_line ## */
div.com_table_line_wrapper {
	margin-top: 1em;
}

table.com_table_line {
	border: 0;
	padding: 0;
	margin: 0;
	width: 100%;
}

table.com_table_line th,
table.com_table_line td {
	border-top: #aaaaaa 1px solid;
	border-bottom: #aaaaaa 1px solid;
	font-weight: normal;
	text-align: left;
	padding: 3px 0;
}

table.com_table_line th {
	width: 200px;
}

table.com_table_line th span,
table.com_table_line td span {
	display: inline-block;
	padding: 2px 10px 0px 10px;
}

table.com_table_line th span {
	background: #e1e1e1;
	width: 200px;
}

/* ## tablelike ## */
.com_listwithline_wrapper {}

ul.com_listwithline {
	display: block;
	float: left;
	margin: 15px 0 0 0;
	padding: 0;
	border-top: #aaaaaa 1px solid;
	width: 50%;
}

ul.com_listwithline li {
	border-bottom: #aaaaaa 1px solid;
	margin: 0;
	padding: 3px 0;
	text-align: left;
	line-height: 1.8em;
}

ul.com_listwithline li span.com_listwithline_ttl {
	display: inline-block;
	width: 200px;
	text-align: center;
	background: #e1e1e1;
	margin-right: 10px;
}

/* ##### index topics系 ##### */
.cts_topics_items {
	padding: 0;
	margin: 0 auto;
	width: 960px;
}

.cts_topics_items {
	border-top: 1px solid #aaaaaa;
}

.cts_topics_items li {
	padding: 3px 0;
	border-bottom: 1px solid #aaaaaa;
	width: 960px;
}

.cts_topics_items li span {
	display: block;
	line-height: 26px;
	float: left;
}

.cts_topics_tag {
	font-size: 12px;
	width: 150px;
	text-align: center;
	background: #e1e1e1;
	color: #111111;
}

.cts_topics_tag_mem {
	background: #6a845e;
	color: #ffffff;
}

.cts_topics_tag_all {
	background: #935641;
	color: #ffffff;
}

.cts_topics_tag_fb {
	background: #5d6e8e;
	color: #ffffff;
}

[class^="cts_topics_date"] {
	padding: 0 0 0 20px;
}

.cts_topics_items li span.cts_topics_txt {
	width: 840px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	float: right;
}

.cts_topics_items li span.cts_topics_txt_full {
	width: 795px;
	text-overflow: initial;
	overflow: visible;
	white-space: normal;
}
[class^="cts_topics_date-type"]::before {
	content: "●";
	display: inline-block;
	padding-right:0.25em;
	vertical-align: middle;
	font-size: 0.75rem;
}
.cts_topics_date-type-mem::before {
	color:#00FF00;
}
.cts_topics_date-type-vis::before {
	color:#FF0000;
}

[class*="cts_topics_item-type"] .cts_topics_txt:before {
	display: inline-block;
	color: #ffffff;
	border-radius: 4px;
	padding: 2px 5px;
	margin-right: 0.75em;
	font-size: 12px;
	text-align: center;
	width: 9em;
	line-height: 1.6;
	vertical-align: middle;
}

.cts_topics_item-type-important .cts_topics_txt:before {
	content: "重要なお知らせ";
	background: #eb440f;
	font-size: 12px;
}

.cts_topics_item-type-general .cts_topics_txt:before {
	content: "お知らせ";
	background: #5da71e;
}

.cts_topics_item-type-special .cts_topics_txt:before {
	content: "お得な情報";
	background: #008d31;
}

[class^="news_sampleType"] {
	text-align:right;
	padding-right: 0.5em;
	font-size: 0.95rem;
}
[class^="news_wrapper"] [class^="news_sampleType"] {
	margin: 36px 0 6px 0;
}
[class^="news_type"] {
	display: inline-block;
	padding: 0 0.25em 0 1em;
	vertical-align: middle;
	font-size: 0.95rem;
}
[class^="news_type"]::after {
	content: "：";
	display: inline-block;
	padding: 0 0 0 0.25em;
	vertical-align: middle;
}
.news_type-mem {
	color: #00FF00;
}
.news_type-vis {
	color: #FF0000;;
}

/* ##### header ##### */
header {
	width: 100%;
	height: 140px;
	background: #dde2e6 url(/grand/narashino/assets/img/common/bg_pattern_light.png) repeat-x center 80px;
	position: fixed;
	z-index: 10010;
}

header .com_btn {
	white-space: nowrap;
}

/* local logo */
#header_logo_box_outer {
	width: 300px;
	height: 100px;
	top: 0;
	background: #ffffff;
	position: relative;
}

#header_logo_box {
	display: block;
	width: 300px;
	height: 100px;
	position: relative;
}

#header_logo_box img {
	display: block;
	position: absolute;
}

#header_logo {
	width: 260px;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	margin: auto;
}

/* ## for responsive ## */
.float_menu {
	display: none;
}

.footer_sp_contact {
	display: none;
}

#com_sp_contactbtn {
	display: none;
}

.com_narrow_btn {
	display: none;
}

#com_sp_drawerbtn {
	display: none;
}

/* ## nav ## */
div#header_nav_box {
	width: 900px;
	position: absolute;
	right: 0;
	top: 0;
}

/* contact */
nav#header_contact_box {
	text-align: right;
	font-size: 0;
	height: 40px;
	color: #ffffff;
	padding-top: 5px;
}

nav#header_contact_box>a,
nav#header_contact_box>span {
	display: inline-block;
	height: 30px;
	line-height: 30px;
	vertical-align: middle;
}

span#header_contact_tel {
	font-size: 28px;
	padding: 0px 10px 0 0;
}

span#header_contact_tel small {
	font-size: 18px;
}

nav#header_contact_box .com_btn {
	margin-left: 5px;
}

/* menu */
nav#header_menu {
	width: 900px;
	height: 60px;
	font-size: 17px;
	letter-spacing: -0.5px;
	display: table;
}

nav#header_menu>ul {
	display: table-row;
}

nav#header_menu>ul>li {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	height: 60px;
	line-height: 14px;
	padding: 0;
	position: relative;
}

nav#header_menu>ul>li:hover {
	background: #cecece;
	cursor: pointer;
}

nav#header_menu>ul>li:hover .header_menu_subbox {
	display: block;
}

.pagetype_information nav#header_menu>ul>li.menu_information,
.pagetype_course nav#header_menu>ul>li.menu_course,
.pagetype_hotel nav#header_menu>ul>li.menu_hotel,
.pagetype_restaurant nav#header_menu>ul>li.menu_restaurant,
.pagetype_spa nav#header_menu>ul>li.menu_spa,
.pagetype_tournament nav#header_menu>ul>li.menu_tournament,
.pagetype_facility nav#header_menu>ul>li.menu_facility,
.pagetype_price nav#header_menu>ul>li.menu_price,
.pagetype_gallery nav#header_menu>ul>li.menu_gallery,
.pagetype_members nav#header_menu>ul>li.menu_members {
	background: #cecece;
}

nav#header_menu .header_menu_subbox {
	position: absolute;
	top: 60px;
	left: 0;
	background: rgba(236, 236, 236, 0.9);
	display: none;
	cursor: default;
}

nav#header_menu li:last-child .header_menu_subbox {
	right: 0;
	left: auto;
}

nav#header_menu .header_menu_subbox>a {
	display: block;
	font-size: 15px;
	line-height: 40px;
	white-space: nowrap;
	text-align: left;
	padding: 0 20px 0 40px;
	border-bottom: 1px solid #c0c0c0;
	position: relative;
}

nav#header_menu .header_menu_subbox>a.active {
	background: #cecece;
	pointer-events: none;
	cursor: default;
}

nav#header_menu .header_menu_subbox>a:before {
	top: 15px;
	left: 20px;
	width: 8px;
	height: 8px;
	border-top: 1px solid #111111;
	border-right: 1px solid #111111;
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);

	vertical-align: middle;
	position: absolute;
	content: "";
}

nav#header_menu .header_menu_subbox>a:last-child {
	border-bottom: none;
}

nav#header_menu>ul>li>a {
	display: inline-block;
	width: 100%;
	height: 60px;
	padding: 15px 10px 0 10px;
}

nav#header_menu>ul>li>a>small {
	font-size: 11px;
}

/* ##### footer ##### */
#footer_contact {
	background: url(/grand/narashino/assets/img/common/bg_pattern_dark.png);
	color: #ffffff;
}

#footer_contact_box {
	width: 860px;
	margin: 0 auto;
}

/* 宿泊無しの場合用 */
#footer_contact_box_booking {
	width: 400px;
	float: left;
}

#footer_contact_box_inquiry {
	width: 400px;
	float: right;
}

#footer_contact_box_tel {
	clear: both;
	width: 400px;
	margin: 0 auto;
}

#footer_contact a.com_btn {
	width: 400px;
	margin: 10px 0;
	padding: 0;
	text-align: center;
	font-size: 24px;
	line-height: 50px;
}

#footer_contact a.com_btn:before {
	width: 14px;
	height: 14px;
	top: 17px;
	left: 35px;
}

#footer_contact span#footer_contact_tel {
	display: block;
	width: 400px;
	height: 70px;
	text-align: center;
	margin: -10px 0 10px 0;
	font-size: 48px;
	line-height: 30px;
}

/* 宿泊無しのカスタムここまで */
#footer_contact span#footer_contact_tel span {
	font-size: 14px;
}

#footer_contact span#footer_contact_tel small {
	font-size: 24px;
}

/* footer info */
#footer_local {
	padding: 0px 10px;
}

#footer_info {
	height: 120px;
}

#footer_logo {
	display: inline-block;
	width: 160px;
	margin-top: 45px;
	vertical-align: middle;
}

#footer_logo_txt {
	display: inline-block;
	widht: 205px;
	margin: 45px 5px 0 5px;
	vertical-align: middle;
}

#footer_info span {
	display: inline-block;
	padding: 0 0 0 15px;
	font-size: 12px;
	margin-top: 48px;
	vertical-align: middle;
}

#footer_info_right {
	float: right;
	text-align: right;
	font-size: 12px;
}

#footer_info_right a {
	display: inline-block;
	margin: 12px 0;
}

/* footer global */
#footer_global {
	background: #111111;
	padding: 40px 10px;
	color: #ffffff;
}

#footer_global_logo {
	display: block;
	width: 200px;
	float: left;
}

#footer_global_logo img {
	display: block;
	width: 100%;
}

#footer_global_right {
	display: block;
	float: right;
	font-size: max(min(1.2vw, 12px), 10px);
	line-height: 1.0;
	transform: translateY(25%);
}

/* ##### responsive ##### */
.always {
	display: initial !important;
}

@media (min-width: 1200px) {
	.o1199 {
		display: initial;
	}

	.u1199 {
		display: none;
	}
}

@media (max-width: 1199px) {
	.o1199 {
		display: none;
	}

	.u1199 {
		display: initial;
	}
}

@media (min-width: 900px) {
	.o899 {
		display: initial;
	}

	.u899 {
		display: none;
	}
}

@media (min-width: 800px) {
	.o799 {
		display: initial;
	}

	.u799 {
		display: none;
	}
}

@media (max-width: 799px) {
	.o799 {
		display: none;
	}

	.u799 {
		display: initial;
	}
}

@media (min-width: 700px) {
	.o699 {
		display: initial;
	}

	.u699 {
		display: none;
	}
}

@media (max-width: 699px) {
	.o699 {
		display: none !important;
	}

	.u699 {
		display: initial !important;
	}
}

@media (min-width: 375px) {
	.o374 {
		display: initial;
	}

	.u374 {
		display: none;
	}
}

@media (max-width: 374px) {
	.o374 {
		display: none;
	}

	.u374 {
		display: initial;
	}
}

@media (min-width: 350px) {
	.o349 {
		display: initial;
	}

	.u349 {
		display: none;
	}
}

@media (max-width: 349px) {
	.o349 {
		display: none;
	}

	.u349 {
		display: initial;
	}
}


@media (max-width: 1199px) {
	.contentbox {
		width: 100%;
	}

	#header_logo_box_outer,
	#header_logo_box {
		width: 240px;
	}

	#header_logo {
		width: 200px;
	}

	#header_logo_txt {
		width: 176px;
		left: 55px;
	}

	div#header_nav_box,
	nav#header_menu {
		width: 840px;
	}

	nav#header_menu>ul>li>a {
		padding: 15px 5px 0 5px;
	}

	/* ## table_line ## */
	table.com_table_line th {
		width: auto;
	}

	table.com_table_line th span {
		width: 100%;
	}
}

@media (max-width: 1099px) {
	:root {
		font-size: 14px;
	}

	header {
		height: 90px;
		background: #ffffff;
	}

	article {
		padding-top: 90px;
	}

	/* local logo */
	#header_logo_box_outer {
		top: 0;
		float: left;
	}

	#header_logo_box_outer,
	#header_logo_box {
		height: 50px;
	}

	#header_logo {
		width: 180px;
	}

	div#header_nav_box {
		display: none;
	}

	/* float menu */
	.com_narrow_btn {
		display: inline-block;
		float: right;
		margin-right: 5px;
		margin-top: 8px;
		vertical-align: bottom;
	}

	#float_menu_contact {
		right: 67px;
		overflow: hidden;
	}

	#com_sp_contactbtn {
		float: right;
		margin-right: 5px;
		margin-top: 8px;
		display: block;
	}

	#float_menu_contact_closer {
		left: 44px;
		top: 8px;
		display: block;
		position: absolute;
	}

	#float_menu_contact_closer:before {
		-ms-transform: rotate(135deg);
		-webkit-transform: rotate(135deg);
		transform: rotate(135deg);
		top: 8px;
		left: 15px;
	}

	.float_menu_contact_btnbox {
		width: 100%;
		padding-top: 50px;
		padding-bottom: 20px;
	}

	.float_menu_contact_btnbox .com_btn {
		width: 210px;
		margin: 0px auto 10px auto;
		display: block;
	}

	span#float_contact_tel {
		color: #ffffff;
		display: block;
		font-size: 28px;
		padding: 0px 10px 0 0;
		text-align: center;
	}

	span#float_contact_tel small {
		font-size: 18px;
	}

	#com_sp_drawerbtn {
		display: block;
		float: right;
		margin-top: 8px;
		margin-right: 5px;
		width: 100px;
		padding-left: 20px;
	}

	#com_sp_drawerbtn:before {
		left: auto;
		top: 8px;
		right: 12px;
		-ms-transform: rotate(135deg);
		-webkit-transform: rotate(135deg);
		transform: rotate(135deg);
	}

	.float_menu {
		width: 275px;
		background: url(/grand/narashino/assets/img/common/bg_pattern_dark.png);
		position: fixed;
		top: 40px;
		right: -20px;
		z-index: 10012;
		max-height: 100vh;
		overflow-y: scroll;
	}

	#float_menu_mainlist {
		padding: 35px 0 0 0;
		text-align: center;
	}

	#float_menu_mainlist a {
		display: block;
		color: #ffffff;
		height: 50px;
		font-size: 18px;
		line-height: 13px;
		padding-top: 10px;
		position: relative;
	}

	#float_menu_mainlist a small {
		font-size: 11px;
	}

	.header_menu_subbox {
		display: none;
		position: static;
	}

	#float_menu_mainlist .header_menu_subbox a {
		height: 40px;
		font-size: 14px;
		line-height: 40px;
		background: rgba(119, 119, 119, 0.5);
		padding-top: 0;
	}

	#float_menu_mainlist a.menu_hasSub:before {
		content: "";
		width: 13px;
		height: 13px;
		border: #777777 1px solid;
		border-radius: 2px;
		display: inline-block;
		vertical-align: bottom;
		margin-right: 5px;
		background: url(/grand/narashino/assets/img/common/com_sub_plus.svg) no-repeat center;
	}

	#float_menu_mainlist a.menu_hasSub.open:before {
		background-image: url(/grand/narashino/assets/img/common/com_sub_minus.svg);
	}


	#float_menu_mainlist a.com_btn {
		padding-top: 0;
		margin: 15px auto 0 auto;
		width: 200px;
		height: auto;
		font-size: 18px;
		line-height: 30px;
		display: block;
	}

	.common_textlist_wrapper {
		padding-right: 10px;
		padding-left: 10px;
	}

	/* ## common ## */
	.link_adjust {
		margin-top: -50px;
		border-top: 50px solid #ffffff;
	}

	/* ## topics ## */
	.cts_topics_items,
	.cts_topics_items li {
		width: 900px;
	}

	.cts_topics_items li span.cts_topics_txt {
		width: 640px;
	}

	.cts_topics_items li span.cts_topics_txt_full {
		width: 735px;
	}

	/* ## footer ## */
	#footer_local {
		position: relative;
	}

	#footer_info {
		height: auto;
		text-align: center;
		padding: 30px 0 20px 0;
	}

	#footer_info>span {
		display: block;
		line-height: 1.2;
		margin: 5px 0 0 0;
		padding: 0;
	}

	#footer_info_right {
		float: none;
		text-align: center;
		position: relative;
	}

	#footer_info_right a {
		position: absolute;
		left: 0;
		right: 0;
		top: -130px;
		margin: auto;
	}

	#footer_global_logo {
		float: none;
		margin: 0 auto;
	}

	#footer_global_right {
		float: none;
		font-size: max(min(2.0vw, 12px), 10px);
		margin: 10px auto 0;
		text-align: center;
	}
}

@media (max-width: 899px) {
	#footer_contact_box {
		width: 100%;
	}

	#footer_contact_box_booking,
	#footer_contact_box_inquiry {
		float: none;
		margin: 0 auto;
	}

	/* ## topics ## */
	.cts_topics_tag {
		margin-left: 20px;
	}

	.cts_topics_items li span.cts_topics_txt {
		float: none;
		clear: both;
		width: 100%;
		padding: 0px 20px;
	}

	.cts_topics_items li span.cts_topics_txt_full {
		width: 530px;
		float: left;
		clear: none;
	}

	.cts_topics_items,
	.cts_topics_items li {
		width: 100%;
	}

	[class*="cts_topics_item-type"] .cts_topics_txt:before {
		margin-bottom: 0.5em;
	}
}

@media (max-width: 799px) {

	/* ## topics ## */
	.cts_topics_items li {
		padding-top: 8px;
	}

	.cts_topics_items li span {
		line-height: 20px;
		font-size: 12px;
	}

	.cts_topics_tag {
		font-size: 10px;
		width: 100px;
	}

	.cts_topics_date {
		padding-left: 20px;
	}

	/* ## table_line ## */
	table.com_table_line {
		width: 70%;
		display: block;
		margin-left: auto;
		margin-right: auto;
	}

	table.com_table_line tbody {
		display: block;
		width: 100%;
	}

	table.com_table_line tr {
		display: block;
		width: 100%;
	}

	table.com_table_line th,
	table.com_table_line td {
		display: block;
		border-bottom: none;
	}

	table.com_table_line th {
		width: 35%;
		float: left;
	}

	table.com_table_line td {
		width: 65%;
		float: left;
	}

	/* menu for sp */
	#com_sp_contactbtn {
		display: none;
	}

	.com_narrow_btn {
		display: none;
	}

	.float_menu {
		background: none;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
	}

	.modal_mask {
		background: url(/grand/narashino/assets/img/common/bg_pattern_dark.png);
	}

	.float_menu {
		width: 100%;
	}

	#float_menu_main .footer_sp_contact {
		display: block;
		position: static;
		top: auto;
		left: auto;
		text-align: center;
	}

	#float_menu_mainlist a {
		border-top: 1px solid #777777;
		height: 70px;
		font-size: 24px;
		line-height: 15px;
		padding-top: 22px;
	}

	#float_menu_mainlist a small {
		font-size: 12px;
	}

	.footer_sp_contact .com_btn {
		height: 40px;
		font-size: 10px;
		line-height: 12px;
		padding: 8px 6px 0 14px;
		letter-spacing: -0.5px;
		margin-right: 5px;
		text-align: left;
	}

	.footer_sp_contact .com_btn:before {
		width: 8px;
		height: 8px;
		left: 1px;
		top: 16px;
	}

	.footer_sp_contact_tel {
		color: #ffffff;
		font-size: 16px;
		display: inline-block;
		height: 40px;
		vertical-align: middle;
		line-height: 16px;
		padding-top: 6px;
		padding-left: 8px;
	}

	.footer_sp_contact_tel span {
		font-size: 12px;
	}
}

@media (max-width: 699px) {
	.contentbox h1 {
		font-size: 28px;
	}

	#com_sp_drawerbtn {
		width: auto;
		padding-right: 25px;
		padding-left: 10px;
		font-size: 13px;
	}

	#com_sp_drawerbtn:before {
		right: 8px;
	}

	/* local logo */
	#header_logo_box_outer,
	#header_logo_box {
		width: 200px;
	}

	#header_logo {
		width: 160px;
	}

	/**/
	.cts_topics_items li span.cts_topics_txt_full {
		width: 100%;
	}

	/**/
	#footer_global {
		padding-bottom: 80px;
	}

	#footer_global_right {
		font-size: 10px;
	}

	#footer_contact {
		display: none;
	}

	.footer_sp_contact {
		display: block;
		background: url(/grand/narashino/assets/img/common/bg_pattern_dark.png);
		height: 60px;
		width: 100%;
		position: fixed;
		left: 0;
		bottom: 0;
		z-index: 10001;
		padding: 10px 5px;
		font-size: 0;
		text-align: center;
	}

	.footer_sp_contact .com_btn {
		padding: 8px 6px 0 6px;
	}

	.footer_sp_contact .com_btn:before {
		content: none;
	}

	/* ## table基本 ## */
	table.com_basictable th,
	table.com_basictable td {
		padding: 3px 5px;
	}

	/* ## table_line ## */
	table.com_table_line {
		width: 100%;
	}

	table.com_table_line th {
		width: 32%;
		float: left;
		font-size: 11px;
	}

	table.com_table_line td {
		width: 68%;
		float: left;
		font-size: 11px;
		letter-spacing: -0.5px;
	}

	table.com_table_line th span,
	table.com_table_line td span {
		padding: 2px 5px 0px 5px;
	}
}

@media (max-width: 374px) {

	/* local logo */
	#header_logo_box_outer,
	#header_logo_box {
		width: 160px;
	}

	#header_logo {
		width: 150px;
	}

	/* 宿泊ありの場合に有効化
	.footer_sp_contact .com_btn {
		padding-left:6px;
	}
	.footer_sp_contact .com_btn:before {
		content:none;
	}
	*/
	/* ## table基本 ## */
	table.com_basictable th,
	table.com_basictable td {
		padding: 2px;
		font-size: 11px;
	}

	/* ## table_line ## */
	table.com_table_line th {
		width: 100%;
		float: none;
		padding-bottom: 0;
	}

	table.com_table_line td {
		width: 100%;
		float: none;
		border-top: none;
		padding-top: 0;
	}

	table.com_table_line tr:last-child th {
		border-bottom: none;
	}
}