@charset "UTF-8";

/* WPツールバー設定 */
#wpadminbar {
    position: fixed !important;
    top: auto !important;
    left: 0 !important;
    bottom: 0 !important;
    background-color: rgba(0, 0, 0, 0.6) !important;
}
html {
    margin: 0 !important;
    top: 0 !important;
}

/* ================================================= */
/*  0. CSS Reset
/* ================================================= */
html {
    --color-swany-green: #39784F; /* スワニーグリーン */

    /* 旧設定 */
    --color-green: #76a08c; /* やや薄グリーン */
    --color-bg-header: var(--color-green); /* ヘッダー背景色 旧#b2c7b9,8daf99*/
    --color-bg-footer: #506f63; /* フッター背景色 旧#365a42 */
    /*--color-bg-green: #b2c7b9;  背景色　緑 */
    --color-bg-beige: #f4f2f1; /* 背景色 グレージュ */
    /*--color-bg-beige: #eae5e3;*/ /* 背景色 旧グレージュ */
    --color-bg-brown: #a58f86; /* 背景色 茶 */
    /* 旧設定　END */

    --color1: #8da694; /* 薄グリーン #9ABDA5 */
    --color2: #35633C; /* 濃グリーン #3C735C #35633C */

    --color-bg-header: var(--color1); /* ヘッダー背景色 */
    --color-bg-footer: #5d7163; /* フッター背景色 */
    --color-bg-beige: #F4F1EF; /* 背景色 グレージュ #EBE3E0 */
    --color-bg-brown: #C2ABA2; /* 背景色 茶(濃グレージュ) #a58f86 */
    --color-green: var(--color2);



    /* テキストカラー */
    --color-text-green: var(--color-green);
    
    /* テキストアイコンの色 */
    --color-icon-green: var(--color-green); /* 店舗 */

    /* 幅・高さ */
    --header-height: 100px; /* ヘッダーの高さ */
    --header-height-hide: -100px;

    --contet-width-max: 900px;
    /*--contet-width-max: 1720px;    コンテンツ幅最大 */
    --contet-width-max: 1250px; /* コンテンツ幅最大 */
    /*--top-image-height: 850px;  /* トップイメージ(スライドショー)高さ、ファーストビュー内 */

    /* スペース */
    --space-page-side: 50px;  /* ページの両脇余白 */

    --padding-section: 70px;  /* 各セクションの上下パディング */
    --padding-wrap: 30px;   /* 要素内のパディング */
    --space-wrap: 50px;  /* 要素内の各子要素ごとのスペース */
    --space-line: 1rem; /* 各要素の行間スーペース */

    /* テキストサイズ */
    --font-size-body: 1.6rem;    /* 通常サイズ */
    --font-size-s: 1.2rem;
    --font-size-m: 1.4rem;
    --font-size-l: 1.8rem;
    --font-size-h1: 3rem;
    --font-size-h2: 3rem;
    --font-size-h3: 2.2rem;
    --font-size-h4: var(--font-size-l);
    --font-size-h5: var(--font-size-body);
    

    /* その他 */
    /* 明朝体 */
    --font-family-Serif-jp: 'Noto Serif JP',"游明朝", 'YuMincho', "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
/* タブレット（幅：768px ファーストビュー：1080px） */
@media screen and (max-width: 768px) {
    html {
        --header-height: 80px; /* ヘッダーの高さ(スマホ) */
        --header-height-hide: -80px;

        /* スペース */
        --padding-section: 50px;  /* 各セクションの上下パディング */
        --space-page-side: 30px;  /* コンテンツの両脇余白 */
        --space-wrap: 30px;  /* 要素内の各子要素ごとのスペース */

        /* テキストサイズ */
        --font-size-h1: 2.4rem;
        --font-size-h2: 2.4rem;
        --font-size-h3: 2rem;
    }
}
/* スマホ（幅：375px ファーストビュー：600px） */
@media screen and (max-width: 375px) {
    html {
        /* スペース */
        --padding-section: 30px;  /* 各セクションの上下パディング */
        --padding-wrap: 20px;   /* 要素内のパディング */
        --space-page-side: 20px;  /* コンテンツの両脇余白 */
        --space-wrap: 20px;  /* 要素内の各子要素ごとのスペース */

        /* テキストサイズ */
        --font-size-body: 1.4rem;    /* 通常サイズ */
        --font-size-l: 1.6rem;
        --font-size-h1: 2rem;
        --font-size-h2: 2rem;
        --font-size-h3: 1.8rem;
        --font-size-h4: var(--font-size-l);
        --font-size-h5: var(--font-size-body);
    }
}

html,
body {
    border: none;
    margin: 0;
    padding: 0;
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
address,
big,
cite,
code,
em,
/*img,*/
small,
strike,
sub,
sup,
li,
ol,
ul,
fieldset,
form,
label,
legend,
button,
table,
caption,
tr,
th,
td {
    border: none;
    font-size: inherit;
    /*line-height: inherit;*/
    margin: 0;
    padding: 0;
    text-align: inherit;
}

h1, h2, h3, h4 {
    letter-spacing: 0.2rem; /* 文字間 */
    /*line-height: 1.2;*/   /* 行間 */
    font-weight: normal;
}

h1 {
    font-size: var(--font-size-h1) !important;
}
h2 {
    font-size: var(--font-size-h2) !important;
}
h3 {
    font-size: var(--font-size-h3) !important;
}
h4 {
    font-size: var(--font-size-h4) !important;
    text-align: left !important;
    font-weight: bold;
}
h5 {
    font-size: var(--font-size-h5) !important;
    text-align: left !important;
}

/* リンク */
a:link,
a:visited,
a:active {
    color:#333;
    text-decoration:none;
}
a:hover {
    color:#666;
    text-decoration:none;
}
/* スマホでのリンク青枠の消去処理 */
*:focus {
    outline: none;
}

blockquote::before,
blockquote::after {
    content: "";
}

li {list-style-type: none;}

/* ================================================= */
/* Webフォント */
/* ================================================= */
/* 明朝体 */
.font_Serif_jp {
    font-family: 'Noto Serif JP',"游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.t_size_s {
    font-size: var(--font-size-s) !important;
}

/* ================================================= */
/*  1. Document Setup
/* ================================================= */
html {
    font-size: 62.5%; /* 1rem = 10px */
    scroll-behavior: smooth;
}

@media (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior: auto;
    }
}

body {
    background: #FFF;
    box-sizing: border-box;
    color: #333;
    font-size: var(--font-size-body);
    /*letter-spacing: 0.06rem;  文字間 */
    letter-spacing: -0.015em;
    line-height: 1.7;
    text-align: left;
    font-family: 'Noto Sans JP',"Hiragino Sans W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

*,
*::before,
*::after {
    box-sizing: inherit;
    -webkit-font-smoothing: antialiased;
    word-break: break-word;
    word-wrap: break-word;
}

/* ================================================= */
/*  汎用レイアウト要素
/* ================================================= */
/* 右寄せ */
.text_r {
    text-align: right !important;
}
/* 中央揃え */
.txt_center {
    text-align: center !important;
}

/* スマホの時だけ改行 */
.br_sp {
    display: none;
}
/* スマホの時だけ表示 */
.sp_content {
    display: none !important;
}

/* ------------------------------------------------- */
/* リンク関連 */
/* ------------------------------------------------- */
/* リンクボタン */
.link_btn {
    display: inline-block !important;
    width: auto !important;
    padding: 1em;
    background-color: var(--color-bg-beige);
}
.link_btn._s {
    display: inline-block;
    font-size: 0.8em;
    border-radius: 1rem;
    background-color: var(--color-bg-beige);
    padding: 0.4em 1em;
    text-align: center;
}
.link_btn._wide {   /* 画面幅いっぱいタイプ */
    display: block;
    font-size: 2.4rem;
    padding: var(--padding-wrap);
    border-radius: 0;
    background-color: var(--color-bg-beige);
}
.bg_color_b .link_btn {
    background-color: #FFF;
}
a.link_btn:link,
a.link_btn:visited,
a.link_btn:active,
a.link_btn:hover {
    text-decoration: none !important;
}

.link_btn._c_g {   /* 緑色バージョン */
    background-color: var(--color-icon-green);
    color: #FFF;
}

.link_btn > i {
    margin-left: 0.5em;
}

/* リンクボタン右寄せ */
.link_wrap {
    text-align: right !important;
}
/*.link_wrap > .link_btn {
    font-size: 0.8em;
    padding: 0.4em 1em;
}*/

/* 内部リンクアイコン付きテキスト（末尾） */
.icon_link {
    display: inline-block;
}
.icon_link > span {
    display: flex;
    flex-wrap: nowrap;
    text-align: center;
    line-height: 1;
}
.icon_link > span::after {
    display: inline-block;
    content: '';
    width: 0.8em;
    background-image: url(http://swany-kamakura.co.jp/home/img/icon/icon-arrow-right.svg);
    background-repeat: no-repeat;
    background-position: center;
    margin-left: 0.5em;
    margin-top: 0.1em;
}
/*.icon_link::after {
    display: inline-block;
    font-family: "Font Awesome 6 Free";
    content: '\f105';
    font-weight: bold;
    margin-left: 0.5em;
}*/

/* 外部リンクアイコン付きテキスト（末尾） */
.icon_exlink {
    display: inline-block;
}
.icon_exlink > span {
    display: flex;
    flex-wrap: nowrap;
    text-align: center;
    line-height: 1;
}
.icon_exlink > span::after {
    display: inline-block;
    content: '';
    width: 0.8em;
    background-image: url(http://swany-kamakura.co.jp/home/img/icon/icon-open-link.svg) !important;
    background-repeat: no-repeat;
    background-position: center;
    margin-left: 0.5em;
    margin-top: 0.1em;
}
/*.icon_ex_link::after {
    display: inline-block;
    width: 1em;
    background-image: url(http://swany-kamakura.co.jp/home/img/icon/icon-open-link.svg) !important;
    background-repeat: no-repeat;
    background-position: center;
    margin-left: 0.5em;
    font-family: "Font Awesome 6 Free";
    content: '\f08e' !important;    /*  上書きするため 
    /*font-weight: bold;
    margin-left: 0.5em;
}*/

/* タブレットサイズ以下 */
@media screen and (max-width: 768px) {
    /* PCの時だけ改行 */
    .br_pc {
        display: none;
    }
    /* PCの時だけ表示 */
    .content_pc {
        display: none !important;
    }

    /* スマホの時だけ改行 */
    .br_sp {
        display: inline-block;
    }
    /* スマホの時だけ表示 */
    .content_sp {
        display: block;
    }
}

/* ------------------------------------------------ */
/* fontawesome 関連 */
/* ------------------------------------------------- */
i.space_r {
    margin-right: 0.5em;
}
i.space_l {
    margin-left: 0.5em;
}

/* ------------------------------------------------- */
/* テーブル */
/* ------------------------------------------------- */
/* シンプル（PC：横並び、SP：縦並び） */
table.data_table {
    width: 100%;
    text-align: left;
}
table.data_table tr {
    vertical-align: top;
}
table.data_table th {
    max-width: 30%;
    font-weight: normal;
}
table.data_table td {
    padding-bottom: 2rem;
}
table.data_table i {
    margin-right: 0.5em;
}
/* タブレットサイズ以下 */
@media screen and (max-width: 768px) {
    table.data_table th,
    table.data_table td {
        display: block;
        max-width: 100%;
    }
    table.data_table th {
        font-weight: bold;
    }
}

/* カラー（駐車場情報で使用） */
table.data_table_c {
    width: 100%;
    max-width: 500px;
}
table.data_table_c th,
table.data_table_c td {
    font-weight: bold;
    padding: 1rem;
}
table.data_table_c th {
    color: #FFF;
    font-size: var(--font-size-m);
    background-color: var(--color-text-green);
}
table.data_table_c td {
    background-color: var(--color-bg-beige);
}
.bg_color_b table.data_table_c td {
    background-color: #FFF;
}

/* ================================================= */
/*  汎用カスタムメニュー
/* ================================================= */
/* ------------------------------------------------- */
/* SNSアイコンメニュー（ヘッダー、フッター共通） */
/* ------------------------------------------------ */
.menu-sns_menu-container ul {
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-end;
    align-items: flex-end;
    font-size: 2.3rem;
    line-height: 1em !important;
}
.menu-sns_menu-container ul li {
    margin-left: 1.5rem;
}

/* ------------------------------------------------ */
/* サイトマップ（ドロワーメニュー、フッターメニュー共通） */
/* ------------------------------------------------ */
.menu-site_menu-container i.fa {
    padding-right: 0.5em;
}
.menu-site_menu-container .menu li {
    margin-bottom: var(--space-line);
}
.menu-site_menu-container .menu .sub-menu {
    margin-top: var(--space-line);
}
.menu-site_menu-container .menu .icon_menu {
    font-weight: bold;
}
.menu-site_menu-container .menu .ex_link > a::after {
    display: inline-block;
    font-family: "Font Awesome 6 Free";
    content: '\f08e';
    font-weight: bold;
    margin-left: 0.5em;
}

/* ================================================= */
/*  Header
/* ================================================= */
input#nav_toggle {
    display: none;
}
header#header {
    position: relative;
    width: 100%;
}

#header_nav {
    position: fixed;
    top: 0;
    z-index: 999;
    transition: all 0.3s ease-out;

    width: 100%;
    height: var(--header-height);
    background: #fff;
    background-color: var(--color-bg-header);
    padding: 20px var(--space-page-side);

    display: flex;
    justify-content: space-between;
}
#header_nav.fixed_hide {
    top: var(--header-height-hide);
}

/* スワニーロゴ */
.header_logo {
    align-items: center;
    display: flex;
    justify-content: center;
    text-align: center;
}
.header_logo img {
    max-height: 60px;
}

/* ヘッダーメニュー */
.main_nav {
    flex-basis: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    height: 100%;
    font-size: 1.4rem;
    color: #FFF;

    margin-right: 1.5rem;
}
.main_nav a:link,
.main_nav a:visited,
.main_nav a:active,
.main_nav a:hover {
    color: #FFF;
    text-decoration:none;
}

/* ------------------------------------------------ */
/* SNSアイコンカスタムメニュー */
/* ------------------------------------------------ */
#header .sns_menu {
    display: flex;
    align-items: flex-end;
}
#header .menu-sns_menu-container ul {
    justify-content: flex-end;
    align-items: flex-end;
    font-size: 2.4rem;
}
#header .menu-sns_menu-container ul li {
    margin-left: 0.5em;
}
#header .menu-sns_menu-container ul li a {
    color: var(--color-text-green);
}

/* ------------------------------------------------ */
/* ヘッダーナビメニュー */
/* ------------------------------------------------ */
#header .main_nav .nav_menu {
    display: flex;
    align-items: flex-end;
}
#menu-header_menu {
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-end;
    align-items: flex-end;
    margin-left: 2rem;
    padding-top: 1rem;
}
#menu-header_menu li {
    margin-left: 2rem;
}
#menu-header_menu li a {
    /*padding: 0.5rem;*/
    white-space: nowrap;
}

/* オンラインショップボタン（ヘッダー）*/
#menu-header_menu .online_shop a {
    display: block;
    font-size: 0.8em;
    border-radius: 1rem;
    background-color: #FFF;
}
#menu-header_menu .online_shop a > span {
    display: block;
    color: var(--color-text-green);
    font-weight: bold;
    line-height: 1em;
    padding: 0.7rem 1rem;
}
#menu-header_menu .online_shop a > span::before {   /* カートアイコン */
    /*background-image: url(http://swany-kamakura.co.jp/home/img/icon/icon-cart.svg);
    margin-right: 0.5em;*/
    display: inline-block;
    font-family: "Font Awesome 6 Free";
    content: '\f07a';
    font-weight: bold;
    margin-right: 0.5em;
    font-size: 1.2em;
}
#menu-header_menu .online_shop a > span::after {   /* 外部リンクアイコン */
    /*background-image: url(http://swany-kamakura.co.jp/home/img/icon/icon-open-link.svg);
    margin-left: 0.5em;*/
    display: inline-block;
    font-family: "Font Awesome 6 Free";
    content: '\f08e';
    font-weight: bold;
    margin-left: 0.5em;
    font-size: 1em;
}
#menu-header_menu .online_shop a:link,
#menu-header_menu .online_shop a:visited,
#menu-header_menu .online_shop a:active,
#menu-header_menu .online_shop a:hover {
    color: #666 !important;
    text-decoration:none;
}

/* ------------------------------------------------ */
/* ドロワーメニュー（ハンバーガーメニュー） */
/* ------------------------------------------------ */
#header #nav_menu_btn {
    /*display: none;*/
    font-size: 10px;
    color: #FFF;
}
#header #nav_menu_btn #menu_btn span {
    display: block;
    height: 100%;
    padding-top: 32px;  /* アイコンサイズ+余白 */
    white-space: nowrap;
    cursor: pointer;
    cursor: hand;

    /* 三本線 */
    background-position: center top;
    background-size: 29px auto;
    background-repeat: no-repeat;
    background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2064%2064%22%20stroke-width%3D%221.5%22%20stroke%3D%22%23ffffff%22%20fill%3D%22none%22%20class%3D%22duration-300%20transform%20transition-all%22%20style%3D%22width%3A%2064px%3B%20height%3A%2064px%3B%22%3E%3Cpath%20d%3D%22M7.68%2032h48.64M7.68%2015.97h48.64M7.68%2048.03h48.64%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E');
    /*background-image: url(http://swany-kamakura.co.jp/home/img/icon/icon-menu-w.svg);*/
}
/* 三本線を×に変更 */
#nav_toggle:checked ~ #header #header_nav #nav_menu_btn #menu_btn span {
    background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2064%2064%22%20stroke-width%3D%221.5%22%20stroke%3D%22%23FFFFFF%22%20fill%3D%22none%22%20class%3D%22duration-300%20transform%20transition-all%22%20style%3D%22width%3A%2064px%3B%20height%3A%2064px%3B%22%3E%3Cpath%20d%3D%22M8.06%208.06l47.35%2047.88M55.94%208.06L8.59%2055.94%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E');
    /*background-image: url(http://swany-kamakura.co.jp/home/img/icon/icon-cancel-w.svg);*/
}

/* ドロワーメニュー内 */
#header #drawer_wrap {
    display: none;

    position: fixed;
    top: var(--header-height);
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 800;
    background-color: rgba(0, 0, 0, 0.7);
    transition: .3s;
}
#header #drawer_wrap .drawer_inner {
    padding: 0 var(--space-box) var(--space) var(--space-box);
    width: 400px;
    height: auto;

    position: absolute;
    z-index: 801;
    top: 0;
    bottom: 0;
    transform: translate(-400px);
    transition: 0.3s ease-out;

    overflow-y: scroll;
    padding: var(--padding-wrap);
    background-color: #FFF;
    display: block;
}

#nav_toggle:checked ~ #header #drawer_wrap {
    display: block;
}
#nav_toggle:checked ~ #header #drawer_wrap .drawer_inner {
    transform: translate(0);
    transition: 0.3s ease-out;
}

/* ドロワー内 サイトマップカスタムメニュー */
#drawer_wrap .menu-site_menu-container .menu {
    font-size: var(--font-size-l);
}
#drawer_wrap .menu-site_menu-container .menu > li > ul {
    margin-bottom: var(--space-wrap);
}
#drawer_wrap .menu-site_menu-container .menu .icon_menu {
    font-size: var(--font-size-s) !important;
    color: var(--color-text-green);
}
/* インフォメーションのみフォントサイズ小 */
#drawer_wrap .menu-site_menu-container .menu .menu_info {
    font-size: var(--font-size-m);
}

/* ヘッダーには表示しない項目 */
#header #drawer_wrap .sitemap .nav_out {
    display: none;
}

/* 背景固定用クラス */
html.is-fixed,
html.is-fixed body {
    height: 100%;
    overflow: hidden;
}

/* タブレットサイズ以下 */
@media screen and (max-width: 768px) {
    .header_logo img {
        max-height: 50px;
    }
    #header #nav_menu_btn {
        display: block;
    }
    #header #nav_menu_btn #menu_btn span {
        padding-top: 27px;  /* アイコンサイズ+余白 */
        /* 三本線 */
        background-size: 24px auto;
    }
    #header .main_nav .nav_menu {
        display: none;
    }
    #header .sns_menu ul {
        font-size: 2rem;
        /*margin-right: 1.5rem;*/
    }
    #header .sns_menu ul li {
        margin-left: 1.5rem;
    }

    /* ヘッダーには表示しない項目（ハンバーガーメニューでは表示） */
    #header #drawer_wrap .sitemap .nav_out {
        display: block;
    }
}
/* スマホサイズ以下 */
@media screen and (max-width: 375px) {
    #header .sns_menu ul {
        font-size: 2.5rem;
        margin-right: 1rem;
    }
    #header .sns_menu ul li {
        margin-left: 1rem;
    }
}


/* ================================================= */
/*  footer
/* ================================================= */
footer {
    background-color: var(--color-bg-footer);
    color: #FFF;
}
footer a:link,
footer a:visited,
footer a:hover,
footer a:active,
footer a:hover {
    color: #FFF;
    text-decoration:none;
}

footer .footer_inner {
    padding: var(--padding-wrap) var(--space-page-side);
}
footer .footer_inner > * {
    margin-bottom: 20px;
}

/* ------------------------------------------------ */
/* SNSアイコンカスタムメニュー */
/* ------------------------------------------------ */
footer .menu-sns_menu-container ul {
    align-items: center;
    font-size: 4rem;
}
footer .menu-sns_menu-container ul li {
    margin-left: 0.5em;
}
footer .menu-sns_menu-container ul li a {
    color: var(--color-nav-sub-bg);
}

/* ------------------------------------------------ */
/* サイトマップカスタムメニュー */
/* ------------------------------------------------ */
footer .footer_menu {
    font-size: var(--font-size-m);
    /*display: grid;
    grid-template-columns: 1fr 300px;*/
    display: flex;
    justify-content: space-between;
}
/* メニューリスト */
footer .footer_menu .menu-site_menu-container > ul {
    flex: 1;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}
footer .footer_menu .menu-site_menu-container > ul > li {
    margin-right: var(--space-wrap);
    margin-bottom: var(--space-wrap);
}
footer .footer_menu .menu-site_menu-container > ul li {
    white-space: nowrap;
}

/* ------------------------------------------------ */
/* バナーリスト */
/* ------------------------------------------------ */
footer .footer_inner .banner_list {
    flex-basis: 300px;
    width: 300px;
    margin-bottom: var(--space-wrap);
}
footer .footer_inner .banner_list li {
    width: 100%;
    margin-bottom: 20px;
}
footer .footer_inner .banner_list li:last-child {
    margin-bottom: 0;
}
footer .footer_inner .banner_list li a {
    color: #333;
}
footer .footer_inner .banner_list li img {
    width: 100%;
    height: auto;
}

/* ------------------------------------------------ */
/* ロゴ */
/* ------------------------------------------------ */
footer .copyright {
    width: 100%;
    text-align: center;
    padding-top: 50px;
    padding-bottom: 20px;
}
footer .copyright img {
    width: 30%;
    max-width: 200px;
    margin-bottom: 20px;
}

/* ------------------------------------------------ */
/* 著作権表記 */
/* ------------------------------------------------ */
footer .copyright span {
    display: block;
    text-align: center;
    font-size: var(--font-size-s);
}

/* ------------------------------------------------ */
/* メールマガジン登録フォーム（未使用） */
/* ------------------------------------------------ 
footer .mailmag_form {
    width: 100%;
    background-color: #FFF;
    padding: 2rem 5rem;
    color: #333;
}
footer .mailmag_form h4 {
    display: inline-block;
}
footer .mailmag_form .wpforms-container-full .wpforms-form button[type=submit] {
}
*/


/* ================================================= */
/*  NEWS Feeds
/* ================================================= */
/* お知らせ、イベント情報 */
.news_feeds {
    background-color: var(--color-bg-brown);
    padding: 5rem var(--space-page-side);
}

/* タブレットサイズ以下 */
@media screen and (max-width: 768px) {
    footer .footer_inner .footer_menu {
        display: block;
    }
    footer .footer_inner .menu_list {
        margin-bottom: 20px;
    }
    footer .footer_inner .banner_list {
        flex-basis: 100%;
        width: 100%;
    }
    footer .sns_menu ul {
        justify-content: center;
    }

    .news_feeds {
        padding-right: 0;
        padding-left: 0;
    }
}


/* ================================================= */
/*  content
/* ================================================= */
main {
    overflow: hidden;
    /*top: var(--header-height);*/
    padding-top: var(--header-height);
    /*padding-bottom: var(--padding-section);*/
}

/* 汎用スペース */
main .wrap > * {
    margin-bottom: var(--space-line);
}
main .wrap > *:last-child{
    margin-bottom: 0;
}

/* リスト */
main ul li {
    text-align: left;
}

/* 注釈・注意 */
main .note {
    font-size: var(--font-size-m);
    color: #999;
    /*text-align: center;*/
}
main .note a:link,
main .note a:visited,
main .note a:active {
    color: #999;
    font-weight: bold;
    text-decoration: underline;
}
main .note a:hover {
    text-decoration:none;
}

/* 改行させない */
main .nowrap {
    white-space: nowrap;
}

/* 強調 */
main em {
    font-weight: bold;
    font-style: normal;
}

/* 見出し */
main h1,
main h2,
main h3,
main h4,
main h5
{
    display: block;
    margin: 0;
    padding: 0;
    text-align: center;
}
main h1,
main h2,
main h3 {
    font-family: var(--font-family-Serif-jp);
}

main img {
    width: 100%;
    max-width: 100%;
}
main div {
    display: block;
    /*width: 100%;
    height: auto;*/
    white-space: normal;
    text-align: center; /* 基本中央揃え */
}
main p {
    text-align: left;
}

/* テキストアイコン */
main .icon_list {
    display: flex;
    flex-wrap: wrap;
}
/* デフォルトデザイン */
main .icon_list li {
    font-size: var(--font-size-s);
    color: #333;
    white-space: nowrap;
    padding: 0.5rem 1rem;
    background-color: var(--color-bg-beige);
    /*background-color: var(--color-icon-green);*/
    margin-right: 1rem;
    margin-bottom: 1rem;
}
/* 実店舗 */
main .icon_list .style_shop span::before {
    display: inline-block;
    font-family: "Font Awesome 6 Free";
    content: '\f54f';
    font-weight: 900;
    margin-right: 0.5em;
}
/* オンラインショップ */
main .icon_list .style_onlineshop span::before {
    display: inline-block;
    font-family: "Font Awesome 6 Free";
    content: '\f07a';
    font-weight: 900;
    margin-right: 0.5em;
}
/* SNS */
main .icon_list .style_sns span::before {
    display: inline-block;
    font-family: "Font Awesome 6 Free";
    content: '\23';
    font-weight: 900;
    margin-right: 0.5em;
}

/* 横並び要素 */
main .flex_wrap {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}
main .flex_wrap._center {
    justify-content: center;
}
main .flex_wrap._right {
    justify-content: flex-end;
}
main .flex_wrap._nowrap {
    flex-wrap: nowrap;
}
main .flex_wrap > * {
    white-space: nowrap;
    margin-right: var(--space-line);
}
main .flex_wrap > *:last-child {
    margin-right: 0;
}

/* 画像 */
main .img_10_6,
main .img_10_8,
main .img_10_10 {
    width: 100%;
    position: relative;
}
main .img_10_10 {
    padding-top: 100%;
}
main .img_10_8 {
    padding-top: 80%;
}
main .img_10_6 {
    padding-top: 60%;
}
main .img_10_6 img,
main .img_10_8 img,
main .img_10_10 img {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    object-fit: cover;
}

/* ------------------------------------------------- */
/* section */
/* ------------------------------------------------- */
main section {
    padding: var(--padding-section) var(--space-page-side);
}
/* ページタイトルセクション */
main section.section_title  {
}
/* ページタイトルセクションの直後に来るセクション */
main section.section_title + section {
    padding-top: 0;
}
main section.section_title + section.bg_color_b {
    padding-top: var(--padding-section);    /* 背景色ありの場合はスペースを残す */
}
/* 背景色B */
main section.bg_color_b {
    background-color: var(--color-bg-beige);    /* 薄ベージュ */
}
/* 見出し：アンダーバー */
main section h3 {
    text-align: left !important;
    padding-bottom: 0.5rem;
    border-bottom: solid 3px var(--color-green);
}
/* 強調テキスト */
main section em {
    font-size: var(--font-size-l);
}

/*main section a:link,
main section a:visited,
main section a:active {
    text-decoration:underline;
}*/

/* ------------------------------------------------- */
/* アコーディオン */
/* ------------------------------------------------- */
main .hidden_toggle {
    display: none;
}

main .hidden_h {
    display: block; /* マージン設定を有効にする */
    position: relative;
    /*padding-bottom: var(--space-s);
    border-bottom: solid 1px #999;
    margin-bottom: 0;*/
    cursor: pointer;
}
/* クリック部分 */
main .hidden_btn {
    position: absolute;
    right: 0;
    bottom: -2.5em;
    font-size: var(--font-size-m);
    color: #999;
    padding: var(--space-s);
    text-align: right;
    -webkit-tap-highlight-color: transparent; /* iPhoneちらつき防止 */
}
/* ひらく/とじるテキスト */
main .hidden_btn .open_txt,
main .hidden_btn .close_txt {
    display: none;
    color: var(--color-text-green);
}
main .hidden_btn .open_txt {
    display: inline-block;
}
main .hidden_btn > span {
    position: relative;
    padding-right: 2rem; /* +アイコン分 */
}
/* 開閉状態を示す+アイコン */
main .hidden_btn > span:before,
main .hidden_btn > span:after {
    display: block;
    content: '';
    width: 1.5rem;
    height: 1px;
    background: var(--color-text-green);
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
}
/* 一本は縦にして+を作る */
main .hidden_btn > span:after {
    transform: translateY(-50%) rotate(90deg);
    transition: .5s;
}

/* ................................................. */
/* 表示されるエリア */
main .hidden_wrap {
    display: block;
    overflow: hidden;
    transition: 0.5s;/* 表示速度の設定 */

    /* 非表示 */
    height: 0;
    opacity: 0;
}

/* ................................................. */
/* アコーディオンを開閉処理 */
/* 縦棒を横棒にして-にする */
main .hidden_toggle:checked + * .hidden_h .hidden_btn > span:after {
    transform: translateY(-50%) rotate(0);
    background-color: #999;
}
/*main .hidden_toggle:checked + div .hidden_h {
    border: 0;
    margin-bottom: var(--space-l);
}*/
/* テキストの切り替え */
main .hidden_toggle:checked + * .hidden_h .hidden_btn .open_txt {
    display: none;
}
main .hidden_toggle:checked + * .hidden_h .hidden_btn .close_txt {
    display: inline-block;
}

/* チェックボックスにチェックが入ったら表示する */
main .hidden_toggle:checked + * .hidden_wrap {
    height: auto;
    opacity: 1;
}
    
/* スマホ */
@media screen and (max-width: 800px) {
    /* クリック部分（詳しく見るテキスト） */
    main .hidden_btn {
        font-size: var(--font-size-s);
    }
}

/* ------------------------------------------------- */
/* 共通レイアウト・デザイン */
/* ------------------------------------------------- */
/* ................................................. */
/* 画像とテキストを少し重ねたレイアウト */
main .layout_img {
    position: relative;
    width: 100%;
    min-height: 400px;
}
/*main .layout_img:before {
    content: "";
    display: block;
    padding-top: 100%;
}
main .layout_img .image {
    position: absolute;
    z-index: 0;
    width: 60%;
    height: auto;
}
main .layout_img .image img {
    width: 100%;
    height: auto;
}
main .layout_img .text {
    position: absolute;
    z-index: 10;
    width: 60%;
    height: auto;
    padding: var(--space-wrap);
    background-color: rgba(244, 242, 241, 0.8);
}*/
main .layout_img .image {
    position: absolute;
    z-index: 0;
    width: auto;
    height: 90%;
}
main .layout_img .image img {
    width: auto;
    height: 100%;
}
main .layout_img .text {
    position: absolute;
    z-index: 10;
    width: 60%;
    height: auto;
    padding: var(--space-wrap);
    background-color: rgba(244, 242, 241, 0.8);
}
main .layout_img .text > * {
    display: block;
    margin-bottom: var(--space-wrap);
}
main .layout_img .text > *:last-child {
    margin-bottom: 0;
}
main .layout_img .image,
main .layout_img._left .image {
    left: 0;
    top: 0;
}
main .layout_img .text,
main .layout_img._left .text {
    right: 0;
    top: var(--padding-wrap);
}
main .layout_img._right .image {
    left: auto;
    right: 0;
    top: var(--padding-wrap);
}
main .layout_img._right .text {
    left: 0;
    right: auto;
    top: 0;
}
/* 背景色が色付きの場合 */
main section.bg_color_b .layout_img .text {
    background-color: rgba(255, 255, 255, 0.8);
}

/* ................................................. */
/* 画像とテキストを隣同士にしたデザイン */
main .layout_img2 {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: repeat(2, 1fr);
    grid-template-columns: repeat(2, 1fr);
    grid-gap: var(--space-wrap);
}
main .layout_img2 .image {
}
main .layout_img2 .image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
main .layout_img2 .text {
    font-size: var(--font-size-m);
    /*padding: var(--space-wrap);
    background-color: var(--color-bg-beige);*/
}
main .layout_img2 .text > * {
    display: block;
    margin-bottom: var(--space-line);
}
main .layout_img2 .text > *:last-child {
    margin-bottom: 0;
}
main .layout_img2._right {
    grid-auto-flow: column;
    direction: rtl; /* 右から */
}
main .layout_img2._right > * {
    direction: ltr; /* テキストの表示がおかしくなるのを修正 */
}

/* 背景色が色付きの場合 
main section.bg_color_b .layout_img2 .text {
    background-color: #FFF;
}*/

/* タブレットサイズ以下 */
@media screen and (max-width: 768px) {
    /* 画像とテキストを少し重ねたレイアウト */
    main .layout_img {
        height: auto;
    }
    main .layout_img .image {
        position: static;
        width: 100%;
        height: auto;
    }
    main .layout_img .image img {
        width: 100%;
        height: auto;
    }
    main .layout_img .text {
        position: static;
        width: 100%;
        background-color: var(--color-bg-beige);
    }
    main section.bg_color_b .layout_img .text {
        background-color: #FFF;
    }

    main .layout_img2 {
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
        grid-gap: var(--space-line);
    }
    main .layout_img2._right {
        grid-auto-flow: row;
        direction: ltr;
    }
}

/* ------------------------------------------------- */
/* 投稿リスト：画像付きリスト（イベント） */
/* ------------------------------------------------- */
main .post_list {
    --custom_img_h: 60%;   /* 通常は10:6 */
}
main .post_list a {
    display: block;
    width: 100%;
}
main .post_list a:link,
main .post_list a:visited,
main .post_list a:active {
    text-decoration: none;
}
main .post_list .desc_wrap > *,
main .post_list > li > *,
main .post_list > a > * {
    margin-bottom: var(--space-line);
}
main .post_list .desc_wrap > *:last-child,
main .post_list > li > *:last-child,
main .post_list > a > *:last-child {
    margin-bottom: 0;
}
/* 画像 */
main .post_list .post_img {
    width: 100%;
    height: auto;
    margin-bottom: var(--space-line);
    /*padding-top: 60%;
    padding-top: var(--custom_img_h);
    position: relative;*/
}
main .post_list .post_img img {
    width: 100%;
    height: 100%;
    /*position: absolute;
    top: 0;
    left: 0;
    z-index: 1;*/
    object-fit: contain;
}
main .post_list._h100 .post_img {   /* 10:10（正方形） */
    padding-top: 100%;
}
main .post_list._h_auto .post_img {   /* そのまま比率表示 */
    padding-top: 0;
    position: static;
}
main .post_list._h_auto .post_img img {
    height: auto;
    position: static;
}
main .post_list._contain .post_img img {    /* contain表示 */
    object-fit: contain;
}

main .post_list .post_title {
    font-size: var(--font-size-m) !important;
    /*font-weight: normal;*/
    margin-bottom: var(--space) !important;
}

main .post_list p {
    /*color: #999;*/
    font-size: var(--font-size-m);
}
/* テキストアイコンリスト */
main .post_list .icon_list {
    justify-content: flex-end;
}
/* テキスト内見出し */
main .post_list h5 {
    font-size: var(--font-size-m) !important;
}

/* ------------------------------------------------ */
/* 投稿リスト：太い縁取り・テキストのみ（お知らせ） */
/* ------------------------------------------------- */
.post_list_txt li {
    display: block;
    height: 100%;
    background-color: var(--color-bg-beige);
    padding: var(--padding-wrap);
}
.post_list_txt li div {
    height: 100%;
    background-color: #FFF;
    padding: var(--padding-wrap);
}
.post_list_txt .post_title { /* タイトル */
    margin-bottom: 1rem !important;
}
.post_list_txt .post_data { /* 日付 */
    display: block;
    text-align: right;
    margin-bottom: 1rem;
    color: #999;
    font-size: var(--font-size-s);
}
.post_list_txt a,
main .post_list_txt p {
    font-size: var(--font-size-m);
    text-align: left;
}
.post_list_txt a:link,
.post_list_txt a:visited,
.post_list_txt a:active {
    text-decoration: underline;
}
/* 背景色が色付きの場合 */
section.bg_color_b .post_list_txt li {
    background-color: #FFF;
}
section.bg_color_b .post_list_txt li div {
    background-color: var(--color-bg-beige);
}

/* ------------------------------------------------- */
/* リスト：左右分割レイアウト */
/* ------------------------------------------------- */
main .box_list > li {
    display: flex;
    background-color: var(--color-bg-beige);
    
}
main .box_list li .left_col,
main .box_list li .right_col {
    padding: var(--padding-wrap);
}
main .box_list li .left_col {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    padding-right: 0;
}
main .box_list li .left_col {
    flex: 0;
}


/* SNS・メルマガページ */
#sns .icon_h .icon {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 60px;
    height: 60px;
    background-color: #FFF;
    border-radius: 50%;
}
#sns .icon_h .icon i {
    font-size: 40px;
}

main .pad_wrap {
    padding: var(--padding-wrap);
    background-color: var(--color-bg-beige);
}

/* タブレットサイズ以下 */
@media screen and (max-width: 768px) {
    #sns .icon_h .icon {
        width: 40px;
        height: 40px;
    }
    #sns .icon_h .icon i {
        font-size: 20px;
    }

    #sns .img_10_8 {
        padding-top: 60% !important;
    }
}

/* ------------------------------------------------- */
/* レスポンシブリスト */
/* ------------------------------------------------- */
.rwd_wrap {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: repeat(2, 1fr);   /* デフォルト２列 */
    grid-template-columns: repeat(2, 1fr);
    grid-gap: var(--space-wrap);
}
.rwd_wrap > * {
    display: block;
    width: 100%;
}

.rwd_wrap._col1 {   /* 1列 */
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
}
.rwd_wrap._col3 {   /* 3列 */
    -ms-grid-columns: repeat(3, 1fr);
    grid-template-columns: repeat(3, 1fr);
}


/* タブレットサイズ以下 */
@media screen and (max-width: 768px) {
    .rwd_wrap {
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
    }
    .rwd_wrap._col3 {
        -ms-grid-columns: repeat(2, 1fr);
        grid-template-columns: repeat(2, 1fr);
    }
}
/* 500サイズ以下 */
@media screen and (max-width: 500px) {
    .rwd_wrap._col3 {
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
    }
}
/* スマホサイズ以下 
@media screen and (max-width: 375px) {
}*/
    
/* ------------------------------------------------- */
/*  コンテンツヘッダー（最大幅なし）
/* ------------------------------------------------- */
#content_head {
    /*margin-bottom: 10rem;*/
}

/* PC */
#content_head .main_slider_pc,
#content_head .main_img_pc {
    display: block;
}
/* スマートフォン */
#content_head .main_slider_sp,
#content_head .main_img_sp {
    display: none;
}

/* 画像 PC */
#content_head .main_img_pc,
#content_head .main_img {
    overflow: hidden;
    width: 100%;
    max-height: 500px;
}
#content_head .main_img_pc img,
#content_head .main_img img {
    width: 100%;
    height: 100%;
    object-fit: cover !important;
    object-position: center !important;
}

/* タブレットサイズ以下 */
@media screen and (max-width: 768px) {
    /* PC */
    #content_head .main_slider_pc,
    #content_head .main_img_pc {
        display: none;
    }
    /* スマートフォン */
    #content_head .main_slider_sp,
    #content_head .main_img_sp {
        display: block;
    }
}

/* ------------------------------------------------- */
/*  コンテンツ本文（最大幅あり）
/* ------------------------------------------------- */
.contents_wrap,
#content_body {
    /*padding: 0 var(--space-page-side);*/
    max-width: var(--contet-width-max); /* コンテンツ最大幅 */
    margin: 0 auto;
}
#content_body {
    padding-bottom: var(--padding-section);
}
/* マージン優先のためここに記述 */
.contents_wrap section > *,
#content_body section > * {
    margin-bottom: var(--space-wrap);
}
/*.contents_wrap section > *:last-child,
#content_body section > *:last-child {
    margin-bottom: 0;
}*/
#content_body section > a {
    display: block;
}

/* もっと見る */
#content_body .more {
    width: 100%;
    text-align: right;
}
#content_body .more a {
    display: inline-block;
    font-size: var(--font-size-l);
    padding-bottom: 0.4em;
    border-bottom: solid 1px #666;
}

/* ================================================= */
/*  contents
/* ================================================= */
#content_body div {
    text-align: left;
}

#content_body section .content_wrap > * {
    margin-bottom: var(--padding-wrap);
}
#content_body section .content_wrap > *:last-child {
    margin-bottom: 0;
}

/* 箇条書き */
#content_body section ul.info_list {
    padding-left : 1em;
}
#content_body section ul.info_list li {
    list-style-type: square;
    margin-bottom: var(--space);
    /*font-size: var(--font-size-m);*/
}
#content_body section ul.info_list li:last-child {
    margin-bottom: 0;
}
/*
#content_body section ul.info_list li::before {
    content: '';
    display: inline-block;
    position: relative;
    left: -5px;
    top: -4px;
    width: 5px;
    height: 5px;
    background: #333;
}*/

/* 箇条書き(数字) */
#content_body section ol {
    padding-left : 1em;
}
#content_body section ol li {
    list-style-type: decimal;
    margin-bottom: var(--space-line);
}

/* タブレットサイズ以下 */
@media screen and (max-width: 768px) {
    /*#content_body .content_wrap .section_detail {
        grid-template-columns: 1fr;
    }*/
}

/*
#content_body .content_wrap {
    padding: 90px 0;

    font-size: 1.4rem;
    text-align: left;
}
#content_body .content_wrap > * {
    margin-bottom: 70px;
}
#content_body .content_wrap > *:last-child {
    margin-bottom: 0;
}
#content_body .content_wrap .section > * {
    margin-bottom: 50px;
}
#content_body .content_wrap .section > *:last-child {
    margin-bottom: 0;
}
#content_body .content_wrap .section > * > * {
    margin-bottom: 30px;
}
#content_body .content_wrap .section > * > *:last-child {
    margin-bottom: 0;
}
#content_body .content_wrap .section > * > * > * {
    margin-bottom: 10px;
}
#content_body .content_wrap .section > * > * > *:last-child {
    margin-bottom: 0;
}

#content_body .content_wrap p {
    text-align: left;
    font-size: 1.4rem;
}
*/

/* セクション見出し 
#content_body .content_wrap .section_h {
    font-size: 2.4rem;
    text-align: left;
    font-family: var(--font-family-Serif-jp);
}
#content_body .content_wrap .section_h2 {
    font-size: 2rem;
    text-align: left;
    padding-bottom: 0.5em;
    border-bottom: solid 3px #999;
}
#content_body .content_wrap h4 {
    display: block;
    text-align: left;
    padding-bottom: 0.5em;
    border-bottom: solid 1px #999;
}*/

/* セクション概要テキスト 
#content_body .content_wrap .section_detail {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: repeat(2, 1fr);
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 20px;
}
#content_body .content_wrap .section_detail > img {
    display: block;
}
#content_body .content_wrap .detail_text {
    font-size: 1.6rem;
    text-align: left;
}*/

/* ================================================= */
/*  index
/* ================================================= */
/* 冒頭テキスト */
.page_index #welcome {
    padding-left: 20%;
    padding-right: 20%;
}
.page_index #welcome p {
    text-align: center !important;
    font-size: var(--font-size-l);
    margin-bottom: 1em;
}
.page_index #welcome h3 {
    border: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}
.page_index #welcome h3 > span {
    white-space: nowrap;
}
/*.page_index #welcome h3 span:first-child {
    margin-right: 0.5em;
}*/
.page_index #welcome img {
    max-width: 40%;
}

/* 店舗情報 */
.card_tenpo {
    width: 100%;
    padding-top: 60%;
    position: relative;
}
.card_tenpo img {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    object-fit: cover;
}
.card_tenpo h3 {
    border: 0 !important;
}
.card_tenpo .card_title {
    display: inline-block;
    position: absolute;
    bottom: 4rem;
    right: 4rem;
    z-index: 10;
    background-color: rgba(255, 255, 255, 0.8);
    padding: 2rem 2rem;
    text-align: right;
    font-weight: normal;
}
/*.card_tenpo .card_title span {
    display: block;
    
    border-bottom: solid 1px #666;
    padding-bottom: 0.4rem;
}*/
/*.card_tenpo .card_title span::after {
    display: inline-block;
    font-family: "Font Awesome 6 Free";
    content: '\f105';
    font-weight: bold;
    margin-left: 0.5em;
}*/

/* 店舗情報：オンラインショップ 
.page_index #shop .bt_onlineshop {
    font-size: 2rem;
    font-family: var(--font-family-Serif-jp);
    background-color: #FFF;
    padding: var(--space-line);
}
.page_index #shop .bt_onlineshop > span {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    padding-bottom: 0.4rem;
}
.page_index #shop .bt_onlineshop > span > span {
    margin-right: 1rem;
}
.page_index #shop .bt_onlineshop > span > span:last-child {
    margin-right: 0;
}*/

/* タブレットサイズ以下 */
@media screen and (max-width: 768px) {
    .page_index #welcome {
        padding-left: var(--space-page-side);
        padding-right: var(--space-page-side);
    }
    .card_tenpo .card_title {
        display: block !important;
    }
    /* 店舗情報：オンラインショップ 
    .page_index #shop .bt_onlineshop {
        width: 100%;
    }*/
}
/* スマホサイズ以下 */
@media screen and (max-width: 375px) {
    .card_tenpo .card_title {
        display: block;
        width: 100%;
        top: auto;
        bottom: var(--padding-wrap);
        right: 0;
    }
}


/* 寸法図 */


/* 手づくり教室 */

/* コラム */
/* 見出しアイコン */
.page_index #column .post_list .post_title::before {
    display: inline-block;
    font-family: "Font Awesome 6 Free";
    content: '\f518';
    font-weight: 900;
    margin-right: 0.5em;
}

/* ================================================= */
/*  workshop
/* ================================================= */
/* ------------------------------------------------- */
/* 教室の種類リスト */
/* ------------------------------------------------- */
#page_lesson .workshop_list {
    text-align: left;
}
#page_lesson .workshop_list .workshop {
    display: block;
    width: 100%;
    padding: var(--padding-wrap);
    background-color: #FFF;
}
#page_lesson .workshop_list .workshop > * {
    margin-bottom: var(--space-line);
}
#page_lesson .workshop_list .workshop > *:last-child {
    margin-bottom: 0;
}
/* 見出し */
#page_lesson .workshop_list h3 {
    text-align: left;
    font-size: var(--font-size-h2) !important;
    border: 0 !important;
    padding: 0;
}
#page_lesson .workshop_list .headline {
    display: block;
    width: 100%;
    position: relative;
    padding: 0.5rem 0;
    border-bottom: 1px solid var(--color-text-green);
    margin-bottom: 1.5rem;
    font-size: var(--font-size-m);
    font-weight: bold;
    color: var(--color-text-green);
}
/*#page_lesson .workshop_list .headline:before {
    position: absolute;
    bottom: -14px;
    left: 1em;
    width: 0;
    height: 0;
    content: '';
    border-width: 14px 12px 0 12px;
    border-style: solid;
    border-color: var(--color-text-green) transparent transparent transparent;
}
#page_lesson .workshop_list .headline:after {
    position: absolute;
    bottom: -12px;
    left: 1em;
    width: 0;
    height: 0;
    content: '';
    border-width: 14px 12px 0 12px;
    border-style: solid;
    border-color: #FFF transparent transparent transparent;
}*/

/* 内容のポイント */
#page_lesson .workshop_list ul.point {
    color: var(--color-text-green);
    font-size: var(--font-size-m);
}
#page_lesson .workshop_list ul.point li {
    display: block;
    margin-bottom: 1rem;
    text-align: left;
}
#page_lesson .workshop_list ul.point li span {
}
#page_lesson .workshop_list ul.point li span::before {
    display: inline-block;
    font-family: "Font Awesome 6 Free";
    content: '\f14a';
    font-weight: bold;
    margin-right: 0.5em;
}
/* ご予約・お問い合わせリンク */
#page_lesson a.contact_link {
    display: block;
    font-size: 2.4rem;
    padding: 2rem;
    background-color: var(--color-bg-beige);
}
#page_lesson a.contact_link span::after {
    display: inline-block;
    font-family: "Font Awesome 6 Free";
    content: '\f105';
    font-weight: bold;
    margin-left: 0.5em;
}
#page_lesson section.bg_color_b a.contact_link {
    background-color: #FFF;
}

/* タブレットサイズ以下 */
@media screen and (max-width: 768px) {
}

/* ------------------------------------------------- */
/* 教室説明共通項目 */
/* ------------------------------------------------- */
/* 教室の概要 */
ul.detail_list h4 {
    text-align: left;
    padding-bottom: 0.5em;
    border-bottom: solid 3px #FFF;
}
ul.detail_list li {
    margin-bottom: var(--space-wrap);
}
ul.detail_list li:last-child {
    margin-bottom: 0;
}
ul.detail_list li > * {
    margin-bottom: var(--space-line);
}
ul.detail_list li > *:last-child {
    margin-bottom: 0;
}

/* 店舗ごとの開催日時 */
.detail_box {
    padding: var(--padding-wrap);
    background-color: var(--color-bg-beige);
}
.detail_box h4 {
    text-align: left;
    padding-bottom: 0.5em;
    border-bottom: solid 3px #FFF;
}
/*.detail_box dl {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 80px 1fr;
    grid-template-columns: 80px 1fr;
    grid-gap: 20px;
}
.detail_box dl dt,
.detail_box dl dd {
    text-align: left;
}
.detail_box dl dt {
    font-weight: bold;
}*/
.detail_box i { /* fontawsomeアイコン */
    margin-right: 0.5rem;
}

/* タブレットサイズ以下 */
@media screen and (max-width: 768px) {
    ul.shop_list {
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
    }
}
/* ------------------------------------------------- */
/* ご予約・お問い合わせ */
/* ------------------------------------------------- */
#page_lesson .section ul.contact_list {
    display: flex;
    justify-content: flex-start;
}

#page_lesson .section ul.contact_list li {
    font-size: var(--font-size-l);
    margin-right: 20px;
    text-align: left;
}
#page_lesson .section ul.contact_list li i {
    margin-right: 0.5em;
}

/* タブレットサイズ以下 */
@media screen and (max-width: 768px) {
    #page_lesson .section ul.contact_list {
        display: block;
    }
}

/* ================================================= */
/*  shop
/* ================================================= */
/* 店舗情報 */
#shop_info table.data_table th {
    width: 30%;
}
/*
#shop_info .shop_data table {
    width: 100%;
    text-align: left;
}
#shop_info .shop_data table tr {
    vertical-align: top;
}
#shop_info .shop_data table th {
    width: 30%;
    font-weight: normal;
}
#shop_info .shop_data table td {
    padding-bottom: 2rem;
}*/

/* google Map */
.google_map {
    width: 100%;
}
.google_map iframe {
    width: 100%;
}

/* 店舗案内 */
/*.shop_body > * {
    margin-bottom: 40px;
}*/

/* 駐車場のご案内 */
.page_shop #parking .desc_wrap {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: repeat(2, 1fr);
    grid-template-columns: repeat(2, 1fr);
    grid-gap: var(--space-wrap);
    grid-auto-flow: column;
    direction: rtl; /* 右から */
    /*display: -ms-grid;
    display: grid;
    -ms-grid-columns: minmax(100px, 40%) 1fr;
    grid-template-columns: minmax(100px, 40%) 1fr;
    grid-gap: 20px;*/
}
.page_shop #parking .desc_wrap div {
    direction: ltr; /* テキストの表示がおかしくなるのを修正 */
}
/* 駐車場料金サービス表 
.page_shop #parking table {
    width: 100%;
    max-width: 500px;
}
.page_shop #parking table th,
.page_shop #parking table td {
    font-weight: bold;
    padding: 1rem;
}
.page_shop #parking table th {
    color: #FFF;
    font-size: var(--font-size-m);
    background-color: var(--color-text-green);
}
.page_shop #parking table td {
    background-color: var(--color-bg-beige);
}
.page_shop #parking.bg_color_b table td {
    background-color: #FFF;
}*/

/* フロアのご案内 */
#shop_floor > * {
    margin-bottom: var(--space-wrap);
}
#shop_floor .floor_list .floor_wrap {
    margin-bottom: var(--space-wrap);
    padding: var(--padding-wrap);
    background-color: var(--color-bg-beige);
}
#shop_floor.bg_color_b .floor_list .floor_wrap {
    background-color: #FFF;
}
#shop_floor .floor_list .floor_wrap > * {
    margin-bottom: var(--space-wrap);
}
#shop_floor .floor_list .floor_wrap > *:last-child {
    margin-bottom: 0;
}

/* フロア見出し */
#shop_floor .floor_list .floor_wrap .floor_h {
    display: flex;
    justify-content: flex-start;
    align-items: flex-end;
    color: var(--color-text-green);
    font-size: var(--font-size-h3) !important;
    font-family: var(--font-family-Serif-jp);
    font-weight: normal;
    line-height: 1;
}
#shop_floor .floor_list .floor_wrap .floor_h .floor_num {
    font-size: 2em;
    margin-right: 2rem;
    white-space: nowrap;
}
/* フロア内容 */
#shop_floor .floor_list .floor_body {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: repeat(2, 1fr);
    grid-template-columns: repeat(2, 1fr);
    grid-gap: var(--space-wrap);
}
#shop_floor .floor_list .floor_body ul {
    display: flex;
    flex-wrap: wrap;
}
#shop_floor .floor_list .floor_body i {
    margin-right: 0.5rem;
}

/* 取り扱い商品・サービス */
#shop_floor .floor_list .floor_body .item_list li {
    padding-right: 10px;
    border-right: solid 1px #CCC;
    margin: 0 10px 10px 0;
    white-space: nowrap;
}
#shop_floor .floor_list .floor_body .item_list li span {
    white-space: pre-wrap;
}
#shop_floor .floor_list .floor_body .item_list li.li_info {
    padding: 0 0.5rem;
    background-color: #FFF;
    border-right: 0;
    /*border-radius: 1rem;*/
    padding: 0.2rem 0.7rem;
}
/* 各種サービス・インフォメーション 
#shop_floor .floor_list .floor_body .info_list ul {
}
#shop_floor .floor_list .floor_body .info_list ul li {
    padding-right: 10px;
    border-right: solid 1px #999;
    margin: 0 10px 10px 0;
}*/

#shop_floor .floor_list .floor_body ul li:last-child {
    border-right: 0;
}

/* タブレットサイズ以下 */
@media screen and (max-width: 768px) {
    .page_shop #parking .desc_wrap {
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
        grid-auto-flow: row;
        direction: ltr;
    }
    #shop_floor .floor_list .floor_body {
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
    }
}
/* ================================================= */
/* contact */
/* ================================================= */
/* 問い合わせフォーム */
.wpforms-field-container .wpforms-field-label {
    text-align: left;
}

.wpforms-submit-container button.submit_btn {
    color: #FFF !important;
    font-weight: bold;
    background-color: var(--color-text-green) !important;
}

/* ================================================= */
/*  post(column)
/* ================================================= */
.post_content #post_body .post_header h3,
.post_content #post_body .post_header h4 {
    text-align: left;
}

.post_content #post_body .post_header > * {
    margin-bottom: var(--space-wrap);
}

.post_content #post_body #post_titile {

}

.post_content #post_body {
    display: grid;
    grid-template-columns: 1fr 300px;
    grid-gap: var(--space-wrap);
}

/* 投稿メインイメージ */
.post_content #post_body .post_img {
    margin-bottom: var(--space-wrap);
}

.post_content .nav_wrap {
    
}

/* タブレットサイズ以下 */
@media screen and (max-width: 768px) {
    .post_content #post_body {
        display: block;
    }
}
