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

@font-face {
    font-family: 'Zen Old Mincho';
    src: url('/tokunoshima/wp-content/uploads/fonts/ZenOldMincho-Regular.ttf') format('truetype');
	font-weight: 400;
}
@font-face {
    font-family: 'Zen Old Mincho';
    src: url('/tokunoshima/wp-content/uploads/fonts/ZenOldMincho-Medium.ttf') format('truetype');
	font-weight: 500;
}
@font-face {
    font-family: 'Zen Old Mincho';
    src: url('/tokunoshima/wp-content/uploads/fonts/ZenOldMincho-SemiBold.ttf') format('truetype');
	font-weight: 600;
}

@font-face {
    font-family: 'Noto Sans JP';
    src: url('/tokunoshima/wp-content/uploads/fonts/NotoSansJP-Regular.ttf') format('truetype');
    font-weight: 400;
}
@font-face {
    font-family: 'Noto Sans JP';
    src: url('/tokunoshima/wp-content/uploads/fonts/NotoSansJP-Medium.ttf') format('truetype');
    font-weight: 500;
}
@font-face {
    font-family: 'Noto Sans JP';
    src: url('/tokunoshima/wp-content/uploads/fonts/NotoSansJP-SemiBold.ttf') format('truetype');
    font-weight: 600;
}
@font-face {
    font-family: 'Noto Sans JP';
    src: url('/tokunoshima/wp-content/uploads/fonts/NotoSansJP-Bold.ttf') format('truetype');
    font-weight: 700;
}

@media screen,print {
	/* 960px以上に適用されるCSS（PC用）、印刷に適用されるCSS */

	
	/* ------------------------------
	*共通
	* ------------------------------ */
		/*フォント設定*/
	* {
		font-size: 16px;
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 400;
		letter-spacing: 0.05rem;
	}
	
	.mincho-E {
		font-family: 'Times New Roman', serif;
	}
	.mincho-J {
		font-family: "Zen Old Mincho", serif;
		font-weight: 600;
	}	
	body p {
		line-height: 2rem;
		margin: 0px;
		padding: 0px; 
	}
	
	/*カラムのgap上書き*/
	.wp-block-columns {
		--wp-column-gap: 3.0em;
	}

	.swell-block-columns {
		--swl-clmn-mrgn--x: 3.0rem;
	}

	/*h2タグのマージン上書き*/
	.post_content h2 {
		margin: 0 0 0.8em;
	}

	/*h3タグのマージン上書き*/
	.post_content h3 {
		margin: 0 0 0.8em;
	}
	
	/*ページトップボタンの位置*/
	.p-fixBtnWrap {
   padding-bottom: 80px;
	}

	.c-fixBtn:hover {
		background-color: #AFDAE1!important;
	}
	
	.l-container.w-footer.-col1 {
		display: block;
	}
	
	/* ------------------------------
	* ヘッダー設定
	* ------------------------------ */
	/* ロゴマーク */
	.-series .l-header__logo {
		background-color: #fff;
		margin-top: -90px;
		pointer-events: auto;
	}
	.c-headLogo.-img {
		margin-right: 5px;
		margin-left: 5px;
	}
	/* ヘッダーを固定 */
	.l-header {
		position: fixed!important;
		background: transparent;
		pointer-events: none;
	}
	/* 下層ページのヘッダー幅をトップに合わせる */
	.l-header .l-container {
		max-width: 100%!important;
	}
	/* ヘッダーメニューを非表示 */
	nav#gnav {
		display: none;
	}
	/* ヘッダー左右の余白 */
	div.l-header__inner.l-container	{
		padding-left: 0!important;
		padding-right: 0!important;
	}
	/* ------------------------------
	* PCでハンバーガーボタンを表示させる設定 
	* ------------------------------ */
	.l-header__menuBtn.sp_ {
		display: block!important; /* ハンバーガーボタンを表示 */
		pointer-events: auto;
	}
	.-series .l-header__inner {
		align-items: center;  /* ハンバーガーボタンの上下位置調整 */
	}
	.p-spMenu {
		display: block; /* 開閉メニューを有効 */
	}

	/* ------------------------------
	* 開閉メニューのフルスクリーン設定
	* ------------------------------ */
	.p-spMenu__inner {
		--color_menu_text: #4C4C72; /* メニューテキストの色 */
		width: 100vw;
		font-family: "Zen Old Mincho", serif;
	}
	.c-smallNavTitle {
		color: #918163; 
		font-size: 17px;
		font-family: "Zen Old Mincho", serif;
	}
	.p-spMenu__overlay {
		background: transparent;
	}
	.-right .p-spMenu__inner {
		-webkit-transform: translateX(0);
		transform: translateX(0);
		opacity: 0;
		transition: opacity .45s;
	}
	[data-spmenu=opened] .p-spMenu__inner {
		-webkit-transform: translateX(0);
		transform: translateX(0);
		opacity: 1;
	}
	.p-spMenu__inner::before {
		background: var(--color_menu_bg);
		background-image: url(/tokunoshima/wp-content/uploads/2025/07/menuimage_white.png);
		filter: opacity(80);
		backdrop-filter: blur(10px);
		background-repeat: no-repeat;
	}
	/* ------------------------------
	* フルスクリーンメニュー内の設定
	* ------------------------------ */
	.p-spMenu__body {
		display: flex;
		flex-direction: row;
		font-family: "Zen Old Mincho", serif;
		letter-spacing: 0.1em;
		color: var(--color_menu_text);
	}
	/* 開閉メニュー内のタイトルを非表示 */
	.c-widget__title.-spmenu {
		display: none;  
	}
	/* メニューリンクの設定 */
	.c-spnav a {
		border-bottom: none;
	}
	.c-gnav .sub-menu a:before, .c-listMenu a:before {
		content: none;
	}
	.p-spMenu__inner a {
		padding: 1em 0;
		text-align: center;
		transition: transform .5s;
	}
	.p-spMenu__inner a:hover {
		background-color: inherit;
		transform: scale(1.1)
	}
	/*ハンバーガー*/
	.l-header__menuBtn {
		height: auto;
		line-height: initial;
		width: 100px;
		text-align: light;
	}
	.icon-menu-thin {
		position: flexed;
		background-color: #4C4C72;
		width: 110px;
		height: 110px;
		margin-left: -10px;
		margin-bottom: 120px;
		z-index: 20; 
		transition: all 0.3s;
	}
	.icon-menu-thin:hover {
		background-color: #2D2D33;
	}
	.icon-menu-thin:before {
		content: "";
		background-image: url(/tokunoshima/wp-content/uploads/2025/08/menu_icon-e1755823653374.png);
		background-repeat: no-repeat;
		height: 51px;
		width: 52px;
		margin-left: 30px;
		margin-top: 20px;
		margin-bottom: -5px;
	}
	.icon-menu-thin:after {
		content: "MENU";
		font-family: 'Times New Roman', serif;
		font-size: 0.8rem;
		font-style: normal;
		color: #AFDAE1;
		letter-spacing: 0.1rem;
		margin-left: 5px;
	}
	
	.icon-close-thin:before {
		content: "";
		background-image: url(/tokunoshima/wp-content/uploads/2025/09/menu_icon2-e1756959341286.png);
		width: 50px;
		height: 47px;
		margin-top: 10px;
		background-repeat: no-repeat;
	}
	.icon-close-thin::after {
		content: "CLOSE";
		font-family: 'Times New Roman', serif;
		font-size: 0.8rem;
		font-style: normal;
		letter-spacing: 0.1rem;
		color: #AFDAE1;
		margin-left: 2px;
	}
	/*メニュー*/
	.p-spMenu__inner::before {
		backdrop-filter: initial;
	}
	div.p-spMenu.-right::before {
		width: 707px;
		height: 262px;
		content: '';
		background-image: url(/tokunoshima/tokunoshima/wp-content/uploads/2025/07/01.png);
		position: absolute;
		top: 0;
		right: 0;
	}
	div.p-spMenu.-right::after {
		width: 800px;
		height: 235px;
		content: '';
		background-image: url(/tokunoshima/tokunoshima/wp-content/uploads/2025/07/02.png);
		position: absolute;
		bottom: 0;
		left: 0;
	}
	.-right .p-spMenu__closeBtn {
		height: 110px;
		width: 110px;
		background-color: #2D2D33;
	}
	.p-spMenu {
		background-color: #FFFFFF;
	}
	div.p-spMenu__body {
	flex-direction: column;
	align-items: stretch;
	padding-bottom: var(--logo_size_sp);
	height: 100vh;
	overflow-y: auto;
	margin-top: 40px;
	}
	div.p-spMenu__body div.spMenuwrap01 {
		display: flex;
	}
	div.p-spMenu__body div.spMenuleft {
		flex-basis: 60%;
	}
	div.p-spMenu__body div.spMenuright {
		flex-basis: 40%;
	}
	
	div.spMenuleft {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	div.spMenuleft h2 {
		font-size: 3.0rem;
		text-align: center;
		margin-bottom: 90px;
		font-family: "Zen Old Mincho", serif;
	}
	div.spMenuleft h2 span {
		font-size: 2.0rem;
		font-weight: 400;
		color: #918163;
		display: block;
		font-family: "Zen Old Mincho", serif;
	}
	ul.c-spnav.c-listMenu {
		max-width: 500px;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	ul.c-spnav.c-listMenu li {
		min-width: 230px;
		flex-basis: 40%;
	}
	ul.c-spnav.c-listMenu li a {
		font-size: 1.5rem;
		font-weight: 600;
		text-align: left;
		padding: 1em 0 0.7em;
		font-family: "Zen Old Mincho", serif;
	}
	span.c-smallNavTitle.desc {
		font-size: 0.95rem;
		font-weight: 600;
		letter-spacing: 0;
		margin: 0;
		font-family: "Zen Old Mincho", serif;
	}
	div.spMenuright {
		display: flex;
		flex-direction: column;
		align-items: start;
		justify-content: center;
		padding: 130px 0 0 0;
	}
	div.spMenuright button {
		color: #4C4C72;
		background-color: rgba(255,255,255,0);
		border: 1.5px solid #918163;
		padding: 20px 40px 30px;
		box-shadow: 0px 0px 5px rgba(0,0,0,.3), inset 0px 0px 5px rgba(0,0,0,.3);
		transition: opacity 0.3s;
	}
	div.spMenuright button a {
		font-size: 3.0rem;
		font-weight: 500;
		letter-spacing: .2rem;
		font-family: "Zen Old Mincho", serif;
	}
	div.spMenuright button.reservation span {
		display: block;
		font-family: "Zen Old Mincho", serif;
		font-size: 1.1rem;
	}
	div.spMenuright button:hover {
		opacity: 0.7;
	}
	

	
	
	
	div.spMenuright div.info {
		padding: 50px 0 0 ;
	}
	div.spMenuright div.info p.tel {
		font-size: 1.3rem;
		font-family: "Zen Old Mincho", serif;
	}
	div.spMenuright div.info p.time {
		font-size: 16px;
		font-family: "Zen Old Mincho", serif;
	}
	div.p-spMenu__body div.spMenuwrap02 {
		display: flex;
		flex-direction: column;
		align-items: center;
		padding: 60px 0 0 0;
		transition: all 0.3s;
	}
	div.p-spMenu__body div.spMenuwrap02 a {
		font-size: 0.9rem;
		line-height: 1.5rem;
		border-bottom: 1px solid transparent;
		display: inline-block;
		margin-top: 0px;
		font-family: "Zen Old Mincho", serif;
	}
		div.p-spMenu__body div.spMenuwrap02 a:hover  {
		border-bottom: 1px solid #4C4C72;
		top: 20px;
	}

	/* ------------------------------
	* CONTACTボタン
	* ------------------------------ */
	.toiawase-btn {
		position: flexed;
		margin-right: -100px;
		transition: all 0.3s;
		pointer-events: auto;
	}
	.toiawase-btn img {
		position: relative;
		top: 20px;
		left: 30px;
	}
	.toiawase-btn span {
		position: relative;
		font-size: 0.8em;
		font-family: 'Times New Roman', serif;
		font-style: normal;
		color: #4C4C72;
		top: 20px;
		left: 22px;
		transition: all 0.3s;
	}
	.toiawase-link {
		position: relative;
		display: inline-block;
		background-color: #fff;
		width: 110px;
		height: 110px;
		top: 50px;
		transition: all 0.3s;
	}
	.toiawase-link:hover {
		background-color: #d8f6fa;
	}


	/* ------------------------------
	* 予約バナー
	* ------------------------------ */
	.reservation-banner-column {
		text-align: center;
	}
	.reservation-banner {
		text-align: center;
		width: 100%;
		left: 0;
		position: fixed; 
		bottom: 0;
		margin-bottom: 0px;
		z-index: 20;
		background-color: rgba(132, 197, 205, 0.95);
		height: 85px;
		cursor: pointer;
		transition: all 0.3s;
	}
	.reservation-banner:hover {
		background-color: rgba(76, 76, 114, 0.95);
	}
	.reservation-banner p {
		text-align: center;
		position: relative;
		margin-left: auto;
		color: #fff;
		top: 20px;
		font-size: 30px;
		font-weight: 500;
		letter-spacing: 0.08rem;
		border-bottom: 4px solid #4C4C72;
		display: inline-block;
		width: 450px;
		padding-bottom: 10px;
		padding-left: 70px;
	}
	.reservation-banner span {
		font-size: 20px;
	}
	.reservation-banner::before {
		position: absolute;
		content: "";
		background-image: url(/tokunoshima/wp-content/uploads/2025/09/calendar_icon-e1758451120267.png);
		background-repeat: no-repeat;
		height: 38px;
		width: 38px;
		top: 15px;
		margin-left: 30px;
	}
	.reservation-banner:hover p {
		border-bottom: 4px solid #AFDAE1;
	}

	/*モーダル*/
	.modal {
		display: none;
		position: fixed;
		left: 0;
		top: 0;
		width: 100%;
		height: 100%;
		overflow: auto;
		background-color: rgba(0,0,0,0.4);
		z-index: 999;
}
	.modal-content {
    background-color: #fff;
		margin: 3% auto;
		padding: 30px 50px 50px;
    border: 1px solid #888;
		width: 80%;
		height: 70%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
		overflow: auto;
		text-align: left;
	}
	
	.modal-content p {
		margin-bottom: 30px;
	}
	
	.modal-content h2{
		font-family: 'Times New Roman', serif;
		font-weight: 400;
		font-size: 2.5rem;
		margin: 50px 0 30px;
}
	div.checkbox {
		width: 95%;
		margin: 50px auto 0;
		padding: 30px 5%;
		border: 2px solid #4C4C72;
		text-align: center;
}
	div.checkbox p {
		padding: 0 0 20px;
}
	div.checkbox label {
		font-size: 1.3rem;
		margin-bottom: 0;
		padding-left: 10px;
}
	div.checkbox div.changed {
		display: none;
		margin-top: 10px;
}
	div.checkbox input[type=checkbox]:checked ~ div.changed {
		display: block;
}
	div.checkbox div.changed button {
		width: 250px;
		height: auto;
		font-family: span, serif;
		font-weight: 400;
		font-size: 1.3rem;
		color: #FFFFFF;
		letter-spacing: 0.1rem;
		background-color: #4C4C72;
		border: 0px solid #FFFFFF;
		margin: 50px 30px 0;
		padding: 15px 30px;
}
	input#toggle {
		-webkit-appearance: checkbox !important;
		width: 16px;
		height: 16px;
		accent-color: #4C4C72; 
		vertical-align: baseline;
	}
	.close {
		color: #aaa;
		float: right;
		font-size: 28px;
		font-weight: bold;
    position: relative;
    z-index: 4;
	}
	.close:hover,
	.close:focus {
		color: black;
		text-decoration: none;
		cursor: pointer;
	}
	
	
	
	/* ------------------------------
	* フッター設定
	* ------------------------------ */
	/*予約バナー分の余白*/
	.l-footer {
		margin-bottom: 85px;
	}
	.footer-column {
		color: #fff;
		position: relative;
		padding-top: 50px;
		padding-bottom: 0px;
	}
	.footer-title {
		font-size: 3rem;
		letter-spacing: 0.08em;
		margin-bottom: 15px;
	}
	.footer-subtitle {
		font-size: 1.8rem;
		letter-spacing: 0.08em;
		margin-bottom: 20px;
	}
	.swell-block-columns.footer-linklist {
		padding-top: 50px;
	}
	
	.swell-block-linkList.is-style-default.footer-linklistbottom {
		justify-content: center;
		--the-list-padding: 0px 20px 0px;
		font-size: 0.8rem;
	}
	.swell-block-linkList.is-style-default.footer-linklistbottom-J {
		justify-content: center;
		--the-list-padding: 35px 20px 0px;
		font-size: 16px;
	}
	.l-content {
		margin: 0 auto 0;
	}
	.w-beforeFooter {
		margin: 0 auto 0;
	}
	.footer-linklist-column {
		color: #fff;
		position: relative;
	}
	.l-footer__foot, .l-footer__widgetArea {
		padding-bottom: 0;
		padding-top: 0;
	}
	.l-mainContent__inner>.post_content {
		margin: 0;
	}
	.w-frontBottom {
		margin-top: 0;
	}
	.w-footer__box {
		padding-bottom: 0;
	}

	/*インスタ*/
	.footer-hotelinsta-column {
		margin-bottom: -2px;
	}
	.footer-hotelinsta-btn, .footer-cafeinsta-btn {
		margin-left: 9vw;
	}
	.footer-hotelinsta-btn p, .footer-cafeinsta-btn p {
		position: relative;
		font-size: 14px;
		color: #fff;
		transition: all 0.3s;
	}
	.footer-hotelinsta-btn p::before, .footer-cafeinsta-btn p::before {
		position: absolute;
		content: "";
		background-image: url(/tokunoshima/wp-content/uploads/2025/09/footer_instaicon.png);
		background-size: 25px;
		width: 25px;
		height: 25px;
		background-repeat: no-repeat;
		margin-left: -30px;
		margin-top: 2px;
	}
	
	
	/*フッターリンクホバー時*/
	div.wp-block-columns.footer-column ul, div.wp-block-columns.footer-linklist-column ul {
    --the-color: #fff;
}
	div.wp-block-columns.footer-linklist-column a ,  div.swell-block-columns.footer-linklist a {
		transition: all 0.3s;
		font-family: 'Times New Roman', serif;
	}
	div.wp-block-columns.footer-linklist-column span ,  div.swell-block-columns.footer-linklist span {
		font-family: 'Times New Roman', serif;
	}
	div.swell-block-columns.footer-linklist a {
		border-bottom: 1px solid transparent;
		display: inline-block;
	}
 div.swell-block-columns.footer-linklist a:hover, .footer-hotelinsta-btn p:hover, .footer-cafeinsta-btn p:hover {
		border-bottom: 1px solid #fff;
		display: inline-block;
	}
	
	/*予約ボタン*/
	.icon-chevron-right {
		position: relative;
		top: 7px;
	}	
	.footer-reservation-btn {
		text-align: center;
		top: 10px;
		transition: all 0.3s;
	}
	.footer-reservation-btn a {
		white-space: nowrap;
		border-bottom: 1px solid #fff;
		padding-bottom: 0.7rem;
		display: inline-block;
		transition: all 0.3s;
	}
		.footer-reservation-btn a:hover {
		border-bottom: 1px solid #AFDAE1;
	}
	
	.footer-reservation-btn p {
		font-family: 'Times New Roman', serif;
		font-size: 30px;
		letter-spacing: 0.1em;
		color: #fff;
		display: block;
		left: 20px;
		margin-right: 0;
		margin-left: auto;
		text-decoration: none;
		cursor: pointer;
		transition: all 0.3s;
	}
	.footer-reservation-btn p br {
		display: none;
	}
	.footer-reservation-btn span {
		font-family: "Zen Old Mincho", serif;
		font-size: 16px;
		letter-spacing: 0.1em;
		color: #fff;
		font-weight: 600;
		margin-right: 0;
		margin-left: auto;
		position: relative;
		text-decoration: none;
		cursor: pointer;
	}


	/*予約ボタン下の電話番号*/
	.footer-telnumber-column {
		text-align: center;
	}
	.footer-telnumber {
		display: inline-block;
  	text-align: left;
		max-width: 600px; 
		font-size: 16px;
		padding-top: 20px;
		line-height: 20px;
		white-space: nowrap;
	}


	/* ------------------------------
	* メインビジュアル
	* ------------------------------ */
	div.p-mainVisual__slideTitle{
		top: -10%;
		left: 50%;
		position: relative;
		transform: translateX(-50%);
		font-family: 'Times New Roman', serif;
		font-size: 4rem;
		font-style: normal;
		letter-spacing: 0.05em;
		white-space: nowrap;
	}
	.p-mainVisual__slideTitle::after {
		content: "Resort hotel & Office";
		font-size: 2rem;
		color: #fff;
		left: 50%;
		transform: translateX(-50%);
		position: absolute;
		bottom: -30%;
		white-space: nowrap;
	}

	.-height-full .p-mainVisual__slideText {
		font-family: "Zen Old Mincho", serif;
		font-size: 2.0rem;
		left: 50%;
		position: relative;
		transform: translateX(-50%);
		top: -50px;
	}
	.p-mainVisual__slideText::after {
		content: "";
		background-image: url(/tokunoshima/wp-content/uploads/2025/06/wave1.png);
		background-repeat: no-repeat;
		margin-left: -50px;
		height: 50px;
		width: 600px;
		transform: translateX(-50%);
		position: absolute;
		bottom: -90%;
	}



	/*access白枠のマージン*/
	.has-border, div.has-background, p.has-background {
		padding: 5em;
	}

	/*基本のボタン*/
	.swell-block-button__link span {
		color: #4C4C72;
		font-family: 'Times New Roman', serif;
		display: block;
	}
	.swell-block-button__link::first-line {
		font-size: 2.5rem;
		letter-spacing: 0.05em;
	}
	a.swell-block-button__link {
		background: #fff;
		background-image: url(/tokunoshima/wp-content/uploads/2025/07/bottom_ribbon-e1752542608554.png), url(/tokunoshima/wp-content/uploads/2025/07/bottom_ribbon-e1752542608554.png);
		background-repeat: no-repeat;
		background-position: 100% 0%, 0% 100%;
		box-shadow: 3px 3px 10px 1px rgba(0,0,0,0.2);
	}
	
	/*基本のボタンホバー時*/
	div.swell-block-button.red_.is-style-btn_line a {
		transition: all 0.3s;
	}
	div.swell-block-button.red_.is-style-btn_line a:hover {
		background-color: #fff;
		opacity: 0.7;
		transform: scale(1.03)
	}
	
	/*基本のボタン余白*/
	.btn-column {
		padding-top: 100px;
		padding-bottom: 120px;
	}


	/* ------------------------------
	*view moreボタン
	* ------------------------------ */
	div.more-btn {
		margin-bottom: 50px;
	}
	
	.more-btn span {
		font-size: 14px;
		letter-spacing: 0.1em;
		color: #4C4C72;
		font-weight: 600;
	}
	
	.more-btn a {
		display: block;
		position: relative;
		box-sizing: border-box;
		max-width: 150px;
		text-align: center; 
		padding: 4px 16px 4px 0;
		margin: 24px;
		margin-right: 0;
		margin-left: auto;
		text-decoration: none;
		cursor: pointer;
		transition: all 0.3s;
	}

	.more-btn a::before {
		content: "";
		display: block;
		position: absolute;
		width: 140px;
		height: 1.0px;
		background: #4C4C72;
		bottom: 0;
		transition: all 0.3s;
	}

	.more-btn a::after {
		content: "";
		display: block;
		position: absolute;
		width: 20px;
		height: 1.0px;
		background: #4C4C72;
		rotate: 40deg;
		right: 8px;
		bottom: 7px;
		transition: all 0.3s;
	}

	.more-btn a:hover::before {
		width: 150px;
	}

	.more-btn a:hover::after {
		right: -3px; 
}


	/* ------------------------------
	*TOPページ
	* ------------------------------ */
	.topcopy {
		padding-top: 70px;
		font-family: "Zen Old Mincho", serif;
		font-size: 2rem;
		line-height: 3rem;
		letter-spacing: 0.1rem;
	}
	/*topの画像*/
	.wp-block-image.copytopimg {
		max-width: 1000px;
		max-height: 600px;
		margin-right: calc(50% - 50vw);
		overflow: hidden;
	}
	/*花の飾り*/
	.top-text1{
		background-image: url(/tokunoshima/wp-content/uploads/2025/06/deco_flower.png);
		background-repeat: no-repeat;
		background-size: 90%; 
		background-position: right bottom;  
	}
	/*カラムの余白*/
	.top-page-column {
		margin-top: 170px;
		margin-bottom: 30px;
	}
	/*カテゴリタイトル*/
	h2.wp-block-heading.home-category {
		padding-bottom: 30px;
		font-size: 2.8rem;
		font-weight: 500;
		color: #4C4C72;
		position: relative;
	}
	h2.wp-block-heading.home-category::after {
		content:"";
		background-image: url(/tokunoshima/wp-content/uploads/2025/06/wave2.png);
		background-repeat: no-repeat;
		position: absolute;
		width: 200px;
		height: 100px;	
		top: 20px;
		margin-left: 10px;
	}
	/*information*/
	h2.wp-block-heading.home-center-info::before {
		content: url(/tokunoshima/wp-content/uploads/2025/06/wave2.png);
		position: absolute;
		left: -260px;
	}
	/*access*/
	h2.wp-block-heading.home-center-access {
		padding-top: 60px;
	}
	h2.wp-block-heading.home-center-access::before {
		content: url(/tokunoshima/wp-content/uploads/2025/06/wave2.png);
		position: absolute;
		top: 60px;
		left: -190px;
	}
	h2.wp-block-heading.home-center-access::after {
		content:"";
		background-image: url(/tokunoshima/wp-content/uploads/2025/06/wave2.png);
		background-repeat: no-repeat;
		position: absolute;
		width: 200px;
		height: 100px;	
		top: 80px;
		margin-left: 10px;
	}
	.swell-block-columns.top-access-bottom {
		position: relative;
		padding-bottom: 90px;
	}
	div.swell-block-columns.top-access-bottom div.more-btn {
		margin-right: 20px;
	}
	
	/*facilityスライド*/
	.home-facility-slide {
		margin-top: 80px;
	}
	.loop-slider {
		display: flex;
		overflow: hidden;
	}
	.loop-slider .wp-block-group__inner-container,
	.loop-slider .swell-block-columns {
		display: contents;
	}
	.loop-slider .swell-block-columns__inner {
		flex-wrap: nowrap;
		animation: infinity-scroll-left 80s infinite linear; /* アニメーションの時間を指定 */
	}
	.loop-slider .swell-block-column figure {
		width: 700px; /* 画像の横幅を指定（パソコン） */
		position: relative;
	}
	.loop-slider .swell-block-column figure::before {
		padding-top: 65%; /* 画像の縦横比を指定 */
		display: block;
		content: "";
	}
	.loop-slider .swell-block-column figure img {
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		width: 100% !important;
		height: 100% !important;
		object-fit: cover;
		object-position: center;
	}

	

	/* ------------------------------
	*セカンドページ共通
	* ------------------------------ */
	/*パンくずリスト*/
	.p-breadcrumb {
		margin-top: 20px;
		margin-left: 10px;
	}
	/*ヘッダー画像高さ*/
	#top_title_area.l-topTitleArea {
		position: relative;
		min-height: 600px;
	}
	
	/*ヘッダータイトル*/
	.c-pageTitle {
		font-family: 'Times New Roman', serif;
		font-size: 2.5rem;
		font-weight: 500;
		letter-spacing: 0.07em;
		position: relative;
		font-style: oblique;
		top: 100px;
		text-shadow: #2d2d2d 1px 0 10px ;
		backdrop-filter: blur(1px);
		display: inline-block;
	}
	.c-pageTitle__subTitle {
		font-family: "Zen Old Mincho", serif;
		position: relative;
		display: block;
		text-align: left;
		opacity: 100;
		font-style: normal;
		text-shadow: #2D2D2d 1px 0 10px;
	}
	/*上部のキャッチコピー*/
	.c-page-copy {
		font-size: 2.0rem;
		line-height: 3rem;
		letter-spacing: 0.08rem;
		white-space: normal;
	}
	/*トップカラム上の空白指定*/
	.c-page-top-column {
		margin-bottom: 60px;
	}
	/*最後のカラムの空白指定*/
	.c-page-last-column {
		margin-top: 100px;
		margin-bottom: 100px;
	}
	/*カラム上下の空白指定*/
	.c-page-column {
		margin-top: 150px;
	}

	/*テキスト上下の空白指定*/
	.c-page-txt {
		padding-top: 20px;
		padding-bottom: 20px;
	}

	/* ------------------------------
	*ABOUTページ
	* ------------------------------ */
	/*メイン*/
	div.swell-block-column.swl-has-mb--s.about-here-image {
		margin-top: 60px;
	}
	.c-page-copy-sub {
		font-size: 1.0rem;
		font-style: italic;
		color: #918163;
		position: relative;
		top: -2.5rem;
		left: 4.5rem;
	}

	/*concept*/
	h2.wp-block-heading.about-title1 {
		font-size: 7.0rem;
		font-weight: 500;
		letter-spacing: 0.05em; 
		color: #C8C09F
	}
	.c-page-copy2 {
		padding-top: 70px;
		white-space: normal;
	}
	figure.wp-block-image.size-full.about-img1 img  {
		width: 500px;
		max-width: 500px;
		min-width: 459px;
  	height: 600px;
  	object-fit: cover!important;
	}
	figure.wp-block-image.size-full.about-img2 img {
		width: 350px;
  	height: 450px;
  	object-fit: cover!important;
	}
	div.wp-block-column.about-align1 figure {
		text-align: left;
	}
	div.wp-block-column.about-align2 figure {
		text-align: right;
	}
	figure.wp-block-image.size-full.about-img-bottom {
		padding-top: 120px;
	}
	/*画像並べ替え*/
	.wp-block-column.about-img-top {
		display: flex;
		flex-direction: row-reverse;
		justify-content: space-between;
	}
	.wp-block-columns.concept-column {
		display: flex;
		flex-direction: column;
	}
	div.wp-block-column.about-align1.concept-img1-column figure {
		min-width: 500px;
	}
	div.wp-block-column.concept-img2-column {
		position: relative;
		bottom: 130px;
	}	
	div.wp-block-column.concept-img3-column {
		position: relative;
		bottom: 360px;
	}
	div.wp-block-column.concept-img4-column {
		position: relative;
		bottom: 180px;
	}
	/*topの文字位置*/
	.wp-block-columns.concept-img-column {
		flex-basis: 600px;
		padding-left: 60px;
	}
	
	/*rooms*/
	h2.wp-block-heading.about-title2 {
		font-size: 7.0rem;
		font-weight: 500;
		letter-spacing: 0.05em; 
		color: #C8C09F
	}
	figure.wp-block-image.size-full.rooms-img1 img {
		width: 500px;
  	height: 600px;
  	object-fit: cover!important;
	}
	figure.wp-block-image.size-full.rooms-img2 img {
		width: 600px;
  	height: 400px;
  	object-fit: cover!important;
	}

	/*dining*/
	h2.wp-block-heading.about-title3 {
		font-size: 7.0rem;
		font-weight: 500;
		letter-spacing: 0.05em;
		color: #4C4C72
	}
	figure.wp-block-image.size-full.dining-img1 img {
		width: 500px;
  	height: 600px;
  	object-fit: cover!important;
	}
	figure.wp-block-image.size-full.dining-img2 img {
		width: 600px;
  	height: 400px;
  	object-fit: cover!important;
	}


	/* ------------------------------
	*ROOMSページ
	* ------------------------------ */

	/*共通 カラムの余白*/
	.rooms-column {
		padding-top: 30px;	
	}

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

	/*b-rooms 画像の配置*/
	.roomsb-img {
		padding-top: 10px;
	}

	/*A棟B棟タイトル*/
	h2.wp-block-heading.rooms-a, h2.wp-block-heading.rooms-b {
		font-size: 2.5rem;
		font-weight: 500;
		color: #4C4C72;
		position: relative;
	}
	h2.wp-block-heading.rooms-a::after {
		content: "本館";
		font-size: 1.2rem;
		position: absolute;
		left: 190px;
		bottom: -30px;
	}
	h2.wp-block-heading.rooms-b::after {
		content: "新館";
		font-size: 1.2rem;
		position: absolute;
		left: 205px;
		bottom: -30px;
	}

	/*テーブルタイトル*/
	h2.wp-block-heading.rooms-category{
		font-size: 2.5rem;
		font-weight: 500;
		color: #4C4C72;
		position: relative;
	}
	h2.wp-block-heading.rooms-category::after {
		content: url(/tokunoshima/wp-content/uploads/2025/06/wave3.png);
		left: 51%;
		transform: translateX(-50%);
		position: absolute;
		top: 60px;
	}

	/*テーブルタイトルとの空白*/
	.wp-block-table.service-table, 
	.wp-block-table.guide-table{
		padding-top: 60px;
	}

	/*Serviceテーブル色*/
	.wp-block-table.service-table {
		--table-border: 1px solid #4C4C72;
	}

	/*guideテーブル色*/
	.wp-block-table.guide-table {
		--table-border: 1px solid #918163;
	}

	/*roomsテーブル共通*/
	.wp-block-table.service-table th, .wp-block-table.guide-table th {
		padding: 1.0em 0 1.0em;
		border-top-width: 0;
		font-family: "Zen Old Mincho", serif;
		font-size: 1.2rem;
	}
	.wp-block-table.service-table td, .wp-block-table.guide-table td {
		padding: 1.5em 0 1.5em;
		line-height: 1.8em;
		border-top-width: 0;
	}

	/* ------------------------------
	*Cafe&Restaurantページ
	* ------------------------------ */
	/*画像の大きさ*/
	figure.cafe-img img {
		height: 450px;
		width : 650px;
	}
	
	/*上部のカテゴリメニュー*/
	div.wp-block-columns.cafe-category-column1, div.wp-block-columns.cafe-category-column2 {
		display: flex;
		justify-content: center;
		padding-left: 100px;
		padding-top: 20px;
		margin-bottom: -10px;
	}
	.cafe-category1-btn, .cafe-category2-btn, .cafe-category3-btn {
			position: relative;
	}
	.cafe-category1-btn p, .cafe-category2-btn p, .cafe-category3-btn p {
		font-size: 1.8rem;
		font-family: "Zen Old Mincho", serif;
		font-weight: 600;
		letter-spacing: 0.1rem;
		white-space: nowrap;
		border-bottom: 1px solid transparent;
		display: inline-block;
	}
	
	.cafe-category1-btn p:hover, .cafe-category2-btn p:hover, .cafe-category3-btn p:hover {
		border-bottom: 1px solid #4C4C72;
		display: inline-block;
	}

	.cafe-category3-btn {
		margin-left: 40%;
	}
	.cafe-category1-btn::before {
		content:"";
		background-image: url(/tokunoshima/wp-content/uploads/2025/06/cafe_breakfasticon.png);
		background-repeat: no-repeat;
		background-size: cover;
		position: absolute;
		left: -60px;
		top: -10px;
		width: 50px;
		height: 50px;
	}
	.cafe-category2-btn::before {
		content:"";
		background-image: url(/tokunoshima/wp-content/uploads/2025/06/cafe_lunchicon.png);
		background-repeat: no-repeat;
		background-size: cover;
		position: absolute;
		left: -60px;
		top: -10px;
		width: 50px;
		height: 50px;
	}
	.cafe-category3-btn::before {
		content:"";
		background-image: url(/tokunoshima/wp-content/uploads/2025/06/cafe_dinnericon.png);
		background-repeat: no-repeat;
		background-size: cover;
		position: absolute;
		left: -60px;
		top: -10px;
		width: 42px;
		height: 46px;
	}

	/*カテゴリ共通*/
	h2.wp-block-heading.cafe-category {
		font-size: 3.0rem;
		font-weight: 500;
		font-style: italic;
		letter-spacing: 0.1rem;
		position: relative;
		color: #4C4C72;
	}
	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: 2.0rem;
		letter-spacing: 0.05rem;	
	}
	h3.wp-block-heading.cafe-category-hamburger::after {
		content: "ハンバーガー";
		font-size: 1.2rem;
		padding-left: 1em;
		top: 10px;
	}
	h3.wp-block-heading.cafe-category-softdrink::after {
		content: "ソフトドリンク";
		font-size: 1.2rem;
		padding-left: 1em;
		top: 10px;
	}
	h3.wp-block-heading.cafe-category-frappe::after {
		content: "フラッペ";
		font-size: 1.2rem;
		padding-left: 1em;
		top: 10px;
	}
	h3.wp-block-heading.cafe-category-bbq::after {
		content: "プールサイドバーベキュー　※要予約";
		font-size: 1.2rem;
		padding-left: 1em;
		top: 10px;
	}
	.cafe-page-column {
		padding-top: 30px;
		padding-bottom: 50px;
	}


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

	/*ランチ ふわりカフェ情報*/
	h3.wp-block-heading.cafe-menu {
		font-size: 2.5rem;
		font-weight: 500;
		letter-spacing: 0.2rem;
		color: #918163;
	}
	/*ふわりカフェインスタ*/
	.fuwari-insta-txt {
		font-size: 1.1rem;
		color: #918163;
		line-height: 1.7em;
		position: relative;
		margin-right: 50px;
		white-space: nowrap;
	}
	.fuwari-insta-txt::after {
		content: "";
		position: absolute;
		width: 35px;
		height: 2px;
		border-radius: 9999px;
		top: 75%;
		margin-left: 30px;
		background-color: #918163;
	}
	.fuwari-insta-txt::before {
		content: "";
		position: absolute;
		width: 15px;
		height: 2px;
		top: 73%;
		right: -65px;
		background-color: #918163;
		transform: rotate(45deg);
		transform-origin: calc(100% - 2px) 50%;
	}
	/*ふわりカフェインスタボタン（cafeページ）*/
	.cafepage-insta-btn {
		position: relative;
	}
	.cafepage-insta-btn p {
		font-family: "Zen Old Mincho", serif;
		color: #918163;
		font-weight: 600;
		margin: -75px 0 -40px 60px;
		cursor: pointer;
		transition: all 0.3s;
		white-space: nowrap;
	}
	.cafepage-insta-btn span {
		font-family: 'Times New Roman', serif;
		font-size: 2.0rem;
		letter-spacing: 0.08em;
		color: #918163;
		margin-left: 60px;
		white-space: nowrap;
	}
	.cafepage-insta-btn i.icon-instagram {
		position: relative;
		font-size: 3.0rem;
		color: #918163;
	}


	/*上部のランチメニュー*/
	.cafe-menu1-btn, .cafe-menu2-btn, .cafe-menu3-btn {
		position: relative;
		margin-left: 50px;
	}
	.cafe-menu1-btn p, .cafe-menu2-btn p, .cafe-menu3-btn p {
		font-family: "Zen Old Mincho", serif;
		font-size: 1.7rem;
		font-weight: 500;
		color: #333;
		letter-spacing: 0.05rem;
		white-space: nowrap;
		cursor: pointer;
		transition: all 0.3s;
		border-bottom: 1px solid transparent;
		display: inline-block;
	}
	.cafe-menu1-btn p:hover, .cafe-menu2-btn p:hover, .cafe-menu3-btn p:hover {
		border-bottom: 1px solid #918163;
		display: inline-block;
	}

	.cafe-menu1-btn::before {
		content:"";
		background-image: url(/tokunoshima/wp-content/uploads/2025/08/cafe_hamburger.png);
		background-repeat: no-repeat;
		background-size: cover;
		position: absolute;
		left: -60px;
		top: -10px;
		width: 50px;
		height: 45px;
	}
	.cafe-menu2-btn::before {
		content:"";
		background-image: url(/tokunoshima/wp-content/uploads/2025/08/cafe_softdrink.png);
		background-repeat: no-repeat;
		background-size: cover;
		position: absolute;
		left: -50px;
		top: -15px;
		width: 36px;
		height: 52px;
	}
	.cafe-menu3-btn::before {
		content:"";
		background-image: url(/tokunoshima/wp-content/uploads/2025/08/cafe_frappe.png);
		background-repeat: no-repeat;
		background-size: cover;
		position: absolute;
		left: -40px;
		top: -17px;
		width: 28px;
		height: 55px;
	}
	.cafe-menu3-btn::after {
		content: "etc.";
		font-family:  "Zen Old Mincho", serif;
		margin-left: 140px;
		top: 20px;
		font-size: 1.2rem;
		font-weight: 400;
		white-space: nowrap;
	}
	/*各メニューごとのカラムの余白*/
	.cafe-menu-column {
		padding: 30px 0px 70px;
	}
	/*共通 画像の配置*/
	.cafe-menu-img {
		padding-top: 30px;
	}

	/*画像キャプション*/
	.cafe-menu-img figcaption.wp-element-caption {
		font-weight: 600;
		font-size: 0.9rem;
		color: #4C4C72;
	}
	.cafe-img-caption2 {
		font-size: 0.9rem;
		line-height: 1.8rem;
	}
	/*ランチotherメニュー表*/
	.wp-block-table.cafe-other-table th, .wp-block-table.cafe-other-table td {
		font-weight: 600;
		color: #4C4C72;
		border: none;
		position: relative;
		letter-spacing: 0.05rem;
		white-space: nowrap;
	}
	.wp-block-table.cafe-other-table::after, .wp-block-table.cafe-other-table::before {
		content: "";
		border-top: 1px solid;
		color: #C8C09F;
		width: 100%;
		position: absolute;
	}
	.wp-block-table.cafe-other-table::after {
		margin-top: 20px;
	}
	.wp-block-table.cafe-other-table::before {
		margin-top: -20px;
	}
	.other-place {
		font-weight: 600;
		letter-spacing: 0.02rem;
		color: #4C4C72;
		margin: -50px 20px 20px;
	}
	.other-menu-title {
		font-size: 1.5rem;
		letter-spacing: 0.08rem;
		color: #4C4C72;
		padding-bottom: 15px;
	}
	.hamburger-othercolumn {
		position: relative;
		top: 50px;
	}
	.softdrink-othercolumn {
		position: relative;
		top: 40px;
	}
	.frappe-othercolumn {
		position: relative;
		top: 150px;
	}
	/*フラッペの表*/
	.wp-block-table.frappe-table td {
		font-size: 0.95rem;
		font-weight: 500;
	}
	/*BBQ表*/
	.wp-block-table.cafe-bbq-table {
		--table-border: 1px solid #918163;
	}
	.wp-block-table.cafe-bbq-table th {
		padding: 1.0em 0 1.0em;
		border-top-width: 0;
		font-family: "Zen Old Mincho", serif;
		font-size: 1.2rem;
	}
	.wp-block-table.cafe-bbq-table td {
		padding: 1.5em 0 1.5em;
		line-height: 1.8em;
		border-top-width: 0;
	}
	/*BBQ要予約*/
	.cafe-category-bbqsubtitle::after {
		content: "※要予約";
		font-size: 1.0rem;
		position: absolute;
		margin-left: 20px;
		white-space: nowrap;
	}
	/*BBQ写真注釈*/
	.bbqimg-come {
		margin-top: -10px;
		font-size: 0.95rem;
	}


	/* ------------------------------
	*FACILITYページ
	* ------------------------------ */
	.facility-top-comment {
		font-size: 0.9rem;
	}

	h2.wp-block-heading.facility-title {
		font-size: 2.5rem;
		font-weight: 500;
	}

	.facility-subtitle, .facility-poolsubtitle {
		font-size: 1.4rem;
		position: relative;
		bottom: -30%;
	}
	
	figure.facility-img img {
		height: 450px;
		width: 600px;
	}
	

	/*プール要予約*/
	.facility-poolsubtitle::after {
		content: "※要予約";
		font-size: 0.9rem;
		position: absolute;
		padding-left: 20px;
	}

	/*プール表*/
	.wp-block-table.facility-pool-table {
		--table-border: 1px solid #918163;
	}

	.wp-block-table.facility-pool-table th {
		padding: 1.0em 0 1.0em;
		border-top-width: 0;
		font-family: "Zen Old Mincho", serif;
		font-size: 1.2rem;
	}

	.wp-block-table.facility-pool-table td {
		padding: 1.5em 0 1.5em;
		line-height: 1.8em;
		border-top-width: 0;
	}

	.facility-map-subtitle {
		font-size: 1.2rem;
		position: relative;
		top: -1rem;
	}

	.figure.wp-block-image.facility-footer-img {
		display: block;
		margin-right: calc(50% - 50vw);
		margin-left: calc(50% - 50vw);
		height: 400px;
		overflow: hidden;
	}

	
	/* ------------------------------
	*information
	* ------------------------------ */
	.-type-card .p-postList__thumb {
		width: 280px;
		height: 300px;
	}
		.p-postList.-type-card, .p-postList.-type-thumb {
		justify-content: space-between;
		margin-left: 50px;
		margin-right: 50px;
	}
		.-sidebar-off .-type-card.-pc-col3 .p-postList__item, .-sidebar-off .-type-thumb.-pc-col3 .p-postList__item {
		width: 280px;
	}
	.p-postList__thumb:before {
		height: 280px;
	}
	.p-postList__body {
		width: 280px;
		margin-top: -10px;
		text-align: center;
}
	.p-pickupBanners__item .c-bannerLink, .p-postList__thumb {
		box-shadow: none;
	}
	
	/*最後の投稿のみ左寄せ*/
	ul.p-postList.-type-card.-pc-col3.-sp-col1:after {
 	   content: "";
 	   display: block;
 	   width: 280px;
 	   height: 0;
	}
	
	/*informationページ下部の間隔*/
	.information-page-column {
    padding-bottom: 80px;
	}
	/*NEWSページ下部の間隔*/
	.c-pagination {
		padding-bottom: 50px;
	}

	
	/* ------------------------------
	*information個別投稿ページ
	* ------------------------------ */
	#body_wrap.news {
		margin-top: 150px;
	}
	/*上部タグの余白*/
	.p-articleMetas.-top {
		margin-top: 20px;
    margin-bottom: 30px;
	}
	/*ページ下の余白*/
	.p-pnLinks {
		padding-bottom: 80px;
	}
	
	/* ------------------------------
	*accessページ
	* ------------------------------ */
	h2.wp-block-heading.access-title {
		font-size: 2.0rem;
		line-height: 3rem;
		letter-spacing: 0.08rem;
		padding-bottom: 30px;
		color: #4C4C72;
	}
	.access-subtitle {
		font-size: 1.5rem;
		letter-spacing: 0.08rem;
		color: #4C4C72;
		margin-left: 20px;
		padding-top: 70px;
	}
	.access-come {
		color: #4C4C72;
		position: relative;
		top: -20px;
		left: 20px;
	}
	.access-address {
		color: #4C4C72;
		position: relative;
		text-indent: -1.4em;
		padding-left: 3.2em;
	}	
	.access-address::before {
		content:"";
		background-image: url(/tokunoshima/wp-content/uploads/2025/06/access_address.png);
		background-repeat: no-repeat;
		background-size: contain;
		padding-right: 25px;
	}
	.access-tel {
		color: #4C4C72;
		position: relative;
	}
	.access-tel::before {
		content:"";
		background-image: url(/tokunoshima/wp-content/uploads/2025/06/access_tel.png);
		background-repeat: no-repeat;
		background-size: contain;
		padding-right: 22px;
		padding-top: 1px;
		margin-left: 25px;
		margin-right: 8px;
	}
	.access-info {
		color: #4C4C72;
		position: relative;
		line-height: 20px;
		top: -12px;
		margin-bottom: 20px ;
		margin-left: 55px;
	}
	/*○○経由*/
	.access-keiyu {
		font-size: 1.3rem;
		color: #4C4C72;
		display: flex;
		align-items: center;
		justify-content: center; 
		padding-bottom: 0px;
		white-space: nowrap;
	}
	/*○○経由 横線*/
	.access-keiyu::before, .access-keiyu::after {
		content: "";
		border-top: 1px solid;
		color: #4C4C72;
		width: 100%;
	}
	.access-keiyu::before {
		margin-right: 1em;
	}
	.access-keiyu::after {
		margin-left: 1em;
	}
	.access-total-time {
		font-weight: 600;
		color: #4C4C72;
		padding-top: 60px;
		padding-bottom: 10px;
	}

	/*ルート　ブラウンの枠*/
	.access-citytitle {
		background-color: rgba(145, 129, 99, 1);
		padding: 10px;
		color: #fff;
		font-weight: 600;
		position: relative;
	}

	/*ルート 薄いブラウンの枠*/
	.access-keiyucitytitle {
		background-color: rgba(200, 192, 159, 0.2);
		padding: 10px;
		margin: 0 0 20px;
		position: relative;
	}

	/*ルート 濃いブルーの枠*/
	.access-hoteltitle {
		background-color: rgba(76, 76, 114, 1);
		color: #fff;
		font-weight: 600;
		padding: 10px;
	}

	/*ルート 波線1*/
	.access-citytitle::after, .access-keiyucitytitle::after {
		content: "";
		position: absolute;
		color: #000;
		bottom: -25px;
		left: 50%;
		height: 25px;
		border-left: 1px dashed;
	}

	/*ルート 波線2*/
	.access-plane1::after, .access-plane2::after,  .access-car::after {
		content: "";
		position: absolute;
		color: #000;
		bottom: -15px;
		left: 50%;
		height: 25px;
		border-left: 1px dashed;
	}

	/*ルート カラム*/
	.wp-block-columns.route2-column {
		margin-top: 2em;
	}

	/*ルート 移動手段*/
	.access-plane1, .access-plane2, .access-car {
		position: relative;
		line-height: 1.5rem;
		padding-top: 75px;
		padding-bottom: 20px;
	}
	.access-plane1::before ,.access-plane2::before {
		content:"";
		background-image: url(/tokunoshima/wp-content/uploads/2025/08/access_plane.png);
		background-repeat: no-repeat;
		background-size: contain;
		position: absolute;
		top: 20px;
		width: 40px;
		height: 40px;	
	}
	.access-plane1::before {
		margin-left: 40px;
	}
	.access-plane2::before {
		margin-left: -5px;
	}
	.access-car::before {
		content:"";
		background-image: url(/tokunoshima/wp-content/uploads/2025/08/access_rental.png);
		background-repeat: no-repeat;
		background-size: contain;
		position: absolute;
		margin-left: 72px;
		top: 20px;	
		width: 42px;
		height: 42px;
	}

	/*送迎車*/
	h2.wp-block-heading.access-soge-title {
		font-size: 1.7rem;
		line-height: 3rem;
		letter-spacing: 0.08rem;
		color: #4C4C72;
		padding-left: 55px;
		padding-bottom: 10px;
		position: relative;	
	}
	h2.wp-block-heading.access-soge-title span {
		display: none;
	}
	h2.wp-block-heading.access-soge-title::before {
		content: "";
		background-image: url(/tokunoshima/wp-content/uploads/2025/08/access_pickup.png);
		background-repeat: no-repeat;
		background-size: contain;
		position: absolute;
		top: 5px;
		width: 45px;
		height: 45px;	
	}
	/*レンタカー*/
	h2.wp-block-heading.access-rental-title {
		font-size: 1.7rem;
		line-height: 3rem;
		letter-spacing: 0.08rem;
		color: #4C4C72;
		padding-left: 55px;
		padding-bottom: 10px;
		position: relative;	
	}
	h2.wp-block-heading.access-rental-title span {
		display: none;
	}
	h2.wp-block-heading.access-rental-title::before {
		content: "";
		background-image: url(/tokunoshima/wp-content/uploads/2025/08/access_rental.png);
		background-repeat: no-repeat;
		background-size: contain;
		position: absolute;
		top: 5px;
		left: 5px;
		width: 40px;
		height: 40px;	
	}
	/*タイトル下のカラム*/
	.sogerental-column {
		margin-left: 60px;
	}
	/*レンタカー店舗*/
	.rental-group-title {
		font-size: 1.2rem;
		color: #4C4C72;
		position: relative;
		bottom: -10px;
		left: 40px;
	}
	.rental-group {
		background-color: rgba(175, 218, 225, 0.3);
		padding: 20px;
		width: 90%;
		position: relative;
		left: 30px;
	}
	.rental-group li {
		font-weight: 600;
	}
	/*ほか*/
	.access-rental-txt {
		margin-right: 20px;
	}
	/*送迎予約連絡先*/
	.access-soge-tel {
		font-size: 1.2em;
		margin-top: -45px;
		padding-left: 55%;
	}
	/*おすすめルート画像上余白*/
	.rental-route-column {
		padding-top: 20px;
	}
	.access-routeB-txt, .access-routeC-txt, .access-routeD-txt, .access-routeE-txt, .access-routeF-txt {
		line-height: 25px;
		color: #4C4C72;
		font-weight: 600;
		letter-spacing: 0.03em;
		position: relative;
		padding-left: 2.5em;
		text-indent: -2.5em;
	}
	.access-routeB-txt::before {
		content:"";
		background-image: url(/tokunoshima/wp-content/uploads/2025/07/access-B-icon.png);
		background-repeat: no-repeat;
		background-size: contain;
		padding-right: 30px;
		margin-right: 10px;
		width: 30px;
		height: 30px;
	}
	.access-routeC-txt::before {
		content:"";
		background-image: url(/tokunoshima/wp-content/uploads/2025/07/access-C-icon.png);
		background-repeat: no-repeat;
		background-size: contain;
		padding-right: 30px;
		margin-right: 10px;
		width: 30px;
		height: 30px;
	}
	.access-routeD-txt::before {
		content:"";
		background-image: url(/tokunoshima/wp-content/uploads/2025/07/access-D-icon.png);
		background-repeat: no-repeat;
		background-size: contain;
		padding-right: 30px;
		margin-right: 10px;
		width: 30px;
		height: 30px;
	}
	.access-routeE-txt::before {
		content:"";
		background-image: url(/tokunoshima/wp-content/uploads/2025/07/access-E-icon.png);
		background-repeat: no-repeat;
		background-size: contain;
		padding-right: 30px;
		margin-right: 10px;
		width: 30px;
		height: 30px;
	}
	.access-routeF-txt::before {
		content:"";
		background-image: url(/tokunoshima/wp-content/uploads/2025/07/access-F-icon.png);
		background-repeat: no-repeat;
		background-size: contain;
		padding-right: 30px;
		margin-right: 10px;
		width: 30px;
		height: 30px;
	}
	.access-route-txtcolumn {
		margin: 0 15px 0;
	}


	/* ------------------------------
	*policyページ共通
	* ------------------------------ */
	/*カラム間の空白指定*/
	.polisy-page-column {
		margin-bottom: 70px;
	}
	.polisy-page-lastcolumn {
		padding-bottom: 100px;
	}

	/* ------------------------------
	*privacy policyページ
	* ------------------------------ */
	.policy-list, .policy-column {
		margin-left: 30px;
	}
	.post_content li {
		margin-top: 5px;
		line-height: 25px;
	}

	/* ------------------------------
	*social media policyページ
	* ------------------------------ */
	h3.wp-block-heading.insta-title {
		margin-top: 50px;
		margin-bottom: 5px;
		font-size: 1.2rem;
		color: #4C4C72;
	}
	.policy-account-column {
		margin-left: 30px;
		margin-top: 35px;
		margin-bottom: 40px;
	}
		/*ホテルインスタボタン*/
	.hotel-insta-btn {
		margin-left: 60px;
	}
	.hotel-insta-btn p {
		font-family: "Zen Old Mincho", serif;
		font-size: 0.9rem;
		letter-spacing: 0em;
		color: #4C4C72;
		font-weight: 600;
		margin: -75px 0 -42px 120px;
		cursor: pointer;
		transition: all 0.3s;
	}
	.hotel-insta-btn span {
		font-family: 'Times New Roman', serif;
		font-size: 2.2rem;
		letter-spacing: 0.15em;
		color: #4C4C72;
		margin-left: 130px;
		border-bottom: 1.5px solid #4C4C72;
	}
	.hotel-insta-btn i.icon-instagram {
		font-size: 3.0rem;
		color: #4C4C72;
	}
	/*ふわりカフェインスタボタン*/
	.cafe-insta-btn {
		margin-left: 60px;
	}
	.cafe-insta-btn p {
		font-family: "Zen Old Mincho", serif;
		letter-spacing: 0.1em;
		color: #918163;
		font-weight: 600;
		margin: -75px 0 -42px 135px;
		cursor: pointer;
		transition: all 0.3s;
	}
	.cafe-insta-btn span {
		font-family: 'Times New Roman', serif;
		font-size: 2.2rem;
		letter-spacing: 0.15em;
		color: #918163;
		margin-left: 130px;
		border-bottom: 1.5px solid #918163;
	}
	.cafe-insta-btn i.icon-instagram {
		font-size: 3.0rem;
		color: #918163;
	}
	
	/* ------------------------------
	*宿泊約款・利用規則ページ
	* ------------------------------ */
	.rulepage-column {
		padding-bottom: 100px;
	}
	
	/* ------------------------------
	*お問い合わせ
	* ------------------------------ */
	div.contactformwrap span.title, div.contactformwrap span.title02 {
		position: relative;
		font-weight: 700;
		margin-bottom: -20px;
		display: flex;
		align-items: center;
	}
	
	div.contactformwrap span.title02::after {
    width: auto;
    height: 25px;
    content: '必須';
    font-size: 0.8rem;
    font-weight: 700;
    color: #FFFFFF;
    background-color: #84C2CC;
    padding: 15px 20px;
    display: flex;
		align-items: center;
		justify-content: center;
		margin-left: 30px;
	}
	
	div.contactformwrap input, div.contactformwrap textarea, div.contactformwrap select {
		width: 100%;
		min-height: 50px;
		border: 1px solid #666666;
		border-radius: 3px;
		padding: 10px 15px;
		font-weight: 600;
		color: #2D2D33;
		background-color: #FFF;
	}
	.wpcf7-form-control.wpcf7-submit { 
		height: 60px;
		font-weight: 600;
		color: #fff;
		text-align: center;
		position: relative;
		background-color: #4C4C72;
		margin: 70px 0 100px;
	}
	.contact-page-last {
		padding-bottom: 100px;
		margin-top: -80px;
	}
	
	/*reCAPTCHA非表示*/
	.grecaptcha-badge{ visibility: hidden; }
	
	/*送信しました枠*/
	.wpcf7 form.sent .wpcf7-response-output {
    border-color: #4C4C72;
		margin-top: -50px;
		margin-bottom: 120px;
		padding: 10px;
	}
	/*必須項目未入力時のエラー*/
	.wpcf7-not-valid-tip {
    margin-top: 10px;
	}
	/*入力内容問題ありの枠*/
	.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
    border-color: #dc3232;
	 	margin-top: -50px;
		margin-bottom: 120px;
		padding: 10px;
}

	/* ------------------------------
	*予約ページ
	* ------------------------------ */
	.wp-block-columns.reservation-column {
    margin-bottom: 90px!important;
	}
	
}

	@media not all and (min-width: 960px) {
	.pc_, .pc_only {
		display: block !important;
	}
}
	@keyframes infinity-scroll-left {
		from {
			transform: translateX(0);
		}
		to {
			transform: translateX(-100%);
		}
	}
	@supports (--css:variables) {
		.alignfull {
			width: 100vw;
			margin-left: calc(-50vw + 50%);
			margin-right: calc(-50vw + 50%);
			left: initial;
		}
	}
