@charset "utf-8";
/*
Theme Name:   lalba
Description: lalba
Version: 1.0
*/
/* ------------------------------------------------------------------------------
Font
-------------------------------------------------------------------------------*/
@font-face {
    font-family: 'ofl-sorts-mill-goudy';
    src: url(font/ofl-sorts-mill-goudy.regular.otf);
}
@font-face {
    font-family: 'ofl-sorts-mill-goudy-italic';
    src: url(font/ofl-sorts-mill-goudy.italic.otf);
}
/* ------------------------------------------------------------------------------
reset
-------------------------------------------------------------------------------*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
    display: block;
}
body {
    line-height: 1;
}
ol, ul {
    list-style: none;
}
blockquote, q {
    quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
    content: '';
    content: none;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
object {
    pointer-events: none;
}
button,
input[type="submit"],
input[type="button"] {
    border-radius: 0;
    -webkit-box-sizing: content-box;
    -webkit-appearance: button;
    appearance: button;
    border: none;
    box-sizing: border-box;
    cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
    display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
    outline-offset: -2px;
}
select {
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    border-radius: 0;
    border: 0;
    margin: 0;
    padding: 0;
    background: none transparent;
    vertical-align: middle;
    font-size: inherit;
    color: inherit;
    box-sizing: content-box;
}


/* ------------------------------------------------------------------------------
Typography
-------------------------------------------------------------------------------*/
html {
    overflow-x: hidden;
}
p {
    font-size: 12px;
    line-height: 2.75;
}
img, object {
    max-width: 100%;
    height: auto;
}
h1 {}
h2 {
    color: #767267;
    font-size: 24px;
}
h3 {
    font-size: 16px;
    font-weight: bold;
}
h4 {
    font-size: 18px;
    font-weight: bold;
}
h5 {
    font-size: 14px;
    color: #2d3033;
    text-transform: uppercase;
    font-weight: 700;
}
@media screen and (min-width: 769px) {
    p {
        font-size: 16px;
    }
    h2 {
        font-size: 32px;
    }
    h3 {
        font-size: 24px;
    }
}
/* ------------------------------------------------------------------------------
General Style
-------------------------------------------------------------------------------*/
body * {
    box-sizing: border-box;
    background-repeat: no-repeat;
}
body {
    overflow-x: hidden!important;
}
a {
    font-size: 12px;
    color: #767267;
    text-decoration: none;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}
a:hover {
    cursor: pointer;
    opacity: 0.8;
    filter: alpha(opacity=80);
    -moz-opacity: 0.8;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}
body {
    font-family: "Zen Old Mincho", "游明朝体", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ 明朝", "MS Mincho", serif;
    font-weight: 400;
    color: #767267;
    letter-spacing: .1em;
}
ul, ol {
    margin: 0;
    padding: 0;
}
li {
    list-style: none;
}
.txt_center {
    text-align: center;
}
.content_wrap {
    max-width: 1240px;
    padding: 0 4%;
    margin: 0 auto;
}
.pad,
.pc {
    display: none!important;
}
@media screen and (min-width: 768px) {
    .pad {
        display: block!important;
    }
    .sp_only {
        display: none!important;
    }
}

@media screen and (min-width: 769px) {
    .content_wrap {
        padding: 0;
    }
    a {
        font-size: 16px;
    }
    .pc {
        display: block!important;
    }
    .sp {
        display: none!important;
    }
}
/* ------------------------------------------------------------------------------
共通
-------------------------------------------------------------------------------*/
h2,h3,h4 {
    font-family: 'ofl-sorts-mill-goudy',"Yu Mincho Medium","Yu Mincho","ＭＳ 明朝",serif;
    line-height: 1.3;
}
.tit_01 {
    background-image: url(img/bg_tit.png);
    background-size: contain;
    background-position: bottom left;
    font-weight: normal;
    padding-bottom: 15px;
    width: 170px;
    margin-bottom: 20px;
}
@media screen and (min-width: 768px) {
    .tit_01 {
        padding-bottom: 20px;
        margin-bottom: 30px;
        width: 225px;
    }
}

.tit_02 {
    background-image: url(img/line_gray.png);
    background-size: 165px 1px;
    background-position: bottom center;
    font-weight: normal;
    padding-bottom: 15px;
    text-align: center;
    margin-bottom: 40px;
    color: #ccbd9f;
}
@media screen and (min-width: 768px) {
    .tit_02 {
        background-size: 200px 1px;
        padding-bottom: 20px;
        margin-bottom: 50px;
    }
}

.tit_03 {
    width: 100%;
    height: 44vw;
    background-size: cover;
    display: flex;
    justify-content: center;
    align-items: flex-end;
    color: #fff;
    line-height: 0.5em;
    font-size: 30px;
    font-weight: normal;
}
@media screen and (min-width: 769px) {
    .tit_03 {
        height: 352px;
        font-size: 80px;
    }
}

.more_link {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 15px;
    width: 240px;
    margin: 0 auto;
    position: relative;
    text-align: center;
    border: 1px solid #767267;
    margin-bottom: 30px;
    font-family: "Yu Mincho Medium","Yu Mincho","ＭＳ 明朝",serif;
}
.more_link:hover {
    background-color: #767267;
    color: #fff;
}
.more_link img {
    position: absolute;
    right: -15px;
    top: calc(50% - 7px);
    width: 32px;
}
.more_link_white {
    background-color: #fff;
    box-shadow: 0px 3px 10px #ddd;
}
@media screen and (min-width: 768px) {
    .more_link_white {
        width: 540px;
        height: 44px;
    }
}

/* ------------------------------------------------------------------------------
header & navigation
-------------------------------------------------------------------------------*/
.header_menu_pc_wrap {
    display: none;
}
.top_main_img {
    display: block;
    width: 100%;
}
.top_main_img_sp {
    display: block;
    padding-top: 0;
}
.nav_wrap .logo a {
    display: block;
    width: 100px;
    margin-bottom: 25px;
}
.header_menu_wrap {
    background-color: #fff;
    position: fixed;
    z-index: 99;
    width: 100%;
    height: 52px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 52px 0 30px;
    box-shadow: 0 0 20px #eee;
}
.logo-sp object {
    padding-top: 10px;
    width: 80px;
}
.header_fair_link {
    position: fixed;
    right: 52px;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    color: #fff;
    background-color: #c0b9a5;
    height: 100%;
    width: 52px;
    height: 52px;
    line-height: 1.3;
    font-size: 10px;
    font-family: "Yu Mincho Medium","Yu Mincho","ＭＳ 明朝",serif;
    z-index: 999;
}
.menu-trigger_wrap {
    background-color: #fff;
    position: fixed;
    right: 0px;
    z-index: 9999;
    width: 52px;
    height: 52px;
}
.menu-trigger {
    position: absolute;
    left: 14px;
    top: 16px;
    display: inline-block;
    width: 25px;
    height: 19px;
    vertical-align: middle;
    cursor: pointer;
}
.menu-trigger span {
    display: inline-block;
    box-sizing: border-box;
    position: absolute;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #c0b9a5;
}
.menu-trigger.active span {
}
.menu-trigger span:nth-of-type(1) {
    top: 0;
}
.menu-trigger.active span:nth-of-type(1) {
    transform: translateY(9px) rotate(-45deg);
}
.menu-trigger span:nth-of-type(2) {
    top: 9px;
}
.menu-trigger.active span:nth-of-type(2) {
    opacity: 0;
}
.menu-trigger span:nth-of-type(3) {
    bottom: 0;
}
.menu-trigger.active span:nth-of-type(3) {
    transform: translateY(-9px) rotate(45deg);
}
.menu-trigger_nav {
    background-color: #fff;
    position: fixed;
    width: 100%;
    top: 0;
    z-index: 99;
    padding-bottom: 20px;
}
.menu-trigger_nav .logo {
    display: block;
    width: 100px;
    margin-bottom: 25px;
    padding-top: 20px;
}
.global-nav nav {
    width: 100%;
    padding: 50px 20px;
    background-color: #fff;
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 999;
    font-family: "Yu Mincho Medium","Yu Mincho","ＭＳ 明朝",serif;
    font-size: 13px;
    box-shadow: 0 0 20px #eee;
}
.nav_wrap {
    max-width: 340px;
    margin: 0 auto 35px;
    font-family: "Yu Mincho Medium","Yu Mincho","ＭＳ 明朝",serif;
}
.nav_list li {
    margin-bottom: 25px;
    display: flex;
    align-items: center;
}
.nav_list li span {
    display: block;
    width: 8px;
    height: 1px;
    background-color: #767267;
    margin-right: 10px;
}
.info_link {
    display: block;
    padding: 5px;
    background-color: #c0b9a5;
    width: 48%;
}
.reserve_link {
    background-color: #a40a56;
    width: 100%;
    max-width: 340px;
    margin: 0 auto 15px;
}
.info_link p {
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    border: 1px solid #fff;
    background-image: url(img/ico_book_white.png);
    background-position: left 24px center;
    background-size: 23px;
    padding-left: 30px;
    height: 60px;
    font-size: 13px;
}
.contact_link p {
    background-image: url(img/ico_mail_white.png);
    background-position: left 11px center;
}
.reserve_link p {
    background-image: url(img/ico_note_white.png);
    background-position: left 90px center;
    margin: 0 auto;
    padding-left: 30px;
    font-size: 16px;
}
.menu_info_flex_wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 340px;
    margin: 0 auto 35px;
}
.menu_contact_wrap {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    max-width: 340px;
    margin: 0 auto;
}
.menu_sns_wrap {
    display: flex;
    justify-content: flex-end;
    align-items: flex-end;
}
.menu_sns_wrap a {
    width: 35px;
    display: block;
}
.menu_sns_wrap a:first-of-type {
    margin-right: 12px;
}
.menu_contact_wrap>div>p {
    line-height: 1;
    letter-spacing: 0.05em;
}
#header .tel_link {
    display: block;
    width: 140px;
    margin-bottom: 10px;
}
#header .hours_txt {
    font-family: "Yu Gothic Medium","Yu Gothic","ＭＳ ゴシック",sans-serif;
}
.nav_list li a:hover {
    opacity: 0.5!important;
}

@media screen and (min-width: 768px) {
    .top_main_img_sp {
        display: none;
    }
    .header_menu_pc_wrap {
        display: block;
    }
}

@media screen and (max-width: 1200px) {
    .header_menu_pc_wrap #js-global-nav {
        display: none;
    }
}

.menu-trigger_nav {
    display: none;
}
@media screen and (min-width: 1200px) {
    .header_fair_link,
    .menu-trigger_wrap,
    .header_menu_wrap,
    .menu-trigger_nav {
        display: none!important;
    }
    #header nav, .nav_wrap {
        display: block;
        position: static;
        padding: 0;
        font-size: 14px;
    }
    .nav_wrap .logo a,
    .nav_wrap .logo object {
        display: block;
        width: 120px;
        margin-bottom: 0;
    }
    .nav_wrap {
        display: flex;
        justify-content: space-between;
        align-items: center;
        max-width: none;
        margin: 0 auto;
    }
    .nav_list {
        display: flex;
        justify-content: flex-end;
        width: 100%;
        margin-right: 10px;
    }
    .nav_list li {
        display: flex!important;
        justify-content: center;
        align-items: center;
        margin-bottom: 0;
    }
    .nav_list li:not(:last-of-type) {
        margin-right: 20px;
    }
    .nav_list li:last-of-type {
        background-color: #c0b9a5;
        padding: 22px 60px;
        margin-left: 10px;
    }
    .nav_list li:last-of-type a {
        color: #fff;
        font-size: 18px;
    }
    .nav_list li a {
        font-size: 13px;
    }
    .nav_wrap .logo {
        margin-left: 10px;
        margin-top: 5px;
    }
}

@media screen and (min-width: 1280px) {
    .nav_list li a {
        font-size: 14.5px;
    }
}

@media screen and (min-width: 1300px) {
    .nav_wrap .logo {
        margin-left: 50px;
    }
}

#js-clone-nav {
    display: none!important;
}
@media screen and (min-width: 1200px) {
    #js-clone-nav {
        display: block!important;
    }
}
@media screen and (min-width: 1200px) {
    .global-nav.clone-nav {
        position: fixed;
        top: 0;
        left: 0;
        z-index: 9999;
        transition: all 1s;
        background-color: #fff;
        box-shadow: 0 2px 2px rgba(0,0,0,.2);
        width: 100%!important;
        opacity: 0;
    }
}
/* ------------------------------------------------------------------------------
footer
-------------------------------------------------------------------------------*/
footer {
    background-color: #c0b9a5;
}
#footer {
    padding: 50px 0;
    max-width: 1240px;
    margin: 0 auto;
}
.footer_logo {
    width: 150px;
    margin: 0 auto 20px;
}
.footer_logo a {
    display: flex;
}
.footer_left,.footer_right {
    max-width: 400px;
    margin: 0 auto;
}
.footer_menu {
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin-bottom: 28px;
}
.footer_menu * {
    color: #fff;
    letter-spacing: 0;
}
.footer_menu li a {
    display: inline-block;
    border-right: 1px solid #fff;
    padding: 0 10px;
    font-size: 10px;
}
.footer_menu li:last-child a {
    border: none;
}
.footer_flex_wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 28px;
}
.footer_sns_wrap {
    display: flex;
    align-items: center;
}
.footer_sns_wrap a {
    display: block;
    width: 28px;
    margin-right: 15px;
}
.footer_logo_02 {
    width: 210px;
    margin-left: 10px;
}
.copyright {
    font-size: 10px;
    font-family: 'Sorts Mill Goudy', serif!important;
    text-align: center;
    color: #fff;
}
.footer_company {
    display: flex;
    align-items: center;
    margin-bottom: 30px;
}
.footer_company img {
    display: block;
    width: 60px;
    margin: 0 5px;
}
.footer_company p {
    font-family: 'ofl-sorts-mill-goudy';
    font-size: 10px;
    line-height: 1;
    margin-right: 5px;
}
.footer_company p:last-of-type {
    margin-right: 5px;
    margin-left: auto;
}
.footer_company img:last-of-type {
    margin-left: 5px;
}
@media screen and (min-width: 769px) {
    #footer {
        padding: 50px 40px 60px;
        display: flex;
        justify-content: center;
        align-items: center;
        height: 250px;
    }
    .footer_left,.footer_right {
        display: flex;
        flex-flow: column;
        justify-content: space-between;
    }
    .footer_left {
        max-width: 660px;
        height: 90px;
        align-items: flex-start;
    }
    .footer_right {
        max-width: 500px;
        width: 42%;
        height: 80px;
        margin-top: 5px;
        align-items: flex-end;
    }
    .footer_content_wrap {
        margin-bottom: 20px;
    }
    .footer_logo {
        width: 25%;
        width: 195px;
        margin: 0 20px 20px 0;
    }
    .footer_logo_02 {
        width: 350px;
    }
    .footer_menu {
        max-width: none;
        margin: 0 20px 0 0;
    }
    .footer_menu li a {
        font-size: 14px;
    }
    .footer_flex_wrap {
        max-width: none;
        justify-content: flex-end;
        flex-direction: row-reverse;
        margin-bottom: 0;
    }
    .copyright {
        text-align: right;
    }
    .footer_logo_02 {
        margin-left: 0;
        margin-right: 40px;
    }
    .footer_company {
        margin-bottom: 20px;
    }
    .footer_company img {
        width: 100px;
    }
    .footer_company p:last-of-type {
        margin-left: 20px;
    }
}

@media screen and (min-width: 1160px) {
    #footer {
        height: auto;
    }
    .footer_content_wrap {
        display: flex;
        align-items: center;
    }
    .footer_logo {
        margin: 0 20px 0 0;
    }
}

#page-top {
    position: fixed;
    bottom: 10px;
    right: 15px;
    z-index: 20;
}
#page-top a {
    display: block;
    width: 62px;
}

@media screen and (max-width:767px) {
    #page-top {
        bottom: 64px;
    }

    #page-top a {
        width: 60px;
    }
}

/* ------------------------------------------------------------------------------
top-concept & facility
-------------------------------------------------------------------------------*/
#top_concept {
    padding-top: 60px;
}
.top_concept_img,.top_facility_img {
    width: 100%;
    height: 56vw;
    max-height: 466px;
    max-width: 683px;
    background-image: url(img/img_top_01.jpg);
    background-size: cover;
    background-position: top -20px center;
    margin-bottom: 50px;
}
.top_concept_txt,.top_facility_txt {
    font-family: "Yu Mincho Medium","Yu Mincho","ＭＳ 明朝",serif;
    margin-bottom: 20px;
}
#top_facility {
    padding-bottom: 20px;
}
.top_facility_img {
    height: 73vw;
    background-image: url(img/img_top_02_sp.png);
    background-position: center right;
}
.facility_more_link {
    margin-bottom: 50px;
}
.facility_more_link_02 {
    margin: 20px auto 35px;
}
@media screen and (min-width: 768px) {
    #top_concept {
        display: flex;
        justify-content: center;
        align-items: flex-end;
        padding-top: 120px;
    }
    .top_concept_img {
        width: 50%;
        height: 34vw;
        background-position: top center;
        margin-bottom: 0;
    }
    .concept_more_link {
        margin: 0 60px 0 auto;
    }
    .top_concept_txt_wrap {
        width: 50%;
        margin: 0 0 0 60px;
        max-width: 620px;
        padding-bottom: 20px;
    }
    #top_facility {
        padding-bottom: 80px;
    }
    .top_facility_txt_wrap {
        padding: 160px 0 160px 40px;
        background-image: url(img/img_top_02.png);
        background-size: 870px;
        background-position: center right;
        max-width: 1340px;
    }
    .top_facility_txt {
        font-size: 20px;
        line-height: 2.0;
        margin-bottom: 40px;
    }
    .top_concept_txt {
        margin-bottom: 75px;
    }
    .facility_more_link {
        margin: 0 auto 0 0;
    }
    .facility_more_link_02 {
        width: 220px;
        margin-top: 50px;
    }
    .facility_flex_wrap {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        padding: 0 10px;
    }
    .facility_flex_wrap>div{
        width: 32%;
    }
}
@media screen and (min-width: 1000px) {
    .top_facility_txt_wrap {
        padding: 260px 0 200px 80px;
        background-size: 1300px;
        background-position: center right;
    }
    .facility_flex_wrap {
        padding: 0;
    }
    .facility_more_link_02 {
        width: 240px;
    }
}
/* ------------------------------------------------------------------------------
top-fair
-------------------------------------------------------------------------------*/
#top_fair {
    padding: 60px 0;
    /*margin-bottom: 10px;*/
    background-color: #f0f0f0;
}
@media screen and (min-width: 798px) {
    #top_fair {
        padding: 80px 0 25px;
    }
}
.tab {
    display: flex;
    justify-content: space-between;
}
.tab li {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 49.7%;
    height: 40px;
    background-color: #c9c9c9;
    color: #fff;
    font-family: "Yu Gothic Bold","Yu Gothic",serif;
    font-weight: bold;
    font-size: 12px;
}
.tab li:hover {
    opacity: 0.8;
    cursor: pointer;
}
.tab li.active {
    background-color: #c0b9a5;
    background-image: url(img/bg_diagonal.png);
    background-repeat: repeat-x;
    background-size: 100% 100%;
    background-position: center center;
}

.area .tab_content {
    border: 2px solid #c0b9a5;
    padding: 12px 12px 24px 12px;
    background-color: #fff;
}
@media screen and (min-width: 798px) {
    .area .tab_content {
        padding: 30px;
        min-height: 360px;
    }
}

.area .tab_content.show {
    display: block;
}
.fair_thumbnail {
    width: 100%;
    height: 59vw;
    background-image: url(img/thumbnail_fair_01_sp.png);
    background-size: cover;
    background-position: center center;
    display: block;
    margin-bottom: 18px;
}
@media screen and (min-width: 798px) {
    .fair_thumbnail {
        margin-bottom: 0;
    }
}
.fair_date {
    font-family: 'Tenor Sans', serif;
    display: flex;
    align-items: center;
    /* background-image: url(img/line_dot.png); */
    background-repeat: repeat-x;
    background-position: bottom left;
    background-size: contain;
    padding-bottom: 10px;
    margin-bottom: 15px;
}
.post-type-archive-fair .fair_date {
    display: flex;
}
.post-type-archive-fair .fair_date span{
    margin-bottom: 5px;
}
.post-type-archive-fair  .fair_date_time_wrap,
.post-type-archive-fair .fair_date_wrap {
    width: auto;
}
.fair_date_time_wrap {
    padding-left: 20px;
    position: relative;
}
.fair_date_time_wrap::before{
    background: url(./img/ico_clock_pink.png) no-repeat left center / contain;
    content: '';
    display: block;
    height: 15px;
    left: 0;
    margin: -7.5px 0 0 0;
    position: absolute;
    top: 50%;
    width: 15px;
}
.fair_date p {
    font-size: 20px;
    line-height: 1;
    color: #636363;
}
.fair_date img {
    display: inline-block;
    height: auto;
    width: 15px !important;
    margin: 0 7px;
    vertical-align: middle;
}
.fair_date span {
    display: block;
    padding: 4px 4px 4px 10px;
    background-color: #998e77;
    color: #fff;
    font-size: 14px;
    font-family: 'Tenor Sans', sans-serif;
    width: auto;
}

.fair_date span:not(:last-of-type) {
    margin-right: 5px;
}

.fair_date_wrap strong {
    font-size: 70%;
    font-weight: normal;
}

.fair_tit {
    font-family: "游ゴシック体", "Yu Gothic", YuGothic, "メイリオ", "Meiryo","ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", sans-serif;
    font-size: 16px;
    font-weight: bold;
    line-height: 1.6;
    margin-bottom: 10px;
}
.fair_tag {
    display: inline-block;
    border-bottom: 1px solid #767267;
    font-family: "游ゴシック体", "Yu Gothic", YuGothic, "メイリオ", "Meiryo","ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", sans-serif;
    font-weight: bold;
    font-size: 12px;
    margin-bottom: 14px;
}
@media screen and (max-width: 360px) {
    .reccomend .fair_date p{
        width: 70%;
    }
}
@media screen and (min-width: 361px) and (max-width: 560px) {
    .reccomend .fair_date p{
        width: 50%;
    }
}
@media screen and (min-width: 768px) {
    .fair_tag {
        font-size: 14px;
        margin-bottom: 10px;
    }
}
.fair_tag:not(:last-of-type) {
    margin-right: 10px;
}
.fair_txt {
    font-family: "游ゴシック体", "Yu Gothic", YuGothic, "メイリオ", "Meiryo","ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", sans-serif;
    line-height: 1.8;
    margin-bottom: 20px;
}
.fair_txt p {
    line-height: 1.8;
    margin-bottom: 20px;
}
.fair_detail_link {
    font-family: "Yu Mincho Medium","Yu Mincho",serif;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 200px;
    height: 50px;
    color: #fff;
    border: 1px solid #c0b9a5;
    background-color: #c0b9a5;
    margin: 0 auto;
}
.fair_detail_link:hover {
    background-color: #fff;
    color: #767267;
    opacity: 1;
}

.single-fair_info-wrap {
    border: 1px solid #c0b9a5;
    padding: 10px;
}

.single-fair_item {
    display: flex;
    align-items: center;
}

.single-fair_item:nth-child(n+2) {
    margin-top: 8px;
}

.single-fair_tit {
    font-size: 14px;
    line-height: 1.2;
    background-color: #c9bb9e;
    min-width: 80px;
    padding: 2px 4px;
    border-radius: 20px;
    text-align: center;
    color: white;
}

.single-fair_txt {
    font-size: 14px;
    line-height: 1.2;
    margin-left: 10px;
}

.single-fair_time {
    position: relative;
    padding-left: 20px;
}

.single-fair_time::before {
    background: url(./img/ico_clock_pink.png) no-repeat left center / contain;
    content: '';
    display: block;
    height: 15px;
    left: 0;
    margin: -7.5px 0 0 0;
    position: absolute;
    top: 50%;
    width: 15px;
}

.single-fair_time span {
    display: inline-block;
    background-color: #ccbd9f;
    padding: 2px 4px;
    border-radius: 3px;
    color: white;
}

.single-fair_time span:nth-child(n+2) {
    margin-left: 10px;
}

.single-fair_tag:nth-child(n+2) {
    margin-left: 10px;
}

.single-fair_content-wrap {
    margin-top: 20px;
}

@media screen and (min-width: 768px) {
    .fair_detail_link {
        font-size: 16px;
        height: 45px;
        margin: 0 0 0 auto;
    }
}

#top_fair .area {
    margin-bottom: 40px;
}
@media screen and (min-width: 768px) {
    #top_fair .area {
        margin-bottom: 55px;
    }
}

.fair_note {
    font-weight: bold;
    margin-bottom: 35px;
}
@media screen and (min-width: 768px) {
    #top_fair .fair_content_wrap {
        max-width: 900px;
    }
    .tab_content {
        justify-content: space-between;
        align-items: center;
        padding: 30px;
    }
    .tab_content.show {
        display: flex!important;
        align-items: flex-start;
    }
    .fair_thumbnail {
        width: 328px;
        height: 328px;
    }
    .fair_txt_wrap {
        width: calc(100% - 368px);
    }
}
@media screen and (min-width: 769px) {
    .tab li {
        font-size: 20px;
        height: 64px;
    }
    .fair_date {
        padding-bottom: 13px;
        margin-bottom: 20px;
    }
    .fair_date p {
        display: flex;
        align-items: center;
        font-size: 32px;
    }
    .fair_date img {
        width: 24px;
        margin-right: 10px;
    }
    .fair_date span {
        font-size: 17px;
    }
    .fair_tit {
        font-size: 20px;
        margin-bottom: 20px;
    }
    .fair_tag, p.fair_txt {
        font-size: 14px;
        margin-bottom: 25px;
    }
}

.fair_tags {
    display: flex;
    align-items: center;
}

.fair_tag_title {
    font-size: 14px;
    margin-right: 10px;
}

/* ------------------------------------------------------------------------------
top-plan
-------------------------------------------------------------------------------*/
#top_plan {
    padding: 60px 40px;
    /* background-color: #f2f1ed; */
}
#top_plan h3 {
    font-size: 18px;
    font-weight: bold;
    font-family: "游ゴシック体", "Yu Gothic", YuGothic, "メイリオ", "Meiryo","ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", sans-serif;
    margin-bottom: 15px;
}
@media screen and (min-width: 768px) {
    #top_plan h3 {
        font-size: 22px;
        letter-spacing: 3px;
    }
}
.plan_flex_item {
    display: block;
    max-width: 350px;
    margin: 0 auto 40px;
}
.plan_img_box {
    background-image: url(img/bg_border.png);
    background-position: right top 10px;
    position: relative;
    margin-bottom: 20px;
    padding: 0 10px 10px 0;
}
@media screen and (min-width: 768px) {
    .plan_img_box {
        margin-bottom: 30px;
    }
}

.plan_img_box_img {
    background-size: cover;
    background-position: center;
    width: 100%;
    height: 295px;
}
@media screen and (min-width: 768px) {
    .plan_img_box_img {
        height: 337px;
    }
}

.weekday_icon {
    width: 60px;
    position: absolute;
    bottom: -20px;
    left: -20px;
}
@media screen and (min-width: 768px) {
    .weekday_icon {
        width: 80px;
        bottom: -35px;
        left: -40px;
    }
}

.plan_txt {
    font-family: "游ゴシック体", "Yu Gothic", YuGothic, "メイリオ", "Meiryo","ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", sans-serif;
    line-height: 2;
    position: relative;
}
.plan_arrow {
    position: absolute;
    width: 30px;
    top: calc(50% - 6px);
    right: -20px;
}
@media screen and (min-width: 768px) {
    #top_plan {
        padding: 85px 30px 30px;
    }
    .plan_flex_wrap {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: flex-start;
        max-width: 1080px;
        margin: 0 auto 10px;
    }
    .plan_flex_item {
        width: 337px;
        margin: 0 auto 40px;
    }
}
/* ------------------------------------------------------------------------------
top-report
-------------------------------------------------------------------------------*/
#top_report {
    padding: 50px 0 30px;
}
@media screen and (min-width: 768px) {
    #top_report {
        padding: 80px 0 60px;
    }
}

#top_report .slider {
    margin-bottom: 50px;
}
#top_report ul li a {
    display: flex;
    flex-flow: column;
    align-items: center;
    width: 85%;
    margin: 0 auto;
}
#top_report .slider li.slick-slide {
    width: 200px;
}
#top_report .report_thumbnail {
    width: 100%;
    height: 200px;
    margin-bottom: 20px;
    background-size: cover;
    background-position: center;
}
#top_report .slick-prev,
#top_report .slick-next {
    top: 100px;
    width: 10px;
}
#top_report .slick-prev {
    left: 0;
}
#top_report .slick-next {
    right: 0;
}
#top_report .report_date {
    font-family: 'Tenor Sans', serif;
    margin-bottom: 10px;
    line-height: 1;
}
#top_report .report_tit {
    font-family: 'Tenor Sans', serif;
    font-size: 16px;
    color: #a40a56;
    margin-bottom: 15px;
    line-height: 1;
}
#top_report .report_txt {
    margin-bottom: 25px;
    line-height: 1.625;
}
.slick-dots li.slick-active button::before {
    color: #a40a56;
}
.tit_report {
    background-size: 110px 1px;
}
@media screen and (min-width: 768px) {
    .tit_report {
        background-size: 200px 1px;
    }
    #top_report .report_thumbnail {
        width: 300px;
        height: 300px;
    }
    #top_report .report_flex_wrap {
        display: flex!important;
        justify-content: space-around;
        align-items: flex-start;
        flex-wrap: wrap;
        max-width: 1080px;
        margin: 0 auto;
    }
    #top_report .report_flex_wrap li {
        margin-bottom: 40px;
        width: 300px;
    }
    #top_report .report_date {
        font-size: 14px;
    }
    #top_report .report_tit {
        font-size: 21px;
        margin-bottom: 20px;
    }
}
/* ------------------------------------------------------------------------------
#instagram
-------------------------------------------------------------------------------*/
#instagram {
    padding: 50px 0 5px;
    background-color: #f3edf1;
}
.insta_icon {
    display: block;
    width: 37px;
    margin: 0 auto 15px;
}
.insta_id {
    font-family: 'ofl-sorts-mill-goudy';
    text-align: center;
    margin-bottom: 25px;
}
@media screen and (min-width: 769px) {
    .insta_id {
        margin-bottom: 40px;
        line-height: 1.5;
    }
}

.insta_more_link {
    background-image: url(img/ico_link.png);
    background-size: 12px;
    background-position: right 45px center;
}
.insta_img_pc_wrap {
    display: none;
}
.insta_img_sp_wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-start;
    margin-bottom: 30px;
}
.insta_img_sp_wrap img:not(:nth-of-type(3n)) {
    margin-right: 4px;
}
.insta_img_sp_wrap img {
    display: block;
    width: calc((100% - 8px)/3);
    margin-bottom: 4px;
    max-width: 190px;
}
.insta_img_flex_wrap img {
    height: auto;
}

.insta_tit {
    background-size: 110px 1px;
}
@media screen and (min-width: 1000px) {
    .insta_tit {
        background-size: 200px 1px;
        padding-bottom: 25px;
        margin-bottom: 35px;
    }
}

@media screen and (min-width: 1000px) {
    #instagram {
        padding: 0;
    }
    .insta_tit {
        font-size: 28px;
    }
    .insta_flex_wrap {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
    .insta_txt_wrap {
        width: 30%;
        max-width: 400px;
        padding: 80px 10px 15px;
    }
    .insta_img_wrap {
        width: 70%;
    }
    .insta_more_link {
        width: 230px;
        background-position: right 31px top 17px;
        letter-spacing: .05em;
    }
    .insta_img_pc_wrap {
        display: flex;
        justify-content: flex-start;
        align-items: center;
        width: 70%;
    }
    .insta_img_pc_wrap img {
        margin: 0;
        display: block;
    }
    .insta_img_flex_wrap {
        width: 40%;
        display: flex;
        flex-wrap: wrap;
        margin-right: 4px;
    }
    .insta_large_img {
        width: 40%;
        margin-right:4px!important;
    }
    .insta_img_flex_wrap div {
        width: 49.5%;
    }
    .insta_img_flex_wrap div:nth-of-type(2n-1) {
        margin-right: 1%;
    }
    .insta_img_column_wrap {
        width: 20%;
    }
    .insta_img_column_wrap img {
        width: 100%;
    }
    .insta_img_flex_wrap div:first-of-type,
    .insta_img_flex_wrap div:nth-of-type(2),
    .insta_img_column_wrap img:first-of-type {
        margin-bottom: 4px;
    }
    .insta_img_sp_wrap {
        display: none;
    }
}

@media screen and (min-width: 1380px) {
    .insta_flex_wrap {
        max-width: 2000px;
        margin: 0 auto;
    }
}

/* ------------------------------------------------------------------------------
#snservice(Social Networking Service)
-------------------------------------------------------------------------------*/
#snservice {
    padding: 60px 30px;
    background-color: #eceae4;
}
.snservice_txt {
    margin-bottom: 20px;
    text-align: center;
}
.snservice_flex_wrap>div{
    margin: 20px 0;
    text-align: center;
}
.snservice_flex_wrap img{
    border: 1px solid #000000;
}

@media screen and (min-width: 769px) {
    .snservice_txt {
        margin-bottom: 30px;
    }
    #snservice {
        padding: 80px 20px;
    }
    .snservice_flex_wrap {
        display: flex;
        align-items: center;
        justify-content: center;
        flex-wrap: wrap;
    }
    .snservice_flex_wrap {
        display: flex;
        align-items: flex-start;
        padding: 0 10px;
    }
    .snservice_flex_wrap>div{
        margin: 0 20px;
        width: 40%;
        max-width:500px;
    }
}
@media screen and (min-width: 1000px) {
    .snservice_flex_wrap {
        padding: 0;
    }
}

/* ------------------------------------------------------------------------------
#planinfo(Social Networking Service)
-------------------------------------------------------------------------------*/
#planinfo {
    padding: 60px 30px;
    background-color: #f2f1ed;
}
.planinfo_txt {
    margin-bottom: 20px;
    text-align: center;
}
.planinfo_flex_wrap>div{
    margin: 20px 0;
    text-align: center;
}
.planinfo_flex_wrap img{
    margin-bottom: 1.5rem;
}
@media screen and (min-width: 769px) {
    .planinfo_txt {
        margin-bottom: 30px;
    }
    #snservice {
        padding: 80px 20px;
    }
    .planinfo_flex_wrap {
        display: flex;
        align-items: center;
        justify-content: center;
        flex-wrap: wrap;
    }
    .planinfo_flex_wrap {
        display: flex;
        align-items: flex-start;
        padding: 0 10px;
    }
    .planinfo_flex_wrap>div{
        margin: 0 20px;
        width: 40%;
        max-width:500px;
    }
}
@media screen and (min-width: 1000px) {
    .planinfo_flex_wrap {
        padding: 0;
    }
}

/* ------------------------------------------------------------------------------
#planinfo(Social Networking Service)
-------------------------------------------------------------------------------*/
#planinfo {
    padding: 60px 30px;
    background-color: #f2f1ed;
}
.planinfo_txt {
    margin-bottom: 20px;
    text-align: center;
}
.planinfo_flex_wrap>div{
    margin: 20px 0;
    text-align: center;
}
.planinfo_flex_wrap img{
    margin-bottom: 1.5rem;
}
@media screen and (min-width: 769px) {
    .planinfo_txt {
        margin-bottom: 30px;
    }
    #snservice {
        padding: 80px 20px;
    }
    .planinfo_flex_wrap {
        display: flex;
        align-items: center;
        justify-content: center;
        flex-wrap: wrap;
    }
    .planinfo_flex_wrap {
        display: flex;
        align-items: flex-start;
        padding: 0 10px;
    }
    .planinfo_flex_wrap>div{
        margin: 0 20px;
        width: 40%;
        max-width:500px;
    }
}
@media screen and (min-width: 1000px) {
    .planinfo_flex_wrap {
        padding: 0;
    }
}


/* ------------------------------------------------------------------------------
#contact
-------------------------------------------------------------------------------*/
#contact {
    padding: 60px 30px;
}
.contact_txt {
    margin-bottom: 20px;
    text-align: center;
}
@media screen and (min-width: 769px) {
    .contact_txt {
        margin-bottom: 30px;
    }
}

.contact_flex_wrap {
    font-family: "Yu Mincho Medium","Yu Mincho","ＭＳ 明朝",serif;
}
@media screen and (min-width: 769px) {
    .contact_flex_wrap {
        margin-bottom: 10px;
    }
}

#contact .tel_link {
    display: block;
    width: 185px;
    margin: 0 auto 15px;
}
@media screen and (min-width: 769px) {
    #contact .tel_link {
        margin-bottom: 20px;
    }
}

#contact .hours_txt {
    font-size: 10px;
    transform: translateX(4px);
}
#contact .menu_contact_wrap {
    display: block;
    max-width: 100%;
}
#contact .menu_contact_wrap>div {
    text-align: center;
}
@media screen and (min-width: 769px) {
    #contact {
        padding: 80px 20px;
    }
    .tit_contact {
        background-size: 220px 1px;
        margin-bottom: 30px;
    }
    .contact_flex_wrap {
        display: flex;
        align-items: center;
        justify-content: center;
        flex-wrap: wrap;
    }
    #contact .menu_info_flex_wrap {
        margin: 0;
        max-width: none;
    }
    #contact .document_link {
    }
    #contact .menu_info_flex_wrap .info_link {
        width: 280px;
        margin: 0 10px 40px 10px;
    }
    #contact .info_link.reserve_link {
        max-width: 440px;
        margin: 0 10px 40px 10px;
    }
    #contact .info_link p {
        height: 120px;
        font-size: 24px;
        background-size: 38px;
    }
    #contact .info_link.reserve_link p {
        font-size: 28px;
    }
    #contact .document_link p {
        background-position: left 50px center;
        padding-left: 50px;
    }
    #contact .contact_link p {
        background-position: left 30px center;
        padding-left: 50px;
    }
    #contact .tel_link {
        width: 270px;
    }
    #contact .hours_txt {
        font-size: 16px;
        transform: translateX(7px);
    }
}
/* ------------------------------------------------------------------------------
#access
-------------------------------------------------------------------------------*/
#access {
    padding: 60px 0;
    background-color: #eceae4;
}
.access_adress {
    font-size: 20px;
    line-height: 1.7;
    font-family: "Yu Mincho Medium","Yu Mincho","ＭＳ 明朝",serif;
    margin-bottom: 10px;
}
@media screen and (min-width: 768px) {
    .access_adress {
        margin-bottom: 30px;
    }
}
.access_txt_wrap {
    margin-bottom: 30px;
}
.access_img_wrap iframe {
    width: 100%;
    height: 300px;
}
@media screen and (min-width: 768px) {
    .access_img_wrap iframe  {
        height: 385px;
    }
}

.access_txt {
    line-height: 2;
    margin-bottom: 20px;
    font-size: 13px;
}
@media screen and (min-width: 768px) {
    .access_txt {
        font-size: 16px;
        margin-bottom: 10px;
    }
}
.access_more_link {
    margin: 0 10px 0 auto;
    width: 180px;
}
@media screen and (min-width: 768px) {
    #access {
        padding: 60px 20px;
    }
    .access_flex_wrap {
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: row-reverse;
    }
    .access_txt_wrap {
        margin: 0 0 0 50px;
        width: 30%;
        max-width: 540px;
    }
    .access_img_wrap {
        width: 65%;
        max-width: 683px;
    }
    .access_txt {
        margin-bottom: 30px;
    }
    .access_more_link {
        margin: 0 10px 0 auto;
        width: 224px;
    }
}
@media screen and (min-width: 769px) {
    .access_adress {
        font-size: 22px;
    }
}
/* ------------------------------------------------------------------------------
下層共通
-------------------------------------------------------------------------------*/
.low {
    padding-top: 0;
}
@media screen and (min-width: 769px) {
    .low {
        padding-top: 0;
    }
}
/* ------------------------------------------------------------------------------
conceptページ
-------------------------------------------------------------------------------*/
.concept_tit_wrap {
    background-image: url(img/img_concept_01.png);
    background-size: 100%;
    background-position: top center;
    padding-top: 150px;
    padding-bottom: 70px;
}
.concept_tit_txt_wrap {
    background-color: rgba(192,185,165,0.9);
    padding: 60px 20px;
    box-shadow: 0 0 10px #9b9585;
}
.concept_tit_wrap * {
    color: #fff;
    text-align: center;
}
.concept_tit_wrap p {
    font-family: "Yu Mincho Medium","Yu Mincho","ＭＳ 明朝",serif;
}
.concept_tit_wrap p:first-of-type {
    font-size: 18px;
    line-height: 1.6;
    margin-bottom: 20px;
}
.concept_tit_wrap p:nth-of-type(2) {
    line-height: 2.375;
}
#concept h2.concept_tit {
    background-image: url(img/line_white.png);
    background-size: 105px 1px;
    margin-bottom: 30px;
}
.concept_content_list_item:not(:last-of-type) {
    margin-bottom: 15px;
}
.concept_img_wrap {
    position: relative;
    z-index: 2;
}
.concept_img_wrap img {
    display: block;
}
.concept_txt_img {
    position: absolute;
    width: 110px;
    right: 5px;
    bottom: -20px;
}
.concept_txt_wrap {
    background-color: #eceae4;
    padding-top: 70px;
    padding-bottom: 25px;
    transform: translateY(-35px);
    z-index: 1;
}
.concept_sub_tit {
    font-size: 20px;
    margin-bottom: 15px;
}
.concept_sub_tit span {
    font-family: 'ofl-sorts-mill-goudy-italic';
    font-size: 18px;
    margin-right: 5px;
    letter-spacing: 0.08em;
}
.concept_txt {
    font-family: "Yu Mincho Medium","Yu Mincho","ＭＳ 明朝",serif;
    line-height: 2;
    letter-spacing: 0.05em;
}
#concept #contact {
    padding: 20px 30px 60px;
}
@media screen and (min-width: 769px) {
    .concept_tit_wrap {
        width: 100%;
        max-width: none;
        height: 960px;
        background-image: url(img/img_concept_02.png);
        background-size: cover;
        display: flex;
        justify-content: center;
        align-items: center;
        margin-bottom: 140px;
    }
    .concept_tit_txt_wrap {
        height: 480px;
        width: 90%;
        max-width: 800px;
    }
    #concept h2.concept_tit {
        font-size: 20px;
        margin-bottom: 40px;
    }
    .concept_tit_wrap p:first-of-type {
        font-size: 32px;
        margin-bottom: 40px;
    }
    .concept_content_list_item {
        margin-bottom: 30px;
    }
    .concept_txt_img {
        width: 220px;
        bottom: -40px;
        right: auto;
        left: 20px;
    }
    .concept_img_wrap {
        width: 90%;
    }
    .concept_txt_wrap {
        width: 100%;
        max-width: none;
        padding: 160px 5% 80px;
        transform: translateY(-100px);
    }
    .concept_txt_content_wrap {
        max-width: 1240px;
        margin: 0 auto;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .concept_sub_tit {
        font-size: 30px;
        margin-bottom: 0;
        margin-right: 30px;
        width: 250px;
    }
    .concept_sub_tit span {
        font-size: 26px;
        margin-right: 8px;
    }
    .concept_txt {
        width: calc(95% - 280px);
    }
    #concept #contact {
        padding: 0 20px 80px;
    }
}
/* ------------------------------------------------------------------------------
#report
-------------------------------------------------------------------------------*/
#report .tit_03 {
    background-image: url(img/bg_report_01.jpg);
    background-position: top 0px left -75px;
}
#report h3.tit_02 {
    font-size: 18px;
    font-family: "Yu Mincho Medium","Yu Mincho","ＭＳ 明朝",serif;
    font-weight: bold;
    line-height: 1;
    padding-bottom: 10px;
    text-align: center;
    background-image: url(img/line_gray.png);
    background-position: bottom center;
    background-size: 75px 1px;
    margin: 30px 0;
    letter-spacing: 0;
}
@media screen and (min-width: 768px) {
    #report h3.tit_02 {
        font-size: 30px;
        margin: 0 0 100px;
        padding-bottom: 15px;
    }
}
#report .report_content_wrap {
    padding-top: 35px;
    padding-bottom: 80px;
    background-color: #f0f0f0;
}
#report .report_content_wrap .c-title {
    text-align: center;
}
#report .report_txt {
    font-weight: bold;
    line-height: 2;
    text-align: center;
    margin-bottom: 30px;
}
#report .report_list {
    display: flex;
    justify-content: left;
    align-items: flex-start;
    flex-wrap: wrap;
}
#report .report_list li {
    width: calc(50% - 7.5px);
    margin: 0 3px 40px;
    box-sizing: border-box;
    padding: 10px 6px;
    background-color: #fff;
}
#report .report_thumbnail {
    position: relative;
    width: 100%;
    margin-bottom: 15px;
}
@media screen and (min-width: 768px) {
    #report .report_thumbnail {
        margin-bottom: 30px;
    }
}
#report .report_thumbnail img {
    display: block;
    box-shadow: 0 0 5px #aaa;
    width: 100%;
    max-height: 249px;
}
#report .report_thumbnail a.more {
    display: block;
    position: absolute;
    bottom: 3px;
    right: -5px;
    color: #fff;
    font-family: 'ofl-sorts-mill-goudy';
    font-size: 10px;
    line-height: 1;
    text-shadow: 0 0 3px #000;
}
@media screen and (min-width: 768px) {
    #report .report_thumbnail a.more {
        bottom: 10px;
        right: -10px;
    }
}

#report .report_thumbnail a span {
    letter-spacing: -0.05em;
}
.report_name {
    line-height: 1;
    color: #998e77;
    text-align: center;
    font-family: "Yu Mincho Medium","Yu Mincho","ＭＳ 明朝",serif;
    font-size: 15px;
    margin-bottom: 12px;
}
.report_season {
    font-size: 10px;
    letter-spacing: 0.05em;
    text-align: center;
    line-height: 1;
}
#report .report_season span {
    font-family: 'ofl-sorts-mill-goudy';
    text-transform: uppercase;
}
.pager_wrap .wp-pagenavi {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    max-width: 700px;
    margin: 0 auto;
}
.wp-pagenavi a, .wp-pagenavi span {
    margin: 2px 2px 10px 2px!important;
}
.pager_wrap span,.pager_wrap a.page {
    font-family: "Yu Mincho Medium","Yu Mincho","ＭＳ 明朝",serif;
    font-size: 12px;
    width: 30px;
    height: 30px;
    border-radius: 15px;
    display: flex;
    justify-content: center;
    align-items: center;
    border: none;
}
.pager_wrap .current {
    color: #998e77;
    border: 1px solid #998e77 !important;
}
.pager_wrap .previouspostslink,
.pager_wrap .nextpostslink {
    font-family: 'ofl-sorts-mill-goudy';
    letter-spacing: 0.1em;
    font-size: 10px;
    border: none;
}
.pager_wrap .previouspostslink {
    background-image: url(img/arrow_02.png);
    background-size: 20px;
    background-position: top 3px left;
    padding-left: 30px;
}
@media screen and (min-width: 769px) {
    .pager_wrap .previouspostslink {
        background-size: 35px;
        background-position: top 0 left;
        padding-left: 55px;
    }
}
.pager_wrap .nextpostslink {
    background-image: url(img/arrow.png);
    background-size: 20px;
    background-position: top 3px right;
    padding-right: 30px;
}
@media screen and (min-width: 769px) {
    .pager_wrap .nextpostslink {
        background-size: 35px;
        background-position: top 0 right;
        padding-right: 55px;
    }
}

.pager_wrap .extend {
    border: none;
    background-image: url(img/line_gray.png);
    background-size: 165px 1px;
    background-position: center;
    font-weight: normal;
    padding-bottom: 15px;
}

@media screen and (min-width: 769px) {
    #report .tit_03 {
        background-position: top left;
    }
    #report .report_list li {
        width: calc(100%/3 - 40px/3);
        margin-bottom: 60px;
        margin-right: 4px;
        margin-left: 4px;
        padding-bottom: 24px;
        padding-top: 24px;
    }
    #report .report_content_wrap {
        padding-top: 50px;
    }
    #report h3.tit_02,
    #report .report_txt {
        margin-bottom: 65px;
    }
    #report .report_list {
        width: 90%;
    }
    .report_name {
        font-size: 18px;
        letter-spacing: .15em;
    }
    .pager_wrap .wp-pagenavi {
        justify-content: center;
    }
    .pager_wrap span,.pager_wrap a.page {
        width: 33px;
        height: 33px;
        border-radius: 16.5px;
        font-size: 18px;
        margin: 0 10px !important;
        padding: 3px 4px 0px 5px!important;
    }
    .pager_wrap a.page {
        margin: 0 10px !important;
    }
    .pager_wrap .previouspostslink,
    .pager_wrap .nextpostslink {
        font-size: 12px;
    }
    .pager_wrap .previouspostslink {
        margin: 5px auto 0 0!important;
    }
    .pager_wrap .nextpostslink {
        margin: 5px 0 0 auto!important;
    }
    .wp-pagenavi span:nth-child(1) {
        margin: 0 15px 0 auto!important;
    }
    .wp-pagenavi span:last-child {
        margin: 0 auto 0 15px!important;
    }
}

/* ------------------------------------------------------------------------------
#detail (report下層)
-------------------------------------------------------------------------------*/
#detail #contact {
    background-color: #eceae4;
}
.detail_slider_wrap {
    width: 100%;
    height: 182px;
    background-color: #f3edf1;
    position: relative;
    margin-bottom: 65px;
}
.detail_slider_container {
    position: absolute;
    bottom: -40px;
    left: 5%;
}
#detail .detail_slider {
    width: 260px;
}
#detail .detail_slider_container {
    background-image: url(img/bg_detail_slider.png);
    background-size: 250px;
    background-position: bottom right;
}
.slick-dotted.slick-slider {
    margin-bottom: 0;
}
#detail .slick-vertical .slick-slide {
    width: 260px!important;
    height: 176px;
}
#detail .slick-vertical .slick-slide img {
    width: 250px;
    display: block;
}
#detail .slick-dots {
    transform: rotate(90deg);
    bottom: 118px;
    right: 125px;
    text-align: right;
}
@media screen and (min-width: 768px) {
    #detail .slick-dots {
        bottom: 118px;
    }
}
@media screen and (min-width: 1200px) {
    #detail .slick-dots {
        right: 455px;
    }
}

.detail_data_tit {
    font-size: 20px;
    color: #ccbd9f;
    font-family: 'ofl-sorts-mill-goudy';
    width: 75%;
    margin-left: auto;
    background-image: url(img/line_dot.png);
    background-position: bottom left;
    background-size: contain;
    margin-bottom: 5px;
    letter-spacing: .15em;
}
.detail_data_wrap {
    margin-bottom: 30px;
}
.detail_data_wrap table {
    width: 75%;
    margin-left: auto;
}
.detail_data_wrap th img {
    width: auto;
    display: block;
}
.detail_data_wrap .name_img {
    height: 25px;
    transform: translateY(12px);
}
.detail_data_wrap .date_img,
.detail_data_wrap .season_img {
    height: 16px;
    transform: translateY(4px);
}
.detail_data_wrap td p {
    font-size: 12px;
    padding-left: 5px;
}
.detail_data_wrap .name_txt {
    font-family: "Yu Mincho Medium","Yu Mincho","ＭＳ 明朝",serif;
}
.detail_data_wrap .date_txt {
    font-family: 'Tenor Sans', serif;
}
.detail_data_wrap .season_txt {
    font-family: 'ofl-sorts-mill-goudy';
}
@media screen and (min-width: 768px) {
    .detail_flex_wrap {
        display: flex;
        justify-content: space-between;
        align-items: center;
        position: absolute;
        bottom: -30px;
        left: 10%;
        width: 80%;
        max-width: 1060px;
    }
    .detail_slider_container,.detail_slider_wrap {
        position: static;
        width: auto;
        margin: 0;
        background-color: inherit;
    }
    .detail_content_wrap {
        position: relative;
        background-color: #f0f0f0;
        width: 100%;
        height: 35vw;
        max-height: 450px;
        margin-bottom: 100px;
    }
    .detail_data_tit,.detail_data_wrap table {
        width: 100%;
    }
    .detail_data_wrap {
        width: calc(100% - 280px);
        transform: translateY(-30px);
        margin: 0;
    }
}
@media screen and (min-width: 769px) {
    .detail_data_tit {
        font-size: 26px;
    }
    .detail_data_wrap th {
        width: 200px;
    }
    .detail_data_wrap td p {
        font-size: 14px;
    }
    .detail_data_wrap .name_img {
        height: 35px;
        transform: translateY(17px);
    }
    .detail_data_wrap .date_img,
    .detail_data_wrap .season_img {
        height: 23px;
        transform: translateY(7px);
    }
}
@media screen and (min-width: 1200px) {
    .detail_content_wrap {
        height: 450px;
        margin-bottom: 160px;
    }
    .detail_data_wrap {
        width: calc(100% - 610px);
    }
    .detail_flex_wrap {
        bottom: -130px;
    }
    #detail .detail_slider_wrap {
        height: 456px;
    }
    #detail .detail_slider {
        width: 580px;
    }
    #detail .slick-vertical .slick-slide {
        width: 580px!important;
        height: 394px;
    }
    #detail .detail_slider_container {
        background-size: 560px;
    }
    #detail .slick-vertical .slick-slide img {
        width: 560px;
    }
}
.detail_txt_wrap {
    max-width: 1100px;
}
.detail_txt {
    padding-top: 40px;
    border-top: 1px solid #767267;
}
.detail_txt p {
    line-height: 1.92;
    margin-bottom: 25px;
    letter-spacing: .1em;
    font-size: 13px;
}
.detail_img_wrap {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin: 5px 0 30px;
}
.detail_img_wrap img {
    display: block;
    width: 48%;
    max-width: 490px;
}
@media screen and (min-width: 769px) {
    .detail_txt_wrap {
        width: 90%;
        border-top: 1px solid #767267;
    }
    .detail_txt {
        border: none;
        padding: 70px 50px;
    }
    .detail_txt p {
        font-size: 15px;
    }
}
.datail_message_wrap {
    background-color: #f5f4f1;
    position: relative;
    padding: 5px 15px 30px 25px;
    background-image: url(img/bg_diagonal_02.png);
    background-size: 12px 100%;
    background-position: top left;
    margin-bottom: 35px;
}
.datail_message_icon {
    position: absolute;
    top: -2px;
    left: 30px;
    width: 23px;
}
.detail_message_txt_img {
    position: absolute;
    bottom: 30px;
    right: -10px;
    width: 120px;
}
.datail_message_tit {
    color: #a40a56;
    font-size: 10px;
    display: flex;
    align-items: center;
    letter-spacing: .05em;
    padding-left: 50px;
    margin-bottom: 20px;
}
.datail_message_tit span {
    font-family: 'ofl-sorts-mill-goudy';
    font-size: 15px;
    margin-right: 10px;
    margin-bottom: -3px;
    letter-spacing: .1em
}
.datail_message_txt {
    line-height: 1.875;
    margin-bottom: 20px;
}
@media screen and (min-width: 769px) {
    .datail_message_txt {
        font-size: 14px;
    }
}

.datail_message_planner {
    display: flex;
    align-items: center;
}
.datail_message_planner img {
    display: block;
    width: 80px;
    height: auto;
    margin-right: 15px;
}
.datail_message_planner p {
    font-weight: bold;
}
@media screen and (min-width: 769px) {
    .detail_message_content_wrap {
        display: flex;
        flex-direction: row-reverse;
        justify-content: flex-end;
    }
    .datail_message_container {
        max-width: none;
    }
    .datail_message_wrap {
        width: 95%;
        max-width: calc(50% + 500px);
        margin-left: auto;
        padding-left: 100px;
        padding-top: 22px;
        padding-bottom: 60px;
        margin-bottom: 65px;
        min-height: 470px;
    }
    .datail_message_icon {
        width: 40px;
        left: 50px;
    }
    .detail_message_txt_img {
        width: 210px;
        left: -20px;
        bottom: 50px;
    }
    .datail_message_tit {
        padding-left: 10px;
        font-size: 12px;
    }
    .datail_message_tit span {
        font-size: 22px;
        margin-right: 15px;
    }
    .datail_message_txt {
        width: 70%;
        max-width: 650px;
    }
    .datail_message_planner {
        display: block;
        margin-right: 30px;
    }
    .datail_message_planner img {
        width: 160px;
        margin-right: 0;
        margin-bottom: 10px;
    }
    .datail_message_planner p {
        text-align: center;
    }
}

.detail_pager_wrap {
    border-top: 1px solid #767267;
    width: 92%;
    display: block;
    margin: 0 auto;
}
.detail_pager {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 40px 0;
}
.detail_pager a.detail_link {
    font-size: 10px;
    padding-left: 15px;
    background-image: url(img/ico_archive.png);
    background-size: 10px;
    font-family: "Yu Mincho Medium","Yu Mincho","ＭＳ 明朝",serif;
    background-position: center left;
}
.detail_pager a:not(.detail_link) {
    font-family: 'ofl-sorts-mill-goudy';
    letter-spacing: 0.1em;
    font-size: 10px;
    border: none;
}
.detail_pager .next a {
    background-image: url(img/arrow.png);
    background-size: 20px;
    background-position: top 2px right;
    padding-right: 30px;
}
.detail_pager .prev a {
    background-image: url(img/arrow_02.png);
    background-size: 20px;
    background-position: top 2px left;
    padding-left: 30px;
}
@media screen and (min-width: 769px) {
    .detail_pager_wrap {
        max-width: 1100px;
        padding: 0 50px;
    }
    .detail_pager {
        padding: 50px 0;
    }
    .detail_pager a {
        font-size: 14px!important;
    }
    .detail_pager a.detail_link {
        padding-left: 20px;
    }
}
#recommended {
    background-color: #f0f0f0;
    padding: 50px 0 10px;
}
.recommended_tit {
    text-align: center;
    font-family: 'ofl-sorts-mill-goudy';
    font-size: 20px;
    letter-spacing: .18em;
    color: #ccbd9f;
}
.recommended_txt {
    line-height: 1;
    text-align: center;
    margin-bottom: 40px;
    font-size: 10px;
    font-family: "游ゴシック体", "Yu Gothic", YuGothic, "メイリオ", "Meiryo","ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", sans-serif;
    font-weight: normal;
    color: #ccbd9f;
}
#recommended .report_list li:last-of-type {
    display: none;
}
@media screen and (min-width: 769px) {
    #recommended .report_list li:last-of-type {
        display: block;
    }
    #recommended .report_list {
        max-width: 1000px;
    }
    #recommended {
        padding: 100px 0 35px;
    }
    .recommended_tit {
        font-size: 28px;
        line-height: 2;
    }
    .recommended_txt {
        font-size: 12px;
    }
}

/* ------------------------------------------------------------------------------
#fair
-------------------------------------------------------------------------------*/
#fair h2.tit_03 {
    background-image: url(img/bg_fair_pc.jpg);
}
#fair h3.fair_tit {
    font-size: 18px;
    line-height: 1;
    padding-bottom: 10px;
    text-align: center;
    font-family: "Yu Mincho Medium","Yu Mincho","ＭＳ 明朝",serif;
    background-image: url(img/line_gray.png);
    background-position: bottom center;
    background-size: 65px 1px;
    margin: 30px 0;
    letter-spacing: 0;
}
@media screen and (min-width: 768px) {
    #fair h3.fair_tit {
        font-size: 30px;
        margin: 50px 0 100px;
        padding-bottom: 15px;
    }
}

#fair .reccomend {
    padding: 20px 0;
    background-color: #f3edf1;
}
@media screen and (min-width: 768px) {
    #fair .reccomend {
        padding: 40px 0 80px;
    }
}

.fair_recommend_tit {
    display: flex;
    flex-flow: column;
    align-items: center;
    line-height: 1;
    font-size: 18px;
    color: #c0b9a5;
    font-family: "游ゴシック体", "Yu Gothic", YuGothic, "メイリオ", "Meiryo","ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", sans-serif;
    font-weight: bold;
    margin-bottom: 30px;
}
@media screen and (min-width: 768px) {
    .fair_recommend_tit {
        font-size: 30px;
        margin-bottom: 30px;
    }
}

.fair_recommend_tit span {
    font-size: 10px;
    font-family: 'ofl-sorts-mill-goudy';
    display: block;margin-top: 10px;
    letter-spacing: .09em;
}
@media screen and (min-width: 768px) {
    .fair_recommend_tit span {
        font-size: 18px;
        margin-top: 20px;
    }
}

#fair .area {
    padding: 0 20px;
    max-width: 1000px;
    margin: 0 auto;
}

#fair .area .flex_wrap {
    display: flex;
    justify-content: space-between;
    max-width: 620px;
    margin: 0 auto;
}
#fair .area .flex_wrap .fair_detail_link {
    width: calc(50% - 5px);
    font-size: 12px;
    letter-spacing: 1px;
}
#fair .area .flex_wrap .fair_reserve_link {
    background-color: #767267;
    border: 1px solid #767267;
    letter-spacing: 1px;
}
#fair .area .flex_wrap .fair_reserve_link:hover {
    background-color: #fff;
    color: #767267;
    opacity: 1;
}
#fair .fair_thumbnail {
    height: 72vw;
    max-width: 500px;
    max-height: 500px;
    margin: 0 auto 18px;
}
#fair .slick-prev {
    left: -19px;
}
#fair .slick-prev:before {
    background-image: url(img/arrow_prev_pink.png);
    width: 10px;
}
#fair .slick-next {
    right: -27px;
}
#fair .slick-next:before {
    background-image: url(img/arrow_next_pink.png);
    width: 10px;
}
#fair .choose {
    padding-top: 35px;
}
#fair h3.choose_tit {
    text-align: center;
    font-family: "Yu Gothic Bold",游ゴシック,"ＭＳ ゴシック",sans-serif;
    color: #c0b9a5;
    padding: 10px 0;
    border-top: 1px solid #c0b9a5;
    border-bottom: 1px solid #c0b9a5;
    margin-bottom: 15px;
    font-size: 14px;
}
#fair .calendar_wrap {
    padding-bottom: 20px;
    border-bottom: 1px solid #c0b9a5;
    margin-bottom: 25px;
}
#fair .choose_txt {
    color: #636363;
    font-family: "Yu Gothic Bold",游ゴシック,"ＭＳ ゴシック",sans-serif;
    font-weight: bold;
    text-align: center;
    line-height: 1.58;
    letter-spacing: .05em;
    margin-bottom: 25px;
}
#fair .fair_list li {
    margin-bottom: 20px;
}
#fair .fair_list_wrap {
    padding-bottom: 20px;
}
#fair #contact {
    background-color: #eceae4;
}
#fair .reccomend {
    background-color: inherit;
}

@media screen and (min-width: 480px) {
    #fair .area {
        padding: 0 4%;
    }
}
@media screen and (min-width: 768px) {
    #fair .area .tab_content .tab_content_wrap {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        margin-bottom: 30px;
    }
    #fair .area .flex_wrap .fair_detail_link:nth-child(2) {
        margin-left: 20px;
    }
    #fair .fair_thumbnail {
        max-width: 270px;
        max-height: 270px;
        margin: 0;
    }
    #fair .fair_txt_wrap {
        width: calc(100% - 305px);
    }
}
@media screen and (min-width: 769px) {

    #fair h2.tit_03 {
        background-image: url(img/bg_fair_pc.jpg);
        background-size: cover;
        background-position: bottom center;
    }
    #fair .slick-prev {
        left: -24px;
    }
    #fair .slick-next {
        right: -32px;
    }
    #fair .slick-prev:before,#fair .slick-next:before {
        width: 15px;
    }
    #fair .area .flex_wrap .fair_detail_link {
        font-size: 16px;
    }
    #fair h3.choose_tit {
        font-size: 22px;
        padding: 15px 0;
        margin-bottom: 30px;
    }
    #fair .calendar_wrap {
        padding-bottom: 40px;
        margin-bottom: 55px;
    }
    #fair .choose_txt {
        margin-bottom: 55px;
    }
    #fair .fair_list li {
        margin-bottom: 40px;
    }
    #fair .fair_list_wrap {
        padding-bottom: 60px;
    }
}

/* ------------------------------------------------------------------------------
#post (fair下層)
-------------------------------------------------------------------------------*/
.post_content {
    padding: 35px 0 0;
    margin-bottom: 30px;
}
#post .area {
    /* padding: 0 30px; */
    max-width: 1000px;
    margin: 0 auto;
}
#post .tab_content {
    display: block;
    padding: 0;
    border: none;
    border-bottom: 1px solid #c0b9a5;
    padding-bottom: 20px;
}
#post .fair_tit {
    padding-bottom: 10px;
    margin-bottom: 15px;
    line-height: 1.58;
    font-family: YuMincho,'Yu Mincho',serif;
}
#post .fair_date {
    display: flex;
    flex-wrap: wrap;
    background: none;
    margin-bottom: 10px;
    font-size: 12px;
    color: #a40a56;
    font-family: "Yu Gothic Bold",游ゴシック,"ＭＳ ゴシック",sans-serif;
    font-weight: bold;
    padding-bottom: 0;
}
.fair_date .title strong{
    padding-right: 25px;
    position: relative;
    width: auto;
}
.fair_date .title strong::before {
    background: url(./img/ico_clock_pink.png) no-repeat left center / contain;
    content: '';
    display: block;
    height: 15px;
    right: 5px;
    margin: -7.5px 0 0 0;
    position: absolute;
    top: 50%;
    width: 15px;
}
.fair_date .event_time{
    display: flex;
    flex-wrap: wrap;
    width: auto;
}
#post .fair_date span {
    font-family: 'Tenor Sans', serif;
    font-weight: normal;
    margin: 3px 5px 3px 0;
}
#post .post_content .fair_reserve_link {
    border: 1px solid #767267;
    background-color: #767267;
    width: 100%;
}
#post .post_content .fair_reserve_link:hover {
    background-color: #fff;
    cursor: #767267;
    opacity: 1;
}
#post .fair_thumbnail {
    width: 400px;
    height: 315px;
    max-width: 100%;
    background-size: cover;
    margin: 0 auto 18px;
}

@media screen and (max-width: 360px) {
    .fair_date .title{
        width: 40%;
    }
    .fair_date .event_time{
        width: 60%;
    }
}
@media screen  and (min-width: 361px) and (max-width: 380px) {
    .fair_date .title{
        width: 30%;
    }
    .fair_date .event_time{
        width: 70%;
    }
}
@media screen  and (min-width: 381px) and (max-width: 480px) {
    .fair_date .title{
        width: 30%;
    }
    .fair_date .event_time{
        width: 70%;
    }
}
@media screen and (min-width: 480px) {
    #post .fair_thumbnail {
        width: 400px;
        height: 400px;
    }
}

@media screen and (min-width: 480px) {
    #post .area {
        /* padding: 0 4%; */
    }
}
@media screen and (min-width: 768px) {
    #post .tab_content {
        display: flex!important;
        justify-content: space-between;
        align-items: flex-start;
    }
    #post .fair_thumbnail {
        max-width: 300px;
        max-height: 300px;
        margin: 0;
    }
    #post .fair_txt_wrap {
        width: calc(100% - 330px);
    }
}

.single-fair .fair_date .title strong {
    margin-right: 8px;
}
@media screen and (max-width: 768px) {
    .single-fair .fair_date .title strong {
        padding-right: 30px;
    }
}
@media screen and (min-width: 769px) {
    .post_content {
        padding: 120px 0 90px;
    }
    #post .tab_content {
        border-bottom: none;
    }
    #post .fair_tit {
        font-size: 24px;
        padding-bottom: 0;
    }
    #post .fair_date {
        font-size: 14px;
        margin-bottom: 10px;
    }
    .fair_date .title,
    .fair_date .event_time{
        width: auto;
    }
    .single-fair .fair_date .title strong{
        padding-right: 35px;
    }
}
@media screen and (min-width: 768px) and (max-width: 891px) {
    .fair_date .title{
        width: 30%;
    }
    .fair_date .event_time{
        width: 70%;
    }
}
@media screen and (min-width: 890px) and (max-width: 1024px) {
    .fair_date .title{
        width: 20%;
    }
    .fair_date .event_time{
        width: 80%;
    }
}
@media screen and (min-width: 1200px) {
    #post .area {
        /* padding: 0; */
    }
    #post .fair_thumbnail {
        max-width: 400px;
        max-height: 400px;
    }
    #post .fair_txt_wrap {
        width: calc(100% - 430px);
    }
    .single-fair .fair_date .title strong{
        padding-right: 38px;
    }
}
.benefits {
    padding: 35px 0;
    background-color: #e6dfd1;
}
.benefits_tit {
    color: #998e77;
    font-size: 18px;
    font-family: YuMincho,'Yu Mincho',serif;
    text-align: center;
    font-weight: bold;
    line-height: 1;
    margin-bottom: 20px;
}
.benefits_list li {
    padding: 16px 15px 20px;
    background-color: #fff;
    border: 1px solid #ccbd9f;
}
.benefits_list li:not(:last-of-type) {
    margin-bottom: 20px;
}
.benefits_sub_tit_wrap {
    text-align: center;
}
.benefits_sub_tit {
    margin-bottom: 15px;
    font-size: 16px;
    font-weight: 500;
    line-height: calc(28 / 16);
    letter-spacing: .05em;
    font-family: YuMincho,'Yu Mincho',serif;
    color: white;
    display: inline-block;
    min-width: 217px;
    margin-right: auto;
    margin-left: auto;
    padding:6px;
    background-color: #998e77;
    position: relative;
}
.benefits_sub_tit::before,
.benefits_sub_tit::after {
    content: '';
    position: absolute;
    top: 0;
    width: 0;
    height: 0;
    border-color: #998e77 transparent;
    border-style: solid;
    z-index: 1;
}
.benefits_sub_tit::before {
    left: -15px;
    border-width: 20.5px 0 20.6px 16px;
}
.benefits_sub_tit::after {
    right: -15px;
    border-width: 20.5px 16px 20.6px 0;
}
.benefits_under_tit {
    color: #998e77;
    letter-spacing: .05em;
    font-weight: bold;
    padding-left: 15px;
    background-image: url(img/ico_medal.png);
    background-size: 10px;
    background-position: center left;
    line-height: 1;
    margin-bottom: 10px;
}
.benefits_txt {
    line-height: 2;
    font-size: 10px;
}
.benefits_txt:not(:last-of-type) {
    margin-bottom: 15px;
}
@media screen and (min-width: 769px) {
    .benefits {
        padding: 70px 0 80px;
    }
    .benefits_tit {
        font-size: 30px;
        margin-bottom: 30px;
    }
    .benefits_list li {
        padding: 30px 60px 40px;
    }
    .benefits_list li:not(:last-of-type) {
        margin-bottom: 30px;
    }
    .benefits_sub_tit {
        font-size: 24px;
        min-width: 307px;
    }
    .benefits_sub_tit::before {
        border-width: 27px 0 27px 16px;
    }
    .benefits_sub_tit::after {
        border-width: 27px 16px 27px 0;
    }
    .benefits_under_tit {
        font-size: 20px;
        background-size: 23px;
        line-height: 1.5;
        padding-left: 30px;
        margin-bottom: 5px;
    }
    .benefits_txt {
        font-size: 14px;
        padding-left: 30px;
    }
    .benefits_txt:not(:last-of-type) {
        margin-bottom: 20px;
    }
}
.flow {
    padding: 45px 0 15px;
}
.flow_tit {
    font-size: 18px;
    font-weight: bold;
    font-family: YuMincho,'Yu Mincho',serif;
    text-align: center;
    line-height: 1;
    margin-bottom: 35px;
}

.flow_flex_item {
    position: relative;
    margin-bottom: 30px;
    padding: 10px;
    border: 2px solid #c9bb9e;
}
.flow_flex_item img {
    display: block;
}
.flow_num {
    display: block;
    width: 60px;
    height: 60px;
    position: absolute;
    top: -25px;
    left: -25px;
    background-size: contain;
}
.flow_flex_item:nth-of-type(1) .flow_num {
    background-image: url(img/ico_flow_01.png);
}
.flow_flex_item:nth-of-type(2) .flow_num {
    background-image: url(img/ico_flow_02.png);
}
.flow_flex_item:nth-of-type(3) .flow_num {
    background-image: url(img/ico_flow_03.png);
}
.flow_flex_item:nth-of-type(4) .flow_num {
    background-image: url(img/ico_flow_04.png);
}
.flow_flex_item:nth-of-type(5) .flow_num {
    background-image: url(img/ico_flow_05.png);
}
.flow_flex_item:nth-of-type(6) .flow_num {
    background-image: url(img/ico_flow_06.png);
}
.flow_arrow {
    width: 4px;
    position: absolute;
    top: 50%;
    right: -10px;
}
.flow_flex_item:last-of-type .flow_arrow {
    display: none;
}
.flow_sub_tit {
    text-align: center;
    font-weight: bold;
    line-height: 1.58;
    margin: 15px 0;
    font-family: YuMincho,'Yu Mincho',serif;
}
.flow_txt {
    line-height: 2;
    font-size: 11px;
    padding: 0 10px 10px;
}

@media screen and (min-width: 500px) {
    .flow_flex_wrap {
        /* display: flex; */
        /* flex-wrap: wrap; */
        /* justify-content: space-between; */
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(248px, 1fr));
        gap: 50px;
    }
    .flow_flex_item {
        /* width: calc(50% - 8px); */
    }
}

@media screen and (min-width: 769px) {
    .flow_flex_item {
        /* width: calc(50% - 16px); */
    }
    .flow_arrow {
        width: 10px;
        right: -20px;
    }
}
@media screen and (min-width: 769px) {
    #post .flow {
        padding: 90px 0 20px;
    }
    .flow_tit {
        font-size: 30px;
        margin-bottom: 80px;
    }
    .flow_flex_item {
        /* margin-bottom: 90px; */
    }
    .flow_sub_tit {
        font-size: 16px;
        margin: 10px 0;
    }
    .flow_txt {
        font-size: 12px;
        padding: 0 0 30px;
    }
}
@media screen and (min-width: 1200px) {
    .flow_flex_item {
        width: calc((100% - 100px)/3);
        max-width: 320px;
        width: 100%;
    }
    .flow_arrow {
        right: -27px;
    }
    .flow_num {
        width: 80px;
        height: 80px;
        position: absolute;
    }
}
.reserve_form {
    padding: 0 30px 50px;
    background-color: #eceae4;
}
.reserve_form .form_tit {
    padding-top: 70px;
}
.form_tit {
    font-size: 18px;
    font-weight: bold;
    line-height: 1;
    text-align: center;
    margin-bottom: 20px;
}
.form_flex_wrap {
    margin-bottom: 20px;
}
.form_item {
    font-size: 12px;
    font-weight: bold;
    margin-bottom: 5px;
}
.form_item span {
    font-size: 9px;
    margin-left: 5px;
}
.form_title_answer {
    padding: 10px 10px;
    font-size: 10px;
    letter-spacing: .05em;
    font-family: "游ゴシック体", "Yu Gothic", YuGothic, "メイリオ", "Meiryo","ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", sans-serif;
    font-weight: bold;
    background-color: #fff;
}
.form_request_wrap {
    margin-bottom: 30px;
}
.form_answer input, .form_answer textarea, .form_answer select {
    background: #fff;
    width: 100%;
    padding: 5px 10px;
    border: none;
    font-size: 10px;
    min-height: 50px;
    letter-spacing: .05em;
    font-family: "游ゴシック体", "Yu Gothic", YuGothic, "メイリオ", "Meiryo","ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", sans-serif;
    font-weight: bold;
}

.form_answer select {
    color: #000;
}
@media screen and (max-width: 768px) {
    .form_answer select {
        line-height: 2.8;
    }
}

.reserve_form .form_flex_wrap .form_answer .preferred-time.wpcf7-form-control-wrap {
    width: 100%;
    position: relative;
    display: inline-block;
    background-color: #fff;
}
.reserve_form .form_flex_wrap .form_answer .preferred-time.wpcf7-form-control-wrap::after {
    content: '';
    width: 6px;
    height: 6px;
    border: 0px;
    border-bottom: solid 2px #767267;
    border-right: solid 2px #767267;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    right: 20px;
    margin-top: -4px;
}

.reserve_form .form_flex_wrap .form_answer .preferred-time select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: transparent;
    position: relative;
    z-index: 1;
}
.reserve_form .form_flex_wrap .form_answer .preferred-time select::-ms-expand {
    display: none;
}

.form_answer input::placeholder {
    color: #BAB8B3;
}
.form_answer .textarea {
    border: none;
    height: 110px;
    width: 100%;
}
.agree .wpcf7-list-item {
    display: flex;
    align-items: center;
    margin: 0;
}
.agree .wpcf7-list-item input {
    width: 15px;
    border: none;
    margin: 0 5px 0 0;
}
.form_agree_wrap .form_agree_txt,
.form_agree_wrap .form_agree_txt a {
    font-size: 10px;
    line-height: 1;
}
.form_agree_wrap .form_agree_txt a {
    text-decoration: underline;
}
.submit_button {
    width: 100%;
    height: 50px;
    border: none;
    border: 1px solid #767267;
    background-color: #767267;
    color: #fff;
    max-width: 450px;
    margin: 10px auto;
    display: block;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}
.submit_button:hover {
    background-color: #fff;
    color: #767267;
    cursor: pointer;
    opacity: 1;
}

a {
    font-size: 12px;
    color: #767267;
    text-decoration: none;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}


@media screen and (min-width: 768px) {
    .form_flex_wrap {
        display: flex;
        align-items: center;
        justify-content: space-between;
        margin: 0 auto 20px;
        max-width: 870px;
        width: 80%;
    }
    .form_agree_wrap {
        align-items: flex-start;
        margin-bottom: 40px;
    }
    .form_request_wrap {
        align-items: flex-start;
    }
    .form_item {
        margin-bottom: 0;
        width: 120px;
    }
    .form_item span {
        display: block;
        margin-left: 0;
        margin-top: 5px;
    }
    .form_answer {
        width: calc(100% - 150px);
    }
    .form_answer .textarea {
        height: 170px;
        border: none;
        width: 100%;
    }
    .form_request_wrap {
        margin-bottom: 55px;
    }
    .agree {
        margin-bottom: 60px;
    }
}
@media screen and (min-width: 769px) {
    .reserve_form {
        padding: 0 4% 100px;
    }
    .reserve_form .form_tit {
        padding-top: 120px;
    }
    .form_tit {
        font-size: 30px;
        margin-bottom: 60px;
    }
    .form_item {
        font-size: 16px;
        width: 160px;
    }
    .form_answer {
        width: calc(100% - 180px);
    }
    .form_answer input, .form_answer textarea, .form_answer select,
    .form_title_answer {
        font-size: 16px;
    }
    .form_answer select,
    .form_answer input,
    .form_answer textarea {
        padding: 12px 20px;
    }
    .form_agree_wrap .form_agree_txt,
    .form_agree_wrap .form_agree_txt a {
        font-size: 13px;
    }
    .submit_button {
        font-size: 16px;
        height: 60px;
    }
}
@media screen and (min-width: 1200px) {
    .reserve_form {
        padding: 0 0 100px;
    }
    .reserve_form .form_tit {
        padding-top: 120px;
    }
}

span.wpcf7-not-valid-tip {
    font-size: 13px;
    margin-top: 10px;
}
.wpcf7-list-item-label {
    font-weight: bold;
}

/* ------------------------------------------------------------------------------
.fair_list_flex
-------------------------------------------------------------------------------*/
@media screen and (min-width: 769px) {
    .fair_list_flex_wrap {
        padding: 0!important;
    }
}

@media screen and (min-width: 769px) {
    .fair_list_flex {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        padding: 30px 50px !important;
    }
}

@media screen and (min-width: 769px) {
    .fair_list_flex .fair_thumbnail {
        max-width: 320px!important;
        max-height: 320px!important;
    }
}

@media screen and (min-width: 769px) {
    .fair_list_flex .fair_txt_wrap {
        width: calc(100% - 365px)!important;
    }
}

.fair_list_flex_tit {
    /* background-image: url(img/line_dot.png); */
    background-repeat: repeat-x;
    background-position: bottom left;
    background-size: 350px;
    padding-bottom: 15px;
    margin-bottom: 20px;
    color: #767267;
    font-weight: bold;
    font-size: 16px;
    line-height: 1.6;
    font-family: YuMincho,'Yu Mincho',serif;;
}
@media screen and (min-width: 769px) {
    .fair_list_flex_tit {
        background-size: contain;
        font-size: 24px;
        padding-bottom: 20px;
        margin-top: -8px;
        margin-bottom: 25px;
    }
}

.fair_list_flex .fair_date {
    background: none;
    padding-bottom: 0;
}
.single-fair .fair_date span {
    font-size: 14px;
}

@media screen and (min-width: 769px) {
    .fair_list_flex .fair_date span {
        font-size: 15px;
    }
}

.fair_list_flex .fair_date strong {
    color: #998e77;
    display: inline-block;
    font-size: 12px;
    font-weight: bold;
    font-family: "游ゴシック体", "Yu Gothic", YuGothic, "メイリオ", "Meiryo","ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", sans-serif;
    margin-bottom: 5px;
}
@media screen and (min-width: 769px) {
    .fair_list_flex .fair_date strong {
        font-size: 14px;
    }
}


.ftMap {
    background: url(img/ft_map.jpg) center center no-repeat;
    height: 396px;
    background-size: cover;
    margin-top: 100px;
}
@media screen and (min-width: 769px) {
    .ftMap {
        margin-top: 100px;
    }
}

#page-218 .ftMap {
    margin-top: 0;
}

.ftMap .facility{
    padding: 96px 0 46px 45%;
    text-align: center;
}

.ftMap .facility h3 {
    color: #333;
    font-size: 40px;
    letter-spacing: 6px;
    font-family: 'Prata', serif;
    margin-bottom: 23px;
}

.ftMap .facility p{
    color: #391a02;
    line-height: 2;
}

.ftMap .facility .ftLink {
    margin-top: 45px;
}

.ftMap .facility .ftLink li{
    float: left;
    border: 1px solid #ab9e8c;
    margin-right: 5px;
    margin-bottom: 10px;
}

.ftMap .facility .ftLink li a{
    background-color: #fff;
    color: #391a02;
    display: block;
    padding: 14px 34px 14px 24px;
}

.ftMap .facility .ftLink li a:before{
    content: '';
    background: url(img/arrow02.png) left center no-repeat;
    width: 11px;
    height: 5px;
    display: inline-block;
    padding-right: 8px;
}

.linkArea{
    max-width: initial;
    width: 100%;
    margin: 0 auto;
}

@media screen and (min-width: 769px) {
    .linkArea ul {
        display: flex;
        justify-content: space-between;
    }
}

.linkArea ul li {
    overflow: hidden;
    position: relative;
    width: 33.3333%;
    line-height: 0 !important;
}

.linkArea a{
    display: block;
    width: 100%;
}

.linkArea a:hover{
    opacity: .9;
    -webkit-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
}

.linkArea a img{
    transform: scale(1);
    transition: all 0.3s ease-in-out 0s;
}

.linkArea a:hover img{
    transform: scale(1.1);
    transition: all 0.3s ease-in-out 0s;
}

.linkArea dl {
    box-sizing: border-box;
    color: #fff;
    border: 1px solid #fff;
    position: absolute;
    top: 50%;
    margin-top: -102px;
    margin-left: -102px;
    left: 50%;
    width: 205px;
    height: 205px;
    text-align: center;
}

.linkArea dl dt{
    font-size: 20px;
    margin-bottom: 20px;
    margin-top: 100px;
}

.linkArea dl dd{
    font-size: 12px;
}

@media screen and (max-width: 768px) {
    div.ftInr {
        margin:0 5%;
        width:auto;
    }

    .ftMap{
        height: 450px;
        background-size: cover;
    }

    #page-218 .ftMap {
        margin-top: 0;
    }

    .ftMap .facility{
        padding: 10% 0;
    }

    .ftMap .facility .ftLink li{
        width: 100%;
        margin-bottom: 2%;
    }

    .linkArea ul li{
        width: 100%;
    }

    .linkArea dl{
        width: 100%;
        height: auto;
        top: 0;
        left: 0;
        border: none;
        padding-top: 30%;
        margin: 0;
    }

    .linkArea dl dt{
        margin-top: 0;
    }
}



/*新規カレンダー*/
#calendar-event{
    padding-top: 2rem;
    position: relative;
}
.calendar_col #calendar-event .xo-months {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.calendar_col #calendar-event .xo-month-wrap{
    margin: 0 3%;
    width: 44%;
}
#calendar-event .xo-month-wrap{
    margin: 0 3%;
    width: 100%;
}
#calendar-event table.xo-month button{
    color:#767267 !important;
    font-family: "Yu Mincho Medium","Yu Mincho","ＭＳ 明朝",serif;
    font-size: 20px;
    float: inherit;
    height: auto;
    position: absolute;
    top: 0;
    width: auto !important;
    background-color: transparent;
    border: none;
    outline: none;
    padding: 0;
    appearance: none;
}
.month-prev{
    left: 0;
}
.month-next{
    right: 0;
}
#calendar-event table.xo-month,
.mycalendar table{
    width: 100%;
    border-collapse: collapse;
    line-height:1em;
}
#calendar-event table.xo-month{
    border: 0;
    position: inherit;
}
#calendar-event table.xo-month > thead th {
    background-color: #ccbd9f;
    border-right: #fff solid 1px;
    color: #FFFFFF;
    font-family: "Yu Mincho Medium","Yu Mincho","ＭＳ 明朝",serif;
    padding: 12px;
    font-weight: 100;
    width: 100%;
    float: none;
    margin: 0 auto 20px;
}
#calendar-event table td {
    border-top: 0;
    border-left: 0;
    border-right:0;
}
#calendar-event table td.on {
    cursor: pointer;
}
#calendar-event table.xo-month .month-header > span.calendar-caption {
    font-family: "Yu Mincho Medium","Yu Mincho","ＭＳ 明朝",serif;
}
#calendar-event table tr.dayname td > div {
    background-color: transparent;
    border-bottom: #dddddd solid 1px;
    color: #767267;
    padding: 12px;
    text-align: center;
}
#calendar-event  td div.today {
    background-color: transparent;
    color: #767267;
    font-weight: normal;
}
#calendar-event table tr.dayname td > div.holiday-holiday ,
#calendar-event table tr.dayname td > div.holiday-sunday{
    color: #e9aaaf;
}
#calendar-event table tr.dayname td > div.holiday-saturday {
    color: #6693c3;
}
#calendar-event table tr.dayname td > div.other-month{
    background-color: #f2f2f2 !important;
    color: transparent;
    opacity: 1;
}
#calendar-event .month-event-space,
.month-dayname-space,
.holiday-titles {
    display: none;
}
#calendar-event table.xo-month .month-dayname{
    position: relative !important;
    top: inherit !important;
    left: inherit !important;
    richness: inherit !important;
}
#calendar-event table.xo-month .month-dayname td div{
    height: auto !important;
}
#calendar-event table tr td.on:hover {
    cursor: pointer;
    background-color: #EDCEDD;
}
#calendar-event table tr.dayname td.off {
    background-color: #f2f2f2;
}
@media screen and (max-width: 768px) {
    .calendar_col #calendar-event .xo-month-wrap{
        width: 100%;
        margin: 0 auto 20px;
    }
    #calendar-event .xo-month-wrap{
        width: 100%;
        margin: 0 auto 20px;
    }
}

/*旧カレンダー*/
#form1{
    text-align: center;
}
.calendar_tablebox{
    margin: 0 3%;
    width: 44%;
    float: left;
}
.mycalendar table{
    width: 100%;
    border-collapse: collapse;
    line-height:1em;
}
@media screen and (max-width: 768px) {
    .mycalendar table {
    }
    .calendar_tablebox{
        width: 100%;
        float: none;
        margin: 0 auto 20px;
    }
}
.mycalendar table tr:first-child{
    font-family: 'ofl-sorts-mill-goudy',"Yu Mincho Medium","Yu Mincho","ＭＳ 明朝",serif;
    background: #fff;
    color: #767267;
}
.mycalendar table th{
    font-family: "Yu Mincho Medium","Yu Mincho","ＭＳ 明朝",serif;
    border-right: #fff solid 1px;
    background-color: #a40956;
    padding: 12px;
    color: #FFFFFF;
    font-weight: 100;
}
.mycalendar table th.table-month{
    background-color: #fff;
    color: #767267;
    font-size: 2em;
    padding: 10px;
}
.mycalendar table th.table-month span{
    font-size: .6em;
}
.mycalendar table td {
    border-bottom: #dddddd solid 1px;
    padding:12px;
    text-align: center;
    /* cursor: pointer; */
}
.mycalendar table td:hover {
    cursor: pointer;
    background-color: #EDCEDD;
}
.mycalendar table td:nth-child(6){
    color: #6693c3;
}
.mycalendar table td:nth-child(7){
    color: #e9aaaf;
}
#form1 input{
    background: #ccbd9f;
    border: none;
    color: #fff;
    font-weight: 100;
    padding: 10px 100px !important;
    cursor: pointer;
}
.mycalendar table td.holiday {
    color: #a40956;
}
.mycalendar .calendar_nav {
    display: contents;
    justify-content: space-between;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
.calendar_nav .next,
.calendar_nav .prev {
    font-family: "Yu Mincho Medium","Yu Mincho","ＭＳ 明朝",serif;
    font-size: 20px;
    font-weight: 100;
    color: #767267;
    cursor: pointer;
    width: 50%;
    float: left;
    text-align: left;
}

.calendar_nav .next{
    text-align: right;
}

.que {
    color: #a40a56;
    font-weight: bold;
}

.report_content_wrap .slick-dots {
    width: 100%;
    text-align: center;
    bottom: -185px;
}

.wpcf7c-conf {
    background: #fff!important;
}

.wpcf7c-elm-step2 {
    justify-content: center;
}

.concept_img_pc {
    display: none!important;
}
@media screen and (min-width: 769px) {
    .concept_img_pc {
        display: block!important;
    }
}

.concept_img_sp {
    display: flex;
    justify-content: space-between;
}
@media screen and (min-width: 769px) {
    .concept_img_sp {
        display: none;
    }
}

.concept_img_sp div:nth-child(1),
.concept_img_sp div:nth-child(2)  {
    background-size: cover;
    background-position: center;
    height: 130px;
}

.concept_img_sp div:nth-child(1) {
    width: 53%;
}

.concept_img_sp div:nth-child(2)  {
    width: 45%;
}

.concept_img_sp_reverse div:nth-child(1) {
    width: 45%;
}

.concept_img_sp_reverse div:nth-child(2)  {
    width: 53%;
}

div.wpcf7-response-output {
    margin: 2em!important;
    padding: 1em!important;
    color: #398f14!important;
    max-width: 720px;
    margin: 0 auto !important;
    display: none;
}

.wpcf7 form.sent .wpcf7-response-output {
    line-height: 1.5;
    font-weight: bold;
}

.agree .wpcf7-acceptance .wpcf7-list-item label {
    display: flex;
    align-items: center;
}

.wpcf7-list-item input[type=checkbox] {
    min-height: auto;
}

@media screen and (min-width: 769px) {
    .txt_center_pc {
        text-align: center;
    }
}

.btn_home {
    background-color: var(--btn-color);
    color: #fff;
    display: block;
    max-width: 300px;
    margin: 40px auto 0;
    padding: 10px 40px;
    font-size: 14px;
    font-family: 'ofl-sorts-mill-goudy',"Yu Mincho Medium","Yu Mincho","ＭＳ 明朝",serif;
    text-align: center;
}
@media screen and (min-width: 769px) {
    .btn_home {
        font-size: 16px;
        padding: 15px 40px;
    }
}

.announcement__wrap {
    max-width: 900px;
    margin: 20px auto 0;
    padding: 0 15px 0;
}
@media screen and (min-width: 769px) {
    .announcement__wrap {
        margin: 60px auto 0;
        padding: 0 15px 0;
    }
}

.announcement__link {
    display: block;
    margin-bottom: 10px;
    font-family: "Yu Mincho Medium","Yu Mincho","ＭＳ 明朝",serif;
}
@media screen and (min-width: 769px) {
    .announcement__link {
        font-size: 14px;
        margin-bottom: 15px;
    }
}

.announcement__list:first-child {
    padding-top: 30px;
}
@media screen and (min-width: 769px) {
    .announcement__list:first-child {
        border-top: 1px solid #c0b9a5;
    }
}

.announcement__list:last-child {
    padding-bottom: 15px;
}
@media screen and (min-width: 769px) {
    .announcement__list:last-child {
        border-bottom: 1px solid #c0b9a5;
    }
}

.announcement__date {
    display: block;
    margin-right: 10px;
    margin-bottom: 5px;
}
@media screen and (min-width: 769px) {
    .announcement__date {
        display: inline-block;
        margin-bottom: 0;
    }
}

#top_concept {
    padding-top: 10px;
}
@media screen and (min-width: 769px) {
    #top_concept {
        padding-top: 60px;
    }
}

/* ------------------------------------------------------------------------------
20200827追記
-------------------------------------------------------------------------------*/
.insta_more_link {
    background-image: none!important;
}
.insta_tit {
    margin-bottom: 50px;
    letter-spacing: 3px;
}
.main-slider {
    position: relative;
    width: 100%;
    min-height: 8vw;
    margin-bottom: 50px;
    opacity: 0;
    visibility: hidden;
    overflow:  hidden;
    transition: all 1.2s ease;
}
.main-not-slider img {
    width: 100%;
    height: 100%;
}
.main-slider.slick-initialized {
    opacity: 1;
    visibility: visible;
}
.slick-slide {
    position: relative;
    height: 100%;
}
.slick-slide video {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    transform: translate(-50%, -50%);
}
.slick-slide .slide-image {
    opacity: 0;
    height: 100%;
    background-size: cover;
    background-position: center;
    transition: all 0.8s ease;
}
.slick-slide .slide-image.show {
    opacity: 1;
}
.slick-slide .image-entity {
    width: 100%;
    opacity: 0;
    visibility: hidden;
}
.slick-slide .loading {
    position: absolute;
    top: 44%;
    left: 0;
    width: 100%;
}
.slick-slide.slick-active {
    z-index: 1;
}
.main-slider .slick-dots {
    width: 100%;
    text-align: center;
    padding-top: 15px;
    height: auto;
    bottom: 10px;
}
.main-slider .slick-dots li {
    display: inline-block;
    vertical-align: top;
    margin: 0 8px;
}
.main-slider .slick-dots li button {
    width: 16px;
    height: 16px;
    border: none;
    cursor: pointer;
    border-radius: 50%;
    border: 2px solid #c0b9a5;
    box-shadow: 0 0 0 0 transparent;
    vertical-align: middle;
    color: #fff;
    background-color: #c0b9a5;
    transition: all 0.3s ease;
    opacity: 0.6;
}
.main-slider .slick-dots li.slick-active button {
    border: 2px solid #c0b9a5;
    background-color: #c0b9a5;
    box-shadow: 0 0 0 0 transparent;
}
.main-slider .slick-dots li button::before {
    content: none;
}
.slick-dots li button:focus {
    outline: none;
}
.slick-dots li button:hover {
    opacity: 1;
}
.slick-dots li.slick-active button {
    border-color: #2d3042;
    box-shadow: 0 0 0 2px #fff;
    opacity: 1;
}

@-webkit-keyframes slideIn {
    from {
        filter: blur(15px);
    }
    to {
        filter: blur(0);
    }
}

@keyframes slideIn {
    from {
        filter: blur(15px);
    }
    to {
        filter: blur(0);
    }
}
@-webkit-keyframes slideOut {
    from {
        filter: blur(0);
    }
    to {
        filter: blur(15px);
    }
}
@keyframes slideOut {
    from {
        filter: blur(0);
    }
    to {
        filter: blur(15px);
    }
}
.video-background {
    position: relative;
    width: 100%;
    height: 100%;
    padding-bottom: 56.25%;
}
.video-foreground {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
}
.video-background iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}
/*@media (min-aspect-ratio: 16/9) {
.video-foreground { height: 300%; top: -100%; }
}
@media (max-aspect-ratio: 16/9) {
.video-foreground { width: 300%; left: -100%; }
}*/
.grecaptcha-badge {
    visibility: hidden;
}
.page-id-2332 .grecaptcha-badge,
.postid-95 .grecaptcha-badge,
.page-id-2328 .grecaptcha-badge,
.page-id-2330 .grecaptcha-badge {
    visibility: initial;
}
ul.list-cate-gallery {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-bottom: 30px;
}
ul.list-cate-gallery li {
    border: 1px solid #ab9e8c;
    margin-right: 5px;
    margin-bottom: 10px;
}
ul.list-cate-gallery li a {
    font-size: 16px;
    background-color: #fff;
    color: #391a02;
    display: block;
    padding: 14px 34px 14px 34px;
}
.masonry_1__item {
    width: calc( 100% / 3 - 1%);
    margin: .5%;
}
ul.list-cate-gallery li.active a {
    color: #fff;
    background-color: #ada79b;
}
.menu-header-pc-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    padding-left: 15px;
    padding-right: 15px;
    margin-bottom: 60px;
}
.menu-header-pc-top .right {
    margin-right: 50px;
}
.button_hamburgerMenu {
    cursor: pointer;
    width: 50px;
    height: 50px;
    border: 1px solid #876a33;
    border-radius: 999px;
    margin-top: 10px;
    margin-bottom: 10px;
    margin-right: 50px;
    display: block;
}
.menu-header-pc-top span.button-text {
    color: #fff;
    margin-top: 10px;
    display: block;
    font-size: 13px;
    margin-left: 2px;
}
.button_hamburgerMenu__lines {
    display: block;
    width: 30px;
    height: 14px;
    position: relative;
    margin: auto;
}
.button_hamburgerMenu__lines::before, .button_hamburgerMenu__lines::after {
    content: "";
    width: 100%;
    height: 1px;
    position: absolute;
    left: 0;
    right: 0;
    background-color: #876a33;
    margin: auto;
    -webkit-transition: top 150ms 120ms,bottom 150ms 120ms,-webkit-transform 150ms;
    transition: top 150ms 120ms,bottom 150ms 120ms,-webkit-transform 150ms;
    transition: transform 150ms,top 150ms 120ms,bottom 150ms 120ms;
    transition: transform 150ms,top 150ms 120ms,bottom 150ms 120ms,-webkit-transform 150ms;
}
.button_hamburgerMenu__lines::before {
    top: 0;
}
.button_hamburgerMenu__lines::after {
    bottom: 0;
}
body.menu-open .button_hamburgerMenu__lines::before {
    top: 6px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transition: top 150ms,bottom 150ms,-webkit-transform 150ms 120ms;
    transition: top 150ms,bottom 150ms,-webkit-transform 150ms 120ms;
    transition: transform 150ms 120ms,top 150ms,bottom 150ms;
    transition: transform 150ms 120ms,top 150ms,bottom 150ms,-webkit-transform 150ms 120ms;
}
body.menu-open .button_hamburgerMenu__lines::after {
    bottom: 6px;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    -webkit-transition: top 150ms,bottom 150ms,-webkit-transform 150ms 120ms;
    transition: top 150ms,bottom 150ms,-webkit-transform 150ms 120ms;
    transition: transform 150ms 120ms,top 150ms,bottom 150ms;
    transition: transform 150ms 120ms,top 150ms,bottom 150ms,-webkit-transform 150ms 120ms;
}
body.menu-open .button_hamburgerMenu {
    /*position: absolute;
    right: 10px;
    top: 40px;*/
    margin-right: 0px;
}
.button_hamburgerMenu__text {
    display: block;
    color: #876a33;
    font-size: 12px;
    line-height: 1;
    letter-spacing: .12em;
    margin-top: 5px;
}
.header_nav-pc.clonehtml {
    position: fixed;
    left: 0;
    top: -100%;
    visibility: hidden;
    opacity: 0;
    z-index: 9999;
    -webkit-transition: all .3s;
    transition: all .3s;
    width: 100%;
    height: auto;
    background-color: #b9b09d;
    padding-top: 15px;
    padding-bottom: 80px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
}
.clonehtml_nav {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    max-width: 700px;
    margin: 0 auto;
}
.clonehtml_nav ul {
    width: 42%;
}
.clonehtml_nav ul.third {
    width: 16%;
}
.clonehtml_nav ul li {
    text-align: left;
    margin-bottom: 10px;
}
.clonehtml_nav ul.list-galerry-cate {
    margin-left: 10px;
    width: 100%;
}
.clonehtml_nav ul.list-galerry-cate li a {
    text-transform: uppercase;
}
/*.clonehtml_nav ul.third li {
text-align: right;
}*/
.clonehtml_nav ul li a {
    font-size: 16px;
    line-height: 2;
    color: #fff;
    margin-bottom: 20px;
}
.clonehtml_nav ul li a.active {
    color: #6b675d;
}
ul.list-pc-menu-red {
    margin: 45px auto;
    display: flex;
    justify-content: space-between !important;
    justify-content: center;
    width: 100%;
    max-width: 900px;
}
ul.list-pc-menu-red li {
    width: 25%;
    margin-right: 20px;
}
ul.list-pc-menu-red li:last-child {
    margin-right: 0px;
}
ul.list-pc-menu-red li a {
    display: block;
    width: 100%;
    background-color: #b3336c;
    color: #fff;
    font-size: 16px;
    padding: 15px 30px;
    text-align: center;
}
.contact-div {
    display: flex;
    align-items: center;
    justify-content: center;
}
.contact-div-wrap {
    padding: 10px 30px;
    font-size: 16px;
    text-align: center;
}
.contact-div-wrap p,
.contact-div-wrap a {
    font-size: 16px;
    color: #736f66;
    line-height: initial;
    display: block;
    margin-bottom: 10px;
}
.contact-div-wrap p.hours_txt {
    font-size: 9px;
}
.row {
    width: 100%;
}
.main-slider .slick-track {
    display: flex;
}
.main-slider .slick-slide {
    height: inherit;
}
@media (max-width: 768px) {
    /*.main-slider {
    height: 220px;
}*/
}
@media (min-width: 769px) {
    .menu-open .header_nav-pc {
        left: 0;
        top: 0px;
        visibility: visible;
        opacity: 1;
    }
    .main-slider {
        height: 100%;
    }
    .main-slider .slick-dots {
        bottom: 25px;
    }
}
