@charset "utf-8";
/* CSS Document */

@media (max-width: 959px) {
	/* 959px以下に適用されるCSS（タブレット用） */

	/* ------------------------------
	* 基本設定
	* ------------------------------ */
	/*行間*/
	body p {
		line-height: 1.8rem;
		margin: 0px;
		padding: 0px; 
	}
	/*テキスト改行しない*/
	.sp_br_txt br {
		display: none;
	}
	/*基本のボタン*/
	.swell-block-button__link::first-line {
		font-size: 2.0rem;
	}
	/*飾り削除*/
	a.swell-block-button__link {
		background: #fff;
	}
	/*基本のボタン余白*/
	.btn-column {
		padding-top: 80px;
		padding-bottom: 100px;
	}	
	div.wp-block-column {
		display: flex;
		justify-content: center;
		flex-direction: column; 
		margin: 0 auto;
	}
	div.wp-block-image {
		max-width: 100%; 
		height: auto;
	}
	/*フルワイド二重箇所の余白*/
		.has-border, div.has-background, p.has-background {
		padding: 3em 4em 5em;
	}
	
	.wp-block-columns {
		flex-direction: column;
	}
	
	/* ------------------------------
	* ヘッダー設定
	* ------------------------------ */
	/* ロゴマーク */
	.-series .l-header__logo {
		margin-top: 0px;
	}
	.c-headLogo.-img {
		height: 130px;
		margin-right: -5px;
		margin-left: -5px;
	}

	/* ------------------------------
	* 開閉メニューのフルスクリーン設定
	* ------------------------------ */
	.c-smallNavTitle {
		font-size: 17px;
		font-weight: 900;
	}
	.p-spMenu__inner::before {
		background: var(--color_menu_bg);
		background-image: url(/tokunoshima/wp-content/uploads/2025/07/menuimage_white.png);
		filter: opacity(20);
	}
	/* ------------------------------
	* フルスクリーンメニュー内の設定
	* ------------------------------ */
	/*ハンバーガー*/
	.l-header__menuBtn {
		height: 0;
	}
	.icon-menu-thin {
		position: relative;
		width: 100px;
		height: 105px;
		margin-left: 0px;
		top: 32px;
	}
	.icon-menu-thin::before {
		width: 80px;
		margin-left: 27px;
		margin-top: 15px;
	}
	.icon-menu-thin::after {
		position: absolute;
		margin-left: -19px;
		margin-top: 15px;
	}
	.icon-close-thin:before {
		margin-left: 30px;
		margin-bottom: -10px;
		height: 50px;
		width: 80px;
		background-repeat: no-repeat;
	}
	.icon-close-thin:after {
		margin-left: 30px;
	}
	/*メニュー*/
	.p-spMenu__inner::before {
		backdrop-filter: none;
	}
	div.p-spMenu.-right::before {
		background-image: none;
	}
	div.p-spMenu.-right::after {
		width: 400px;
		height: 200px;
	}
	.-right .p-spMenu__closeBtn {
		right: 0px;
		width: 100px;
		height: 105px;
	}
	div.p-spMenu__body {
		margin-top:	20px;
		justify-content: start;
	}
	div.p-spMenu__body div.spMenuwrap01 {
		display: block;
	}
	div.p-spMenu__body div.spMenuleft {
		flex-basis: auto;
	}
	div.p-spMenu__body div.spMenuright {
		flex-basis: auto;
	}
	div.spMenuleft h2 {
		display: none;
	}
	div.spMenuleft h2 span {
		display: none;
	}
	ul.c-spnav.c-listMenu {
		max-width: 600px;
		display: block;
	}
	ul.c-spnav.c-listMenu li a {
		font-size: 1.2rem;
		font-weight: 500;
		text-align: center;
		padding: 1rem 0.1rem 0.1rem;
	}
	span.c-smallNavTitle.desc {
		font-size: 0.8rem;
		font-weight: 500;
		display: block;
		white-space: normal;
	}
	div.spMenuright {
		padding-top: 120px;
		align-items: center;
	}
	div.spMenuright button {
		padding: 5px 60px 15px;
		position: relative;
		text-align: center;
		margin-top: -100px;
	}
	div.spMenuright button a {
		font-size: 2.0rem;
	}
	
	div.spMenuright button.reservation span {
		font-size: 1.0rem;
		margin-top: -5px;
		white-space: nowrap;
	}
	div.spMenuright div.info {
		margin-top:  -2rem;
		letter-spacing: 0.01rem;
	}
	div.spMenuright div.info p.tel {
		font-size: 20px;
	}
	div.spMenuright div.info p.time {
		margin-top: -8px;
	}
	div.p-spMenu__body div.spMenuwrap02 {
		padding-top: 2px;
	}
	div.p-spMenu__body div.spMenuwrap02 p {
		line-height: 1.8rem;
	}

	/* ------------------------------
	* CONTACTボタン
	* ------------------------------ */
	.toiawase-btn {
		margin-left: 200px;
		margin-right: -148px;
	}
	.toiawase-btn img {
		left: 28px;
		margin-top: -5px;
	}
	.toiawase-btn span {
		left: 20px;
		top: 20px;
	}
	.toiawase-link {
		width: 100px;
		height: 105px;
		top: 90px;
	}
	
	/* ------------------------------
	* 予約バナー
	* ------------------------------ */
	/*モーダル*/
	.modal-content h2 {
		font-size: 2.0rem;
	}
	div.checkbox label {
		font-size: 1.2rem;
	}
	div.checkbox div.changed button {
		padding: 10px;
	}

	
	/* ------------------------------
	* フッター設定
	* ------------------------------ */
	.footer-subtitle {
		margin-bottom: 10px;
	}
	.swell-block-linkList.is-style-default.footer-linklistleft {
		flex-wrap: nowrap;
	}
	.swell-block-columns.footer-linklist {
		padding-top: 0;
		padding-left: 180px;
	}
	.swell-block-linkList.is-style-default.footer-linklistbottom-J {
		--the-list-padding: 0px 20px 0px;
	}
	.swell-block-columns.footer-linklist {
		--swl-clmn-mrgn--y: 1.0rem;
	}


	/*インスタ*/
	div.wp-block-columns.footer-center-column {
		--wp-column-gap: 2.0em;
}
	.footer-hotelinsta-column, .footer-cafeinsta-column {
		text-align: center;
		margin-bottom: 5px;
	}
	.footer-hotelinsta-btn, .footer-cafeinsta-btn {
		margin-left: 0px;
	}
	.footer-hotelinsta-btn p, .footer-cafeinsta-btn p {
		margin-left: 5px;
	}

	/*予約ボタン*/
	.footer-reservation-btn {
		text-align: center;
		top: 0px;
	}
	
	/*予約ボタン下の電話番号*/
	div.wp-block-column.footer-telnumber-column {
		display: block;
		padding-top: 0px;
	}
	.footer-telnumber {
		padding-top: 0px;
	}
	
	/* ------------------------------
	* メインビジュアル
	* ------------------------------ */
div.p-mainVisual__slideTitle {
	font-size: 3.4rem;
	letter-spacing: 0.05em;
}
.p-mainVisual__slideTitle::after {
	font-size: 2.0rem;
	bottom: -40%;
}
.-height-full .p-mainVisual__slideText {
	top: -5%;
	font-size: 1.8rem;
}
.p-mainVisual__slideText::after {
	background-size: content;
	margin-left: -90px;
	height: 30px;
	width: 500px;
	bottom: -60%;
}
/* ------------------------------
*TOPページ
* ------------------------------ */
.topcopy {
	padding-top: 0px;
}

/*topの画像*/
.wp-block-image.copytopimg {
	margin-right: 0;
	overflow: hidden;
}
/*花の飾り*/
.top-text1{
	background-size: 60%; 
	background-position: center;  
}
/*カラムの余白*/
.top-page-column {
	margin-top: 100px;
	margin-bottom: 50px;
}
/* カテゴリタイトル */
h2.wp-block-heading.home-category {
	padding-bottom: 0px;
	font-size: 2.3rem;
}
h2.wp-block-heading.home-category::after {
	margin-left: 5px;
}
/*roomsカラムの入れ替え*/
div.swell-block-columns.top-rooms-column {
	display: flex;
}
.swell-block-column.toprooms-order1 {
	order: 1;
}
.swell-block-column.toprooms-order2 {
	order: 2;
}
/*facilityスライド*/
.home-facility-slide {
	margin-top: 10%;
}
/*カテゴリタイトル*/
	h2.wp-block-heading.home-category::after {
		width: 13rem;
		height: 20rem;
		top: 15px;
	}
/*information*/
	h2.wp-block-heading.home-center-info {
		text-align: left;		
	}
	h2.wp-block-heading.home-center-info::before {
		content: none;
	}
/*access*/
	h2.wp-block-heading.home-center-access {
		text-align: left;
		padding-top: 30px;
	}
	h2.wp-block-heading.home-center-access::before {
		content: none;
	}
	h2.wp-block-heading.home-center-access::after {
		top: 50px;
	}
.cafe-menu-img.wp-block-column p {
	order: 1;
}
.cafe-menu-img.wp-block-image {
	order: 2;
}

	/* ------------------------------
	*セカンドページ共通
	* ------------------------------ */
	/*パンくずリスト*/
	.p-breadcrumb {
		margin-left: 0px;
	}
	/*トップカラム上の空白指定*/
	.c-page-top-column {
		margin-bottom: 20px;
	}
	/*カラム上下の空白指定*/
	.c-page-column {
		margin-top: 0px;
		margin-bottom: 70px;
	}
	/*最後のカラムの空白指定*/
	.c-page-last-column {
		margin-top: 0px;
		margin-bottom: 0px;
	}


	/* ------------------------------
	*ABOUTページ
	* ------------------------------ */
	/*concept*/
	.wp-block-column.about-img-top {
		display: block;
	}
	
	/*カラムの入れ替え*/
	div.wp-block-column.concept-img3-column {
		display: flex;
		flex-direction: column-reverse;
	}
	/*画像の余白*/
	div.wp-block-column.concept-img2-column {
		bottom: 30px;
	}	
	div.wp-block-column.concept-img3-column {
		bottom: 0px;
	}
	div.wp-block-column.concept-img4-column {
		bottom: 0px;
	}
	
	figure.wp-block-image.size-full.about-img1, figure.wp-block-image.size-full.about-img2 {
		padding-top: 30px;
	}
	figure.wp-block-image.size-full.about-img1 img, figure.wp-block-image.size-full.about-img2 img {
		width: 800px;
 		height: 500px;
		max-width: 100%;
	}
	figure.wp-block-image.size-full.about-img-bottom {
		padding-top: 0px;
	}
	div.wp-block-column.about-align1 figure {
		text-align: center;
	}
	div.wp-block-column.about-align2 figure {
		text-align: center;
	}
	/*topの文字位置*/
	.wp-block-columns.concept-img-column {
		padding-left: 0px;
	}
	
	/*rooms*/
	figure.wp-block-image.size-full.rooms-img1 img, figure.wp-block-image.size-full.rooms-img2 img {
		width: 800px;
 		height: 500px;
	}

/*dining*/
	figure.wp-block-image.size-full.dining-img1 img, figure.wp-block-image.size-full.dining-img2 img {
		width: 800px;
 		height: 500px;
	}
	


/* ------------------------------
*Cafe&Restaurantページ
* ------------------------------ */
	.wp-block-columns.cafe-page-column, .wp-block-columns.cafe-page-column2 {
	display: block;
}

	
/*上部のカテゴリメニュー*/
div.wp-block-columns.cafe-category-column1 {
	padding-left: -40px;
}
.cafe-category1-btn, .cafe-category2-btn, .cafe-category3-btn {
	font-size: 1.5rem;
}
.cafe-category3-btn {
	margin-left: 0px;
}
.cafe-category1-btn::before {
	margin-left: -10px;
}
.cafe-category2-btn::before {
	margin-left: -5px;
}
.cafe-category3-btn::before {
	left: -61px;
}	

/*朝食カラム前の空白*/
.cafe-category-topcolumn {
	padding-top: 80px;
}

/*ふわりカフェインスタ*/
.fuwari-insta-txt {
	font-size: 1.0rem;
	text-align: left;
}
.fuwari-insta-txt br {
	display: none;
}
.fuwari-insta-txt::after {
	height: 0;
}
.fuwari-insta-txt::before {
	height: 0;
}
	
/*ふわりカフェインスタ*/
	.fuwari-insta-txt {
		margin-right: 5vw;
		text-align: center;
	}
	/*ふわりカフェインスタボタン（cafeページ）*/
	.cafepage-insta-btn {
		margin-left: 0px;
		bottom: 10px;
		text-align: center;
	}
	.cafepage-insta-btn p {
		font-weight: 500;
		margin: -80px 0 -35px 0;
	}
	.cafepage-insta-btn span {
		font-size: 1.8rem;
		margin-left: 2vw;
	}
	.cafepage-insta-btn i.icon-instagram {
		font-size: 2.5rem;
		margin-right: 200px;
		bottom: 10px;
	}

/*カラムの入れ替え*/
div.swell-block-columns.cafe-menu-img {
	display: flex;
}
.swell-block-column.burger-order1 {
	order: 1;
}
.swell-block-column.burger-order2 {
	order: 2;
}

/*上部のランチメニュー*/
div.wp-block-columns.cafe-category-column2 {
	padding-left: 20px;
}
.cafe-menu1-btn::before {
	margin-left: -10px;
}
.cafe-menu2-btn::before {
	margin-left: -10px;
}
.cafe-menu3-btn::before {
	margin-left: -16px;
}
.cafe-menu3-btn::after {
	margin-right: 18em;
}

/*画像キャプション*/
.cafe-menu-img figcaption.wp-element-caption {
	font-weight: 600;
	font-size: 0.8rem;
}	
/*ランチotherメニュー表基本*/
.wp-block-table.cafe-other-table th, .wp-block-table.cafe-other-table td {
	display: block;
}
.wp-block-table.cafe-other-table td {
	font-weight: 500;
	margin-right: 0px;
	margin-top: -30px;
}
.other-place {
	font-size: 0.95rem;
	font-weight: 500;
	padding-top: 5px;
	padding-bottom: 10px;
}
.other-menu-title {
	margin-right: 0px;
	padding-bottom: 10px;
}
	.hamburger-othercolumn, .softdrink-othercolumn, .frappe-othercolumn {
		top: 30px;
	}
/*フラッペの表*/
.frappe-othercolumn {
	top: 80px;
}
.wp-block-table.frappe-table td {
	font-weight: 400;
	margin-top: -10px;
	margin-left: 30px;
}
/*BBQの表*/
.wp-block-table.cafe-bbq-table th {
	padding: 25px 0 0;
	font-size: 1.05rem;
}
/*BBQ要予約*/
.cafe-category-bbqsubtitle {
	right: 10%;
}
.cafe-category-bbqsubtitle::after {
	margin-left: 10px;
}
/*BBQ写真注釈*/
.bbqimg-come {
	margin-top: -20px;
	font-size: 0.85rem;
}

	
/* ------------------------------
*FACILITYページ
* ------------------------------ */

.facility-top-comment {
	font-size: 0.9rem;
}
h2.wp-block-heading.facility-title {
	padding-top: 40px;
}	
.facility-subtitle, .facility-poolsubtitle {
	right: 0px;
	bottom: 40px;
}

/*プール要予約*/
.facility-poolsubtitle::after {
	padding-left: 10px;
}
/*プール表*/
.wp-block-table.facility-pool-table th {
	padding: 25px 0 0;
	font-size: 1.05rem;
}

	/* ------------------------------
	*information
	* ------------------------------ */
	ul.p-postList.-type-card, .p-postList.-type-thumb {
		display: block;
		text-align: center;
		padding-left: 0;
		padding-right: 0;
		margin: auto;
		width: 300px;
	}	

/* ------------------------------
*accessページ
* ------------------------------ */
	.access-subtitle {
		font-size: 18px;
		padding-left: 0px;
		padding-top: 0px;
		margin-left: 0px;
		font-weight: 500;
	}
	.access-subtitle-route {
		padding-top: 50px;
	}
	/*SP版では非表示*/
	div.wp-block-columns.access-column.pc_only {
		display: none!important;
	}
	/*○○経由*/
	.access-keiyu {
		font-size: 1.2rem;
		padding-bottom: 0px;
		padding-top: 70px;
	}
	/*○○経由 横線*/
	.access-keiyu::before, .access-keiyu::after {
		width: 30%;
	}
/*ルート　ブラウンの枠*/
.access-citytitle {
	width: 80%;
	margin-left: 10%;
}
/*ルート 薄いブラウンの枠*/
.access-keiyucitytitle {
	width: 80%;
	margin-left: 10%;
}
/*ルート 濃いブルーの枠*/
.access-hoteltitle {
	width: 80%;
	margin-left: 10%;
}
	/*ルート 移動手段*/
	.access-plane1::before {
		margin-left: 45px;
	}
	.access-car::before {
		margin-left: 72px;
	}
	
/*送迎車*/
h2.wp-block-heading.access-soge-title {
	font-size: 1.7rem;
}
/*レンタカー店舗*/
	.rental-group-title {
	font-weight: 500;
	}
.rental-group {
	padding: 15px;
}
.rental-group li {
	font-weight: 500;
	margin: 5px 0px 5px;
	line-height: 25px;
}
.access-routeB-txt, .access-routeC-txt, .access-routeD-txt, .access-routeE-txt, .access-routeF-txt {
	font-weight: 500;
}
	/*タイトル下のカラム*/
	.sogerental-column {
		margin-left: 20px;
		margin-right: 20px;
	}
	.sogerental-column p br {
		display: none;
	}
	
	/* ------------------------------
	*privacy policyページ
	* ------------------------------ */
	.policy-list, .policy-column {
		margin-left: 0px;
	}
	
}

@media (max-width 781px) {
	781px以下に適用されるCSS（特殊ブレイクポイント）
	.wp-block-columnsnot(.is-not-stacked-on-mobile).wp-block-column {
		flex-basis: auto !important;
	}

	div#content.l-content.l-container {
		padding-left: 0 !important;
	}

}
