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

@media (max-width: 599px) {
	/* 599px以下に適用されるCSS（スマホ用） */

	/* ------------------------------
	* 基本設定
	* ------------------------------ */
	* {
		font-size: 16px;
	}
	
	/*画像の大きさ*/
	figure.default-img img {
		height: 300px;
		width: 400px;
		object-fit: cover;
	}
	div.default-img figure img {
		height: 300px;
		width: 400px;
		object-fit: cover;
	}
	figure.default-img2 img {
		width: 300px;
		object-fit: cover;
	}
	
	/*行間*/
	body p {
		line-height: 1.6rem;
	}
	
	/*基本のボタン*/
	.swell-block-button__link span {
		padding-top: 1rem;
		padding-bottom: 1rem;
		line-height: 1.5rem;
	}
	.swell-block-button__link::first-line {
		bottom: 10px;
		font-size: 1.5rem;
	}
	/*基本のボタン余白*/
	.btn-column {
		padding-top: 60px;
		padding-bottom: 60px;
	}
	div.wp-block-image {
		max-width: 100%; 
		height: auto;
	}
	/*フルワイド二重箇所の余白*/
		.has-border, div.has-background, p.has-background {
		padding: 0 2em 5em;
	}
	div.wp-block-column {
		display: flex;
		justify-content: center;
		flex-direction: column; 
		margin: 0 auto;
	}
	
	.wp-block-columns {
		display: block;
	}
	
	/*facilityスライド*/
	.loop-slider .swell-block-column figure {
		width: 400px;
	}

	/* ------------------------------
	* ヘッダー設定
	* ------------------------------ */
	/* ロゴマーク */
	.c-headLogo {
		width: 90px;
		margin-top: -0px;
		margin-left: 10px;
	}
	
	
	/* ------------------------------
	* フルスクリーンメニュー内の設定
	* ------------------------------ */
	/*ハンバーガー*/
	.icon-menu-thin {
		top: 25px;
		height: 90px;
		width: 100px;
		margin-left: 0px;
	}
	.icon-menu-thin:before {
		margin-bottom: 0px;
	}
	.icon-menu-thin::after {
		font-size: 12px;
		margin-left: -15px;
		margin-top: 5px;
	}
	.icon-close-thin::after {
		font-size: 12px;
		margin-left: 36px;
	}
	.icon-close-thin::before {
		margin-bottom: 0px;
		margin-top: 5px;
		margin-left: 35px;
	}
	/*メニュー*/
	.-right .p-spMenu__closeBtn {
		height: 90px;
		width: 100px;
	}
	div.p-spMenu__body {
		margin-top:	0px;
	}
	ul.c-spnav.c-listMenu {
		margin-top: 20px;
	}
	ul.c-spnav.c-listMenu li a {
		font-size: 18px;
		font-weight: 500;
		text-align: center;
		padding: 1rem 0.1rem 0.1rem;
	}
	span.c-smallNavTitle.desc {
		font-size: 14px;
	}
	div.spMenuright button {
		padding: 25px 40px 20px;
		position: relative;
	}
	div.spMenuright button a {
		font-size: 1.5rem;
	}
	
	div.spMenuright button.reservation span {
		font-size: 15px;
		margin-top: 10px;
	}
	div.spMenuright div.info {
		margin-top:  2rem;
		padding: 0;
	}
	div.spMenuright div.info p.tel {
		font-size: 18px;
	}
	div.spMenuright div.info p.time {
		margin-top: 5px;
	}
	div.p-spMenu__body div.spMenuwrap02 {
		padding-top: 10px;
	}
		div.p-spMenu__body div.spMenuwrap02 a {
		font-size: 14px;
		letter-spacing: 0;
	}
	
	.p-spMenu__inner a {
		font-size: 28px;
	}
	
	/* ------------------------------
	* CONTACTボタン
	* ------------------------------ */
	.toiawase-btn {
		margin-left: 100px;
		margin-right: -148px;
	}
	.toiawase-btn img {
		top: 20px;
	}
	.toiawase-btn span {
		top: 15px;
		left: 21px;
	}
	.toiawase-link {
		top: 68px;
		width: 100px;
		height: 90px;
	}

	/* ------------------------------
	* 予約バナー
	* ------------------------------ */
	.reservation-banner {
		background-color: rgba(132, 197, 207, 1);
	}
	.reservation-banner p {
		font-size: 25px;
		width: 350px;
		padding-left: 40px;
	}
	.reservation-banner span {
		font-size: 18px;
	}
	.reservation-banner::before {
		background-size: 35px;
		margin-left: 5px;
	}
	
	/*モーダル*/
	.modal-content {
    padding: 20px 20px 50px;
	}
	.modal-content h2 {
		font-size: 1.4rem;
	}
	div.checkbox label {
		font-size: 16px;
		line-height: 1.3em;
		padding-left: 5px;
	}
	div.checkbox div.changed {
		margin-top: 5px;
	}
	div.checkbox div.changed button {
		font-size: 18px;
		width: 170px;
		margin: 0 0 0;
		padding: 20px;
	}
	
	/* ------------------------------
	* フッター設定
	* ------------------------------ */
	.footer-title {
		font-size: 2.5rem;
		letter-spacing: 0.05em;
		margin-bottom: 10px;
		top: 20px;
	}
	.footer-subtitle {
		font-size: 1.7rem;
		letter-spacing: 0.05em;
		margin-bottom: 10px;
	}	
	div.swell-block-columns.footer-linklist {
		font-size: 1.1rem;
		margin-left: -60px;
		padding-top: 40px;
	}
	div.swell-block-columns.footer-linklist li {
	margin-bottom: 7px;	
	}
	div.wp-block-columns.footer-linklist-column .swell-block-linkList.is-style-default.-flex {
    --the-gap: .0em .0em;
	}
	div.swell-block-columns.footer-linklist  div.wp-block-columns.footer-column  ul.swell-block-linkList.is-style-default {
    --the-gap: 0em;
}
	.swell-block-linkList.is-style-default.footer-linklistbottom {
		--the-list-padding: 10px 20px 10px;
	}
	
	/*インスタ*/
	div.wp-block-columns.footer-center-column {
		--wp-column-gap: 0;
	}
	.footer-hotelinsta-btn {
		padding-top: 30px;
	}
	 .footer-hotelinsta-column, .footer-cafeinsta-column {
		margin-bottom: 10px;
	}
	
	/*予約ボタン*/
	.icon-chevron-right {
		top: 4px;
		left: px;
		right: 5px;
		font-size: 20px;
	}
	.footer-reservation-btn {
		line-height: 0.05px;
	}
	.footer-reservation-btn a::before {
		width: 200px;
	}
	.footer-reservation-btn p {
		font-size: 30px;
		margin-left: 0px;
		line-height: 0.7em;
	}
	.footer-reservation-btn p br {
		display: block;
	}
	.footer-reservation-btn span {
		font-size: 16px;
		margin-left: 20px;
	}
	.footer-telnumber {
		font-size: 1.0rem;
		white-space: normal
	}
	ul.swell-block-linkList.footer-linklistbottom span {
		font-size: 13px;
	}
	
	/*予約ボタン下の電話番号*/
	.footer-telnumber {
		text-align: center;
		font-size: 16px;
		padding-top: 0px;
	}

	
	/* ------------------------------
	* メインビジュアル
	* ------------------------------ */
	div.p-mainVisual__slideTitle {
		font-size: 2.5rem;
		letter-spacing: 0.05em;
	}
	.p-mainVisual__slideTitle::after {
		font-size: 1.5rem;
		bottom: -35%;
	}
	.-height-full .p-mainVisual__slideText {
		margin-top: -5px;
		font-size: 1.3rem;
		left: 50%;
		position: relative;
		transform: translateX(-50%);
		text-align: center;
	}
	.p-mainVisual__slideText::after {
		background-image: none;
	}



	/* ------------------------------
	*view moreボタン
	* ------------------------------ */
	.more-btn a {
		letter-spacing: 0.05em;
		font-weight: 500;
	}

	/* ------------------------------
	*TOPページ
	* ------------------------------ */
	.topcopy {
		padding-top: 0px;
		font-size: 1.5rem;
		line-height: 2.5rem;
	}

	/* カテゴリタイトル */
	h2.wp-block-heading.home-category {
		padding-bottom: 0;
		font-size: 1.8rem;
	}
	h2.wp-block-heading.home-category::after {
		background-image: url(/tokunoshima/wp-content/uploads/2025/09/wave2_sp-e1756728678304.png);
		width: 100%;
		top: 0.8rem;
	}

	/*access*/
	h2.wp-block-heading.home-center-access::after  {
		background-image: url(/tokunoshima/wp-content/uploads/2025/09/wave2_sp-e1756728678304.png);
		width: 100%;
		top: 2.7rem;
	}

	/* ------------------------------
	*セカンドページ共通
	* ------------------------------ */
	/*パンくずリスト*/
	.p-breadcrumb__list {
		overflow: visible;
	}
	/*ヘッダータイトル*/
	.c-pageTitle{
		font-size: 2.0rem;
		top: 200px
	}
	/*上部のキャッチコピー*/
	.c-page-copy {
		font-size: 22px;
		width: 600;
		line-height: 2rem;
	}
	/*テキスト上下の空白指定*/
	.c-page-txt {
		padding-top: 20px;
		padding-bottom: 20px;
	}
	
	/* ------------------------------
	*ABOUTページ
	* ------------------------------ */
	/*メイン*/
	.about-here-image {
		padding-top: 20px;
	}
	.c-page-copy-sub {
		font-size: 1.0rem;
		top: -30px;
		left: 6px;
	}
	/*concept*/
	.wp-block-columns.concept-column {
		display: block;
	}
	h2.wp-block-heading.about-title1 {
		font-size: 4.0rem;
		letter-spacing: 0.02em;
	}
	.c-page-copy2 {
		padding-top: 20px;
	}
	div.wp-block-column.concept-img2-column {
		bottom: 0px;
	}	
	figure.wp-block-image.size-full.about-img1 img, figure.wp-block-image.size-full.about-img2 img {
 	height: 300px;
	}
	div.wp-block-column.about-align1.concept-img1-column figure {
    min-width: auto;
}
  figure.wp-block-image.size-full.about-img1 img {
		min-width: auto;
  }

	
	
	/*rooms*/
	h2.wp-block-heading.about-title2 {
		font-size: 4.0rem;
		letter-spacing: 0.02em; 
	}
	figure.wp-block-image.size-full.rooms-img1 img, figure.wp-block-image.size-full.rooms-img2 img {
 	height: 300px;
	}
	
	/*dining*/
	h2.wp-block-heading.about-title3 {
		font-size: 4.0rem;
		letter-spacing: 0.02em;
	}
	figure.wp-block-image.size-full.dining-img1 img, figure.wp-block-image.size-full.dining-img2 img {
 	height: 300px;
	}

	/*共通 画像の配置*/
	.about-img {
		padding-top: 80px;
	}



	/* ------------------------------
	*ROOMSページ
	* ------------------------------ */
	/*共通 カラムの余白*/
	.rooms-column{
		padding-top: 20px;	
	}
	/*共通 画像の配置*/
	.rooms-img{
		padding-top: 20px;
	}
	/*b-rooms 画像の配置*/
	.roomsb-img{
		padding-top: 10px;
	}
	/*A棟B棟タイトル*/
	h2.wp-block-heading.rooms-a, h2.wp-block-heading.rooms-b {
		font-size: 1.8rem;
	}
	h2.wp-block-heading.rooms-a::after {
		font-size: 0.9rem;
		left: 150px;
		bottom: -25px;
	}
	h2.wp-block-heading.rooms-b::after {
		font-size: 0.9rem;
		left: 165px;
		bottom: -28px;
	}

	/*テーブルタイトル*/
	h2.wp-block-heading.rooms-category{
		font-size: 2.0rem;
	}
	/*テーブルタイトルとの空白*/
	.wp-block-table.service-table, 
	.wp-block-table.guide-table{
		padding-top: 50px;
	}
	/*roomsテーブル共通*/
	.wp-block-table.service-table th, .wp-block-table.guide-table th {
		padding: 2.0em 0 3.0em;
		border-top-width: 0;
		font-size: 16px;
		line-height: 1.5rem;
	}
	.wp-block-table.service-table td, .wp-block-table.guide-table td {
		padding: 1.8em 0 1.5em;
		line-height: 1.5em;
	}


	/* ------------------------------
	*Cafe&Restaurantページ
	* ------------------------------ */
	/*上部のカテゴリメニュー*/
	.cafe-category1-btn p, .cafe-category2-btn p, .cafe-category3-btn p {
		font-size: 22px;
		letter-spacing: 0.02rem;
	}
	/*カテゴリ共通*/
	h2.wp-block-heading.cafe-category {
		font-size: 35px;
	}
	h3.wp-block-heading.cafe-category-title, h3.wp-block-heading.cafe-category-hamburger, h3.wp-block-heading.cafe-category-softdrink, h3.wp-block-heading.cafe-category-frappe, h3.wp-block-heading.cafe-category-bbq {
		font-size: 22px;
	}
	h3.wp-block-heading.cafe-category-hamburger::after {
		font-size: 16px;
	}
	h3.wp-block-heading.cafe-category-softdrink::after {
		font-size: 16px;
	}
	h3.wp-block-heading.cafe-category-frappe::after {
		font-size: 16px;
	}
	h3.wp-block-heading.cafe-category-bbq::after {
		font-size: 16px;
	}

	/*ランチ ふわりカフェ情報*/
	h3.wp-block-heading.cafe-menu {
		font-size: 30px;
		font-weight: 500;
	}
	/*ふわりカフェインスタ*/
	.fuwari-insta-txt {
		font-size: 16px;
	}
	/*ふわりカフェインスタボタン（cafeページ）*/
	.cafepage-insta-btn {
		font-size: 1.0rem;
		bottom: 0px;
	}
	.cafepage-insta-btn p {
		margin: -5vw 0 -8vw 0;
	}
	.cafepage-insta-btn span {
		font-size: 30px;
	}
	.cafepage-insta-btn i.icon-instagram {
		font-size: 35px;
		margin-right: 210px;
		top: 40px;
	}
	/*ランチ ふわりカフェ情報*/
	h3.wp-block-heading.cafe-menu {
		padding-top: 50px;
	}
	
	/*上部のランチメニュー*/
	.cafe-menu1-btn p, .cafe-menu2-btn p, .cafe-menu3-btn p {
		font-size: 22px;
		letter-spacing: 0.02rem;
	}

	/*画像キャプション*/
	.cafe-menu-img figcaption.wp-element-caption {
		font-weight: 600;
		font-size: 12px;
	}
	.cafe-img-caption2 {
		font-size: 12px;
		line-height: 1.5rem;
	}
	
	/*ランチotherメニュー表基本*/
	.wp-block-table.cafe-other-table th, .wp-block-table.cafe-other-table td {
		margin-top: 10px;
}
	.wp-block-table.cafe-other-table td {
		margin-top: 0px;
}
	.other-place {
		font-size: 16px;
	}
	.other-menu-title {
		font-size: 22px;
	}
	
	/*フラッペの表*/
	.wp-block-table.frappe-table td {
		margin-top: 10px;
		margin-left: 20px;
}
	
	/* ------------------------------
	*FACILITYページ
	* ------------------------------ */
	.facility-subtitle, .facility-poolsubtitle {
		bottom: 0px;
	}

	/* ------------------------------
	*information
	* ------------------------------ */
	ul.p-postList.-type-card, .p-postList.-type-thumb {
		width: 250px;
	}
	.-type-card .p-postList__thumb {
		width: 250px;
		height: 270px;
	}
		.-sidebar-off .-type-card.-pc-col3 .p-postList__item, .-sidebar-off .-type-thumb.-pc-col3 .p-postList__item {
		width: 250px;
	}
	.p-postList__thumb:before {
		height: 250px;
	}
	.p-postList__body {
		width: 250px;
		margin-top: -20px;
	}
	span.p-breadcrumb__text {
    white-space: normal;
	}

	/* ------------------------------
	*information個別投稿ページ
	* ------------------------------ */
	#body_wrap.news {
		margin-top: 170px;
	}
	
	
	/* ------------------------------
	*accessページ
	* ------------------------------ */
	h2.wp-block-heading.access-title {
		font-size: 1.3rem;
		padding-bottom: 0px;
	}
	.access-come {
		top: -10px;
		padding: 0px;
		margin-bottom: 10px;
		white-space: normal;
		left: 0px;
	}
	.access-address {
		text-indent: 0em;
		padding-left: 5px;
	}
	.access-tel::before {
		margin-left: 0px;
	}
	.access-info {
		margin-left: 28px;
	}
	/*○○経由*/
	.access-keiyu {
		font-size: 1.2rem;
		padding-bottom: 0px;
	}
	/*ルート 移動手段*/
	.access-car::before {
		margin-left: 70px;
	}
	/*送迎車*/
	h2.wp-block-heading.access-soge-title {
		font-size: 1.2rem;
		left: 0px;
		padding-left: 0px;
		padding-bottom: 0px;
		margin-bottom: -2px;
	}
	h2.wp-block-heading.access-soge-title span {
		font-size: 1.2rem;
		display: inline-block;
	}
	h2.wp-block-heading.access-soge-title::before {
		display: none;
	}
	/*レンタカー*/
	h2.wp-block-heading.access-rental-title {
		font-size: 1.2rem;
		left: 0px;
		padding-left: 0px;
		padding-right: 0px;
		line-height: 1.8rem;
		margin-bottom: -2px;
	}
	h2.wp-block-heading.access-rental-title span {
		font-size: 1.2rem;
		display: inline-block;
	}
	h2.wp-block-heading.access-rental-title::before {
		display: none;
	}
	/*レンタカー店舗*/
	.rental-group-title {
		font-size: 1.2rem;
		bottom: -10px;
		left: 5px;
	}
	.rental-group {
		background-color: rgba(175, 218, 225, 0.3);
		padding: 15px;
		width: 95%;
		align-items: center;
		left: 10px;
	}
	
	/* ------------------------------
	*social media policyページ
	* ------------------------------ */
	h3.wp-block-heading.insta-title {
		margin-top: 0px;
		font-size: 20px;
	}
	.policy-account-column {
		margin-left: 0px;
	}
	/*ホテルインスタボタン*/
	.hotel-insta-btn {
		margin-left: 0;
		text-align: center;
		margin-top: 10px;
	}
	.hotel-insta-btn p {
		font-size: 18px;
		margin: -70px 0 -25px 0;
		padding-top: 10px;
	}
	.hotel-insta-btn span {
		font-size: 30px;
		margin-left: 30px;
	}
	.hotel-insta-btn i.icon-instagram {
		position: relative;
		font-size: 35px;
		margin-right: 200px;
		top: 20px;
	}
	
	/*ふわりカフェインスタボタン*/
	.cafe-insta-btn {
		margin-left: 0;
		text-align: center;
		margin-top: 10px;
	}
	.cafe-insta-btn p {
		font-size: 18px;
		margin: -70px 0 -25px 0;
		padding-top: 10px;
	}
	.cafe-insta-btn span {
		font-size: 30px;
		margin-left: 40px;
	}
	.cafe-insta-btn i.icon-instagram {
		position: relative;
		font-size: 35px;
		margin-right: 200px;
		top: 20px;
	}
	
	/* ------------------------------
	*お問い合わせ
	* ------------------------------ */
	div.contactformwrap span.title, div.contactformwrap span.title02 {
		margin-bottom: -10px;
	}
	div.contactformwrap span.title02::after {
		height: 20px;
		font-size: 15px;
		padding: 12px 15px;
	}
	.wpcf7-form-control.wpcf7-submit {
		margin: 50px 0 80px;
	}
	/*送信しました枠*/
	.wpcf7 form.sent .wpcf7-response-output {
		line-height: 1.5em;
	}
	/*必須項目未入力時のエラー*/
	.wpcf7-not-valid-tip {
		line-height: 1.5em;
		margin-top: 15px;
	}
	/*入力内容問題ありの枠*/
	.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
    line-height: 1.5em;
	}

}
