@charset "utf-8";


.sp {
	display:none !important;
}

.pc {
	display:inline !important;
}

.slicknav_menu {
	display:none !important;
}


@media screen and (max-width:640px) {
	body {
		padding-bottom:0 !important;
	}

	.sp {
		display:inline !important;
	}

	.pc {
		display:none !important;
	}

	.slicknav_menu {
		display:block !important;
	}


	img {
		max-width:100%;
		height:auto;
		width
		/***/:auto;
	}

	#contents {
		width:100%;
	}

	#page {
		min-width:100%;
	}

	.wrapper {
		/*top:300px;*/
	}

	/* -----------------------------------------------------------
	ヘッダー
----------------------------------------------------------- */

	.sm-slider {
		height:300px !important;
	}


	body.overflowhidden {
		overflow:hidden;
	}

	.back_header {
		height:60px;
	}

	#header {
		width:auto;
	}

	#header .sitename {
		width:auto;
		margin:7px;
		float:none;
	}

	#header .sitename img {
		width:160px;
		height:auto;
		margin-top:3px;
		margin-left:2px;
	}

	#header .gnav_sub {
		display:none;
	}

	/* .spbtn */
	#header .spbtn {
		position:absolute;
		right:10px;
		top:10px;
	}

	#header .spbtn ul {
	}

	#header .spbtn ul li {
		float:left;
		color:#fff;
		font-size:10px;
		text-align:center;
		margin-left:8px;
		line-height:1.2em;
	}

	#header .spbtn ul li.mail {
		margin-left:9px;
	}

	#header .spbtn ul li#panel-btn {
		margin-left:12px;
	}


	#header .spbtn ul li a {
		display:block;
		color:#fff;
	}

	#header .spbtn ul li a:before {
		display:block;
		font-size:24px;
		margin-top:8px;
		padding-bottom:10px;
	}

	#header .spbtn ul li.phone a:before {
		content:" \f095";
		font-family:FontAwesome;
	}

	#header .spbtn ul li.mail a:before {
		content:" \f003";
		font-family:FontAwesome;
	}

	#header .spbtn ul li.trans a:before {
		content:" \f0ac";
		font-family:FontAwesome;
	}

	#panel-btn .txt {
		display:block;
		position:absolute;
		bottom:-15px;
		left:-2px;
		margin:0 auto;
	}

	#panel-btn {
		display:inline-block;
		position:relative;
		width:27px;
		height:27px;
		margin:0;
		border-radius:50%;
		background:#fff;
	}



	#panel-btn-icon {
		display:block;
		position:absolute;
		top:50%;
		left:50%;
		width:14px;
		height:2px;
		margin:-1px 0 0 -7px;
		background:#333;
		transition:.4s;
	}

	#panel-btn-icon:before,
	#panel-btn-icon:after {
		display:block;
		content:"";
		position:absolute;
		top:50%;
		left:0;
		width:14px;
		height:2px;
		background:#333;
		transition:.3s;
	}

	#panel-btn-icon:before {
		margin-top:-6px;
	}

	#panel-btn-icon:after {
		margin-top:4px;
	}

	#panel-btn .close {
		background:transparent;
	}

	#panel-btn .close:before,
	#panel-btn .close:after {
		margin-top:0;
	}

	#panel-btn .close:before {
		        transform:rotate(-45deg);
		-webkit-transform:rotate(-45deg);
	}

	#panel-btn .close:after {
		        transform:rotate(-135deg);
		-webkit-transform:rotate(-135deg);
	}





	/* .gnav */
	.gnav {
		display:none;
		position:fixed;
		top:60px;
		left:0;
		background:url(../images/header/bg_gnav.png) repeat;
		float:none;
		width:100%;
		overflow:auto;
		height:100%;
		padding-bottom:100px;
	}

	.dropmenu {
		width:auto;
		padding:0;
		border-top:1px solid #666;
	}

	.dropmenu:before,
	.dropmenu:after {
		content:"";
		display:table;
	}

	.dropmenu:after {
		clear:both;
	}

	.dropmenu li {
		width:auto;
		float:none;
		text-align:left;
		border-bottom:1px solid #666;
		padding:0;
	}

	.dropmenu li a {
		padding:18px 15px;
		font-size:16px;
	}

	.dropmenu li a:after {
		float:right;
		content:" \f105";
		font-family:FontAwesome;
		font-size:17px;
	}

	.dropmenu li ul {
		list-style:none;
		position:relative;
		z-index:1;
		top:0;
		left:0;
		border-top:1px solid #666;
	}

	.dropmenu li ul li {
		width:auto;
		border-bottom:none;
		margin:0;
		padding:0;
		padding-left:15px;
		border-bottom:1px solid #333;
	}

	.dropmenu li ul li:last-child {
		border-bottom:none;
	}

	.dropmenu li ul li a {
		padding:12px 15px 12px 10px;
		background:none;
		font-size:14px;
		border:none;
	}

	.dropmenu li a:hover {
		color:#fff;
		background:none;
	}

	#fade-in li ul {
		visibility:visible;
		opacity:1;
		transition:0s;
	}

	#fade-in li:hover ul {
		visibility:visible;
		opacity:1;
	}

	#fade-in li ul li a {
		visibility:visible;
		opacity:1;
	}

	#fade-in li:hover ul li a {
		visibility:visible;
		opacity:1;
	}




	/* -----------------------------------------------------------
	メインビジュアル
----------------------------------------------------------- */
	.main_catch {
		top:150px;
	}

	/* -----------------------------------------------------------
	sns固定
----------------------------------------------------------- */
	.section {
		display:none;
	}

	.banner {
		display:none;
	}

	.banner2 {
		display:none;
	}

	.banner3 {
		display:none;
	}

	/* -----------------------------------------------------------
ニュース
----------------------------------------------------------- */
	.news {
		padding:15px 10px;
		width:100%;
	}

	.news p.p_btn {
		width:120px;
	}

	.news p.category {
		float:left;
		padding:1px 5px;
		margin-right:10px;
		background-color:#000;
		color:#fff;
	}

	/* -----------------------------------------------------------
コンテンツ
----------------------------------------------------------- */
	.box {
		width:100%;
		background-color:#f8f7f3;
	}

	.box_contents {
		width:100%;
		height:auto;
		margin:0px;
		overflow:hidden;
		position:relative;
	}

	.box_text,
	.box_text.btw.btw {
		width:100%;
		float:none;
		padding:30px;
		position:absolute;
		top:0;
		background:none;
	}

	.box_img {
		width:46%;
		margin-left:3%;
		margin-bottom:3%;
	}

	.box_img img {
		padding-top:260px;
	}

	.box_large .box_img img {
		padding-top:290px;
	}

	.box_text:hover {
		background:none;
		color:#000;
	}

	/* -----------------------------------------------------------
ピックアップ
----------------------------------------------------------- */
	.pickup {
		width:100%;
	}

	.pickup .item {
		width:46%;
		margin-left:3%;
		margin-bottom:3%;
		margin-right:0px;
	}

	.pickup .item p.text,
	.pickup .item_last p.text {
		margin:10px 10px;
		height:115px;
	}

	.img_block {
		margin:0 auto;
	}

	.pickup .item_last {
		width:46%;
		margin-left:3%;
		margin-bottom:3%;
		margin-right:0px;
	}

	.img_block {
		width:150px;
		height:150px;
	}

	/* -----------------------------------------------------------
イベントカレンダー
----------------------------------------------------------- */
	.spot {
		width:100%;
	}

	.spot p.ac {
		height:auto;
	}

	.event {
		width:100%;
		padding:0 20px;
	}

	/* -----------------------------------------------------------
お問い合わせ
----------------------------------------------------------- */
	.contact {
		width:100%;
		padding:0 10px;
	}

	/* -----------------------------------------------------------
アクセス
----------------------------------------------------------- */
	.access {
		width:100%;
	}

	.ac_guide_first {
		width:100%;
		float:none;
		padding:0px;
	}

	h5 {
		margin:0px;
	}

	.ac_guide {
		margin:0 auto;
		width:100%;
		float:none;
		padding:15px 20px;
	}


	/* -----------------------------------------------------------
フッター
----------------------------------------------------------- */
	.footer {
		width:100%;
		padding:30px 0 20px 0;
	}

	.footer_left {
		width:100%;
		float:none;
		margin:0 auto;
		text-align:center;
	}

	.footer_right {
		display:none;
	}

	.link {
		width:100%;
		text-decoration:none;
		padding:5px 0;
	}

	.link img {
		width:46%;
		margin-left:3%;
		margin-bottom:3%;
		margin-right:0px;
	}


	/* -----------------------------------------------------------
下層TOPビジュアル
----------------------------------------------------------- */
	#stay_mainvisual {
		width:100%;
		height:30vw;
		min-width:100%;
		background-size:cover;
		margin-top:35px;
	}

	#restaurant_mainvisual {
		width:100%;
		height:30vw;
		min-width:100%;
		background-size:cover;
		margin-top:35px;
	}

	#play_mainvisual {
		width:100%;
		height:30vw;
		min-width:100%;
		background-size:cover;
		margin-top:35px;
	}

	#spot_mainvisual {
		width:100%;
		height:30vw;
		min-width:100%;
		background-size:cover;
		margin-top:35px;
	}

	#contact_mainvisual {
		width:100%;
		height:30vw;
		min-width:100%;
		background-size:cover;
		margin-top:35px;
	}

	#news_mainvisual {
		width:100%;
		height:30vw;
		min-width:100%;
		background-size:cover;
		margin-top:35px;
	}

	#event_mainvisual {
		width:100%;
		height:30vw;
		min-width:100%;
		background-size:cover;
		margin-top:35px;
	}

	#este_mainvisual {
		width:100%;
		height:30vw;
		min-width:100%;
		background-size:cover;
		margin-top:35px;
	}

	#wedding_mainvisual {
		width:100%;
		height:30vw;
		min-width:100%;
		background-size:cover;
		margin-top:35px;
	}

	#bbq_mainvisual {
		width:100%;
		height:30vw;
		min-width:100%;
		background-size:cover;
		margin-top:35px;
	}

	#availability_mainvisual {
		width:100%;
		height:30vw;
		min-width:100%;
		background-size:cover;
		margin-top:35px;
	}

	/* -----------------------------------------------------------
下層共通設定
----------------------------------------------------------- */
	#container {
		max-width:100%;
	}

	#container .main_title {
		padding:30px 0 0 0;
	}

	.sub_text {
		margin:10px 10px;
		line-height:1.7em;
		letter-spacing:-.5px;
	}

	.e-section {
		width:100%;
		padding:30px 20px;
	}

	.c-section {
		width:100%;
		padding:30px 20px;
	}


	/* -----------------------------------------------------------
レストラン
----------------------------------------------------------- */
	.restaurant .box_left {
		width:100%;
	}

	.restaurant .box_left img {
		width:100%;
	}

	.restaurant .box_right {
		margin:0px;
		width:100%;
	}

	.restaurant .box_right img {
		margin:15px 0;
	}

	.morning {
		margin:0 auto;
		width:100%;
	}

	.morning img {
		width:48%;
		padding-right:10px;
	}

	.lunch img {
		width:50%;
		margin:0px;
	}

	.lu_hosoku {
		width:100%;
		margin:0 auto;
		padding-top:15px;
	}

	table.tbl_menu {
		width:100%;
	}

	table.tbl_menu tr td {
		width:100px;
	}

	.course {
		margin:15px 0;
		overflow:hidden;
		border-bottom:solid 1px #000;
		padding:0 0 15px 0;
	}

	.course img {
		width:100%;
		margin-right:0px;
	}

	.course p {
		width:100%;
	}

	.course table {
		width:100%;
	}


	/* -----------------------------------------------------------
客室
----------------------------------------------------------- */
	.room_photo {
		width:100%;
	}

	.room_text {
		width:100%;
	}

	.room {
		height:auto;
		height:650px;
	}

	#thumbnaillist li {
		width:70px;
		height:60px;
		float:left;
		background:none;
		padding:0 10px 0px 0;
		margin:0 10px 10px 0;
	}

	#thumbnaillist li img {
		width:100%;
		height:100%;
		        border-radius:100px;
		-webkit-border-radius:100px;
		   -moz-border-radius:100px;
	}

	.box_setsubi {
		width:100%;
		margin:10px;
	}

	.box_setsubi_img {
		margin-right:10px;
		width:30%;
	}

	.box_setsubi_end {
		width:100%;
		margin:10px;
	}

	.box_setsubi_end_img {
		margin-right:10px;
		width:30%;
	}

	.box_setsubi_text {
		float:left;
		width:60%;
		padding:0px;
	}

	.mg_jg20 {
		margin:5px 0;
	}

	table.price_tb {
		width:100%;
		margin:0 auto;
		padding:0 3px;
		font-size:7px;
	}

	td,
	th {
		padding:6px;
	}

	td.plan span {
		font-size:11px;
	}

	.c_plan .img_box {
		width:100%;
	}

	.c_plan .img_box img {
		width:100%;
	}

	.c_plan {
		margin:5px 0 30px 0;
	}

	.plan_img {
		margin:10px;
	}

	.plan_img img {
		margin:0 auto;
		width:49%;
		padding:5px;
	}

	th.si_ga {
		width:35%;
	}

	br.br_none {
		display:inline;
	}





	/* -----------------------------------------------------------
遊ぶ・くつろぐ
----------------------------------------------------------- */
	.play_relax ul {
		grid-template-columns: 1fr;
		gap: 20px;
	}

	.play_relax li {
		height:auto;
	}

	.play_relax li img {
		width:100%;
		height:auto;
	}

	.maru {
		left:30%;
	}

	.box_right {
		width:100%;
		float:left;
	}

	table.tbl_menu_est tr td {
		width:100px;
		text-align:right;
	}

	/* -----------------------------------------------------------
周辺スポット
----------------------------------------------------------- */
	.spot li img {
		width:100%;
		height:100%;
	}

	.spot li {
		width:100%;
	}

	.spot li.last {
		width:100%;
	}

	/* -----------------------------------------------------------
お問い合わせ
----------------------------------------------------------- */
	input.long,
	select.long {
		width:100%;
	}

	table.contact_fm th {
		width:30%;
	}

	/* -----------------------------------------------------------
サイトマップ
----------------------------------------------------------- */
	.sitemap ul {
		width:100%;
		text-align:center;
	}





	#my-calendar {
		width:95% !important;
	}
}
