@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
*/
.c-gnav>.menu-item>a .ttl {
	font-size: 18px !important;
}
.c-gnav>.menu-item>a {
	padding: 20px 16px 0 !important;
	font-family: "Crimson Text", serif !important;
	font-weight: 400 !important;
}
h2.post_content .is-style-section_ttl {
    font-family: "Crimson Text", serif !important;
    letter-spacing: 2px !important;
    font-weight: 400 !important;
    font-style: normal;
}

/* ************************************************
*	Googleマップ　レスポンシブ
* ************************************************ */

.iframeWrapper {
    position: relative;
    filter:grayscale(100%);-webkit-filter:grayscale(100%);/*マップ色を変更*/
}

.iframeWrapper::before {
    content: "";
    display: block;
    padding-top: calc(456 / 765 * 100%);
}

.iframeWrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
}

/* ************************************************
*	hover
* ************************************************ */
.link-hover {
	display: inline-block;
	transition: all 0.3s ease 0s;
	cursor: pointer;
}
.link-hover a:hover {
	color: #7A7A7A;
}

/*** グローバルメニュー ***/
@media (min-width: 960px) {
    .c-smallNavTitle {
    	display: none;
    }
}
nav ul li:hover .c-smallNavTitle {
  display: block; /* 説明文を表示する */
  /* その他の表示設定（位置や見た目など） */
}


/* ************************************************
*	追従バナー（フッター）
* ************************************************ */
@media screen and (max-width: 768px) {
     .p-fixBtnWrap {
        bottom: 6em; /* 上に戻るボタンの位置を上に */
    }
    #fixed-bottom-menu {
        display: block;
        position: fixed;
        left: 0;
        bottom: 0;
        width: 100%;
        z-index: 99;
        background-color: #000;
        padding: .3em .3em;
    }
    #fixed-bottom-menu .swell-block-column {
        padding: .5em;
    }
    #fixed-bottom-menu .swell-block-button__link[data-has-icon] {
        padding: 1em 1em;
    }
}
@media screen and (min-width: 767px) {
    #fixed-bottom-menu, #fixed-sidebar-menu {
        display: none; /* PCでは非表示にする */
    }
}
#before_footer_widget {
    margin-top: 0;
}
.c-widget+.c-widget {
    margin-top: 0;
}

/* ************************************************
*	追従バナー（サイド）
* ************************************************ */
@media screen and (min-width: 767px) {
#fixed-sidebar-menu {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    position: fixed;
    right: 0;
    top: 40%;
    transform: translateY(-50%);
    z-index: 99;
    /*background-color: #000;*/
    color: #333;
    padding: 0;
    border-radius: 10px 0 0 10px;
    writing-mode: vertical-rl;  /* 縦書きモード */
    text-align: center;
}
#fixed-sidebar-menu .swl-inline-icon {
    width: 15px;
    height: 24px;
    margin-bottom: 2px;
}
#fixed-sidebar-menu a {
    color: #333;
}

/* 宿泊予約 */
.swell-block-column.bt_reserve {
	background: #000;
	padding: 10px 2px;
	border: solid 1px #000;
	margin-bottom: 5px;
}
#fixed-sidebar-menu .bt_reserve a {
    color: #fff;
}
#fixed-sidebar-menu .swl-inline-icon {
 margin-left: 0.3em;
 min-width: 1.5em;
}
#fixed-sidebar-menu .bt_reserve .swl-inline-icon {
 color: #fff;
}
/* お問い合わせ */
.swell-block-column.bt_contact {
	background: #fff;
	padding: 10px 2px;
	border: solid 1px #000;
}
}

/* ************************************************
*	無限ループスライダー
* ************************************************ */
/* スライダー全体 */
.slider-wrapper {
  display: flex; /* スライドのグループを横並び */
  overflow: hidden; /* はみ出たスライドを隠す */
}
/* スライド3枚のグループ */
.slider {
  animation: scroll-left 20s infinite linear .5s both;
  display: flex; /* スライド3枚を横並び */
}
.post_content ul.slider {
      padding-left: 0 !important;
}
/* スライド */
.slide {
  width: calc(100vw / 6); /* 6はスライドの枚数 */
}
li.slide {
    list-style: none;
}
/* スライドの画像 */
.slide img {
  display: block;
  width: 100%;
}
/* CSSアニメーション */
@keyframes scroll-left {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}

@media screen and (max-width:768px) {
 .slide {
  width: calc(100vw / 3); /* 6はスライドの枚数 */
}
}

/* ************************************************
*	スマホメニュー
* ************************************************ */
@media screen and (max-width:768px) {
    .c-listMenu a  {
        font-size: 1.2em;
    }
    .c-smallNavTitle {
        font-size: 15px;
        color: #333;
    }
}

/* ************************************************
*	モーダルウィンドウ
* ************************************************ */
.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: 10;
}

.modal-content {
    background-color: #f5f6f0;
    margin: 15% auto;
    padding: 20px 20px 20px 40px;
    border: 1px solid #888;
    border-radius: 1em;
    width: 60%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-family: "Hiragino Kaku Gothic ProN",
    "ヒラギノ角ゴ ProN W3",
    sans-serif;
}

.close {
	color: #aaa;
	float: right;
	font-size: 28px;
	font-weight: bold;
    position: relative;
    z-index: 12;
}

.close:hover,
.close:focus {
	color: black;
	text-decoration: none;
	cursor: pointer;
}

@media screen and (max-width: 960px){
.close {
	font-size: 20px;
}
.modal-content {
    padding: 10px;
    width: 95%;
    height: 75%;
    border-radius: 10px;
	}
	.modal-content .has-text-align-center {
    font-size: .825em!important;
	}
	.modal-content .u-mb-40, .modal-content .u-mb-30 {
	    margin-bottom: .5em!important;
	}
}

/* ************************************************
*	アコーディオンボタン
* ************************************************ */
.swell-block-accordion__title {
    /* ボックスモデル */
    width: 256px; /*　ボタンの幅はお好みで */
    padding: 0.7em 1em;
    margin: 1.5em auto 0;

    /* レイアウトと配置 */
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;

    /* テキストとフォント */
    font-size: 1em;
    text-align: center;

    /* 見た目 */
    background: var(--color_main);
    border-radius: 44px;
}

/* ボタンの文字位置 */
.swell-block-accordion__title .swell-block-accordion__label {
    position: relative;
    right: -16px;
}

/* 展開した時の表示範囲の調整 */
.swell-block-accordion__body {
    padding: 1em 0;
}

/* ************************************************
*	もっと見るボタン
* ************************************************ */
#swell-modal-btn.is-style-more_btn a {
  width: -moz-fit-content;
  width: fit-content;
  padding: 0.6em 4.5em 0.5em 2.5em;
  min-width: unset;
  border-radius: 999px;
}
#swell-modal-btn.is-style-more_btn a::after {
  right: 1.3em;
}

