@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/



/* Base */

/* カラー */
:root{
  --title-color: #856c34;
  --text-color: #333;  /* テキスト・タイトル（基本） */
  --banner-text: #fff;  /* 背景付きテキスト（基本） */
  --section-title-bg: #fff;   /* 背景付きタイトル（基本） */
  --background-color: #fff;
  --msg-strip-top: clamp(0, 12vh, 420px); /* スクロール画像帯の垂直位置（PC） */
  --msg-strip-h: clamp(500px, 70vh ,1000px); /* スクロール画像帯の高さ（PC） */
  
}



/* /カラー */

/* サイズ */
.plan-name-h3{
	font-size: 1.1rem!important;
}

.explanation{
	font-size: 1.2rem!important;
	font-weight: 600;
}
/* /サイズ */

/* デザイン */

/* 英字（外部フォント読み込み）コンテンツタイトル用 */
.roboto-condensed-h2 {
    font-family: "Roboto Condensed", sans-serif;
    font-size: 50px!important;
    font-weight: bold;
    font-style: italic;
}

.judson-h2{
	font-family: "Judson", serif;
	font-size: 50px!important;
	font-weight: 700;
	letter-spacing: .15em!important;
	color: var(--title-color)!important;
}

.bg-copy{
		font-family: Noto serif JP;
		z-index: 2;
	}

/* ページタイトル消去 */
#content>#main_content .c-pageTitle__inner {
	display: none;
}
/* /ページタイトル消去 */

/* スライダー左右ボタン */
.swiper-button-prev {
	display: none;
}

.swiper-button-next {
	display: none;
}
/* /スライダー左右ボタン */

/* 画像キャプチャー */
.swell-block-columns .swell-block-column > .wp-block-image > .wp-element-caption {
	font-size: 1rem;
	color: var(--text-color: #333);
	margin-top: 0;
	padding-top: 10px;
	padding-bottom: 10px;
}
/* /画像キャプチャー */

/* テーブル(top page)*/
.wp-block-table tr>th {
	border-color: #856C34;
}
.wp-block-table tr>td {
	border-color: #856C34;
}
#main_content table {
	border-bottom-color: #856C34;
}
/* テーブル(top page)*/

.wp-block-table tr>th {
	border-color: rgba(191, 191, 191, 1);
	border-width: 1px;
}

.u-mb-ctrl tr>td {
	border-color: rgba(133, 108, 52, 1);
}

/* Instagramテキスト*/
.sb_instagram_header h3{
    font-family: Noto Serif JP;
}
.sb_instagram_header h3:before {
    display: none;
}
#sb_instagram .sbi_feedtheme_header_text {
	color: rgba(8, 67, 90, 1);
}

.post_content #sbi_images {
	margin-top: 60px;
	margin-bottom: 0px;
}
/* Instagramフォローボタン*/
.swell-block-fullWide__inner>#sb_instagram>#sbi_load a {
	padding-top: 12px;
	padding-bottom: 12px;
	padding-right: 16px;
	padding-left: 16px;
	margin-top: 60px;
}

#instagram>div>div.swell-block-button.green_.-size-s.is-style-btn_normal.instagram-btn>a {
	width: 260px;
	background-image: linear-gradient(to right, rgba(254, 218, 117, 1) 0%, rgba(214, 41, 118, 1) 47%, rgba(79, 91, 213, 1) 100%) !important;
	border-radius: 4px 4px 4px 4px;
	position: relative;
    overflow: hidden;
    transition: all 0.3s ease;
}

#instagram>div>div.swell-block-button.green_.-size-s.is-style-btn_normal.instagram-btn>a::after {
	content: "";
    position: absolute;
    inset: 0;
    background: white;
    opacity: 0;
    transition: opacity 0.3s ease;
}
#instagram>div>div.swell-block-button.green_.-size-s.is-style-btn_normal.instagram-btn>a:hover::after{
	opacity: 0.15;
}

/* /Instagramフォローボタン*/

/* Instagramさらに読み込むボタン*/
#instagram .sbi_load_btn {
	width: 260px;
	padding-top: 12px !important;
	padding-bottom: 12px !important;
	padding-right: 52px !important;
	padding-left: 52px !important;
	margin-top: 60px !important;
	background-color: rgb(51, 51, 51);
}
/* /Instagramさらに読み込むボタン*/

/* /Instagramテキスト*/
/* /デザイン */

/* 機能 */
/* 画像クリックイベント停止 */
.keep{
	pointer-events: none;
	/* SPの長押し禁止 */
    user-select:none;
}
/* /画像クリックイベント停止 */
/* /機能 */

/* /Base */

/* ヘッダー */
body>#body_wrap .l-header__inner {
	height: 96px;
	position: fixed;
	background-color: rgba(26, 26, 26, .9);
	padding-right: 0.5rem!important;
	padding-left: 0.5rem!important;
	max-width: 100%!important;
	width: 100%!important;
}

body>#body_wrap .l-fixHeader__inner {
	display: none;
	height: 96px;
	background-color: rgba(26, 26, 26, .9)!important;
	padding-right: 0.5rem!important;
	padding-left: 0.5rem!important;
	max-width: 100%!important;
	width: 100%!important;
}

.l-header__inner>#gnav .menu-item>a:after {
	margin-bottom: 30px;
}

.l-fixHeader__inner .menu-item>a:after {
	margin-bottom: 30px;
}

#body_wrap > #header .c-headLogo {
    
}
#header .c-headLogo__link {
	    font-weight: 600;
	    font-size: 28px;
  }

#body_wrap > #fix_header .l-fixHeader__logo {
	    
}

#fix_header .c-headLogo__link{
	    font-weight: 600;
	    font-size: 28px;
}

.hotel-name{
	font-size: 1.5rem;
	
}

.l-header__inner>#gnav .menu-item>a ,.l-fixHeader__inner .menu-item > a {
	font-family: "Judson", serif;
	font-weight: 700;
	padding-right: 20px;
	padding-left: 20px;
}

#gnav .menu-item .ttl ,.l-fixHeader__gnav .menu-item .ttl {
	font-size: 20px!important;
	letter-spacing: 1.4px;
}
.l-header__inner .swell-block-button__link {
	padding-right: 60px;
	padding-left: 60px;
}

.l-fixHeader__inner .swell-block-button__link {
	padding-right: 60px;
	padding-left: 60px;
}
/* /ヘッダー */


/* こだわり */
.sec-message{
  position: relative;
  overflow: hidden;
  background: var(--background-color);
  padding: clamp(56px, 5vw, 96px) 0;
  color: var(--msg-fg);
  isolation: isolate;
  min-height: 300px;
  max-height: 600px;
}

/* 背景の横スクロール帯（共通ラッパ） */
.msg-bgstrip{
  pointer-events: none;
}

/* 画像を横に並べて無限ループ */
.msg-strip{
  display: flex;
  width: max-content;
  animation: msgMarquee 140s linear infinite;
  will-change: transform;
  transform: translate3d(0,0,0); /* iOS Safari安定化 */
}
.msg-strip img{
  display: block;
  height: 100%;   /* 帯の高さにフィット（←可変） */
  width: auto;
  object-fit: cover;
  /* 1枚が画面幅未満でも切れないよう最低幅を確保（任意） */
  min-width: 100vw;
  flex: 0 0 auto;
  opacity: 1;
}
	
/* 無限ループ */
/* キーフレーム（3DでGPU走らせる） */
@keyframes msgMarquee{
  0%   { transform: translate3d(0,0,0); }
  100% { transform: translate3d(-50%,0,0); } /* 画像を4枚並べたので-50%で継ぎ目無し */
}
/* /こだわり */

/* ◆Planセクション */
/* プランタイトルBOX縦幅 */
.plan-name-container {
	height: 140px;
}
/* /プランタイトルBOX縦幅 */
/* /Planセクション */

/* ◆Spendセクション */
/* 背景画像後ろに */
.cut-bg{
    z-index:-1;
}
/* /背景画像後ろに */
/* /Spendセクション */

/* 説明文テキストシャドウ */
.l-mainContent__inner .explanatory-text-bg {
	text-shadow: 3px 3px 5px rgba(0, 0, 0, 1);
}
/* /説明文テキストシャドウ */
/* /◆Spendセクション */

/* ◆Instagramセクション */
#content>#main_content .instagram-wrapper {
	padding-top: 0px !important;
	margin-top: 0px;
}
.move-title {
	transform: translate(0, -50%);
}
/* ◆Instagramセクション */

/* ◆フッター */

body>#body_wrap>#footer .l-footer__widgetArea {
	background-color: rgba(26, 26, 26, 1);
	color: #fff;
	padding-top: 48px;
}

body>#body_wrap>#footer .l-footer__foot {
	background-color: rgba(26, 26, 26, 1);
	color: #fff;
}

/* フッター左 */
.footer-info div {
  margin-bottom: 5px;
}

.footer-info .label {
  display: inline-block;
  font-family: "Roboto Condensed", sans-serif;
  width: 80px; /* ← 揃える幅を調整 */
  font-weight: 600;
}

.footer-info .value {
  font-family: "Roboto Condensed", sans-serif;
  display: inline-block;
}

/* 画像リンク */
.footer-img-links {
  width: 90%;
  margin: 0 auto;  /* スマホでは中央寄せに機能する */
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.footer-img-links a {
  display: inline-block;
  margin-right: 10px;       /* 画像間の余白 */
}

.footer-img-links img {
  
  width: 100%;
  height: auto;
  transition: 0.3s ease;    /* ホバーアニメーション */
}


.footer-img-links2 {
  width: 100%;
  margin: 0 auto;  /* スマホでは中央寄せに機能する */
  display: flex;
  flex-wrap: wrap;
  gap: 0;
}

.footer-img-links2 a {
  display: inline-block;
  margin-right: 30px;       /* 画像間の余白 */
}

.footer-img-links2 img {
  
  width: 40px;
  height: auto;
  transition: 0.3s ease;    /* ホバーアニメーション */
}
/* ホバー時：薄くする */
.footer-img-links a:hover img {
  opacity: 0.75;
}
/* 画像リンク */
/* /フッター左 */

/* フッター右 */
.footer-links a {
  display: block;          /* 縦に並べる */
  font-weight: 600;        /* 太め文字 */
  color: #fff;
  margin-bottom: 6px;
  text-decoration: none;
}

.footer-links a:hover {
  opacity: 0.7;
}
/* /フッター右 */
/* /◆フッター */

/* ■■■■■■■■■PC（2001px以上）■■■■■■■■■ */
@media screen and (min-width:2001px){
    .p-mainVisual__slideTitle {
	    background-color: rgba(255, 255, 255, 1);
	    font-size: 6rem;
	    width: 120%;
	    display: inline-block;
	    padding-right: 60px;
	    padding-left: 60px;
		padding-bottom: 40px;
	    position: relative;
	    top: 40%;
	    left: 36%;
	    font-family: "Roboto Condensed", sans-serif;
        font-weight: bold;
        font-style: italic;
}	
}

/* ■■■■■■■■■PC（801px以上2000px以下）■■■■■■■■■ */
@media screen and (min-width: 801px) and (max-width: 2000px){
	.p-mainVisual__slideTitle {
	    background-color: rgba(255, 255, 255, 1);
	    font-size: 4.5rem;
	    width: 120%;
	    display: inline-block;
	    padding-right: 32px;
	    padding-left: 32px;
	    position: relative;
	    top: 38%;
	    left: 35%;
	    font-family: "Roboto Condensed", sans-serif;
        font-weight: bold;
        font-style: italic;
}
}
/* ■■■■■■■■■PC（801px以上）■■■■■■■■■ */
@media screen and (min-width: 801px){
/* base */
	
	.sp-only{
	display: none!important;
}
	
	.bg-copy{
		font-size: 2.5rem!important;
}
	
/* /base */
  
	
	.concept-text{
		padding-left: 100px;
		padding-right: 100px;
	}
	
	.room-type-text{
		font-family: "Judson", serif;
	    font-weight: 700;
		font-size: 2em!important;
		color: var(--title-color);
	}
	
/* ◆Spendセクション */
/* 背景へのコンテンツ切り込み */
    #main_content > div > div > div.alignwide.swell-block-columns.spend-container > div {
	    transform: translate(0, -140px);
}
/* /背景へのコンテンツ切り込み */
	
	.spend-item{
		z-index: 9999!important;
	}
/* /Spendセクション */	


/* ◆Foodセクション */
	.text-group01-left {
	    transform: translate(240px, 0);
}
	 .img-border-blur1 {
        position: relative;
        display: inline-block;
}
	 .img-border-blur1 img {
        display: block;
        height: 15vh !important;
        width: auto;
        transform: translate(100px, 0);
}
	 
	 .img-border-blur1::after {
        content: "";
        position: absolute;
        inset: 0; /* top:0; right:0; bottom:0; left:0; の省略形 */
        box-shadow: inset 0 0 15px 15px #fff;
        pointer-events: none; /* 疑似要素がクリックを邪魔しないように */
		transform: translate(100px, 0);
}
	
	 .img-border-blur2 {
        position: relative;
        display: inline-block;
}
	 .img-border-blur2 img {
        display: block;
        height: 20vh !important;
        width: auto;
        transform: translate(-100px, 0);
}
	 
	 .img-border-blur2::after {
        content: "";
        position: absolute;
        inset: 0; /* top:0; right:0; bottom:0; left:0; の省略形 */
        box-shadow: inset 0 0 15px 15px #fff;
        pointer-events: none; /* 疑似要素がクリックを邪魔しないように */
		transform: translate(-100px, 0);
}
	
	 .img-border-blur3 {
        position: relative;
        display: inline-block;
}
	 .img-border-blur3 img {
        display: block;
        height: 25vh !important;
        width: auto;
        transform: translate(-10px, 0);
}
	 
	 .img-border-blur3::after {
        content: "";
        position: absolute;
        inset: 0; /* top:0; right:0; bottom:0; left:0; の省略形 */
        box-shadow: inset 0 0 15px 15px #fff;
        pointer-events: none; /* 疑似要素がクリックを邪魔しないように */
		transform: translate(-10px, 0);
}
/* /Foodセクション */	
    
/* フッター */
/* 画像リンク */
	 .footer-img-links {
        margin-left: 0;   /* 左寄せ */
        margin-right: 0;
        justify-content: flex-start;
}
/* /画像リンク */
	
/* 各リンク */	
	 #body_wrap>#footer .l-footer__foot>.l-container {
	    padding-right: 350px;
	    padding-left: 350px;
}
     #footer>div>div:nth-child(2)>div>ul>li:nth-child(6)>a {
	    border-left-width: 1px !important;
	    border-left-style: solid!important;
		
}
/* /各リンク */	
/* /フッター */
}

/* ■■■■■■■■■スマホ（800px以下）■■■■■■■■■ */
@media screen and (max-width:800px){
	.pc-only{
	    display: none;
  }
	
/* base */
	
	body>#body_wrap .l-header__inner {
	height: 54px!important;
}
	
	#header .c-headLogo__link {
	    font-size: 15.7px;
  }
	.bg-copy{
		font-size: 1.5rem!important;
		text-align: center!important;
		z-index: 2;
  }

	.roboto-condensed-h2{
		font-size: 2rem!important;
  }
    .explanatory-text ,.explanatory-text-bg {
	    text-align: left;
  }
	
	.room-type-text{
		font-family: "Judson", serif;
	    font-weight: 700;
		font-size: 1.2em!important;
		color: var(--title-color);
	}
/* /base */	
	
	.p-mainVisual__slideTitle {
	    background-color: rgba(255, 255, 255, 1);
	    font-size: 1.2rem;
	    width: 120%;
	    display: inline-block;
		padding-top: 10px;
		padding-bottom: 10px;
	    padding-right: 32px;
	    padding-left: 32px;
	    position: relative;
	    top: 38%;
	    left: 15%;
	    font-family: "Roboto Condensed", sans-serif;
        font-weight: bold;
        font-style: italic;
}
	
/* ◆Planセクション */
/* プランタイトルBOXt縦幅 */
.plan-name-container {
	height: 140px;
}
/* /プランタイトルBOXt縦幅 */
/* /Planセクション */
	
/* こだわりセクション */	
	
.fullwide-text{
	padding-right: 14.96px;
	padding-left: 14.96px;	
}
	
:root{
    --msg-strip-top: clamp(10px, 1svh, 600px);
    --msg-strip-h:   clamp(200px, 17svh, 360px);
  }
  .sec-message{
  position: relative;
  overflow: hidden;
  background: var(--background-color);
  padding: clamp(10px, 2vw, 96px) 0;
  color: var(--msg-fg);
  isolation: isolate;
  
}
	
  .msg-bgstrip{
  height: 300px;
  pointer-events: none;
}
  
  .msg-strip{
  height: 100%;
  display: flex;
  width: max-content;
  will-change: transform;
  transform: translate3d(0,0,0);
  animation: msgMarquee 100s linear infinite!important;
}
/* 2) 画像のフィットを中央寄せのカバーに固定（上下欠けの偏りを解消） */
  .msg-strip img{
  height: 100%!important;
  width: auto;
  min-width: 100vw;         /* 横連結の継ぎ目を安定させる */
  flex: 0 0 auto;
  object-fit: cover;
  object-position: center center;
  backface-visibility: hidden;   /* iOSでのチラつき/消失ケア */
  -webkit-transform: translateZ(0);
}
/* /こだわりセクション */	
	

/* ◆Spendセクション */
/* 背景へのコンテンツ切り込み */
#main_content > div > div > div.alignwide.swell-block-columns.spend-container > div {
	transform: translate(0, -120px);
}
/* /背景へのコンテンツ切り込み */	

/* 写真サイズ&位置 */
	.alignwide .wp-image-208 {
	    height: 300px !important;
	    position: relative;
	    right: -50px;
  }

.alignwide .wp-image-209 {
	    height: 300px !important;
	    position: relative;
	    right: 0px;
  }

.alignwide .wp-image-210 {
	    height: 300px !important;
	    position: relative;
	    right: 50px;
  }
/* /写真サイズ&位置 */
/* /Spendセクション */

/* ◆Foodセクション */
/* ブロークン解除 */
.is-style-broken.wp-block-media-text{
        --ark-mediatext--gap: 0;
        --swl-mediatext--lap: 0;
}
/* /ブロークン解除 */
/* /Foodセクション */
	
	
/* フッター */
/* 画像リンク */
	 .footer-img-links {
		width: 100%;
        margin-left: 0;   /* 左寄せ */
        margin-right: 0;
        justify-content: center;
}
/* /画像リンク */	
	
	#footer .l-footer__nav {
	    display: block;
		text-align: center;
}
/* /フッター */

/* 予約固定ボタン */
	 .fixed-btn {
	    padding-top: 12px !important;
	    padding-bottom: 22px !important;
	    position: fixed;
	    bottom: 0px;
	    z-index: 9998 !important;
}

#body_wrap>#footer .l-footer__foot>.l-container {
	margin-bottom: 64px !important;
}
body > #body_wrap #pagetop{
       z-index: 9998 !important;
}
	


.post_content>.swell-block-fullWide .swell-block-button__link {
	border-radius: 4px;
	z-index: 9999 !important;
}
/* /予約固定ボタン */
	
/* topへ戻る固定ボタン */
	 body .p-fixBtnWrap {
        padding-top: 12px !important;
	    padding-bottom: 20px !important;
	    bottom: 0px;
}
}