@charset 'UTF-8';
/* CSS Document */
html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video
{
    font-size: 100%;

    margin: 0;
    padding: 0;

    vertical-align: baseline;

    border: 0;
    outline: 0;
    background: transparent;
}

body
{
    /*基本サイズ*/
    font-family: Arial, 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
    font-size: 12px;
    line-height: 1;

    word-wrap: break-word;
    word-break: normal;

    color: #5c5c5c; 
    background: url(../img/bg.jpg) repeat left top;
    background-attachment: fixed;

    -webkit-text-size-adjust: 100%;
}

@media screen and (max-width: 767px)
{
    body
    {
        height: auto !important;

        background: url(../img/bg.jpg) repeat left top;
        background-size: 505 50%;
    }
}

/* for IE6 */
* html body,
*:first-child + html body
{
    font-size: 75%;
    /*12px */
}

/* for IE7 */
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary
{
    display: block;
}

ul,
ol
{
    list-style: none;
}

blockquote,
q
{
    quotes: none;
}

blockquote:before,
blockquote:after
{
    content: '';
    content: none;
}

q:before,
q:after
{
    content: '';
    content: none;
}

ins
{
    text-decoration: none; 

    color: #000;
    background-color: #ff9;
}

mark
{
    font-weight: bold; 
    font-style: italic;

    color: #000;
    background-color: #ff9;
}

del
{
    text-decoration: line-through;
}

abbr[title],
dfn[title]
{
    cursor: help; 

    border-bottom: 1px dotted #000;
}

table
{
    border-spacing: 0; 
    border-collapse: collapse;
}

hr
{
    display: block;

    height: 1px;
    margin: 1em 0;
    padding: 0; 

    border: 0;
    border-top: 1px solid #ccc;
}

input,
select
{
    vertical-align: middle;
}

img
{
    font-size: 0;
    line-height: 0; 

    vertical-align: top;
}

@media screen and (max-width: 767px)
{
    img
    {
        max-width: 100%;
        height: auto;
    }
}

p
{
    font-size: 100%;
    line-height: 1.8;

    margin: 0;
    padding: 0;

    vertical-align: baseline;
    word-wrap: break-word; 
    word-break: normal;

    border: 0;
    outline: 0;
    background-color: transparent;
}

a
{
    font-size: 100%;

    margin: 0;
    padding: 0;

    vertical-align: baseline;
    text-decoration: none;

    color: #3388c9;
    border: 0; 
    background: transparent;
}

a:hover
{
         opacity: .75; 

    filter: alpha(opacity=75);
    -moz-opacity: .75;
}

textarea
{
    resize: vertical;
}

/* clearfix */
.clearfix:after
{
    font-size: .1em;
    line-height: 0; 

    display: block;
    visibility: hidden;
    clear: both;

    height: .1px;

    content: ' ';
}

/* 中央寄せ */
.ctr
{
    text-align: center;
}

@media screen and (min-width: 768px)
{
    .sp
    {
        display: none !important;
    }
}

@media screen and (max-width: 767px)
{
    .pc
    {
        display: none !important;
    }
}

@media screen and (max-width: 767px)
{
    *
    {
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
    }
}

/*==================================

　■お知らせカテゴリー

 *==================================*/
.cat-news
{
    background: #3188c9;
}

.cat-report
{
    background: #706f6f;
}

/*==================================

　■イベント情報カテゴリー

 *==================================*/
.th-tokai::after
{
    background: #4c616f;
}

.th-oobu::after
{
    background: #1b4f2d;
}

.th-higashiura::after
{
    background: #662554;
}

.th-chita::after
{
    background: #741d31;
}

.th-tokoname::after
{
    background: #7d592d;
}

.th-agui::after
{
    background: #76774e;
}

.th-handa::after
{
    background: #5c5d5d;
}

.th-taketoyo::after
{
    background: #552e1b;
}

.th-mihama::after
{
    background: #1c6659;
}

.th-minamichita::after
{
    background: #425378;
}

.area-list-item .cat-tokai
{
    border-color: #4c616f;
    background-color: #fff;
}

.area-list-item .cat-oobu
{
    border-color: #1b4f2d;
    background-color: #fff;
}

.area-list-item .cat-higashiura
{
    border-color: #662554;
    background-color: #fff;
}

.area-list-item .cat-chita
{
    border-color: #741d31;
    background-color: #fff;
}

.area-list-item .cat-tokoname
{
    border-color: #7d592d;
    background-color: #fff;
}

.area-list-item .cat-agui
{
    border-color: #76774e;
    background-color: #fff;
}

.area-list-item .cat-handa
{
    border-color: #5c5d5d;
    background-color: #fff;
}

.area-list-item .cat-taketoyo
{
    border-color: #552e1b;
    background-color: #fff;
}

.area-list-item .cat-mihama
{
    border-color: #1c6659;
    background-color: #fff;
}

.area-list-item .cat-minamichita
{
    border-color: #425378;
    background-color: #fff;
}

.cat-tokai
{
    background: #4c616f;
}

.cat-oobu
{
    background: #1b4f2d;
}

.cat-higashiura
{
    background: #662554;
}

.cat-chita
{
    background: #741d31;
}

.cat-tokoname
{
    background: #7d592d;
}

.cat-agui
{
    background: #76774e;
}

.cat-handa
{
    background: #5c5d5d;
}

.cat-taketoyo
{
    background: #552e1b;
}

.cat-mihama
{
    background: #1c6659;
}

.cat-minamichita
{
    background: #425378;
}

/* 各地で開催 */
.th-various::after,
.l-container .cat-various,
.entries .cat-various
{
    background: #1c2566;
}

.experienceCard-tag.cat-various
{
    background: #393839;
}

.area-list-item .cat-various
{
    border-color: #1c2566;
}

/* 終了したイベント */
.l-container .entries-end,
.entries .entries-end
{
    background: #aaa;
}

.matsuri-tokai
{
    background: #4c616f;
}

.matsuri-oobu
{
    background: #1b4f2d;
}

.matsuri-higashiura
{
    background: #662554;
}

.matsuri-chita
{
    background: #741d31;
}

.matsuri-tokoname
{
    background: #7d592d;
}

.matsuri-agui
{
    background: #76774e;
}

.matsuri-handa
{
    background: #5c5d5d;
}

.matsuri-taketoyo
{
    background: #552e1b;
}

.matsuri-mihama
{
    background: #1c6659;
}

.matsuri-minamichita
{
    background: #425378;
}

#main_contents_wrap header
{
    width: 100%;
    height: 75px;

    background: #fff;
}

#wrapper
{
    overflow: hidden;
}

@media screen and (max-width: 767px)
{
    #wrapper
    {
        width: 100%;
        padding: 60px 0 0;
    }
}

@media screen and (min-width: 768px)
{
    #wrapper
    {
        position: relative;

        width: 100%;
        min-width: 1200px;
        padding-top: 124px;
    }
}

@media screen and (min-width: 768px)
{
    .inner
    {
        width: 1000px;
        margin: 0 auto;
    }
}

@media screen and (max-width: 767px)
{
    #pagetop
    {
        display: none;
    }
}

@media screen and (min-width: 768px)
{
    #pagetop
    {
        position: fixed;
        z-index: 10000; 
        right: 0;
        bottom: 20%;

        width: 50px;
        height: 100px;
    }
}

table
{
    border: 1px solid #ccc;
}

table th
{
    width: 150px;
    padding: 15px 0 15px 50px;

    text-align: left;
    vertical-align: middle;

    color: #5c5d5d;
    border: 1px solid #ccc; 
    background: #e5e3cf;
}

table td
{
    padding: 15px;

    border: 1px solid #ccc; 
    background: #fff;
}

@media screen and (min-width: 768px)
{
    .fixed-nav
    {
        position: fixed;
        z-index: 10000;
        top: 50%;
        right: 0;

        width: 59px;
        height: 337px;

        -webkit-transform: translateY(-50%);

                transform: translateY(-50%); 

        border: 1px solid #5c5d5d;
        border-right: none;
    }
}

@media screen and (min-width: 768px)
{
    .fixed-nav-item a
    {
        display: block;

        -webkit-transition: .2s;

        transition: .2s; 
        text-indent: -99999px;
    }
}

@media screen and (min-width: 768px)
{
    .fixed-nav-link-cal
    {
        width: 59px;
        height: 139px;

        border-bottom: 1px solid #fff;
        background: url(../img/flexed_nav_01.jpg) no-repeat center center;
        background-size: 59px 139px;
    }
}

@media screen and (min-width: 768px)
{
    .fixed-nav-link-cal:hover
    {
        opacity: 1; 
        border-bottom: 1px solid #5c5d5d;
        background: url(../img/flexed_nav_01_on.jpg) no-repeat center center;
        background-size: 59px 139px;
    }
}

@media screen and (min-width: 768px)
{
    .fixed-nav-link-access
    {
        width: 59px;
        height: 138px;

        border-bottom: 1px solid #fff;
        background: url(../img/flexed_nav_02.jpg) no-repeat center center;
        background-size: 59px 138px;
    }
}

@media screen and (min-width: 768px)
{
    .fixed-nav-link-access:hover
    {
        opacity: 1; 
        border-bottom: 1px solid #5c5d5d;
        background: url(../img/flexed_nav_02_on.jpg) no-repeat center center;
        background-size: 59px 138px;
    }
}

@media screen and (min-width: 768px)
{
    .fixed-nav-link-top
    {
        width: 59px;
        height: 58px;

        background: url(../img/flexed_nav_03.jpg) no-repeat center center;
        background-size: 59px 58px;
    }
}

#global-header
{
    position: fixed;
    top: 0;
    left: 0;

    width: 100%;

    background: #fff;
}

@media screen and (max-width: 767px)
{
    #global-header
    {
        z-index: 98; 

        height: 60px;
    }
}

@media screen and (min-width: 768px)
{
    #global-header
    {
        z-index: 1000; 

        min-width: 1200px;
    }
}

@media screen and (min-width: 768px)
{
    #global-header .global-header-wrap
    {
        position: relative;

        display: -webkit-box;

        display: -ms-flexbox;

        display: flex;

        width: 100%;
        height: 100px;
        padding-top: 24px; 

        -webkit-box-align: center; 

            -ms-flex-align: center; 

                align-items: center;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
    }
}

#global-header h1
{
    display: inline-block;
}

@media screen and (max-width: 767px)
{
    #global-header h1
    {
        width: 90px;
        height: 45px; 
        padding: 12px 0 0 10px;
    }
}

@media screen and (min-width: 768px)
{
    #global-header h1
    {
        width: 143px; 
        margin-left: 30px;
    }
}

@media screen and (min-width: 768px)
{
    #global-header nav
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        margin-right: 10px; 

        -webkit-box-align: center; 

            -ms-flex-align: center; 

                align-items: center;
    }
}

#global-menu
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

@media screen and (max-width: 767px)
{
    #global-menu
    {
        margin-bottom: 20px; 

        -ms-flex-wrap: wrap; 

            flex-wrap: wrap;
    }
}

@media screen and (min-width: 768px)
{
    #global-menu
    {
        -webkit-box-flex: 1;
            -ms-flex: 1;
                flex: 1;
    }
}

@media screen and (min-width: 768px) and (max-width: 1279px)
{
    #global-menu
    {
        width: 900px;
    }
}

@media screen and (max-width: 767px)
{
    #global-menu li
    {
        width: 50%;

        text-align: center;
        vertical-align: middle;
    }
}

@media screen and (min-width: 768px)
{
    #global-menu li
    {
        position: relative;

        padding-right: 1px;
    }
}

@media screen and (min-width: 768px)
{
    #global-menu li:first-child::before
    {
        position: absolute;
        top: 50%;
        left: 0;

        width: 1px;
        height: 30px;
        margin-top: -15px;

        content: '';

        background: #d5d2d0;
    }
}

@media screen and (min-width: 768px)
{
    #global-menu li::after
    {
        position: absolute;
        top: 50%;
        right: 0;

        width: 1px;
        height: 30px;
        margin-top: -15px;

        content: '';

        background: #d5d2d0;
    }
}

@media screen and (max-width: 767px)
{
    #global-menu a
    {
        line-height: 65px; 

        display: block;

        height: 65px;
    }
}

@media screen and (max-width: 767px)
{
    #global-menu a img
    {
        vertical-align: middle;
    }
}

@media screen and (min-width: 768px) and (max-width: 1279px)
{
    #global-menu a img
    {
        width: 100%;
        height: auto;
    }
}

@media screen and (max-width: 767px)
{
    #global-navigation
    {
        position: fixed;
        z-index: 99;
        top: 0;
        left: 0;

        display: table;
        visibility: hidden;

        width: 100%;
        height: 100%;
        padding-top: 60px; 

        -webkit-transition: all .5s; 

        transition: all .5s;

        opacity: 0;
        background: rgba(255, 255, 255, .9);
    }
}

@media screen and (max-width: 767px)
{
    #global-navigation a
    {
        display: block;

        padding: 10px;
    }
}

@media screen and (max-width: 767px)
{
    .side-open #global-navigation
    {
        visibility: visible;

        -webkit-transition: all .5s;

        transition: all .5s;

        opacity: 1;
    }
}

.language
{
    position: fixed;
    z-index: 10001; 

    width: 100%;
}

@media screen and (max-width: 767px)
{
    .language
    {
        top: 60px;
    }
}

@media screen and (min-width: 768px)
{
    .language
    {
        top: 0;
        left: 0;
    }
}

.language.is-open__body
{
    display: block;
}

.language.is-open .languageButton
{
    color: #fff;
}

@media screen and (max-width: 767px)
{
    .language.is-open .languageButton
    {
        border-left: none;
        background-color: #eee;
    }
}

@media screen and (min-width: 768px)
{
    .language.is-open .languageButton__arrow
    {
        -webkit-transform: rotate(-180deg) translateY(20%);
                transform: rotate(-180deg) translateY(20%);
    }
}

.language__body
{
    display: none;

    color: #fff;
}

@media screen and (max-width: 767px)
{
    .language__body
    {
        background-color: rgba(92, 93, 93, .95);
    }
}

@media screen and (min-width: 768px)
{
    .language__body
    {
        padding: 40px 0;

        background-color: #4d4d4d;
    }
}

@media screen and (max-width: 767px)
{
    .language__inner
    {
        width: 100%;
        padding: 20px;
    }
}

@media screen and (min-width: 768px)
{
    .language__inner
    {
        width: 780px;
        margin: 0 auto;
    }
}

.language__button
{
    z-index: 3;
}

@media screen and (max-width: 767px)
{
    .language__button
    {
        position: fixed;
        top: 0;
        right: 66px;

        width: 60px;
        height: 60px;
    }
}

@media screen and (min-width: 768px)
{
    .language__button
    {
        position: absolute;
        right: 20px;

        width: 124px;
        height: 36px;
    }
}

.languageButton
{
    position: relative;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    padding: 0;

    cursor: pointer;
    text-align: center;
    text-decoration: none;

    color: #5c5d5d;
    border: none;
    border-radius: 0;
    outline: none;

    -webkit-appearance: none;

       -moz-appearance: none;

            appearance: none;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

@media screen and (max-width: 767px)
{
    .languageButton
    {
        width: 60px;
        height: 60px;

        border-right: 1px solid #eee;
        border-left: 1px solid #eee;
        background: #fff; 

        -webkit-box-pack: center; 

            -ms-flex-pack: center; 

                justify-content: center;
    }
}

@media screen and (min-width: 768px)
{
    .languageButton
    {
        width: 124px;
        height: 36px;
        padding: 0 9px;

        background-color: #fff;
    }
}

.languageButton__icon
{
    display: block;
}

@media screen and (max-width: 767px)
{
    .languageButton__icon
    {
        width: 28px;
        height: 28px;
    }
}

@media screen and (min-width: 768px)
{
    .languageButton__icon
    {
        width: 21px;
        height: 21px;
        margin-right: 8px;
    }
}

.languageButton__icon img
{
    width: 100%;
    height: auto;
}

@media screen and (max-width: 767px)
{
    .languageButton__title
    {
        display: none;
    }
}

@media screen and (min-width: 768px)
{
    .languageButton__title
    {
        font-family: serif;
        font-size: 92%;

        text-align: left; 
        letter-spacing: normal;

        color: #5f5f5f;

        -webkit-box-flex: 1;

            -ms-flex: 1;

                flex: 1;
    }
}

@media screen and (max-width: 767px)
{
    .languageButton__arrow
    {
        display: none;
    }
}

@media screen and (min-width: 768px)
{
    .languageButton__arrow
    {
        position: absolute;
        position: absolute;
        top: 50%;
        right: 14px;

        display: inline-block;

        width: 6px;
        height: 6px;

        -webkit-transform: translateY(-40%);

                transform: translateY(-40%);
    }
}

.languageButton__arrow img
{
    width: 100%;
    height: auto;
}

@media screen and (max-width: 767px)
{
    .menu-trigger
    {
        position: relative;

        display: inline-block;

        -webkit-box-sizing: border-box;

                box-sizing: border-box; 
        width: 26px;
        height: 20px;

        -webkit-transition: all .4s;

        transition: all .4s;
    }
}

@media screen and (max-width: 767px)
{
    .menu-trigger span
    {
        position: absolute;
        left: 0;

        display: inline-block;

        -webkit-box-sizing: border-box;

                box-sizing: border-box;
        width: 100%;
        height: 2px;

        -webkit-transition: all .4s;

        transition: all .4s;

        border-radius: 4px; 
        background-color: #666;
    }
}

@media screen and (max-width: 767px)
{
    .menu-trigger span:nth-of-type(1)
    {
        top: 0;
    }
}

@media screen and (max-width: 767px)
{
    .menu-trigger span:nth-of-type(2)
    {
        top: 9px;
    }
}

@media screen and (max-width: 767px)
{
    .menu-trigger span:nth-of-type(3)
    {
        bottom: 0;
    }
}

@media screen and (max-width: 767px)
{
    .menu-trigger.active span:nth-of-type(1)
    {
        -webkit-transform: translateY(9px) rotate(-45deg);
                transform: translateY(9px) rotate(-45deg);
    }
}

@media screen and (max-width: 767px)
{
    .menu-trigger.active span:nth-of-type(2)
    {
        opacity: 0;
    }
}

@media screen and (max-width: 767px)
{
    .menu-trigger.active span:nth-of-type(3)
    {
        -webkit-transform: translateY(-9px) rotate(45deg);
                transform: translateY(-9px) rotate(45deg);
    }
}

.navigation-sns
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

@media screen and (max-width: 767px)
{
    .navigation-sns
    {
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
    }
}

@media screen and (min-width: 768px)
{
    .navigation-sns
    {
        padding-left: 20px;
    }
}

@media screen and (max-width: 767px)
{
    .navigation-sns li
    {
        margin: 0 20px;
    }
}

@media screen and (min-width: 768px)
{
    .navigation-sns li
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: center;
                flex-direction: center; 

        height: 50px;
        margin: 0 10px;
        padding: 0;

        -webkit-box-align: center;

            -ms-flex-align: center;

                align-items: center;
    }
}

@media screen and (max-width: 767px)
{
    #sp-menu-btn
    {
        font-size: 12px;
        line-height: 26px;

        position: absolute;
        z-index: 100; 
        top: 20px;
        right: 20px;

        width: 26px;
        height: 20px;

        cursor: pointer;
        text-align: center;
    }
}

@media screen and (min-width: 768px)
{
    #sp-menu-btn
    {
        display: none;
    }
}

@media screen and (min-width: 768px)
{
    .translation
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        padding: 20px 25px;

        border: 1px solid #fff; 

        -webkit-box-align: center; 

            -ms-flex-align: center; 

                align-items: center;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
    }
}

.translation__heading
{
    letter-spacing: .05em;
}

@media screen and (max-width: 767px)
{
    .translation__heading
    {
        line-height: 1.6;
    }
}

.translation__en
{
    font-weight: 600;
}

@media screen and (max-width: 767px)
{
    .translation__en
    {
        font-size: 117%; 

        margin-top: 5px;
    }
}

@media screen and (min-width: 768px)
{
    .translation__en
    {
        font-size: 133%; 

        margin-bottom: 8px;
    }
}

@media screen and (max-width: 767px)
{
    .translation__jp
    {
        font-size: 100%;
    }
}

@media screen and (min-width: 768px)
{
    .translation__jp
    {
        font-size: 92%;
    }
}

@media screen and (max-width: 767px)
{
    .translation__translate
    {
        margin-top: 10px;

        text-align: center;
    }
}

@media screen and (min-width: 768px)
{
    .translation__translate
    {
        width: 200px;
    }
}

.translation__translate .goog-te-gadget,
.translation__translate .goog-logo-link
{
    color: #fff !important;
}

.translation__translate .goog-te-combo
{
    position: relative;

    width: 100%;
    margin: 0 0 5px !important;
    padding: 0 1em;

    border: 1px solid #dcdcdc;
    border-radius: 0;
    background: #fff; 

    -webkit-appearance: none; 

       -moz-appearance: none; 

            appearance: none;
}

@media screen and (max-width: 767px)
{
    .translation__translate .goog-te-combo
    {
        font-size: 108%; 

        height: 44px;
    }
}

@media screen and (min-width: 768px)
{
    .translation__translate .goog-te-combo
    {
        font-size: 108%; 

        height: 34px;
        margin: 0 0 5px !important;
    }
}

.translation__translate .goog-te-combo::-ms-expand
{
    display: none;
}

.translation__translate .goog-te-combo:hover
{
    cursor: pointer;
}

.banner-film-link
{
    display: block;
}

@media screen and (max-width: 767px)
{
    .banner-film-link
    {
        width: 86%;
        margin: 0 auto 60px;
    }
}

@media screen and (min-width: 768px)
{
    .banner-film-link
    {
        width: 860px; 
        margin: 0 auto;
        margin-bottom: 115px;
    }
}

.banner-film-link img
{
    width: 100%;
    height: auto;
}

.index-experience
{
    background: url(../img/experience_bg_01.jpg) repeat;
}

@media screen and (max-width: 767px)
{
    .index-experience
    {
        margin-bottom: 40px;
    }
}

@media screen and (min-width: 768px)
{
    .index-experience
    {
        margin-bottom: 120px;
    }
}

.index-experience-heading
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

@media screen and (max-width: 767px)
{
    .index-experience-heading
    {
        padding: 50px 0;

        background: url(../img/experience_bg_02_sp.png) no-repeat center center;
        background-size: 375px 117px;
    }
}

@media screen and (min-width: 768px)
{
    .index-experience-heading
    {
        padding-top: 75px;
        padding-bottom: 60px;

        background: url(../img/experience_bg_02.png) no-repeat center 80px;
    }
}

@media screen and (max-width: 767px)
{
    .index-experience-title
    {
        width: 180px;
    }
}

@media screen and (max-width: 767px)
{
    .index-experience-inner
    {
        padding: 0 3%;
    }
}

@media screen and (min-width: 768px)
{
    .index-experience-inner
    {
        width: 1000px;
        margin: 0 auto;
    }
}

.index-experience-footer
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

@media screen and (max-width: 767px)
{
    .index-experience-footer
    {
        padding: 40px 0;
    }
}

@media screen and (min-width: 768px)
{
    .index-experience-footer
    {
        padding-top: 85px;
        padding-bottom: 80px;

        background: url(../img/experience_bg_03.png) no-repeat center 65px;
    }
}

.instagram
{
    background-image: url(../img/bg_05.jpg);
    background-repeat: repeat;
}

@media screen and (max-width: 767px)
{
    .instagram
    {
        padding: 50px 0 60px;
    }
}

@media screen and (min-width: 768px)
{
    .instagram
    {
        padding: 65px 0 75px;
    }
}

.instagram-inner
{
    position: relative;

    text-align: center;
}

@media screen and (max-width: 767px)
{
    .instagram-inner
    {
        padding: 0 3%;
    }
}

@media screen and (min-width: 768px)
{
    .instagram-inner
    {
        width: 1000px;
        margin: 0 auto;
    }
}

@media screen and (max-width: 767px)
{
    .instagram-title
    {
        margin-bottom: 20px;
    }
}

@media screen and (min-width: 768px)
{
    .instagram-title
    {
        margin-bottom: 50px;
    }
}

@media screen and (max-width: 767px)
{
    .instagram-title img
    {
        width: auto;
        height: 60px;
    }
}

@media screen and (min-width: 768px)
{
    .instagram-label
    {
        position: absolute;
        top: 0;
        right: 0;

        display: inline-block;
    }
}

@media screen and (max-width: 767px)
{
    .instagram-label img
    {
        width: auto;
        height: 30px;
    }
}

@media screen and (max-width: 767px)
{
    .instagram-btn
    {
        display: inline-block;
    }
}

@media screen and (max-width: 767px)
{
    .instagram-btn img
    {
        width: auto;
        height: 30px;
    }
}

.instagram-footer
{
    text-align: center;
}

@media screen and (max-width: 767px)
{
    .instagram-footer
    {
        margin-top: 30px;
    }
}

@media screen and (min-width: 768px)
{
    .instagram-footer
    {
        margin-top: 60px;
    }
}

@media screen and (max-width: 767px)
{
    .topBanners
    {
        width: 86%;
        margin: 0 auto 60px;
    }
}

@media screen and (min-width: 768px)
{
    .topBanners
    {
        width: 860px;
        margin: 0 auto 115px;
    }
}

@media screen and (max-width: 767px)
{
    .topBanners-item
    {
        margin-top: 20px;
    }
}

@media screen and (min-width: 768px)
{
    .topBanners-item
    {
        margin-top: 20px;
    }
}

.topBanners-item:first-child
{
    margin-top: 0;
}

.topBanners-link
{
    display: block;
}

.topBanners-link img
{
    width: 100%;
    height: auto;
}

@media screen and (max-width: 767px)
{
    #main-visual-wrap
    {
        margin-bottom: 3%;
    }
}

@media screen and (min-width: 768px)
{
    #main-visual-wrap
    {
        margin-bottom: 40px;
    }
}

#main-visual
{
    position: relative;

    width: 100%;

    background: #5c5d5d;
}

@media screen and (min-width: 768px)
{
    #main-visual
    {
        height: 100%;
    }
}

#main-visual:after
{
    position: absolute;
    z-index: 90;
    bottom: 0;

    display: block;

    width: 100%;
    margin-bottom: -1px; 

    content: '';

    background: url(../img/slider_frame.png) repeat-x center bottom;
}

@media screen and (max-width: 767px)
{
    #main-visual:after
    {
        height: 11px;

        background-size: cover;
    }
}

@media screen and (min-width: 768px)
{
    #main-visual:after
    {
        height: 22px;
    }
}

#main-visual #logo
{
    position: absolute;
    z-index: 90; 
    top: 50%;
    left: 50%;
}

@media screen and (max-width: 767px)
{
    #main-visual #logo
    {
        width: 56%;
        height: auto; 
        margin-top: -15%;
        margin-left: -28%;
    }
}

@media screen and (min-width: 768px)
{
    #main-visual #logo
    {
        width: 366px;
        height: 186px;
        margin-top: -120px;
        margin-left: -183px;
    }
}

#btn-jyunkei
{
    position: absolute;
    z-index: 90;
    right: 5%; 

    display: block;
}

@media screen and (max-width: 767px)
{
    #btn-jyunkei
    {
        bottom: 15%;

        width: 20%;
        height: 20%;
    }
}

@media screen and (min-width: 768px)
{
    #btn-jyunkei
    {
        bottom: 5%;

        width: 149px;
        height: 149px;
    }
}

.index-container
{
    position: relative;

    margin: 0 auto;

    text-align: center;
}

@media screen and (min-width: 768px)
{
    .index-container
    {
        width: 1000px;
    }
}

@media screen and (min-width: 768px)
{
    #scroll
    {
        position: absolute;
        bottom: 35px;
        left: 50%;

        width: 48px;
        height: 48px;
        margin-left: -24px;
    }
}

@media screen and (max-width: 767px)
{
    #anchor
    {
        position: absolute;
        top: 0; 

        display: block;
    }
}

#vol-toggle
{
    position: absolute;
    top: 10px;
    right: 10px;

    display: none;

    width: 25px;
    height: 20px;

    border: none;
    border-radius: 0;
    outline: none; 

    -webkit-appearance: none; 

       -moz-appearance: none; 

            appearance: none;
}

.vol-on
{
    background: url(../img/volume_btn_on.png) no-repeat left top;
}

.vol-off
{
    background: url(../img/volume_btn_off.png) no-repeat left top;
}

#loding
{
    position: absolute;
    left: 50%; 

    display: block;
}

@media screen and (max-width: 767px)
{
    #loding
    {
        bottom: 20px;

        width: 30px;
        height: 30px;
        margin-left: -15px;
    }
}

@media screen and (min-width: 768px)
{
    #loding
    {
        bottom: 45px;

        width: 50px;
        height: 50px;
        margin-left: -25px;
    }
}

#main-slider
{
    width: 100%;
}

@media screen and (max-width: 767px)
{
    #slide-00
    {
        background: url(../img/sp_tabichita0.jpg) no-repeat center center;
    }
}

@media screen and (min-width: 768px)
{
    #slide-00
    {
        background: url(../img/tabichita0.jpg) no-repeat center center;
    }
}

@media screen and (max-width: 767px)
{
    #slide-01
    {
        background: url(../img/sp_tabichita1.jpg) no-repeat center center;
    }
}

@media screen and (min-width: 768px)
{
    #slide-01
    {
        background: url(../img/tabichita1.jpg) no-repeat center center;
    }
}

@media screen and (max-width: 767px)
{
    #slide-02
    {
        background: url(../img/sp_tabichita2.jpg) no-repeat center center;
    }
}

@media screen and (min-width: 768px)
{
    #slide-02
    {
        background: url(../img/tabichita2.jpg) no-repeat center center;
    }
}

@media screen and (max-width: 767px)
{
    #slide-03
    {
        background: url(../img/sp_tabichita3.jpg) no-repeat center center;
    }
}

@media screen and (min-width: 768px)
{
    #slide-03
    {
        background: url(../img/tabichita3.jpg) no-repeat center center;
    }
}

@media screen and (max-width: 767px)
{
    #slide-04
    {
        background: url(../img/sp_tabichita4.jpg) no-repeat center center;
    }
}

@media screen and (min-width: 768px)
{
    #slide-04
    {
        background: url(../img/tabichita4.jpg) no-repeat center center;
    }
}

@media screen and (max-width: 767px)
{
    #slide-05
    {
        background: url(../img/sp_tabichita5.jpg) no-repeat center center;
    }
}

@media screen and (min-width: 768px)
{
    #slide-05
    {
        background: url(../img/tabichita5.jpg) no-repeat center center;
    }
}

@media screen and (max-width: 767px)
{
    #slide-06
    {
        background: url(../img/sp_tabichita6.jpg) no-repeat center center;
    }
}

@media screen and (min-width: 768px)
{
    #slide-06
    {
        background: url(../img/tabichita6.jpg) no-repeat center center;
    }
}

@media screen and (max-width: 767px)
{
    #slide-07
    {
        background: url(../img/sp_tabichita7.jpg) no-repeat center center;
    }
}

@media screen and (min-width: 768px)
{
    #slide-07
    {
        background: url(../img/tabichita7.jpg) no-repeat center center;
    }
}

@media screen and (max-width: 767px)
{
    #slide-08
    {
        background: url(../img/sp_tabichita8.jpg) no-repeat center center;
    }
}

@media screen and (min-width: 768px)
{
    #slide-08
    {
        background: url(../img/tabichita8.jpg) no-repeat center center;
    }
}

#main-slider li
{
    background-size: cover;
}

.video-list-01
{
    width: 100%;
}

@media screen and (min-width: 768px)
{
    .video-list-01
    {
        padding: 2px 0 0;
    }
}

.video-list-01 li
{
    position: relative;
}

@media screen and (max-width: 767px)
{
    .video-list-01 li
    {
        width: 100%;
        margin-bottom: .2%;
    }
}

@media screen and (min-width: 768px)
{
    .video-list-01 li
    {
        float: left;

        width: 49.9%;
        margin-right: .2%;
        margin-bottom: 2px;
    }
}

@media screen and (min-width: 768px)
{
    .video-list-01 li:nth-child(2n)
    {
        margin-right: 0;
    }
}

.video-list-01 li:hover
{
    opacity: 1;
}

.video-list-01 li:hover .overlay
{
    opacity: 1;
}

.video-list-02
{
    width: 100%;
}

.video-list-02 li
{
    position: relative;

    width: 100%;
}

@media screen and (max-width: 767px)
{
    .video-list-02 li
    {
        margin-bottom: .2%;
    }
}

.video-list-02 li:hover
{
    opacity: 1;
}

.video-list-02 li:hover .overlay
{
    opacity: 1;
}

@media screen and (min-width: 768px)
{
    .video-list-02 .overlay
    {
        padding: 30px 50px;
    }
}

@media screen and (min-width: 768px)
{
    .video-list-02 .video-caption
    {
        max-width: 600px;
        margin: 20px auto;
    }
}

.base
{
    position: relative;

    display: block;
    overflow: hidden; 

    width: 100%;

    text-decoration: none;

    color: #fff;
}

@media screen and (max-width: 767px)
{
    .base
    {
        min-height: 250px;
    }
}

@media screen and (min-width: 768px)
{
    .base
    {
        height: 450px;
    }
}

@media screen and (max-width: 767px)
{
    .video-caption
    {
        margin: 0 auto;
    }
}

@media screen and (min-width: 768px)
{
    .video-caption
    {
        max-width: 400px;
        margin: 100px auto;
    }
}

.overlay
{
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;

    -webkit-box-sizing: border-box;

            box-sizing: border-box; 
    width: 100%;
    height: 100%;

    -webkit-transition: .5s;

    transition: .5s;

    opacity: 0;
    color: #fff;
    background: url(../img/black80.png);
    background: rgba(0, 0, 0, .8);
}

@media screen and (max-width: 767px)
{
    .overlay
    {
        padding: 6%;
    }
}

@media screen and (min-width: 768px)
{
    .overlay
    {
        padding: 50px;
    }
}

.overlay p
{
    line-height: 2;

    margin-bottom: 30px; 

    letter-spacing: .2em;
}

@media screen and (max-width: 767px)
{
    .overlay p
    {
        font-size: 12px;
    }
}

@media screen and (min-width: 768px)
{
    .overlay p
    {
        font-size: 117%;
    }
}

.overlay a
{
    display: block;

    margin: 0 auto;
}

@media screen and (min-width: 768px)
{
    .overlay a
    {
        width: 221px;
    }
}

.overlay .video-btn
{
    display: block;

    margin: 0 auto;

    -webkit-transition: background .3s ease-out;

    transition: background .3s ease-out; 
    text-align: center;
    letter-spacing: .2em;

    color: #fff;
    border: 2px solid #fff;
}

@media screen and (max-width: 767px)
{
    .overlay .video-btn
    {
        font-size: 14px; 

        width: 60%;
        padding: 2% 0;
    }
}

@media screen and (min-width: 768px)
{
    .overlay .video-btn
    {
        font-size: 117%;
        line-height: 28px; 

        width: 216px;
        height: 28px;
    }
}

.overlay .video-btn:hover
{
    color: #000;
    background: #fff;
}

.overlay a:hover
{
    opacity: 1;
}

#video-01
{
    background: url(../img/video_thum_01.jpg) no-repeat center center;
    background-size: cover;
}

#video-01 .base p
{
    position: absolute;
    top: 50%;
    left: 50%;
}

@media screen and (max-width: 767px)
{
    #video-01 .base p
    {
        width: 300px;
        height: 90px;
        margin-top: -45px; 
        margin-left: -150px;
    }
}

@media screen and (min-width: 768px)
{
    #video-01 .base p
    {
        width: 420px;
        height: 126px;
        margin-top: -63px; 
        margin-left: -210px;
    }
}

#video-02
{
    background: url(../img/tour_bg_01.jpg) no-repeat center center;
    background-size: cover;
}

#video-02 .base p
{
    position: absolute;
    top: 50%;
    left: 50%;
}

@media screen and (max-width: 767px)
{
    #video-02 .base p
    {
        width: 300px;
        height: 136px;
        margin-top: -68px; 
        margin-left: -150px;
    }
}

@media screen and (min-width: 768px)
{
    #video-02 .base p
    {
        width: 432px;
        height: 205px;
        margin-top: -102px;
        margin-left: -216px;
    }
}

#video-03
{
    background: url(../img/video_thum_03.jpg) no-repeat center center;
    background-size: cover;
}

#video-03 .base p
{
    position: absolute;
    top: 50%;
    left: 50%;
}

@media screen and (max-width: 767px)
{
    #video-03 .base p
    {
        width: 160px;
        height: 112px;
        margin-top: -56px;
        margin-left: -80px;
    }
}

@media screen and (min-width: 768px)
{
    #video-03 .base p
    {
        width: 218px;
        height: 153px;
        margin-top: -76px;
        margin-left: -109px;
    }
}

#video-04
{
    background: url(../img/video_thum_04.jpg) no-repeat center center;
    background-size: cover;
}

#video-04 .base p
{
    position: absolute;
    top: 50%;
    left: 50%;
}

@media screen and (max-width: 767px)
{
    #video-04 .base p
    {
        width: 150px;
        height: 191px;
        margin-top: -95px;
        margin-left: -75px;
    }
}

@media screen and (min-width: 768px)
{
    #video-04 .base p
    {
        width: 202px;
        height: 259px;
        margin-top: -110px;
        margin-left: -101px;
    }
}

#video-05
{
    background: url(../img/calendar_head2.jpg) no-repeat center center;
    background-size: cover;
}

@media screen and (max-width: 767px)
{
    #video-05 .base
    {
        height: 250px;
    }
}

#video-05 .base p
{
    position: absolute;
    top: 50%;
    left: 50%;
}

@media screen and (max-width: 767px)
{
    #video-05 .base p
    {
        width: 300px;
        height: 89px;
        margin-top: -45px;
        margin-left: -150px;
    }
}

@media screen and (min-width: 768px)
{
    #video-05 .base p
    {
        width: 574px;
        height: 169px;
        margin-top: -85px;
        margin-left: -287px;
    }
}

.copy
{
    text-align: center;
}

@media screen and (max-width: 767px)
{
    .copy
    {
        width: 80%;
        max-width: 320px;
        margin: 0 auto; 
        padding: 40px 0 60px;
    }
}

@media screen and (min-width: 768px)
{
    .copy
    {
        padding: 60px 0 115px;
    }
}

.btn-01
{
    font-weight: bold;

    display: block;

    margin: 0 auto;

    -webkit-transition: .3s;

    transition: .3s; 
    text-align: center;

    color: #5c5d5d;
    border: 1px solid #5c5d5d;
}

@media screen and (max-width: 767px)
{
    .btn-01
    {
        font-size: 14px;
        line-height: 38px; 

        width: 100%;
        height: 40px;
    }
}

@media screen and (min-width: 768px)
{
    .btn-01
    {
        font-size: 150%;
        line-height: 58px; 

        width: 278px;
        height: 58px;
    }
}

.btn-01:hover
{
    opacity: 1;
    color: #fff;
    background: #5c5d5d;
}

.pickup
{
    display: none;
    overflow: hidden; 

    width: 100%;
}

@media screen and (max-width: 767px)
{
    .pickup
    {
        margin: 30px auto;
    }
}

@media screen and (min-width: 768px)
{
    .pickup
    {
        margin: 70px auto 80px;
    }
}

.pickup.slick-initialized
{
    display: block;
}

@media screen and (max-width: 767px)
{
    .pickup-item
    {
        height: 200px; 
        margin: 0 8px;
    }
}

@media screen and (min-width: 768px)
{
    .pickup-item
    {
        margin: 0 20px;
    }
}

.pickup-item a
{
    position: relative;

    display: block;
}

.pickup-item a:hover
{
    opacity: .8;
}

@media screen and (max-width: 767px)
{
    .pickup-item img
    {
        width: auto;
        height: 200px;
    }
}

.pickup-blank::after
{
    position: absolute;
    top: 10px;
    right: 10px;

    display: inline-block;

    width: 11px;
    height: 9px;

    content: '';

    background: url(../img/icon_blank_03.svg) no-repeat left top;
}

.pickup .slick-arrow
{
    position: absolute;
    z-index: 3;
    top: 50%;

    display: block;
    overflow: hidden; 

    -webkit-box-sizing: border-box; 

            box-sizing: border-box;
    margin: 0;
    padding: 0;

    content: '';
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    white-space: nowrap;
    text-indent: 100%;

    border: none;
    background-color: rgba(255, 255, 255, .85);
    background-repeat: no-repeat;
    background-position: center center;

    -webkit-appearance: none;

       -moz-appearance: none;

            appearance: none;
}

@media screen and (max-width: 767px)
{
    .pickup .slick-arrow
    {
        width: 24px;
        height: 48px;

        background-size: 12px 15px;
    }
}

@media screen and (min-width: 768px)
{
    .pickup .slick-arrow
    {
        width: 30px;
        height: 60px;

        background-size: 16px 20px;
    }
}

.pickup .slick-arrow:hover
{
    opacity: .8;
}

.pickup .slick-next
{
    right: 0;

    background-image: url(../img/common_arrow_next_01.svg);
}

.pickup .slick-prev
{
    left: 0;

    background-image: url(../img/common_arrow_prev_01.svg);
}

@media screen and (min-width: 768px)
{
    .contents-list
    {
        width: 100%;
        padding: 2px 0;
    }
}

@media screen and (min-width: 768px)
{
    .contents-list li
    {
        position: relative;

        float: left;

        width: 49.9%;
        margin-right: .2%;
    }
}

@media screen and (min-width: 768px)
{
    .contents-list li:nth-child(2n)
    {
        margin-right: 0;
    }
}

@media screen and (min-width: 768px)
{
    .contents-list li a
    {
        position: relative;

        display: block;

        width: 100%;
        height: 450px;
    }
}

@media screen and (min-width: 768px)
{
    .contents-list-ttl,
    .contents-list-cap
    {
        position: absolute;
    }
}

@media screen and (min-width: 768px)
{
    #contents-chita
    {
        background: url(../img/index_contents_01.jpg) no-repeat center center;
        background-size: cover;
    }
}

@media screen and (min-width: 768px)
{
    #contents-chita .contents-list-ttl
    {
        top: 50%;
        left: 50%;

        width: 198px;
        height: 116px;
        margin-top: -58px;
        margin-left: -99px;
    }
}

@media screen and (min-width: 768px)
{
    #contents-jyunkei
    {
        background: url(../img/index_contents_02.jpg) no-repeat center center;
        background-size: cover;
    }
}

@media screen and (min-width: 768px)
{
    #contents-jyunkei .contents-list-ttl
    {
        top: 50%;
        left: 50%;

        width: 202px;
        height: 176px;
        margin-top: -100px;
        margin-left: -101px;
    }
}

@media screen and (min-width: 768px)
{
    #contents-jyunkei .contents-list-cap
    {
        bottom: 80px;
        left: 50%;

        width: 169px;
        height: 13px;
        margin-left: -85px;
    }
}

.index-ttl-01
{
    text-align: center;
}

@media screen and (max-width: 767px)
{
    .index-ttl-01
    {
        width: 180px;
        margin: 0 auto 40px;
    }
}

@media screen and (min-width: 768px)
{
    .index-ttl-01
    {
        margin-bottom: 58px;
    }
}

@media screen and (max-width: 767px)
{
    #index-event
    {
        margin-bottom: 60px; 
        padding-top: 15px;
    }
}

@media screen and (min-width: 768px)
{
    #index-event
    {
        margin-bottom: 115px;
    }
}

@media screen and (max-width: 767px)
{
    #index-event .btn-01
    {
        width: 94%;
        margin-top: 30px;
    }
}

#index-info
{
    position: relative;
}

@media screen and (max-width: 767px)
{
    #index-info
    {
        width: 100%;
        margin: 0 auto 60px;
    }
}

@media screen and (min-width: 768px)
{
    #index-info
    {
        width: 778px;
        margin: 0 auto 80px;
        padding: 30px 40px 5px;

        border: 1px dotted #5c5d5d;
    }
}

@media screen and (max-width: 767px)
{
    #index-info .index-ttl-01
    {
        margin-bottom: 40px;
    }
}

@media screen and (min-width: 768px)
{
    #index-info .index-ttl-01
    {
        margin-bottom: 45px;
    }
}

.index-info-link
{
    color: #5c5d5d;
}

@media screen and (max-width: 767px)
{
    .index-info-link
    {
        font-size: 14px;
        font-weight: bold;
        line-height: 38px;

        display: block;

        width: 94%;
        height: 40px;
        margin: 30px auto 0;

        -webkit-transition: .3s;

        transition: .3s; 
        text-align: center;

        border: 1px solid #5c5d5d;
    }
}

@media screen and (min-width: 768px)
{
    .index-info-link
    {
        font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
        font-size: 125%;

        position: absolute;
        top: 54px;
        right: 41px;

        display: inline-block;

        letter-spacing: .2em;
    }
}

@media screen and (max-width: 767px)
{
    .index-info-link:hover
    {
        opacity: 1;
        color: #fff;
        background: #5c5d5d;
    }
}

@media screen and (max-width: 767px)
{
    .archive-list
    {
        padding: 0 3%;
    }
}

@media screen and (max-width: 767px)
{
    .archive-list li
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        margin: 0 0 15px;
        padding: 0 0 15px;

        border-bottom: 1px dashed #ddd;
    }
}

@media screen and (min-width: 768px)
{
    .archive-list li
    {
        float: left;

        width: 360px;
        margin-right: 56px;
        margin-bottom: 40px;
    }
}

@media screen and (min-width: 768px)
{
    .archive-list li:nth-child(2n)
    {
        margin-right: 0;
    }
}

@media screen and (max-width: 767px)
{
    .archive-list li:last-child
    {
        margin: 0;
        padding: 0;

        border-bottom: none;
    }
}

.archive-list li a
{
    text-decoration: none; 

    color: #5c5c5c;
}

@media screen and (max-width: 767px)
{
    .archive-list li a
    {
        display: block;
    }
}

@media screen and (max-width: 767px)
{
    .info-text
    {
        padding-left: 20px;

        text-align: left; 

        -webkit-box-flex: 1; 

            -ms-flex: 1; 

                flex: 1;
    }
}

@media screen and (min-width: 768px)
{
    .info-text
    {
        float: right;

        width: 230px;

        text-align: left;
    }
}

.archive-list .info-meta
{
    line-height: 16px;
}

@media screen and (max-width: 767px)
{
    .archive-list .info-meta
    {
        margin-bottom: 10px;
    }
}

@media screen and (min-width: 768px)
{
    .archive-list .info-meta
    {
        margin-bottom: 8px;
    }
}

.archive-list .info-meta time
{
    line-height: 16px; 

    display: inline-block;

    height: 16px;
}

@media screen and (max-width: 767px)
{
    .archive-list .info-meta time
    {
        font-size: 11px;
        font-weight: normal;
    }
}

@media screen and (min-width: 768px)
{
    .archive-list .info-meta time
    {
        font-weight: bolder;
    }
}

.archive-list .info-tag
{
    font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif; 
    line-height: 16px;

    display: inline-block;

    margin-right: 10px;

    text-align: center;

    color: #fff;
}

@media screen and (max-width: 767px)
{
    .archive-list .info-tag
    {
        font-size: 10px;

        letter-spacing: .1em;
    }
}

@media screen and (min-width: 768px)
{
    .archive-list .info-tag
    {
        font-size: 84%;

        letter-spacing: .2em;
    }
}

.archive-list .info-tag a
{
    font-weight: normal; 

    display: block;

    color: #fff;
}

@media screen and (max-width: 767px)
{
    .archive-list .info-tag a
    {
        width: 70px;
        height: 16px;
    }
}

@media screen and (min-width: 768px)
{
    .archive-list .info-tag a
    {
        width: 80px;
        height: 16px;
    }
}

@media screen and (max-width: 767px)
{
    .info-ttl
    {
        font-size: 14px;
        font-weight: bolder;
        line-height: 1.5; 

        margin-bottom: 10px;
    }
}

@media screen and (min-width: 768px)
{
    .info-ttl
    {
        font-weight: bolder;
        line-height: 1.2;

        overflow: hidden;

        margin-bottom: 25px;

        white-space: nowrap;
        text-decoration: underline;
        text-overflow: ellipsis;
    }
}

@media screen and (max-width: 767px)
{
    .info-text p
    {
        font-size: 12px;
        line-height: 1.8;
    }
}

@media screen and (min-width: 768px)
{
    .info-text p
    {
        line-height: 1.5;
    }
}

@media screen and (max-width: 767px)
{
    .info-thum
    {
        display: block;

        width: 100px;
    }
}

@media screen and (min-width: 768px)
{
    .info-thum
    {
        float: left;

        width: 120px;
        height: 120px;

        background: #000;
    }
}

@media screen and (min-width: 768px)
{
    .info-thum img
    {
        -webkit-box-sizing: content-box;
                box-sizing: content-box;

        border: 2px solid #aaaaa9;
    }
}

@media screen and (max-width: 767px)
{
    .info-thum a
    {
        display: block;

        border: 1px solid #aaaaa9;
    }
}

.banner
{
    background: url(../img/banner_bg.png) repeat left top;
}

@media screen and (max-width: 767px)
{
    .banner
    {
        margin: 0 auto 10%;
        padding: 4% 2% 0;
    }
}

@media screen and (min-width: 768px)
{
    .banner
    {
        width: 860px;
        margin: 0 auto 45px;
        padding: 10px 70px;
    }
}

.banner li
{
    float: left;
}

@media screen and (max-width: 767px)
{
    .banner li
    {
        width: 48%;
        margin: 0 0 4%;
    }
}

@media screen and (min-width: 768px)
{
    .banner li
    {
        width: 200px;
        margin-right: 20px;
    }
}

@media screen and (min-width: 768px)
{
    .banner li:last-child
    {
        margin-right: 0;
    }
}

@media screen and (max-width: 767px)
{
    .banner li img
    {
        width: 100%;
    }
}

@media screen and (max-width: 767px)
{
    .banner li:nth-child(odd)
    {
        margin-right: 4%;
    }
}

.bg--wonderland
{
    background: url(../img/bg_07.jpg) repeat;
}

@media screen and (max-width: 767px)
{
    .breadcrumbs
    {
        font-size: 12px; 

        margin-bottom: 20px;
        padding: 15px 3%;
    }
}

@media screen and (min-width: 768px)
{
    .breadcrumbs
    {
        font-size: 109%; 

        margin-bottom: 80px;
        padding: 18px 0;
    }
}

.breadcrumbs--mb0
{
    margin-bottom: 0;
}

.breadcrumbs ul li
{
    display: inline-block;

    color: #5c5d5d;
}

.breadcrumbs ul li::before
{
    content: '　>　';
}

.breadcrumbs ul li:first-child::before
{
    content: '';
}

.breadcrumbs ul li a
{
    line-height: 1;

    text-decoration: none; 

    color: #5c5d5d;
}

.breadcrumbs ul li a:hover
{
    text-decoration: underline;
}

.carouselSlider
{
    width: 100%;
}

@media screen and (max-width: 767px)
{
    .carouselSlider
    {
        padding-bottom: 16px;
    }
}

@media screen and (min-width: 768px)
{
    .carouselSlider
    {
        padding-bottom: 32px;
    }
}

@media screen and (max-width: 767px)
{
    .carouselSlider__slide
    {
        border-top: 4px solid #fff;
        border-right: 2px solid #fff;
        border-bottom: 4px solid #fff;
        border-left: 2px solid #fff;
    }
}

@media screen and (min-width: 768px)
{
    .carouselSlider__slide
    {
        border-top: 8px solid #fff;
        border-right: 4px solid #fff;
        border-bottom: 8px solid #fff;
        border-left: 4px solid #fff;
    }
}

.carouselSlider__slide img
{
    width: 100%;
    height: auto;
}

.carouselSlider .swiper-pagination
{
    top: auto;
    bottom: 0;
}

.carouselSlider .swiper-pagination-bullet
{
    opacity: 1; 
    background: #606060;
}

@media screen and (max-width: 767px)
{
    .carouselSlider .swiper-pagination-bullet
    {
        width: 5px;
        height: 5px;
        margin: 0 5px !important;
    }
}

@media screen and (min-width: 768px)
{
    .carouselSlider .swiper-pagination-bullet
    {
        width: 10px;
        height: 10px;
        margin: 0 10px !important;
    }
}

.carouselSlider .swiper-pagination-bullet.swiper-pagination-bullet-active
{
    background: #a3a65d;
}

@media screen and (max-width: 767px)
{
    #info-wrapper
    {
        width: 100%;
        margin: 0 auto;
        padding: 0 5%;
    }
}

@media screen and (min-width: 768px)
{
    #info-wrapper
    {
        width: 960px;
        margin: 0 auto;
        padding: 80px 30px 0;
    }
}

@media screen and (max-width: 767px)
{
    #info-main
    {
        width: 100%;
    }
}

@media screen and (min-width: 768px)
{
    #info-main
    {
        float: left;

        width: 610px;
    }
}

@media screen and (max-width: 767px)
{
    #info-sub
    {
        width: 100%;
    }
}

@media screen and (min-width: 768px)
{
    #info-sub
    {
        float: right;

        width: 260px;
    }
}

#info-sub .module
{
    margin-bottom: 40px;
}

#info-sub .module h2
{
    font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif; 
    font-size: 150%;
    font-weight: bolder;

    margin: 0 0 10px;
    padding: 0 0 10px;
}

.info-list-01,
.info-list-02
{
    font-size: 117%;
}

.info-list-01 a,
.info-list-02 a
{
    color: #5c5c5c;
}

.info-list-01 a:hover,
.info-list-02 a:hover
{
    text-decoration: underline;
}

.info-list-01 li,
.info-list-02 li
{
    line-height: 2;

    margin: 0 0 10px;
    padding: 0 0 10px;

    border-bottom: 1px dotted #ccc;
}

@media screen and (max-width: 767px)
{
    #info-page-head
    {
        height: 94px;
        padding: 30px 0;
    }
}

@media screen and (min-width: 768px)
{
    #info-page-head
    {
        margin-bottom: 45px;
        padding: 0 0 40px;
    }
}

@media screen and (max-width: 767px)
{
    #info-page-head h1
    {
        width: 83.5px;
        height: 35px;
        margin: 0 auto;
    }
}

@media screen and (min-width: 768px)
{
    #info-page-head h1
    {
        width: 220px;
    }
}

#info-page-head ul li a
{
    color: #5c5c5c;
}

#info-page-head ul li:first-child
{
    padding-left: 0;

    background: none;
}

.info-article
{
    background: url(../img/news_line.gif) no-repeat left top;
}

@media screen and (max-width: 767px)
{
    .info-article
    {
        margin: 0 0 90px;
        padding: 20px 0 0; 

        background-size: 50%;
    }
}

@media screen and (min-width: 768px)
{
    .info-article
    {
        margin: 0 0 90px;
        padding: 40px 0 0;
    }
}

@media screen and (max-width: 767px)
{
    .info-article h1
    {
        font-family: 'Times New Roman', '游明朝', YuMincho, 'Hiragino Mincho ProN', Meiryo, serif;
        font-size: 134%;
        font-weight: bolder;
        line-height: 1.5;

        margin-bottom: 10px;

        letter-spacing: .1em;

        color: #5c5c5c;
    }
}

@media screen and (min-width: 768px)
{
    .info-article h1
    {
        font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
        font-size: 159%;
        font-weight: bolder;
        line-height: 1.5;

        margin-bottom: 15px;

        letter-spacing: .1em;

        color: #5c5c5c;
    }
}

.info-article h1 a
{
    text-decoration: none;

    color: #5c5c5c;
}

@media screen and (max-width: 767px)
{
    .info-article h1 time
    {
        font-size: 125%;
        font-weight: bolder;
    }
}

@media screen and (max-width: 767px)
{
    .info-article h1 .info-head
    {
        line-height: 20px; 

        height: 20px;
        margin-bottom: 25px;
        padding-left: 112px;
    }
}

.info-article .info-meta
{
    line-height: 20px; 

    margin-bottom: 25px;
}

.info-article .info-meta time
{
    font-size: 125%;
    font-weight: bolder;

    letter-spacing: .1em;
}

@media screen and (max-width: 767px)
{
    .info-article .info-tag
    {
        font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
        font-size: 11px;
        line-height: 20px;

        display: inline-block;

        margin-right: 15px;

        text-align: center; 
        letter-spacing: .2em;

        color: #fff;
    }
}

@media screen and (min-width: 768px)
{
    .info-article .info-tag
    {
        font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
        font-size: 109%;
        line-height: 20px;

        display: inline-block;

        margin-right: 18px;

        text-align: center; 
        letter-spacing: .2em;

        color: #fff;
    }
}

@media screen and (max-width: 767px)
{
    .info-article .info-tag a
    {
        font-weight: normal; 

        display: block;

        width: 80px;
        height: 20px;

        color: #fff;
    }
}

@media screen and (min-width: 768px)
{
    .info-article .info-tag a
    {
        font-weight: normal; 

        display: block;

        width: 100px;
        height: 20px;

        color: #fff;
    }
}

@media screen and (max-width: 767px)
{
    .info-body img
    {
        margin-bottom: 10px;
    }
}

@media screen and (min-width: 768px)
{
    .info-body img
    {
        margin-bottom: 30px;
    }
}

@media screen and (max-width: 767px)
{
    .info-body p
    {
        font-size: 14px;
        line-height: 2;

        margin-bottom: 20px;
    }
}

@media screen and (min-width: 768px)
{
    .info-body p
    {
        font-size: 125%;
        line-height: 2;

        margin-bottom: 20px;
    }
}

.pagination
{
    font-weight: bold;
    line-height: 1; 

    display: -webkit-box; 

    display: -ms-flexbox; 

    display: flex;

    -webkit-box-pack: center;

        -ms-flex-pack: center;

            justify-content: center;
}

@media screen and (min-width: 768px)
{
    .pagination
    {
        font-size: 20px;

        width: 1000px;
        margin-right: auto;
        margin-left: auto;
        padding: 60px 0;
    }
}

.pagination a
{
    color: #5c5d5d;
}

.pagination__col--first
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 25%;

    letter-spacing: .04em; 

    -webkit-box-pack: end; 

        -ms-flex-pack: end; 

            justify-content: flex-end;
}

.pagination__col--last
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 25%;

    letter-spacing: .04em; 

    -webkit-box-pack: start; 

        -ms-flex-pack: start; 

            justify-content: flex-start;
}

.pagination__col--pager
{
    width: 50%;
}

.pagination__list
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-pack: center;

        -ms-flex-pack: center;

            justify-content: center;
}

.pagination__nav
{
    position: relative;

    display: inline-block;
}

@media screen and (min-width: 768px)
{
    .pagination__nav--first
    {
        padding-left: 24px;
    }
}

.pagination__nav--first::before
{
    position: absolute;
    top: 50%;
    left: 0;

    display: inline-block;

    content: '';
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);

    background: url(../img/pager_first.svg);
}

@media screen and (min-width: 768px)
{
    .pagination__nav--first::before
    {
        width: 12px;
        height: 15px;
    }
}

@media screen and (min-width: 768px)
{
    .pagination__nav--last
    {
        padding-right: 24px;
    }
}

.pagination__nav--last::before
{
    position: absolute;
    top: 50%;
    right: 0;

    display: inline-block;

    content: '';
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);

    background: url(../img/pager_last.svg);
}

@media screen and (min-width: 768px)
{
    .pagination__nav--last::before
    {
        width: 12px;
        height: 15px;
    }
}

@media screen and (min-width: 768px)
{
    .pagination__item
    {
        margin: 0 10px;
    }
}

.pagination__link
{
    position: relative;
}

.pagination__link.is-current::after
{
    position: absolute;
    bottom: -2px;
    left: 50%;

    display: inline-block;

    width: 200%;
    height: 2px;

    content: ''; 
    -webkit-transform: translateX(-50%); 
            transform: translateX(-50%);

    background-color: #5c5d5d;
}

.pagination__link--prev
{
    display: inline-block;
}

@media screen and (min-width: 768px)
{
    .pagination__link--prev
    {
        margin-right: 40px; 
        padding-left: 15px;
    }
}

.pagination__link--prev::before
{
    position: absolute;
    top: 50%;
    left: 0;

    display: inline-block;

    content: '';
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);

    background: url(../img/pager_prev.svg);
}

@media screen and (min-width: 768px)
{
    .pagination__link--prev::before
    {
        width: 5px;
        height: 15px;
    }
}

.pagination__link--next
{
    display: inline-block;
}

@media screen and (min-width: 768px)
{
    .pagination__link--next
    {
        margin-left: 40px; 
        padding-right: 15px;
    }
}

.pagination__link--next::before
{
    position: absolute;
    top: 50%;
    right: 0;

    display: inline-block;

    content: '';
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);

    background: url(../img/pager_next.svg);
}

@media screen and (min-width: 768px)
{
    .pagination__link--next::before
    {
        width: 5px;
        height: 15px;
    }
}

@media screen and (max-width: 767px)
{
    .thumbSlider
    {
        width: 300px;
    }
}

@media screen and (min-width: 768px)
{
    .thumbSlider
    {
        width: 600px;
    }
}

.thumbSlider--rev .thumbSlider__sub .swiper-wrapper
{
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
}

.thumbSlider__main
{
    overflow: hidden;
}

@media screen and (min-width: 768px)
{
    .thumbSlider__main
    {
        width: 100%;
    }
}

@media screen and (max-width: 767px)
{
    .thumbSlider__slide
    {
        width: 300px;
    }
}

.thumbSlider__sub
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

@media screen and (max-width: 767px)
{
    .thumbSlider__sub
    {
        margin-top: 10px;
    }
}

@media screen and (min-width: 768px)
{
    .thumbSlider__sub
    {
        width: 100%;
        margin-top: 22px;
        padding: 0 24px;
    }
}

@media screen and (min-width: 768px)
{
    .thumbSlider__sub--rev .swiper-wrapper
    {
        -webkit-box-pack: end;
            -ms-flex-pack: end;
                justify-content: flex-end;
    }
}

.thumbSlider__sub .swiper-slide
{
    -webkit-transition: opacity 1s ease-in-out;
    transition: opacity 1s ease-in-out; 

    opacity: 1;
}

.thumbSlider__sub .swiper-slide-thumb-active
{
    position: relative;
}

.thumbSlider__sub .swiper-slide-thumb-active::after
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    content: '';

    background: rgba(57, 56, 57, .5);
}

@media screen and (min-width: 768px)
{
    .thumbSlider__sub:hover
    {
        cursor: pointer;
    }
}

@media screen and (max-width: 767px)
{
    .thumbSlider__thumb
    {
        width: 60px !important;
        margin-right: 10px;
    }
}

@media screen and (min-width: 768px)
{
    .thumbSlider__thumb
    {
        width: 120px !important;
        margin-right: 24px;
    }
}

.thumbSlider__thumb:last-child
{
    margin-right: 0;
}

.p-functions
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;
}

@media screen and (max-width: 767px)
{
    .p-functions
    {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;

        margin-top: 6.67vw;
    }
}

@media screen and (min-width: 768px)
{
    .p-functions
    {
        position: absolute;
        top: 14px;
        right: 0;

        margin-right: 20px;
    }
}

@media screen and (max-width: 767px)
{
    .p-languages
    {
        margin-bottom: 4vw; 

        color: #5f5f5f;
    }
}

@media screen and (min-width: 768px)
{
    .p-languages
    {
        margin-right: 140px; 

        color: #5f5f5f;
    }
}

@media screen and (max-width: 767px)
{
    .p-languages__list
    {
        font-size: 117%; 

        display: grid;

        grid-template-columns: 1fr 1fr;
        gap: 2.26667vw;
        row-gap: 4vw;
    }
}

@media screen and (min-width: 768px)
{
    .p-languages__list
    {
        font-size: 117%; 

        display: -webkit-box; 

        display: -ms-flexbox; 

        display: flex;

        -webkit-box-align: center;

            -ms-flex-align: center;

                align-items: center;
    }
}

.p-languages__item
{
    position: relative;
}

@media screen and (min-width: 768px)
{
    .p-languages__item
    {
        margin-right: 11px;
    }
}

@media screen and (max-width: 767px)
{
    .p-languages__item:nth-child(odd)
    {
        text-align: right;
    }
}

@media screen and (max-width: 767px)
{
    .p-languages__item:nth-child(odd)::after
    {
        position: absolute;
        top: 50%;
        right: 0;

        display: block;

        width: 7px;
        height: 13px;

        content: '';
        -webkit-transform: translate(150%, -50%);
                transform: translate(150%, -50%);

        background: url('data:image/svg+xml;utf8,<svg width="7" height="13" viewBox="0 0 7 13" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1 12.065L6 1.065" stroke="%235F5F5F"/></svg>') no-repeat center center;
    }
}

@media screen and (max-width: 767px)
{
    .p-languages__item:nth-child(even)
    {
        text-align: left;
    }
}

@media screen and (min-width: 768px)
{
    .p-languages__item::after
    {
        position: absolute;
        top: 50%;
        right: 0;

        display: block;

        width: 7px;
        height: 13px;

        content: '';
        -webkit-transform: translate(100%, -50%);
                transform: translate(100%, -50%);

        background: url('data:image/svg+xml;utf8,<svg width="7" height="13" viewBox="0 0 7 13" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1 12.065L6 1.065" stroke="%235F5F5F"/></svg>') no-repeat center center;
    }
}

@media screen and (min-width: 768px)
{
    .p-languages__item:last-child::after
    {
        display: none;
    }
}

@media screen and (max-width: 767px)
{
    .p-languages__link
    {
        color: #5f5f5f;
    }
}

@media screen and (min-width: 768px)
{
    .p-languages__link
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        padding: 0 20px; 

        color: #5f5f5f;

        -webkit-box-align: center;

            -ms-flex-align: center;

                align-items: center;
    }
}

.p-languages__link.is-active
{
    font-weight: bold; 

    text-decoration: underline;
}

@media screen and (max-width: 767px)
{
    .p-languages__link.is-active
    {
        color: #cbcbb7;
    }
}

@media screen and (max-width: 767px)
{
    .p-languages__pdf
    {
        margin-left: .53vw;

        -webkit-transform: translateY(.26667vw);

                transform: translateY(.26667vw);
    }
}

@media screen and (min-width: 768px)
{
    .p-languages__pdf
    {
        margin-left: 5px;
    }
}

.loading
{
    position: fixed;
    z-index: 100001; 
    left: 0;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    width: 100%;

    background-color: #5c5e5e;

    -webkit-box-pack: center;

        -ms-flex-pack: center;

            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

@media screen and (max-width: 767px)
{
    .loading
    {
        top: 60px;

        height: calc(100% - 60px);
    }
}

@media screen and (min-width: 768px)
{
    .loading
    {
        top: 124px;

        height: calc(100% - 124px);
    }
}

.categories
{
    font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
    font-weight: normal;
}

@media screen and (max-width: 767px)
{
    .categories
    {
        font-size: 15px;
    }
}

@media screen and (min-width: 768px)
{
    .categories
    {
        font-size: 117%;
    }
}

@media screen and (max-width: 767px)
{
    .categories-list
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        padding: 0 3%;

        -ms-flex-wrap: wrap;

            flex-wrap: wrap;
    }
}

@media screen and (min-width: 768px)
{
    .categories-list
    {
        padding-left: 20px;
    }
}

@media screen and (max-width: 767px)
{
    .categories-item
    {
        width: 50%;
        margin-top: 20px; 
        padding-right: 1em;
    }
}

@media screen and (min-width: 768px)
{
    .categories-item
    {
        margin-top: 20px;
    }
}

@media screen and (max-width: 767px)
{
    .categories-item:nth-child(-n+2)
    {
        margin-top: 0;
    }
}

@media screen and (min-width: 768px)
{
    .categories-item:first-child
    {
        margin-top: 0;
    }
}

.categories-link
{
    text-decoration: none; 

    color: #5c5d5d;
}

@media screen and (max-width: 767px)
{
    .entries
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}

.entries-link
{
    display: block;
}

@media screen and (max-width: 767px)
{
    .entries-link
    {
        width: 120px;

        color: #fff;
    }
}

@media screen and (min-width: 768px)
{
    .entries-link
    {
        color: #fff;
    }
}

@media screen and (min-width: 768px)
{
    .entries-thumb
    {
        position: relative;

        width: 230px;
        height: 290px;
    }
}

@media screen and (max-width: 767px)
{
    .entries-thumb figcaption
    {
        display: none;
    }
}

@media screen and (min-width: 768px)
{
    .entries-thumb figcaption
    {
        position: absolute;
        z-index: 2;
        top: 0;

        -webkit-box-sizing: border-box;

                box-sizing: border-box;
        width: 230px;
        height: 290px;
        padding: 20px 20px 0;

        -webkit-transition: 5s;
                -webkit-transition: .5s;
                transition: .5s;

        opacity: 0; 
        background: rgba(0, 0, 0, .8);
    }
}

@media screen and (min-width: 768px)
{
    .entries-thumb:hover figcaption
    {
        opacity: 1;
    }
}

@media screen and (max-width: 767px)
{
    .entries-txt
    {
        font-size: 12px;
        line-height: 1.8;
    }
}

@media screen and (min-width: 768px)
{
    .entries-txt
    {
        font-size: 117%;
        line-height: 2;
    }
}

@media screen and (min-width: 768px)
{
    .entries-meta
    {
        font-size: 92%;
        line-height: 18px;

        display: block;

        width: 128px;
        height: 18px;
        margin: 20px auto 0;

        text-align: center;

        color: #fff;
        border: 1px solid #fff;
    }
}

@media screen and (max-width: 767px)
{
    .entries-heading
    {
        position: relative;

        padding-left: 20px; 

        -webkit-box-flex: 1; 

            -ms-flex: 1; 

                flex: 1;
    }
}

@media screen and (min-width: 768px)
{
    .entries-heading
    {
        position: relative;

        text-align: center;
    }
}

@media screen and (min-width: 768px)
{
    .entries-heading .entries-meta
    {
        display: none;
    }
}

.entries-tag
{
    font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;

    display: block;

    letter-spacing: .2em; 

    color: #fff;
}

@media screen and (max-width: 767px)
{
    .entries-tag
    {
        font-size: 10px;
        line-height: 18px;

        width: 80px;
        height: 18px;

        text-align: center;
    }
}

@media screen and (min-width: 768px)
{
    .entries-tag
    {
        font-size: 117%;
        line-height: 35px;

        position: absolute;
        z-index: 3; 
        top: -18px;
        left: 50%;

        width: 110px;
        height: 35px;

        -webkit-transform: translateX(-50%);

                transform: translateX(-50%);
    }
}

@media screen and (max-width: 767px)
{
    .entries-ttl
    {
        font-size: 14px;
        font-weight: bold;
        line-height: 1.4; 

        padding: 10px 0;
    }
}

@media screen and (min-width: 768px)
{
    .entries-ttl
    {
        display: table;

        width: 100%;
    }
}

@media screen and (min-width: 768px)
{
    .entries-ttl__link
    {
        font-size: 134%;
        font-weight: bold;
        line-height: 1.4;

        display: table-cell;

        height: 45px;
        padding: 26px 18px 10px;

        text-align: center;
        vertical-align: middle;
    }
}

.entries-ttl a
{
    color: #5c5d5d;
}

@media screen and (max-width: 767px)
{
    .entries-ttl a
    {
        display: block;
    }
}

.entries-period
{
    border-top: 1px dashed #5c5d5d;
    border-bottom: 1px dashed #5c5d5d;
}

@media screen and (max-width: 767px)
{
    .entries-period
    {
        margin-bottom: 10px;
        padding: 7px 0;

        text-align: left;
    }
}

@media screen and (min-width: 768px)
{
    .entries-period
    {
        padding: 7px 0;

        text-align: center;
    }
}

@media screen and (max-width: 767px)
{
    .entries-period time:last-child::before
    {
        display: inline-block;

        padding: 0 9px; 

        content: '-';
    }
}

@media screen and (max-width: 767px)
{
    .entries-period time:first-child::before
    {
        display: none;
    }
}

@media screen and (max-width: 767px)
{
    .entries-group
    {
        padding: 0 3%;
    }
}

.entries-group-list
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;

        flex-wrap: wrap;
}

@media screen and (min-width: 768px)
{
    .entries-group-list--archive .entries-group-item:nth-child(3n)
    {
        margin-right: 0;
    }
}

@media screen and (min-width: 768px)
{
    .entries-group-list--top .entries-group-item:nth-child(4n)
    {
        margin-right: 0;
    }
}

@media screen and (max-width: 767px)
{
    .entries-group-item
    {
        margin-bottom: 20px;
        padding-bottom: 20px;

        border-bottom: 1px dashed #ddd;
    }
}

@media screen and (min-width: 768px)
{
    .entries-group-item
    {
        float: left;

        width: 230px;
        margin-right: 25px;
        margin-bottom: 40px;
    }
}

@media screen and (max-width: 767px)
{
    .entries-group-item:last-child
    {
        margin-bottom: 0;
        padding-bottom: 0;

        border-bottom: 0;
    }
}

@media screen and (min-width: 768px)
{
    #index-event .entries-group-item:nth-child(4n),
    .l-main .entries-group-item:nth-child(3n)
    {
        margin-right: 0;
    }
}

@media screen and (max-width: 767px)
{
    .entries-list-tag
    {
        font-size: 10px;
        line-height: 18px;

        z-index: 3; 

        display: block;

        width: 60px;
        height: 18px;
        margin-bottom: 5px;

        text-align: center;
        letter-spacing: .2em;

        color: #fff;
    }
}

@media screen and (min-width: 768px)
{
    .entries-list-tag
    {
        font-size: 84%;
        line-height: 15px;

        z-index: 3; 

        display: block;

        width: 50px;
        height: 15px;
        margin-bottom: 5px;

        text-align: center;
        letter-spacing: .2em;

        color: #fff;
    }
}

.entries-list-ttl
{
    line-height: 1.5; 

    margin-bottom: 5px;
}

@media screen and (max-width: 767px)
{
    .entries-list-ttl
    {
        font-size: 15px;
    }
}

@media screen and (min-width: 768px)
{
    .entries-list-ttl
    {
        font-size: 109%;
    }
}

.entries-list-ttl a
{
    display: block;

    color: #5c5d5d;
}

.entries-list-period
{
    line-height: 1.4;
}

@media screen and (max-width: 767px)
{
    .entries-list-period
    {
        font-size: 12px;
    }
}

@media screen and (min-width: 768px)
{
    .entries-list-period
    {
        font-size: 109%;
    }
}

.entry
{
    position: relative;
}

@media screen and (max-width: 767px)
{
    .entry
    {
        padding: 40px 3% 60px;

        border-top: 1px solid #333;
        border-bottom: 1px solid #333;
    }
}

@media screen and (min-width: 768px)
{
    .entry
    {
        padding: 39px 39px 89px; 

        border: 1px solid #333;
    }
}

.entry-end
{
    position: absolute;
    top: 0;
    right: 0;

    display: inline-block;

    color: #fff;
    background-color: #b41f23;
}

@media screen and (max-width: 767px)
{
    .entry-end
    {
        font-size: 11px; 

        padding: 4px 6px;
    }
}

@media screen and (min-width: 768px)
{
    .entry-end
    {
        font-size: 108%; 

        padding: 8px 12px;
    }
}

.entry-heading
{
    font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif; 

    position: relative;

    display: table;

    width: 100%;

    color: #fff;
}

@media screen and (max-width: 767px)
{
    .entry-heading
    {
        margin: 0 0 30px;
    }
}

@media screen and (min-width: 768px)
{
    .entry-heading
    {
        margin: 0 0 45px;
    }
}

.entry-tag
{
    display: table-cell;

    text-align: center;
    vertical-align: middle; 
    letter-spacing: .1em;
}

@media screen and (max-width: 767px)
{
    .entry-tag
    {
        font-size: 12px; 

        width: 70px;
        height: 70px;
    }
}

@media screen and (min-width: 768px)
{
    .entry-tag
    {
        font-size: 142%; 

        width: 90px;
        height: 90px;
    }
}

.entry-ttl
{
    font-weight: bold;
    line-height: 1.5; 

    letter-spacing: .2em;

    color: #5c5d5d;
}

.entry-ttl-wrap
{
    display: table-cell;

    vertical-align: middle;

    background: url(../img/bg_04.gif) repeat;
}

@media screen and (max-width: 767px)
{
    .entry-ttl-wrap
    {
        padding: 0 15px;
    }
}

@media screen and (min-width: 768px)
{
    .entry-ttl-wrap
    {
        padding: 0 30px 0 30px; 

        -webkit-box-flex: 1; 

            -ms-flex: 1; 

                flex: 1;
    }
}

@media screen and (max-width: 767px)
{
    .entry-ttl
    {
        font-size: 16px;
    }
}

@media screen and (min-width: 768px)
{
    .entry-ttl
    {
        font-size: 200%;
    }
}

.entry-meta
{
    font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;

    position: absolute;

    letter-spacing: .05em; 

    color: #5c5d5d;
}

@media screen and (max-width: 767px)
{
    .entry-meta
    {
        font-size: 10px; 

        top: -15px;
        right: 0;
    }
}

@media screen and (min-width: 768px)
{
    .entry-meta
    {
        font-size: 92%; 

        top: -20px;
        right: 0;
    }
}

.entry-eyecatch
{
    text-align: center;
}

@media screen and (max-width: 767px)
{
    .entry-eyecatch
    {
        margin-bottom: 10px;
    }
}

@media screen and (min-width: 768px)
{
    .entry-eyecatch
    {
        margin-bottom: 20px;
    }
}

.entry-eyecatch img
{
    width: auto;
    max-width: 100%;
    height: auto;
}

.entry-table
{
    line-height: 1.4; 

    width: 100%;

    border: none;
}

@media screen and (max-width: 767px)
{
    .entry-table
    {
        font-size: 13px; 

        margin-bottom: 30px;
    }
}

@media screen and (min-width: 768px)
{
    .entry-table
    {
        font-size: 125%; 

        margin-bottom: 50px;
    }
}

.entry-table thead th
{
    font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;

    text-align: center;
    vertical-align: middle;

    color: #fff;
    border: none; 
    background-color: #8d98a7;
}

@media screen and (max-width: 767px)
{
    .entry-table thead th
    {
        font-size: 15px; 

        padding-top: 14px;
        padding-bottom: 14px;
        padding-left: 0;
    }
}

@media screen and (min-width: 768px)
{
    .entry-table thead th
    {
        padding-top: 20px;
        padding-bottom: 20px;
    }
}

.entry-table tbody th
{
    padding: 0;

    text-align: center;

    color: #5c5d5d;
    border: none;
    border-top: 1px dashed #5c5d5d;
    border-bottom: 1px dashed #5c5d5d; 
    background: none;
}

@media screen and (max-width: 767px)
{
    .entry-table tbody th
    {
        line-height: 1.5; 

        width: 80px;
    }
}

@media screen and (min-width: 768px)
{
    .entry-table tbody th
    {
        width: 95px;
    }
}

.entry-table tbody td
{
    position: relative;

    border: none;
    border-top: 1px dashed #5c5d5d;
    border-bottom: 1px dashed #5c5d5d; 
    background: none;
}

@media screen and (max-width: 767px)
{
    .entry-table tbody td
    {
        line-height: 1.5;
    }
}

@media screen and (max-width: 767px)
{
    .entry-table--experience
    {
        margin-bottom: 20px;
    }
}

@media screen and (min-width: 768px)
{
    .entry-table--experience
    {
        margin-bottom: 35px;
    }
}

.entry-table--experience thead th
{
    padding-left: 0;
}

.entry-table--experience tbody tr:first-child th,
.entry-table--experience tbody tr:first-child td
{
    border-top: none;
}

@media screen and (max-width: 767px)
{
    .entry-table-map
    {
        padding-right: 130px;
    }
}

@media screen and (min-width: 768px)
{
    .entry-table-map
    {
        padding-right: 160px;
    }
}

.entry-table-button
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 100%; 

    text-decoration: none;

    color: #fff;
    background-color: #5f5f5f;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

@media screen and (max-width: 767px)
{
    .entry-table-button
    {
        font-size: 11px;

        height: 32px;
    }
}

@media screen and (min-width: 768px)
{
    .entry-table-button
    {
        font-size: 13px; 

        height: 36px;
    }
}

.entry-table-button-wrap
{
    position: absolute;
    top: 50%;
    right: 0;

    -webkit-transform: translateY(-50%);

            transform: translateY(-50%);
}

@media screen and (max-width: 767px)
{
    .entry-table-button-wrap
    {
        width: 120px;
    }
}

@media screen and (min-width: 768px)
{
    .entry-table-button-wrap
    {
        width: 150px;
    }
}

.entry-table-arrow
{
    display: inline-block;

    content: '';
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
}

@media screen and (max-width: 767px)
{
    .entry-table-arrow
    {
        width: 6px;
        height: 6px;
        margin-left: 5px;

        border-top: 1px solid #fff;
        border-right: 1px solid #fff;
    }
}

@media screen and (min-width: 768px)
{
    .entry-table-arrow
    {
        width: 5px;
        height: 5px;
        margin-left: 5px;

        border-top: 2px solid #fff;
        border-right: 2px solid #fff;
    }
}

.entry-table-blank
{
    position: absolute;
    top: 10px;
    right: 10px;

    display: inline-block;

    content: url(../img/common_icon_07.svg);
}

@media screen and (max-width: 767px)
{
    .entry-table-blank
    {
        width: calc(12px / 1.5);
        height: calc(9px / 1.5);
    }
}

@media screen and (min-width: 768px)
{
    .entry-table-blank
    {
        width: calc(17px / 1.5);
        height: calc(13px / 1.5);
    }
}

.entry-links
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-pack: center;

        -ms-flex-pack: center;

            justify-content: center;
}

@media screen and (max-width: 767px)
{
    .entry-links
    {
        margin-bottom: 20px;
    }
}

@media screen and (min-width: 768px)
{
    .entry-links
    {
        margin-bottom: 30px;
    }
}

@media screen and (max-width: 767px)
{
    .entry-links-item
    {
        width: 48%;
        margin: 0 2%;
    }
}

@media screen and (min-width: 768px)
{
    .entry-links-item
    {
        width: 280px;
        margin: 0 25px;
    }
}

.entry-links-button
{
    font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
    font-weight: normal; 

    position: relative;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    color: #fff;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

@media screen and (max-width: 767px)
{
    .entry-links-button
    {
        font-size: 14px; 

        height: 50px;
    }
}

@media screen and (min-width: 768px)
{
    .entry-links-button
    {
        font-size: 150%; 

        height: 60px;
    }
}

.entry-links-button--reserve
{
    background-color: #a3a65d;
}

.entry-links-button--website
{
    background-color: #5f5f5f;
}

.entry-links-arrow
{
    display: inline-block;

    content: '';
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);

    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
}

@media screen and (max-width: 767px)
{
    .entry-links-arrow
    {
        width: 7px;
        height: 7px;
        margin-left: 10px;
    }
}

@media screen and (min-width: 768px)
{
    .entry-links-arrow
    {
        width: 7px;
        height: 7px;
        margin-left: 15px;
    }
}

.entry-links-blank
{
    position: absolute;
    top: 10px;
    right: 10px;

    display: inline-block;

    content: url(../img/common_icon_07.svg);
}

@media screen and (max-width: 767px)
{
    .entry-links-blank
    {
        width: 12px;
        height: 9px;
    }
}

@media screen and (min-width: 768px)
{
    .entry-links-blank
    {
        width: 17px;
        height: 13px;
    }
}

@media screen and (max-width: 767px)
{
    .entry-period-time
    {
        display: block;

        margin-top: 10px;
    }
}

@media screen and (min-width: 768px)
{
    .entry-period-time
    {
        margin-left: 10px;
    }
}

.entry-img-wrap
{
    text-align: center;

    background: url(../img/bg_02.jpg) repeat;
}

@media screen and (max-width: 767px)
{
    .entry-img-wrap
    {
        margin-bottom: 40px;
    }
}

@media screen and (min-width: 768px)
{
    .entry-img-wrap
    {
        margin-bottom: 40px;
    }
}

.entry-img
{
    display: inline-block;
}

.entry-list-item-vertical
{
    float: left;
    overflow: hidden;
}

@media screen and (max-width: 767px)
{
    .entry-list-item-vertical
    {
        width: 50%;
    }
}

@media screen and (min-width: 768px)
{
    .entry-list-item-vertical
    {
        width: 330px;
    }
}

.entry-body *
{
    max-width: 100%;
}

.entry-body h3
{
    font-weight: bold;
}

@media screen and (max-width: 767px)
{
    .entry-body h3
    {
        font-size: 16px;
        line-height: 1.8; 

        margin-top: 30px;
        margin-bottom: 10px;
    }
}

@media screen and (min-width: 768px)
{
    .entry-body h3
    {
        font-size: 183%;
        line-height: 1.8; 

        margin-top: 40px;
        margin-bottom: 20px;
    }
}

@media screen and (max-width: 767px)
{
    .entry-body p
    {
        font-size: 14px;
        line-height: 2; 

        margin-bottom: 20px;
    }
}

@media screen and (min-width: 768px)
{
    .entry-body p
    {
        font-size: 125%;
        line-height: 2.5; 

        margin-bottom: 30px;
    }
}

.entry-body hr
{
    border-top: 1px dashed #5c5d5d;
}

@media screen and (max-width: 767px)
{
    .entry-body hr
    {
        margin: 30px 0;
    }
}

@media screen and (min-width: 768px)
{
    .entry-body hr
    {
        margin: 30px 0;
    }
}

.entry-body img
{
    max-width: 100%;
    height: auto;
}

@media screen and (max-width: 767px)
{
    .entry-body .size-large,
    .entry-body .size-full
    {
        margin-bottom: 10px;
    }
}

@media screen and (min-width: 768px)
{
    .entry-body .size-large,
    .entry-body .size-full
    {
        margin-bottom: 20px;
    }
}

@media screen and (max-width: 767px)
{
    .entry-body .size-medium
    {
        margin-bottom: 10px;
    }
}

@media screen and (min-width: 768px)
{
    .entry-body .size-medium
    {
        max-width: 320px;
        height: auto;
    }
}

.endday::before
{
    display: inline-block; 

    content: '-';
}

@media screen and (max-width: 767px)
{
    .endday::before
    {
        padding: 0 .5em;
    }
}

@media screen and (min-width: 768px)
{
    .endday::before
    {
        padding: 0 .5em;
    }
}

.hover-effect
{
    position: relative;

    display: block;

    width: 100%;
}

.hover-effect:hover
{
    opacity: 1;
}

.hover-effect:hover .mask
{
    opacity: 1;
}

.mask
{
    position: absolute;
    top: 0;
    left: 0;

    overflow: visible;

    -webkit-box-sizing: border-box;

            box-sizing: border-box;
    width: 100%;
    height: 100%;

    -webkit-transition: .3s ease-in;

    transition: .3s ease-in; 

    opacity: 0;
    background: rgba(0, 0, 0, .8);
}

@media screen and (max-width: 767px)
{
    .mask-icon
    {
        position: absolute;
        top: 50%;
        left: 50%;

        display: block;

        width: 35px;
        height: 35px;
        margin-top: -17px;
        margin-left: -17px;

        background: url(../img/zoom.png) no-repeat center center;
        background-size: 35px 35px;
    }
}

@media screen and (min-width: 768px)
{
    .mask-icon
    {
        position: absolute;
        top: 50%;
        left: 50%;

        display: block;

        width: 70px;
        height: 70px;
        margin-top: -35px;
        margin-left: -35px;

        background: url(../img/zoom.png) no-repeat center center;
        background-size: 70px 70px;
    }
}

@media screen and (max-width: 767px)
{
    .experience
    {
        padding-bottom: 60px;
    }
}

@media screen and (min-width: 768px)
{
    .experience
    {
        padding-bottom: 100px;
    }
}

@media screen and (max-width: 767px)
{
    .experience-heading
    {
        padding: 30px 0;

        text-align: center;

        background: url(../img/experience_bg_04_sp.png) no-repeat center center;
        background-size: 375px 94px;
    }
}

@media screen and (min-width: 768px)
{
    .experience-heading
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        height: 150px;

        background: url(../img/experience_bg_04.png) no-repeat center center; 

        -webkit-box-align: center; 

            -ms-flex-align: center; 

                align-items: center;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
    }
}

@media screen and (max-width: 767px)
{
    .experience-title
    {
        width: 23%;
        margin: 0 auto;
    }
}

@media screen and (min-width: 768px)
{
    .experience-inner
    {
        width: 1000px;
        margin-right: auto; 
        margin-left: auto;
    }
}

@media screen and (min-width: 768px)
{
    .experience-body
    {
        padding-bottom: 30px;
    }
}

.experience-block
{
    background: url(../img/experience_bg_01.jpg) repeat;
}

@media screen and (max-width: 767px)
{
    .experience-block
    {
        padding: 60px 3%;
    }
}

@media screen and (min-width: 768px)
{
    .experience-block
    {
        padding: 100px 0;
    }
}

.experience-block--pickup
{
    background: none;
}

@media screen and (max-width: 767px)
{
    .experience-block--pickup
    {
        padding: 40px 3% 60px;
    }
}

@media screen and (min-width: 768px)
{
    .experience-block--pickup
    {
        padding: 40px 0 100px;
    }
}

.experience-block--allyear
{
    background: none;
}

@media screen and (max-width: 767px)
{
    .experience-block--allyear
    {
        padding: 60px 3% 0;
    }
}

@media screen and (min-width: 768px)
{
    .experience-block--allyear
    {
        padding: 100px 0 0;
    }
}

.experience-label
{
    font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif; 

    text-align: center;
}

@media screen and (max-width: 767px)
{
    .experience-label
    {
        font-size: 18px; 

        margin-bottom: 20px;
    }
}

@media screen and (min-width: 768px)
{
    .experience-label
    {
        font-size: 200%; 

        margin-bottom: 50px;
    }
}

.experience-label--rev
{
    color: #fff;
}

@media screen and (max-width: 767px)
{
    .experience-label img
    {
        width: auto;
        height: 20px;
    }
}

.experience-note
{
    text-align: center;
}

@media screen and (max-width: 767px)
{
    .experience-note
    {
        font-size: 14px;

        margin-top: 20px;
        margin-bottom: 20px;
    }
}

@media screen and (min-width: 768px)
{
    .experience-note
    {
        font-size: 133%;

        margin-bottom: 20px;
    }
}

.experience-btn
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-sizing: border-box;

            box-sizing: border-box; 
    margin-right: auto;
    margin-left: auto;

    -webkit-transition: .3s ease;

    transition: .3s ease;

    color: #5b6675;
    background-color: #fff;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

@media screen and (max-width: 767px)
{
    .experience-btn
    {
        font-size: 14px; 

        width: 94%;
        height: 40px;
    }
}

@media screen and (min-width: 768px)
{
    .experience-btn
    {
        font-size: 150%; 

        width: 280px;
        height: 60px;
    }
}

@media screen and (min-width: 768px)
{
    .experience-btn:hover
    {
        color: #fff;
        background-color: #5b6675;
    }
}

.experience-btn--rev
{
    color: #fff;
    border: 1px solid #5b6675; 
    background-color: #5b6675;
}

@media screen and (min-width: 768px)
{
    .experience-btn--rev
    {
        width: 320px;
    }
}

@media screen and (min-width: 768px)
{
    .experience-btn--rev:hover
    {
        color: #5b6675;
        background-color: #fff;
    }
}

@media screen and (max-width: 767px)
{
    .experience-btn span
    {
        font-size: 12px;
    }
}

@media screen and (min-width: 768px)
{
    .experience-btn span
    {
        font-size: 16px;
    }
}

.experienceCard
{
    position: relative;

    display: block;

    text-decoration: none;

    background-color: #fff;
}

@media screen and (max-width: 767px)
{
    .experienceCard
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        padding: 10px;
    }
}

@media screen and (min-width: 768px)
{
    .experienceCard
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        padding: 15px;
    }
}

.experienceCard--rev
{
    background-color: #8d98a7;
}

.experienceCard--rev .experienceCard-title,
.experienceCard--rev .experienceCard-text
{
    color: #fff;
}

.experienceCard--rev .experienceCard-period
{
    color: #8d98a7;
    border: none;
    background-color: #fff;
}

@media screen and (max-width: 767px)
{
    .experienceCard--rev .experienceCard-period
    {
        padding: 7px;
    }
}

@media screen and (min-width: 768px)
{
    .experienceCard--rev .experienceCard-period
    {
        padding: 8px;
    }
}

.experienceCard-tag
{
    font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;

    position: absolute;
    left: 0;

    display: block;

    text-align: center; 
    letter-spacing: .2em;

    color: #fff;
}

@media screen and (max-width: 767px)
{
    .experienceCard-tag
    {
        font-size: 11px;
        line-height: 22px;

        top: 18px;

        width: 50px;
        height: 22px;

        -webkit-transform: translateX(-5px);

                transform: translateX(-5px);
    }
}

@media screen and (min-width: 768px)
{
    .experienceCard-tag
    {
        font-size: 117%;
        line-height: 35px;

        z-index: 3; 
        top: 30px;

        width: 80px;
        height: 35px;

        -webkit-transform: translateX(-10px);

                transform: translateX(-10px);
    }
}

@media screen and (max-width: 767px)
{
    .experienceCard-thumb
    {
        width: 120px;
        margin-right: 10px;
    }
}

@media screen and (min-width: 768px)
{
    .experienceCard-thumb
    {
        margin-right: 15px;
    }
}

.experienceCard-content
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;

    -webkit-box-flex: 1;

        -ms-flex: 1;

            flex: 1;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
}

@media screen and (min-width: 768px)
{
    .experienceCard-content
    {
        padding-top: 10px;
    }
}

.experienceCard-title
{
    font-weight: bold;
    line-height: 1.5; 

    color: #000;
}

@media screen and (max-width: 767px)
{
    .experienceCard-title
    {
        font-size: 14px;
    }
}

@media screen and (min-width: 768px)
{
    .experienceCard-title
    {
        font-size: 133%; 

        display: -webkit-box;
        overflow: hidden;

        margin-bottom: 15px;

        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
    }
}

.experienceCard-text
{
    line-height: 2;

    word-break: break-word; 

    color: #5f5f5f;
}

@media screen and (max-width: 767px)
{
    .experienceCard-text
    {
        display: none;
    }
}

@media screen and (min-width: 768px)
{
    .experienceCard-text
    {
        font-size: 100%; 

        display: -webkit-box;
        overflow: hidden;

        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
    }
}

.experienceCard-period
{
    color: #a3a65d;
}

@media screen and (max-width: 767px)
{
    .experienceCard-period
    {
        max-width: 200px;
        padding: 7px 0;

        text-align: left;

        border-top: 1px dashed #a3a65d;
        border-bottom: 1px dashed #a3a65d;
    }
}

@media screen and (min-width: 768px)
{
    .experienceCard-period
    {
        margin-top: 17px;
        padding: 7px 0;

        border-top: 1px dashed #a3a65d;
        border-bottom: 1px dashed #a3a65d;
    }
}

@media screen and (max-width: 767px)
{
    .experienceCard-period time::before
    {
        display: inline-block;

        padding: 0 9px; 

        content: '-';
    }
}

@media screen and (max-width: 767px)
{
    .experienceCard-period time:first-child::before
    {
        display: none;
    }
}

.experienceCard-more
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin-left: auto;

    letter-spacing: .075em; 

    color: #393839;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
}

@media screen and (min-width: 768px)
{
    .experienceCard-more
    {
        font-size: 92%;
        line-height: 18px;
    }
}

.experienceCard-more::after
{
    display: inline-block;

    content: url(../img/arrow_04.svg);
}

@media screen and (min-width: 768px)
{
    .experienceCard-more::after
    {
        width: 18px;
        height: 18px;
        margin-left: 12px;
    }
}

.experienceCategories
{
    font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;

    background: url(../img/experience_bg_01.jpg) repeat;
}

@media screen and (max-width: 767px)
{
    .experienceCategories
    {
        padding: 50px 0;
    }
}

@media screen and (min-width: 768px)
{
    .experienceCategories
    {
        padding: 80px 0 80px;
    }
}

@media screen and (min-width: 768px)
{
    .experienceCategories-inner
    {
        width: 1000px;
        margin-right: auto; 
        margin-left: auto;
    }
}

.experienceCategories-title
{
    font-weight: bold;

    text-align: center;

    color: #fff;
    border-top: 1px solid #fff;
    border-bottom: 1px solid #fff;
}

@media screen and (max-width: 767px)
{
    .experienceCategories-title
    {
        font-size: 18px;

        width: 240px;
        margin: 0 auto 30px;
        padding: 12px 0;
    }
}

@media screen and (min-width: 768px)
{
    .experienceCategories-title
    {
        font-size: 209%; 

        width: 240px;
        margin: 0 auto 50px;
        padding: 12px 0;
    }
}

@media screen and (max-width: 767px)
{
    .experienceCategories-list
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        padding: 0 3%; 

        -ms-flex-wrap: wrap; 

            flex-wrap: wrap;
    }
}

@media screen and (min-width: 768px)
{
    .experienceCategories-list
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -webkit-box-pack: justify;

            -ms-flex-pack: justify;

                justify-content: space-between;
    }
}

@media screen and (max-width: 767px)
{
    .experienceCategories-item
    {
        width: 50%;
        margin-top: 10px;
    }
}

@media screen and (max-width: 767px)
{
    .experienceCategories-item:nth-child(-n+2)
    {
        margin-top: 0;
    }
}

.experienceCategories-link
{
    color: #fff;
}

@media screen and (max-width: 767px)
{
    .experienceCategories-link
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -webkit-box-align: center;

            -ms-flex-align: center;

                align-items: center;
    }
}

@media screen and (min-width: 768px)
{
    .experienceCategories-link
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;

        -webkit-box-align: center;

            -ms-flex-align: center;

                align-items: center;
    }
}

.experienceCategories-thumb
{
    overflow: hidden; 

    height: 100px;

    border-radius: 50%;
}

@media screen and (max-width: 767px)
{
    .experienceCategories-thumb
    {
        width: 50px;
        height: 50px;
        margin-right: 10px;
    }
}

@media screen and (min-width: 768px)
{
    .experienceCategories-thumb
    {
        width: 100px;
    }
}

.experienceCategories-name
{
    line-height: 1.75;
}

@media screen and (max-width: 767px)
{
    .experienceCategories-name
    {
        font-size: 13px; 

        -webkit-box-flex: 1; 

            -ms-flex: 1; 

                flex: 1;
    }
}

@media screen and (min-width: 768px)
{
    .experienceCategories-name
    {
        font-size: 133%;

        margin-top: 15px;

        text-align: center;
    }
}

@media screen and (max-width: 767px)
{
    .experienceGroup-list
    {
        max-width: 400px;
        margin-right: auto; 
        margin-left: auto;
    }
}

@media screen and (min-width: 768px)
{
    .experienceGroup-list
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -ms-flex-wrap: wrap;

            flex-wrap: wrap;
    }
}

@media screen and (max-width: 767px)
{
    .experienceGroup-item
    {
        margin-top: 10px;
    }
}

@media screen and (min-width: 768px)
{
    .experienceGroup-item
    {
        width: 486px;
        margin-top: 28px; 
        margin-right: 28px;
    }
}

@media screen and (max-width: 767px)
{
    .experienceGroup-item:first-child
    {
        margin-top: 0;
    }
}

@media screen and (min-width: 768px)
{
    .experienceGroup-item:nth-child(-n+2)
    {
        margin-top: 0;
    }
}

@media screen and (min-width: 768px)
{
    .experienceGroup-item:nth-child(2n)
    {
        margin-right: 0;
    }
}

.film-heading img
{
    width: 100%;
    height: auto;
}

.film-images
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    border-top: 3px solid #fff;
}

@media screen and (max-width: 767px)
{
    .film-image
    {
        margin-right: 2px;
    }
}

@media screen and (min-width: 768px)
{
    .film-image
    {
        margin-right: 2px;
    }
}

.film-image:last-child
{
    margin-right: 0;
}

.film-image img
{
    width: 100%;
    height: auto;
}

@media screen and (max-width: 767px)
{
    .film-block
    {
        padding-top: 30px;
    }
}

@media screen and (min-width: 768px)
{
    .film-block
    {
        margin-bottom: 40px;
    }
}

.film-list
{
    font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif; 

    display: -webkit-box; 

    display: -ms-flexbox; 

    display: flex;

    -webkit-box-pack: center;

        -ms-flex-pack: center;

            justify-content: center;
}

@media screen and (max-width: 767px)
{
    .film-list
    {
        font-size: 117%; 

        -webkit-box-orient: vertical; 

        -webkit-box-direction: normal; 

            -ms-flex-direction: column; 

                flex-direction: column;

        -webkit-box-align: center;

            -ms-flex-align: center;

                align-items: center;
    }
}

@media screen and (min-width: 768px)
{
    .film-list
    {
        font-size: 150%;
    }
}

@media screen and (max-width: 767px)
{
    .film-item
    {
        margin-top: 10px;
    }
}

@media screen and (min-width: 768px)
{
    .film-item
    {
        display: inline-block;

        padding: 0 2em;

        border-right: 1px solid #5697ad;
    }
}

@media screen and (min-width: 768px)
{
    .film-item:last-child
    {
        border-right: 0;
    }
}

@media screen and (max-width: 767px)
{
    .film-item:first-child
    {
        margin-top: 0;
    }
}

.film-link
{
    color: #5697ad;
}

@media screen and (max-width: 767px)
{
    .film-intro
    {
        padding: 0 3% 30px;
    }
}

@media screen and (min-width: 768px)
{
    .film-intro
    {
        padding: 60px 0 40px;

        text-align: center;
    }
}

.film-lead
{
    font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
    line-height: 1.5;
}

@media screen and (max-width: 767px)
{
    .film-lead
    {
        font-size: 133%; 

        margin-top: 20px;

        text-align: center;
    }
}

@media screen and (min-width: 768px)
{
    .film-lead
    {
        font-size: 267%; 

        margin-top: 60px;
    }
}

.film-lead:first-child
{
    margin-top: 0;
}

@media screen and (max-width: 767px)
{
    .film-text
    {
        margin-top: 20px;
    }
}

@media screen and (min-width: 768px)
{
    .film-text
    {
        font-size: 133%;
        line-height: 1.8; 

        margin-top: 40px;
    }
}

@media screen and (max-width: 767px)
{
    .filmBlock
    {
        padding-top: 40px;
    }
}

@media screen and (min-width: 768px)
{
    .filmBlock
    {
        padding-top: 60px;
    }
}

@media screen and (min-width: 768px)
{
    .filmBlock--01
    {
        padding-bottom: 40px;
    }
}

.filmBlock-heading
{
    position: relative;

    text-align: center;
}

@media screen and (max-width: 767px)
{
    .filmBlock-heading
    {
        margin-bottom: 30px;
    }
}

@media screen and (min-width: 768px)
{
    .filmBlock-heading
    {
        margin-bottom: 60px;
    }
}

.filmBlock-heading::before,
.filmBlock-heading::after
{
    position: absolute;
    top: 50%;

    display: block;

    width: 50%; 

    content: '';
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
}

@media screen and (max-width: 767px)
{
    .filmBlock-heading::before,
    .filmBlock-heading::after
    {
        height: 20px;

        background: url(../img/film_bg_01_sp.png) repeat-x;
    }
}

@media screen and (min-width: 768px)
{
    .filmBlock-heading::before,
    .filmBlock-heading::after
    {
        height: 30px; 

        background: url(../img/film_bg_01.png) repeat-x;
    }
}

.filmBlock-heading::before
{
    left: 0;

    background-position: right center;
}

.filmBlock-heading::after
{
    right: 0;

    background-position: left center;
}

@media screen and (max-width: 767px)
{
    .filmBlock-heading--01::before
    {
        -webkit-transform: translate(-100px, -50%);
                transform: translate(-100px, -50%);
    }
}

@media screen and (min-width: 768px)
{
    .filmBlock-heading--01::before
    {
        -webkit-transform: translate(-180px, -50%);
                transform: translate(-180px, -50%);
    }
}

@media screen and (max-width: 767px)
{
    .filmBlock-heading--01::after
    {
        -webkit-transform: translate(100px, -50%);
                transform: translate(100px, -50%);
    }
}

@media screen and (min-width: 768px)
{
    .filmBlock-heading--01::after
    {
        -webkit-transform: translate(180px, -50%);
                transform: translate(180px, -50%);
    }
}

@media screen and (max-width: 767px)
{
    .filmBlock-heading--02::before
    {
        -webkit-transform: translate(-120px, -50%);
                transform: translate(-120px, -50%);
    }
}

@media screen and (min-width: 768px)
{
    .filmBlock-heading--02::before
    {
        -webkit-transform: translate(-120px, -50%);
                transform: translate(-120px, -50%);
    }
}

@media screen and (max-width: 767px)
{
    .filmBlock-heading--02::after
    {
        -webkit-transform: translate(120px, -50%);
                transform: translate(120px, -50%);
    }
}

@media screen and (min-width: 768px)
{
    .filmBlock-heading--02::after
    {
        -webkit-transform: translate(120px, -50%);
                transform: translate(120px, -50%);
    }
}

@media screen and (max-width: 767px)
{
    .filmBlock-heading--03::before
    {
        -webkit-transform: translate(-150px, -50%);
                transform: translate(-150px, -50%);
    }
}

@media screen and (min-width: 768px)
{
    .filmBlock-heading--03::before
    {
        -webkit-transform: translate(-360px, -50%);
                transform: translate(-360px, -50%);
    }
}

@media screen and (max-width: 767px)
{
    .filmBlock-heading--03::after
    {
        -webkit-transform: translate(150px, -50%);
                transform: translate(150px, -50%);
    }
}

@media screen and (min-width: 768px)
{
    .filmBlock-heading--03::after
    {
        -webkit-transform: translate(360px, -50%);
                transform: translate(360px, -50%);
    }
}

@media screen and (max-width: 767px)
{
    .filmBlock--02
    {
        padding-bottom: 60px;
    }
}

@media screen and (min-width: 768px)
{
    .filmBlock--02
    {
        padding-bottom: 120px;
    }
}

@media screen and (max-width: 767px)
{
    .filmBlock--03
    {
        padding-bottom: 40px;
    }
}

@media screen and (min-width: 768px)
{
    .filmBlock--03
    {
        padding-bottom: 80px;
    }
}

.filmBlock-title
{
    font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
    font-weight: bold;
}

@media screen and (max-width: 767px)
{
    .filmBlock-title
    {
        font-size: 150%;
    }
}

@media screen and (min-width: 768px)
{
    .filmBlock-title
    {
        font-size: 267%;
    }
}

@media screen and (max-width: 767px)
{
    .filmBlock-text
    {
        font-size: 117%;

        margin: 0 3%;
    }
}

@media screen and (min-width: 768px)
{
    .filmBlock-text
    {
        font-size: 133%; 
        line-height: 1.8;

        text-align: center;
    }
}

@media screen and (max-width: 767px)
{
    .filmBlock-inner
    {
        padding: 0 3%;
    }
}

@media screen and (min-width: 768px)
{
    .filmBlock-inner
    {
        width: 1000px;
        margin-right: auto; 
        margin-left: auto;
    }
}

@media screen and (min-width: 768px)
{
    .filmBlock-list
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -ms-flex-wrap: wrap;

            flex-wrap: wrap;
    }
}

@media screen and (max-width: 767px)
{
    .filmBlock-list--titles
    {
        margin-top: 40px;
    }
}

@media screen and (max-width: 767px)
{
    .filmBlock-list--titles > li
    {
        margin-top: 20px;
    }
}

@media screen and (min-width: 768px)
{
    .filmBlock-list--titles > li
    {
        width: 450px;
        margin-top: 30px; 
        margin-right: 100px;
    }
}

@media screen and (max-width: 767px)
{
    .filmBlock-list--titles > li:first-child
    {
        margin-top: 0;
    }
}

@media screen and (min-width: 768px)
{
    .filmBlock-list--titles > li:nth-child(2n)
    {
        margin-right: 0;
    }
}

@media screen and (max-width: 767px)
{
    .filmBlock-list--movie
    {
        margin-top: 40px;
    }
}

@media screen and (min-width: 768px)
{
    .filmBlock-list--movie
    {
        margin-top: 80px;
    }
}

@media screen and (min-width: 768px)
{
    .filmBlock-list--movie > li
    {
        width: 485px;
        margin-top: 30px; 
        margin-right: 30px;
    }
}

@media screen and (max-width: 767px)
{
    .filmBlock-item
    {
        margin-top: 10px;
    }
}

@media screen and (max-width: 767px)
{
    .filmBlock-item:first-child
    {
        margin-top: 0;
    }
}

@media screen and (min-width: 768px)
{
    .filmBlock-item:nth-child(2n)
    {
        margin-right: 0;
    }
}

@media screen and (min-width: 768px)
{
    .filmBlock-item:nth-child(-n+2)
    {
        margin-top: 0;
    }
}

.filmMenu
{
    color: #fff;
}

@media screen and (min-width: 768px)
{
    .filmMenu
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}

@media screen and (max-width: 767px)
{
    .filmMenu-col
    {
        padding: 40px 3%;
    }
}

@media screen and (min-width: 768px)
{
    .filmMenu-col
    {
        width: 50%;
        padding: 70px 100px 80px;
    }
}

.filmMenu-col--01
{
    background-color: #393839;
}

.filmMenu-col--02
{
    background-color: #74a0b8;
}

.filmMenu-title
{
    font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;

    text-align: center;
}

@media screen and (max-width: 767px)
{
    .filmMenu-title
    {
        font-size: 150%; 

        margin-bottom: 30px;
    }
}

@media screen and (min-width: 768px)
{
    .filmMenu-title
    {
        font-size: 267%; 

        margin-bottom: 70px;
    }
}

.filmMenu-text
{
    line-height: 1.8;
}

@media screen and (min-width: 768px)
{
    .filmMenu-text
    {
        font-size: 133%;
    }
}

.filmMenu-link
{
    font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif; 

    position: relative;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    color: #fff;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

@media screen and (max-width: 767px)
{
    .filmMenu-link
    {
        font-size: 117%; 

        height: 40px;
        margin-top: 30px;

        border: 1px solid #fff;
    }
}

@media screen and (min-width: 768px)
{
    .filmMenu-link
    {
        font-size: 133%; 

        max-width: 340px;
        height: 50px;
        margin-top: 70px;
        margin-right: auto;
        margin-left: auto;

        border: 2px solid #fff;
    }
}

.filmMenu-link::after
{
    position: absolute;
    top: 50%;

    display: inline-block;
}

.filmMenu-link--arrow::after
{
    right: 20px;

    width: 10px;
    height: 10px;

    content: '';
    -webkit-transform: rotate(45deg) translateY(-50%);
            transform: rotate(45deg) translateY(-50%); 

    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
}

.filmMenu-link--blank::after
{
    right: 20px;

    width: 14px;
    height: 14px;

    content: url(../img/common_icon_04.svg);
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);

    background-size: cover;
}

@media screen and (min-width: 768px)
{
    .filmRelations-list
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -ms-flex-wrap: wrap;

            flex-wrap: wrap;
    }
}

@media screen and (max-width: 767px)
{
    .filmRelations-item
    {
        margin-top: 10px;
    }
}

@media screen and (min-width: 768px)
{
    .filmRelations-item
    {
        width: 485px;
        margin-top: 30px; 
        margin-right: 30px;
    }
}

@media screen and (max-width: 767px)
{
    .filmRelations-item:first-child
    {
        margin-top: 0;
    }
}

@media screen and (min-width: 768px)
{
    .filmRelations-item:nth-child(2n)
    {
        margin-right: 0;
    }
}

@media screen and (min-width: 768px)
{
    .filmRelations-item:nth-child(-n+2)
    {
        margin-top: 0;
    }
}

.filmRelations-link
{
    position: relative;

    display: block;

    text-align: center;

    color: #fff;
    background-color: #333;
}

@media screen and (max-width: 767px)
{
    .filmRelations-link
    {
        padding: 15px;

        border-radius: 6px;
    }
}

@media screen and (min-width: 768px)
{
    .filmRelations-link
    {
        padding: 35px 45px;

        border-radius: 8px;
    }
}

.filmRelations-link::after
{
    position: absolute;
    top: 15px;
    right: 15px;

    display: inline-block;

    width: 14px;
    height: 14px;

    content: url(../img/common_icon_04.svg);

    background-size: cover;
}

.filmRelations-title
{
    font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif; 
    font-weight: bold;
}

@media screen and (max-width: 767px)
{
    .filmRelations-title
    {
        font-size: 117%;

        margin-bottom: 10px;
    }
}

@media screen and (min-width: 768px)
{
    .filmRelations-title
    {
        font-size: 150%; 

        margin-bottom: 20px;
    }
}

.filmRelations-text
{
    text-align: left;
}

@media screen and (max-width: 767px)
{
    .filmRelations-text
    {
        font-size: 92%;
        line-height: 1.75;
    }
}

@media screen and (min-width: 768px)
{
    .filmRelations-text
    {
        font-size: 100%;
    }
}

.filmTitles-heading
{
    font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;

    color: #333;
    background: url(../img/film_bg_02.png) no-repeat center center; 

    -webkit-box-align: center; 

        -ms-flex-align: center; 

            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

@media screen and (max-width: 767px)
{
    .filmTitles-heading
    {
        height: 80px;
        margin-bottom: 10px;
        padding-top: 20px;

        background-size: contain;
    }
}

@media screen and (min-width: 768px)
{
    .filmTitles-heading
    {
        height: 130px; 
        padding-top: 40px;
    }
}

.filmTitles-title
{
    font-weight: bold;
}

@media screen and (max-width: 767px)
{
    .filmTitles-title
    {
        font-size: 167%;
    }
}

@media screen and (min-width: 768px)
{
    .filmTitles-title
    {
        font-size: 267%;
    }
}

.filmTitles-subTitle
{
    font-weight: bold;
}

@media screen and (max-width: 767px)
{
    .filmTitles-subTitle
    {
        font-size: 133%;

        margin-top: 5px;
    }
}

@media screen and (min-width: 768px)
{
    .filmTitles-subTitle
    {
        font-size: 167%;
    }
}

.filmTitles-body
{
    width: 100%;

    color: #fff;
    background: #373839;
}

@media screen and (max-width: 767px)
{
    .filmTitles-body
    {
        margin-top: 5px;
        padding: 4px 10px;
    }
}

@media screen and (min-width: 768px)
{
    .filmTitles-body
    {
        font-size: 133%; 

        margin-top: 4px;
        padding: 8px 20px;
    }
}

.junreiWorks-label
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    color: #fff;
    background-color: #333; 

    -webkit-box-align: center; 

        -ms-flex-align: center; 

            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

@media screen and (max-width: 767px)
{
    .junreiWorks-label
    {
        font-size: 100%; 

        width: 90px;
        height: 26px;
    }
}

@media screen and (min-width: 768px)
{
    .junreiWorks-label
    {
        width: 90px;
        height: 32px;
    }
}

@media screen and (max-width: 767px)
{
    .junreiWorks-content
    {
        padding: 10px;
    }
}

@media screen and (min-width: 768px)
{
    .junreiWorks-content
    {
        padding: 12px;
    }
}

@media screen and (min-width: 768px)
{
    .junreiWorks-text
    {
        font-size: 100%;
    }
}

.jyunrei-heading
{
    width: 100%;

    text-align: center;

    background: url(../img/film_bg_03.jpg) no-repeat center bottom;
    background-size: cover;
}

@media screen and (max-width: 767px)
{
    .jyunrei-heading
    {
        padding: 30px 0 40px;
    }
}

@media screen and (min-width: 768px)
{
    .jyunrei-heading
    {
        height: 215px; 
        padding-top: 95px;
        padding-bottom: 90px;
    }
}

.jyunrei-label
{
    display: inline-block;

    margin-bottom: 25px;
}

@media screen and (max-width: 767px)
{
    .jyunrei-label img
    {
        width: auto;
        height: 30px;
    }
}

.jyunrei-title
{
    font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
    font-weight: bold; 

    position: relative;

    display: block;

    width: 100%;

    text-align: center;

    color: #fff;
}

@media screen and (max-width: 767px)
{
    .jyunrei-title
    {
        font-size: 150%; 

        margin-bottom: 30px;
    }
}

@media screen and (min-width: 768px)
{
    .jyunrei-title
    {
        font-size: 267%; 

        margin-bottom: 70px;
    }
}

.jyunrei-title::before,
.jyunrei-title::after
{
    position: absolute;
    top: 50%;

    display: block;

    width: 50%; 

    content: '';
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
}

@media screen and (max-width: 767px)
{
    .jyunrei-title::before,
    .jyunrei-title::after
    {
        height: 20px;

        background: url(../img/film_bg_01_white_sp.png) repeat-x;
    }
}

@media screen and (min-width: 768px)
{
    .jyunrei-title::before,
    .jyunrei-title::after
    {
        height: 30px;

        background: url(../img/film_bg_01_white.png) repeat-x;
    }
}

.jyunrei-title::before
{
    left: 0;

    background-position: right center;
}

@media screen and (max-width: 767px)
{
    .jyunrei-title::before
    {
        -webkit-transform: translate(-160px, -50%);
                transform: translate(-160px, -50%);
    }
}

@media screen and (min-width: 768px)
{
    .jyunrei-title::before
    {
        -webkit-transform: translate(-280px, -50%);
                transform: translate(-280px, -50%);
    }
}

.jyunrei-title::after
{
    right: 0;

    background-position: left center;
}

@media screen and (max-width: 767px)
{
    .jyunrei-title::after
    {
        -webkit-transform: translate(160px, -50%);
                transform: translate(160px, -50%);
    }
}

@media screen and (min-width: 768px)
{
    .jyunrei-title::after
    {
        -webkit-transform: translate(280px, -50%);
                transform: translate(280px, -50%);
    }
}

@media screen and (max-width: 767px)
{
    .jyunrei-list
    {
        padding: 0 3%;
    }
}

@media screen and (min-width: 768px)
{
    .jyunrei-list
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -webkit-box-pack: center;

            -ms-flex-pack: center;

                justify-content: center;
    }
}

@media screen and (max-width: 767px)
{
    .jyunrei-item
    {
        margin-top: 10px;
    }
}

@media screen and (min-width: 768px)
{
    .jyunrei-item
    {
        width: 340px;
        margin: 0 40px;
    }
}

@media screen and (max-width: 767px)
{
    .jyunrei-item:first-child
    {
        margin-top: 0;
    }
}

.jyunrei-link
{
    font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
    font-weight: bold;

    position: relative;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    width: 100%;

    color: #fff;
    border: 1px solid #fff; 

    -webkit-box-align: center; 

        -ms-flex-align: center; 

            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

@media screen and (max-width: 767px)
{
    .jyunrei-link
    {
        font-size: 117%;

        height: 40px;

        border-radius: 6px;
    }
}

@media screen and (min-width: 768px)
{
    .jyunrei-link
    {
        font-size: 133%;

        height: 50px;

        border-radius: 6px;
    }
}

.jyunrei-link::before
{
    position: absolute;
    top: 50%;

    display: inline-block;

    content: url(../img/film_icon_01.svg);
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
}

@media screen and (max-width: 767px)
{
    .jyunrei-link::before
    {
        left: 15px;

        width: 24px;
    }
}

@media screen and (min-width: 768px)
{
    .jyunrei-link::before
    {
        left: 15px;

        width: 28px;
    }
}

.jyunrei-link::after
{
    position: absolute;
    top: 50%;
    right: 20px;

    display: inline-block;

    width: 10px;
    height: 10px;

    content: '';
    -webkit-transform: rotate(45deg) translateY(-50%);
            transform: rotate(45deg) translateY(-50%);

    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
}

.jyunrei-body
{
    background: url(../img/film_bg_04.jpg) repeat;
}

@media screen and (max-width: 767px)
{
    .jyunrei-body
    {
        padding-top: 40px;
        padding-bottom: 80px;
    }
}

@media screen and (min-width: 768px)
{
    .jyunrei-body
    {
        padding-top: 75px;
        padding-bottom: 110px;
    }
}

@media screen and (max-width: 767px)
{
    .jyunrei-inner
    {
        padding: 0 3%;
    }
}

@media screen and (min-width: 768px)
{
    .jyunrei-inner
    {
        width: 1000px;
        margin-right: auto; 
        margin-left: auto;
    }
}

@media screen and (max-width: 767px)
{
    .jyunreiBlock
    {
        margin-top: 30px;
    }
}

@media screen and (min-width: 768px)
{
    .jyunreiBlock
    {
        margin-top: 70px;
    }
}

@media screen and (min-width: 768px)
{
    .jyunreiBlock:nth-of-type(1)
    {
        margin-top: 0;
    }
}

@media screen and (max-width: 767px)
{
    .jyunreiBlock-heading
    {
        margin-bottom: 30px;
    }
}

@media screen and (min-width: 768px)
{
    .jyunreiBlock-heading
    {
        margin-bottom: 50px;
    }
}

.jyunreiBlock-title
{
    font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;

    position: relative;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    background: url(../img/film_icon_02.svg) no-repeat center center; 

    -webkit-box-align: center; 

        -ms-flex-align: center; 

            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

@media screen and (max-width: 767px)
{
    .jyunreiBlock-title
    {
        font-size: 150%; 

        height: 70px;
        margin-bottom: 20px;
    }
}

@media screen and (min-width: 768px)
{
    .jyunreiBlock-title
    {
        font-size: 267%;

        height: 118px; 
        margin-bottom: 35px;
    }
}

.jyunreiBlock-text
{
    text-align: center;
}

@media screen and (min-width: 768px)
{
    .jyunreiBlock-text
    {
        font-size: 117%;
    }
}

.jyunreiBlock-list
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;

        flex-wrap: wrap;
}

@media screen and (max-width: 767px)
{
    .jyunreiBlock-item
    {
        width: 100%;
        margin-top: 20px;
    }
}

@media screen and (min-width: 768px)
{
    .jyunreiBlock-item
    {
        width: 485px;
        margin-top: 30px; 
        margin-right: 30px;
    }
}

@media screen and (min-width: 768px)
{
    .jyunreiBlock-item:nth-child(2n)
    {
        margin-right: 0;
    }
}

@media screen and (min-width: 768px)
{
    .jyunreiBlock-item:nth-child(-n+2)
    {
        margin-top: 0;
    }
}

.jyunreiLocation
{
    position: relative;

    background-color: #fff;
}

@media screen and (max-width: 767px)
{
    .jyunreiLocation
    {
        padding: 15px;
    }
}

@media screen and (min-width: 768px)
{
    .jyunreiLocation
    {
        padding: 18px;
    }
}

.jyunreiLocation-area
{
    font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
    line-height: 1; 

    position: absolute;
    z-index: 2;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    color: #fff;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

@media screen and (max-width: 767px)
{
    .jyunreiLocation-area
    {
        font-size: 92%;

        top: 35px;
        left: -8px;

        width: 60px; 
        height: 25px;
    }
}

@media screen and (min-width: 768px)
{
    .jyunreiLocation-area
    {
        font-size: 108%;

        top: 45px;
        left: -10px;

        width: 80px; 
        height: 35px;
    }
}

@media screen and (max-width: 767px)
{
    .jyunreiLocation-image
    {
        margin-bottom: 10px;
    }
}

@media screen and (min-width: 768px)
{
    .jyunreiLocation-image
    {
        margin-bottom: 26px;
    }
}

.jyunreiLocation-image img
{
    height: auto;
}

@media screen and (max-width: 767px)
{
    .jyunreiLocation-image img
    {
        width: 100%;
    }
}

@media screen and (min-width: 768px)
{
    .jyunreiLocation-image img
    {
        width: 100%;
        height: 300px;

        -o-object-fit: cover;

           object-fit: cover;
    }
}

.jyunreiLocation-title
{
    font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
}

@media screen and (max-width: 767px)
{
    .jyunreiLocation-title
    {
        font-size: 133%; 

        margin-bottom: 10px;
    }
}

@media screen and (min-width: 768px)
{
    .jyunreiLocation-title
    {
        font-size: 167%; 

        margin-bottom: 20px;
    }
}

.jyunreiLocation-text
{
    line-height: 2;
}

@media screen and (max-width: 767px)
{
    .jyunreiLocation-text
    {
        font-size: 100%; 

        margin-bottom: 1em;
    }
}

@media screen and (min-width: 768px)
{
    .jyunreiLocation-text
    {
        font-size: 100%; 

        margin-bottom: 1em;
    }
}

.jyunreiLocation-list
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-pack: justify;

        -ms-flex-pack: justify;

            justify-content: space-between;
}

@media screen and (max-width: 767px)
{
    .jyunreiLocation-list
    {
        margin-bottom: 10px;
    }
}

@media screen and (min-width: 768px)
{
    .jyunreiLocation-list
    {
        margin-bottom: 20px;
    }
}

.jyunreiLocation-list:last-child
{
    margin-bottom: 0;
}

.jyunreiLocation-item
{
    width: 48%;
    margin-right: 4%;
}

@media screen and (max-width: 767px)
{
    .jyunreiLocation-item
    {
        margin-top: 10px;
    }
}

@media screen and (min-width: 768px)
{
    .jyunreiLocation-item
    {
        margin-top: 20px;
    }
}

@media screen and (max-width: 767px)
{
    .jyunreiLocation-item:nth-child(2n)
    {
        margin-right: 0;
    }
}

@media screen and (min-width: 768px)
{
    .jyunreiLocation-item:nth-child(2n)
    {
        margin-right: 0;
    }
}

@media screen and (max-width: 767px)
{
    .jyunreiLocation-item:nth-child(-n+2)
    {
        margin-top: 0;
    }
}

@media screen and (min-width: 768px)
{
    .jyunreiLocation-item:nth-child(-n+2)
    {
        margin-top: 0;
    }
}

.jyunreiLocation-link
{
    position: relative;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-sizing: border-box;

            box-sizing: border-box;
    width: 100%;

    border: 1px solid #74a0b8; 

    -webkit-box-align: center; 

        -ms-flex-align: center; 

            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

@media screen and (max-width: 767px)
{
    .jyunreiLocation-link
    {
        height: 32px;
        margin-top: 10px;
    }
}

@media screen and (min-width: 768px)
{
    .jyunreiLocation-link
    {
        height: 32px;
    }
}

.jyunreiLocation-link::after
{
    position: absolute;
    top: 50%;
    right: 10px;

    display: inline-block;

    width: 14px;
    height: 14px;

    content: url(../img/common_icon_04_blue.svg);
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);

    background-size: cover;
}

.jyunreiLocation-thumbnail
{
    position: relative;
}

.jyunreiLocation-thumbnail img
{
    -o-object-fit: cover;
       object-fit: cover;
}

@media screen and (max-width: 767px)
{
    .jyunreiLocation-thumbnail img
    {
        width: 100%;
        height: auto;
    }
}

@media screen and (min-width: 768px)
{
    .jyunreiLocation-thumbnail img
    {
        width: 100%;
        height: 140px;
    }
}

.movie
{
    background-color: #e5e5e5;
}

@media screen and (max-width: 767px)
{
    .movie
    {
        padding: 15px;
    }
}

@media screen and (min-width: 768px)
{
    .movie
    {
        padding: 20px;
    }
}

.movie-container
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

@media screen and (max-width: 767px)
{
    .movie-cover
    {
        width: 100px;
        margin-right: 10px;
    }
}

@media screen and (min-width: 768px)
{
    .movie-cover
    {
        width: 224px;
        margin-right: 20px;
    }
}

.movie-cover img
{
    width: 100%;
    height: auto;
}

@media screen and (min-width: 768px)
{
    .movie-cover img
    {
        width: 224px;
        height: 320px;

        -o-object-fit: cover;

           object-fit: cover;
    }
}

@media screen and (max-width: 767px)
{
    .movie-content
    {
        -webkit-box-flex: 1;
            -ms-flex: 1;
                flex: 1;
    }
}

@media screen and (min-width: 768px)
{
    .movie-content
    {
        -webkit-box-flex: 1;
            -ms-flex: 1;
                flex: 1;
    }
}

.movie-title
{
    font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
    font-weight: bold;
}

@media screen and (max-width: 767px)
{
    .movie-title
    {
        font-size: 133%;
        line-height: 1.4; 

        margin-bottom: 20px;
    }
}

@media screen and (min-width: 768px)
{
    .movie-title
    {
        font-size: 150%;
        line-height: 1.4; 

        margin-bottom: 30px;
    }
}

@media screen and (max-width: 767px)
{
    .movie-data
    {
        font-size: 92%; 

        margin-top: 10px;
    }
}

@media screen and (min-width: 768px)
{
    .movie-data
    {
        font-size: 100%; 

        margin-top: 10px;
    }
}

.movie-label
{
    font-weight: bold; 

    display: inline-block;

    color: #74a0b8;
}

.movie-field
{
    display: inline-block;
}

@media screen and (max-width: 767px)
{
    .movie-text
    {
        font-size: 92%;
        line-height: 1.75; 

        margin-top: 20px;
    }
}

@media screen and (min-width: 768px)
{
    .movie-text
    {
        line-height: 2; 

        margin-top: 30px;
    }
}

.movie-list
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;

        flex-wrap: wrap;
}

@media screen and (max-width: 767px)
{
    .movie-list
    {
        margin-top: 10px;
    }
}

@media screen and (min-width: 768px)
{
    .movie-list
    {
        margin-top: 20px;
    }
}

.movie-item
{
    width: 32.58%;
    margin-right: 1.12%;
}

.movie-item:nth-child(3n)
{
    margin-right: 0;
}

.movie-item img
{
    width: 100%;
    height: auto;
}

.areaSearch
{
    position: relative;
}

.areaSearch--bg::before
{
    position: absolute;
    z-index: 0;
    left: 50%;

    display: inline-block;

    content: '';
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);

    opacity: .95;
    background-image: url(../img/gourmet_bg_02.png);
    background-repeat: no-repeat; 
    background-size: cover;
}

@media screen and (max-width: 767px)
{
    .areaSearch--bg::before
    {
        top: -60px; 

        width: 155px;
        height: 311px;
    }
}

@media screen and (min-width: 768px)
{
    .areaSearch--bg::before
    {
        top: -165px; 

        width: 197px;
        height: 394px;
    }
}

.areaSearch__list
{
    position: relative;
    z-index: 2;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -ms-flex-wrap: wrap;

        flex-wrap: wrap;
}

@media screen and (max-width: 767px)
{
    .areaSearch__list
    {
        padding-right: 3%; 
        padding-left: 3%;
    }
}

@media screen and (max-width: 767px)
{
    .areaSearch__item
    {
        width: 49%;
        margin-right: 2%;
        margin-bottom: 10px;
    }
}

@media screen and (min-width: 768px)
{
    .areaSearch__item
    {
        width: 180px;
        margin-top: 25px; 
        margin-right: 25px;
    }
}

@media screen and (max-width: 767px)
{
    .areaSearch__item:nth-child(2n)
    {
        margin-right: 0;
    }
}

@media screen and (min-width: 768px)
{
    .areaSearch__item:nth-child(5n)
    {
        margin-right: 0;
    }
}

@media screen and (min-width: 768px)
{
    .areaSearch__item:nth-child(-n+5)
    {
        margin-top: 0;
    }
}

.areaSearch__item .cat-tokai
{
    border-color: #4c616f;
    background-color: #fff;
}

.areaSearch__item .cat-oobu
{
    border-color: #1b4f2d;
    background-color: #fff;
}

.areaSearch__item .cat-higashiura
{
    border-color: #662554;
    background-color: #fff;
}

.areaSearch__item .cat-chita
{
    border-color: #741d31;
    background-color: #fff;
}

.areaSearch__item .cat-tokoname
{
    border-color: #7d592d;
    background-color: #fff;
}

.areaSearch__item .cat-agui
{
    border-color: #76774e;
    background-color: #fff;
}

.areaSearch__item .cat-handa
{
    border-color: #5c5d5d;
    background-color: #fff;
}

.areaSearch__item .cat-taketoyo
{
    border-color: #552e1b;
    background-color: #fff;
}

.areaSearch__item .cat-mihama
{
    border-color: #1c6659;
    background-color: #fff;
}

.areaSearch__item .cat-minamichita
{
    border-color: #425378;
    background-color: #fff;
}

.areaSearch__button
{
    font-weight: bold;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    color: #5c5d5d;
    background-color: #fff; 

    -webkit-box-align: center; 

        -ms-flex-align: center; 

            align-items: center;
}

@media screen and (max-width: 767px)
{
    .areaSearch__button
    {
        height: 38px;
        padding-left: 20px; 

        border-left: 20px solid;
    }
}

@media screen and (min-width: 768px)
{
    .areaSearch__button
    {
        font-size: 133%;

        height: 40px;
        padding-left: 20px;

        border-left: 20px solid;
    }
}

.categorySearch__list
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;

        flex-wrap: wrap;
}

@media screen and (max-width: 767px)
{
    .categorySearch__list
    {
        padding-right: 3%; 
        padding-left: 3%;
    }
}

@media screen and (max-width: 767px)
{
    .categorySearch__item
    {
        width: 49%;
        margin-right: 2%;
        margin-bottom: 10px;
    }
}

@media screen and (min-width: 768px)
{
    .categorySearch__item
    {
        width: 220px;
        margin-top: 40px;
        margin-right: 40px;
    }
}

@media screen and (max-width: 767px)
{
    .categorySearch__item:nth-child(2n)
    {
        margin-right: 0;
    }
}

@media screen and (min-width: 768px)
{
    .categorySearch__item:nth-child(4n)
    {
        margin-right: 0;
    }
}

@media screen and (min-width: 768px)
{
    .categorySearch__item:nth-child(-n+4)
    {
        margin-top: 0;
    }
}

.categorySearch__button
{
    font-weight: bold;

    position: relative;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    color: #5c5d5d;
    background-color: #fff; 

    -webkit-box-align: center; 

        -ms-flex-align: center; 

            align-items: center;
}

@media screen and (max-width: 767px)
{
    .categorySearch__button
    {
        height: 38px;
        padding: 0 5px; 

        border-radius: 4px;
    }
}

@media screen and (min-width: 768px)
{
    .categorySearch__button
    {
        font-size: 133%;

        height: 40px;
        padding-left: 75px; 

        border-radius: 8px;
    }
}

.categorySearch__thumbnail
{
    display: inline-block;
}

@media screen and (max-width: 767px)
{
    .categorySearch__thumbnail
    {
        width: 26px;
        height: 26px;
        margin-right: 10px;
    }
}

@media screen and (min-width: 768px)
{
    .categorySearch__thumbnail
    {
        position: absolute;
        top: -16px;
        left: 16px;

        width: 45px;
        height: 45px;
    }
}

.categorySearch__thumbnail img
{
    width: 100%;
    height: 100%;

    -o-object-fit: cover;

       object-fit: cover;
}

.gourmeHeading
{
    position: relative;
}

.gourmeHeading__container--top
{
    background: url(../img/gourmet_bg_01.jpg) no-repeat;
    background-position: center center; 
    background-size: cover;
}

@media screen and (max-width: 767px)
{
    .gourmeHeading__container--top
    {
        height: 200px;
    }
}

@media screen and (min-width: 768px)
{
    .gourmeHeading__container--top
    {
        height: 400px;
    }
}

@media screen and (max-width: 767px)
{
    .gourmeHeading__container--search
    {
        height: 180px;
    }
}

@media screen and (min-width: 768px)
{
    .gourmeHeading__container--search
    {
        height: 305px; 
        padding-top: 10px;
    }
}

.gourmeHeading__logo
{
    position: absolute;
    left: 50%;

    display: inline-block;

    -webkit-transform: translateX(-50%);

            transform: translateX(-50%);
}

@media screen and (max-width: 767px)
{
    .gourmeHeading__logo--top
    {
        top: 25px;

        width: 235px;
    }
}

@media screen and (min-width: 768px)
{
    .gourmeHeading__logo--top
    {
        top: 40px;
    }
}

@media screen and (max-width: 767px)
{
    .gourmeHeading__logo--top img
    {
        width: 100%;
        height: auto;
    }
}

@media screen and (max-width: 767px)
{
    .gourmeHeading__logo--search
    {
        top: 25px;

        width: 235px;
    }
}

@media screen and (max-width: 767px)
{
    .gourmeHeading__logo--search img
    {
        width: 100%;
        height: auto;
    }
}

.gourmeNavigation
{
    background: #000;
}

.gourmeNavigation.cat-tokai
{
    background: #4c616f;
}

.gourmeNavigation.cat-oobu
{
    background: #1b4f2d;
}

.gourmeNavigation.cat-higashiura
{
    background: #662554;
}

.gourmeNavigation.cat-chita
{
    background: #741d31;
}

.gourmeNavigation.cat-tokoname
{
    background: #7d592d;
}

.gourmeNavigation.cat-agui
{
    background: #76774e;
}

.gourmeNavigation.cat-handa
{
    background: #5c5d5d;
}

.gourmeNavigation.cat-taketoyo
{
    background: #552e1b;
}

.gourmeNavigation.cat-mihama
{
    background: #1c6659;
}

.gourmeNavigation.cat-minamichita
{
    background: #425378;
}

.gourmeNavigation--search
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

@media screen and (max-width: 767px)
{
    .gourmeNavigation--search
    {
        height: 60px;
    }
}

@media screen and (min-width: 768px)
{
    .gourmeNavigation--search
    {
        height: 80px;
    }
}

.gourmeNavigation__list
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

@media screen and (max-width: 767px)
{
    .gourmeNavigation__list
    {
        height: 60px;
    }
}

@media screen and (min-width: 768px)
{
    .gourmeNavigation__list
    {
        height: 80px;
    }
}

@media screen and (max-width: 767px)
{
    .gourmeNavigation__list--top .gourmeNavigation__item
    {
        margin: 0 25px;
    }
}

@media screen and (min-width: 768px)
{
    .gourmeNavigation__list--top .gourmeNavigation__item
    {
        margin: 0 125px;
    }
}

@media screen and (min-width: 768px)
{
    .gourmeNavigation__list--search .gourmeNavigation__item
    {
        padding-right: 30px;
        padding-left: 30px;
    }
}

@media screen and (max-width: 767px)
{
    .gourmeNavigation__icon
    {
        width: 28px;
        margin-right: 20px;
    }
}

@media screen and (min-width: 768px)
{
    .gourmeNavigation__icon
    {
        margin-right: 20px;
    }
}

@media screen and (max-width: 767px)
{
    .gourmeNavigation__icon img
    {
        width: 100%;
        height: auto;
    }
}

@media screen and (max-width: 767px)
{
    .gourmeNavigation__arrow
    {
        width: 3px;
        margin-left: 12px;

        -webkit-transform: translateY(2px);

                transform: translateY(2px);
    }
}

@media screen and (min-width: 768px)
{
    .gourmeNavigation__arrow
    {
        margin-left: 20px;
    }
}

@media screen and (max-width: 767px)
{
    .gourmeNavigation__arrow img
    {
        width: 100%;
        height: auto;
    }
}

.gourmeNavigation__link
{
    font-weight: bold; 

    display: -webkit-box; 

    display: -ms-flexbox; 

    display: flex;

    text-decoration: none;

    color: #fff;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;
}

@media screen and (max-width: 767px)
{
    .gourmeNavigation__link
    {
        font-size: 117%;
    }
}

@media screen and (min-width: 768px)
{
    .gourmeNavigation__link
    {
        font-size: 167%;
    }
}

.gourmeNavigation__col
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-sizing: border-box;

            box-sizing: border-box; 
    width: 50%;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;
}

@media screen and (max-width: 767px)
{
    .gourmeNavigation__col
    {
        height: 20px; 
        padding-right: 1em;
        padding-left: 1em;
    }
}

@media screen and (min-width: 768px)
{
    .gourmeNavigation__col
    {
        height: 42px; 
        padding-right: 30px;
        padding-left: 30px;
    }
}

.gourmeNavigation__col--label
{
    border-right: 1px solid #fff; 

    -webkit-box-pack: end; 

        -ms-flex-pack: end; 

            justify-content: flex-end;
}

.gourmeNavigation__col--content
{
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
}

.gourmeNavigation__col--all
{
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

.gourmeNavigation__label
{
    font-weight: bold;

    letter-spacing: .075em; 

    color: #fff;
}

@media screen and (min-width: 768px)
{
    .gourmeNavigation__label
    {
        font-size: 16px;
    }
}

.gourmeNavigation__label--all
{
    font-size: 20px;
}

.gourmeNavigation__query
{
    width: 50%;
}

@media screen and (max-width: 767px)
{
    .gourmet__result
    {
        padding-top: 50px;
    }
}

@media screen and (min-width: 768px)
{
    .gourmet__result
    {
        padding-top: 70px;
    }
}

.gourmet__note
{
    margin: 2em 0; 

    text-align: center;
}

@media screen and (min-width: 768px)
{
    .gourmet__note
    {
        font-size: 133%;
    }
}

.gourmetBlock--rev
{
    background-color: #393839;
}

.gourmetBlock--02
{
    background: url(../img/bg_07.jpg) repeat;
}

@media screen and (max-width: 767px)
{
    .gourmetBlock__inner
    {
        padding-right: 5%;
        padding-left: 5%;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetBlock__inner
    {
        max-width: 1000px;
        margin-right: auto; 
        margin-left: auto;
    }
}

@media screen and (max-width: 767px)
{
    .gourmetBlock__heading
    {
        padding: 30px 0;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetBlock__heading
    {
        padding: 60px 0;
    }
}

.gourmetBlock__title
{
    text-align: center;
}

@media screen and (max-width: 767px)
{
    .gourmetBlock__title
    {
        height: 46px;
    }
}

@media screen and (max-width: 767px)
{
    .gourmetBlock__title img
    {
        width: auto; 
        height: 100%;
    }
}

@media screen and (max-width: 767px)
{
    .gourmetBlock__body
    {
        padding-bottom: 50px;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetBlock__body
    {
        padding-bottom: 60px;
    }
}

.gourmetButton
{
    font-weight: bold;

    position: relative;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    border-radius: 8px; 

    -webkit-box-align: center; 

        -ms-flex-align: center; 

            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

@media screen and (max-width: 767px)
{
    .gourmetButton
    {
        height: 40px;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetButton
    {
        font-size: 117%; 

        height: 40px;
    }
}

.gourmetButton::after
{
    position: absolute;
    top: 50%;

    display: inline-block;

    content: url(../img/gourmet_blank_01.svg); 
    -webkit-transform: translateY(-50%); 
            transform: translateY(-50%);
}

@media screen and (max-width: 767px)
{
    .gourmetButton::after
    {
        right: 20px;

        width: 9px;
        height: 9px;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetButton::after
    {
        right: 18px;

        width: 13px;
        height: 13px;
    }
}

.gourmetButton--primary
{
    color: #fff;
    background-color: #393839;
}

.gourmetButton--secondary
{
    color: #fff;
    background-color: #e2803d;
}

.gourmetButton--rev
{
    color: #393839;
    background-color: #fff;
}

.gourmetButton--rev::after
{
    content: url(../img/gourmet_blank_02.svg);
}

@media screen and (min-width: 768px)
{
    .gourmetButton--map
    {
        margin-top: 5px; 
        padding-right: 20px;
    }
}

@media screen and (max-width: 767px)
{
    .gourmetLead
    {
        padding: 35px 0 40px;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetLead
    {
        padding: 75px 0 125px;
    }
}

.gourmetLead__content
{
    position: relative;
}

@media screen and (max-width: 767px)
{
    .gourmetLead__content
    {
        margin-bottom: 35px;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetLead__content
    {
        margin-bottom: 70px;
    }
}

@media screen and (max-width: 767px)
{
    .gourmetLead__illust
    {
        display: none;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetLead__illust
    {
        position: absolute;

        display: inline-block;
    }
}

.gourmetLead__illust--01
{
    top: 0;
    left: 120px;
}

.gourmetLead__illust--02
{
    top: -8px; 
    right: 150px;
}

.gourmetLead__text
{
    font-weight: bold;
    line-height: 2;

    text-align: center;
    letter-spacing: .1em;
}

@media screen and (min-width: 768px)
{
    .gourmetLead__text
    {
        font-size: 125%;
    }
}

.gourmetLead__images
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

@media screen and (max-width: 767px)
{
    .gourmetLead__images
    {
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetLead__images
    {
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
    }
}

.gourmetLead__item
{
    position: relative;
}

@media screen and (max-width: 767px)
{
    .gourmetLead__item
    {
        width: 60px;
        margin: 0 5px;
    }
}

.gourmetLead__item::after
{
    position: absolute;

    display: inline-block;

    content: url(../img/gourmet_img_08.svg);
}

@media screen and (max-width: 767px)
{
    .gourmetLead__item::after
    {
        right: -4px;
        bottom: -4px; 

        width: 30px;
        height: 30px;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetLead__item::after
    {
        right: -15px;
        bottom: -15px; 

        width: 106px;
        height: 106px;
    }
}

@media screen and (max-width: 767px)
{
    .gourmetSake
    {
        padding-right: 5%; 
        padding-left: 5%;
    }
}

.gourmetSake__text
{
    font-weight: bold;
    line-height: 2; 

    text-align: center;
    letter-spacing: .1em;
}

@media screen and (min-width: 768px)
{
    .gourmetSake__text
    {
        font-size: 125%; 

        margin-bottom: 90px;
    }
}

.gourmetSake__list
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

@media screen and (max-width: 767px)
{
    .gourmetSake__list
    {
        max-width: 300px;
        margin-right: auto; 
        margin-left: auto;

        -ms-flex-wrap: wrap;

            flex-wrap: wrap;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetSake__list
    {
        width: 1000px;
        margin-right: auto;
        margin-left: auto;

        -webkit-box-pack: justify;

            -ms-flex-pack: justify;

                justify-content: space-between;
    }
}

@media screen and (max-width: 767px)
{
    .gourmetSake__item
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;

        width: 15%;
        margin-top: 20px;
        margin-right: 2%;

        -webkit-box-align: center;

            -ms-flex-align: center;

                align-items: center;
        -webkit-box-pack: end;
            -ms-flex-pack: end;
                justify-content: flex-end;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetSake__item
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;

        -webkit-box-align: center;

            -ms-flex-align: center;

                align-items: center;
    }
}

@media screen and (max-width: 767px)
{
    .gourmetSake__item:nth-child(6n)
    {
        margin-right: 0;
    }
}

@media screen and (max-width: 767px)
{
    .gourmetSake__item img
    {
        width: 100%;
        height: auto;
    }
}

.gourmetSake__number
{
    font-weight: bold; 

    display: -webkit-box; 

    display: -ms-flexbox; 

    display: flex;

    color: #fff;
    background-color: #393839;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

@media screen and (max-width: 767px)
{
    .gourmetSake__number
    {
        font-size: 83%; 

        width: 16px;
        height: 16px;
        margin-top: 10px;

        border-radius: 50%;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetSake__number
    {
        font-size: 133%;

        width: 20px;
        height: 20px;
        margin-top: 30px;

        border-radius: 10px;
    }
}

.gourmetSake__makers
{
    border: 1px solid #393839;
}

@media screen and (max-width: 767px)
{
    .gourmetSake__makers
    {
        margin-top: 20px;
        padding: 20px 0;

        border-radius: 10px;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetSake__makers
    {
        max-width: 1100px;
        margin-top: 45px;
        margin-right: auto;
        margin-left: auto;
        padding: 20px 0;

        border-radius: 15px;
    }
}

.gourmetSake__makersList
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;

    -webkit-box-sizing: border-box;

            box-sizing: border-box; 

    list-style-position: inside;

    counter-reset: item;

    -ms-flex-wrap: wrap;

        flex-wrap: wrap;
}

@media screen and (max-width: 767px)
{
    .gourmetSake__makersList
    {
        font-size: 100%;
        line-height: 1.6; 

        padding: 0 20px;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetSake__makersList
    {
        font-size: 125%;
        line-height: 2;

        width: 1000px;
        height: 12em;
        margin-right: auto;
        margin-left: auto;
        padding: 0 40px;
    }
}

.gourmetSake__maker
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

@media screen and (max-width: 767px)
{
    .gourmetSake__maker
    {
        margin-bottom: .75em;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetSake__maker
    {
        font-size: 15px; 

        -webkit-box-align: center; 

            -ms-flex-align: center; 

                align-items: center;
    }
}

.gourmetSake__maker::before
{
    content: counter(item) '.'; 
    counter-increment: item;
}

@media screen and (max-width: 767px)
{
    .gourmetSake__maker:last-child
    {
        margin-bottom: 0;
    }
}

.gourmetSake__area
{
    font-weight: bold; 

    display: -webkit-box; 

    display: -ms-flexbox; 

    display: flex;

    color: #fff;
    border-radius: 4px;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

@media screen and (max-width: 767px)
{
    .gourmetSake__area
    {
        font-size: 83%;

        width: 50px;
        height: 18px;
        margin-left: 15px;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetSake__area
    {
        font-size: 12px;

        width: 70px;
        height: 24px;
        margin-left: 20px;
    }
}

.gourmetSearch
{
    background: url(../img/bg_06.jpg) repeat;
}

@media screen and (max-width: 767px)
{
    .gourmetSearch
    {
        padding-top: 40px;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetSearch
    {
        position: relative;

        width: 1100px;
        margin-right: auto;
        margin-left: auto;
        padding-top: 60px;

        border-radius: 15px;
    }
}

.gourmetSearch__heading
{
    text-align: center;
}

@media screen and (max-width: 767px)
{
    .gourmetSearch__heading
    {
        margin-bottom: 35px;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetSearch__heading
    {
        margin-bottom: 70px;
    }
}

@media screen and (max-width: 767px)
{
    .gourmetSearch__title
    {
        height: 46px;
        margin-bottom: 20px;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetSearch__title
    {
        margin-bottom: 40px;
    }
}

@media screen and (max-width: 767px)
{
    .gourmetSearch__title img
    {
        width: auto; 
        height: 100%;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetSearch__inner
    {
        max-width: 1000px;
        margin-right: auto; 
        margin-left: auto;
    }
}

.gourmetSearch__label
{
    position: relative;
    z-index: 2;

    text-align: center;
}

@media screen and (max-width: 767px)
{
    .gourmetSearch__label
    {
        height: 36px;
        margin-bottom: 25px;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetSearch__label
    {
        margin-bottom: 50px;
    }
}

@media screen and (max-width: 767px)
{
    .gourmetSearch__label img
    {
        width: auto;
        height: 100%;
    }
}

@media screen and (max-width: 767px)
{
    .gourmetSearch__row
    {
        padding-bottom: 40px;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetSearch__row
    {
        padding-bottom: 90px;
    }
}

.gourmetSearchButton
{
    font-weight: bold;

    position: relative;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    margin-right: auto; 
    margin-left: auto;

    color: #fff;
    background-color: #e2803d;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

@media screen and (max-width: 767px)
{
    .gourmetSearchButton
    {
        width: 250px;
        height: 35px;

        border-radius: 20px;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetSearchButton
    {
        font-size: 167%;

        width: 360px;
        height: 50px;

        border-radius: 25px;
    }
}

.gourmetSearchButton__icon
{
    position: absolute;
    top: 50%;

    display: inline-block;

    -webkit-transform: translateY(-50%);

            transform: translateY(-50%);
}

@media screen and (max-width: 767px)
{
    .gourmetSearchButton__icon
    {
        left: 20px; 

        width: 16px;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetSearchButton__icon
    {
        left: 35px;
    }
}

.gourmetSearchButton__arrow
{
    position: absolute;
    top: 50%;

    display: inline-block;

    -webkit-transform: translateY(-50%);

            transform: translateY(-50%);
}

@media screen and (max-width: 767px)
{
    .gourmetSearchButton__arrow
    {
        right: 50px; 

        width: 4px;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetSearchButton__arrow
    {
        right: 50px;
    }
}

@media screen and (max-width: 767px)
{
    .gourmetSearchButton__arrow img
    {
        width: 100%;
        height: auto;
    }
}

.gourmetStore--rev
{
    color: #fff;
}

.gourmetStore--rev .gourmetStore__name a
{
    color: #fff;
    border-color: #fff;
}

@media screen and (min-width: 768px)
{
    .gourmetStore--large .gourmetStore__thumbnail
    {
        width: 470px;
        height: 300px;
        margin-bottom: 15px;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetStore--large .gourmetStore__name
    {
        font-size: 208%; 

        margin-bottom: 10px;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetStore--large .gourmetStore__description
    {
        font-size: 125%; 

        margin-top: 8px;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetStore--medium .gourmetStore__thumbnail
    {
        width: 300px;
        height: 200px; 
        margin-bottom: 18px;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetStore--medium .gourmetStore__name
    {
        font-size: 167%; 

        margin-bottom: 13px;
    }
}

@media screen and (max-width: 767px)
{
    .gourmetStore--medium .gourmetStore__tel
    {
        top: 4px;
    }
}

.gourmetStore--medium .gourmetStore__number
{
    display: block;
}

@media screen and (min-width: 768px)
{
    .gourmetStore--medium .gourmetStore__description
    {
        font-size: 108%; 

        margin-top: 8px;
    }
}

.gourmetStore__thumbnail
{
    position: relative;
}

@media screen and (max-width: 767px)
{
    .gourmetStore__thumbnail
    {
        margin-bottom: 15px;
    }
}

.gourmetStore__thumbnail img
{
    width: 100%;

    -o-object-fit: cover;

       object-fit: cover;
}

@media screen and (max-width: 767px)
{
    .gourmetStore__thumbnail img
    {
        height: 190px;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetStore__thumbnail img
    {
        height: 100%;
    }
}

.gourmetStore__label
{
    position: absolute;
    top: 0;
    left: 0;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;
    overflow: hidden;

    -webkit-transform: translate(-25px, -20px);

            transform: translate(-25px, -20px);
    letter-spacing: .2em; 

    color: #fff;
    border-radius: 50%;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

@media screen and (max-width: 767px)
{
    .gourmetStore__label
    {
        font-size: 100%; 

        width: 50px;
        height: 50px;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetStore__label
    {
        font-size: 117%; 

        width: 70px;
        height: 70px;
    }
}

.gourmetStore__image
{
    overflow: hidden;
}

@media screen and (max-width: 767px)
{
    .gourmetStore__image
    {
        border-radius: 8px;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetStore__image
    {
        border-radius: 15px;
    }
}

.gourmetStore__name
{
    font-weight: bold;
    line-height: 1.6;
}

@media screen and (max-width: 767px)
{
    .gourmetStore__name
    {
        font-size: 133%;

        margin-bottom: 5px;
    }
}

.gourmetStore__name a
{
    display: inline;

    padding-bottom: 2px;

    color: #393839; 
    border-color: #000;
}

@media screen and (max-width: 767px)
{
    .gourmetStore__name a
    {
        border-bottom: 2px solid;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetStore__name a
    {
        border-bottom: 3px solid;
    }
}

.gourmetStore__information
{
    line-height: 1.6; 

    letter-spacing: .05em;

    color: #393839;
    color: #e2803d;
}

@media screen and (min-width: 768px)
{
    .gourmetStore__information
    {
        font-size: 108%;
    }
}

.gourmetStore__number
{
    position: relative;
}

@media screen and (max-width: 767px)
{
    .gourmetStore__number
    {
        padding-left: 15px;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetStore__number
    {
        padding-left: 17px;
    }
}

.gourmetStore__tel
{
    position: absolute;

    display: inline-block;
}

@media screen and (max-width: 767px)
{
    .gourmetStore__tel
    {
        top: 2px;
        left: 0;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetStore__tel
    {
        top: 4px;
        left: 0;
    }
}

@media screen and (max-width: 767px)
{
    .gourmetStore__address
    {
        font-size: 92%;
    }
}

.gourmetStore__description
{
    line-height: 2;
}

@media screen and (max-width: 767px)
{
    .gourmetStore__meta
    {
        margin-top: 1.5em;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetStore__meta
    {
        margin-top: 20px;
    }
}

.gourmetStore__grid
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-pack: justify;

        -ms-flex-pack: justify;

            justify-content: space-between;
}

@media screen and (max-width: 767px)
{
    .gourmetStore__grid
    {
        margin-bottom: 1.5em;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetStore__grid
    {
        margin-bottom: 20px;
    }
}

.gourmetStore__col--content
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;

    -webkit-box-pack: justify;

        -ms-flex-pack: justify;

            justify-content: space-between;
}

@media screen and (max-width: 767px)
{
    .gourmetStore__col--content
    {
        margin-right: 20px; 

        -webkit-box-flex: 1; 

            -ms-flex: 1; 

                flex: 1;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetStore__col--content
    {
        width: 170px;
    }
}

.gourmetStore__pic
{
    overflow: hidden; 

    border-radius: 15px;
}

.gourmetStore__categories
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;

        flex-wrap: wrap;
}

@media screen and (max-width: 767px)
{
    .gourmetStore__categories
    {
        margin-top: 1.5em;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetStore__categories
    {
        margin-top: 20px;
    }
}

@media screen and (max-width: 767px)
{
    .gourmetStore__item
    {
        width: 70px;
        margin-right: 10px;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetStore__item
    {
        width: 90px;
        margin-top: 10px;
        margin-right: 15px;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetStore__item:nth-child(-n+3)
    {
        margin-top: 0;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetStore__item:nth-child(3n)
    {
        margin-right: 0;
    }
}

.gourmetStore__category
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    color: #393839;
    border: 1px solid #393839; 
    border-radius: 8px;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

@media screen and (max-width: 767px)
{
    .gourmetStore__category
    {
        font-size: 75%;

        height: 30px;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetStore__category
    {
        font-size: 92%;

        height: 30px;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetStoreGroup
    {
        width: 100%;
    }
}

.gourmetStoreGroup__list
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 100%;

    -ms-flex-wrap: wrap;

        flex-wrap: wrap;
}

@media screen and (max-width: 767px)
{
    .gourmetStoreGroup__list
    {
        max-width: 285px;
        margin-right: auto; 
        margin-left: auto;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetStoreGroup__list--large .gourmetStoreGroup__item
    {
        width: 470px;
        margin-top: 60px;
        margin-right: 60px;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetStoreGroup__list--large .gourmetStoreGroup__item:nth-child(-n+2)
    {
        margin-top: 0;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetStoreGroup__list--large .gourmetStoreGroup__item:nth-child(2n)
    {
        margin-right: 0;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetStoreGroup__list--medium .gourmetStoreGroup__item
    {
        width: 300px; 
        margin-top: 50px;
        margin-right: 50px;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetStoreGroup__list--medium .gourmetStoreGroup__item:nth-child(-n+3)
    {
        margin-top: 0;
    }
}

@media screen and (min-width: 768px)
{
    .gourmetStoreGroup__list--medium .gourmetStoreGroup__item:nth-child(3n)
    {
        margin-right: 0;
    }
}

@media screen and (max-width: 767px)
{
    .gourmetStoreGroup__item
    {
        margin-bottom: 60px;
    }
}

@media screen and (max-width: 767px)
{
    .gourmetStoreGroup__item:last-child
    {
        margin-bottom: 0;
    }
}

.wonderland
{
    font-family: YuMincho, 'Yu Mincho', serif; 

    position: relative;
}

@media screen and (max-width: 767px)
{
    .wonderland
    {
        background: url(../img/bg_07_sp.jpg) repeat;
    }
}

@media screen and (min-width: 768px)
{
    .wonderland
    {
        background: url(../img/bg_07.jpg) repeat;
    }
}

.wonderland *
{
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}

.wonderland__mv img
{
    width: 100%;
    height: auto;
}

.wonderland__heading
{
    position: relative;
}

@media screen and (max-width: 767px)
{
    .wonderland__heading
    {
        padding: 90px 0 160px;
    }
}

@media screen and (min-width: 768px)
{
    .wonderland__heading
    {
        padding-top: 170px;
        padding-bottom: 280px;
    }
}

.wonderland__copy
{
    position: relative;
    z-index: 2;

    margin-right: auto; 
    margin-left: auto;
}

@media screen and (max-width: 767px)
{
    .wonderland__copy
    {
        width: 79.2%; 
        max-width: 297px;
    }
}

@media screen and (min-width: 768px)
{
    .wonderland__copy
    {
        width: 550px;
    }
}

.wonderland__badge
{
    position: absolute;

    display: inline-block;
}

@media screen and (max-width: 767px)
{
    .wonderland__badge
    {
        z-index: 3; 
        top: 170px;
        right: 20px;

        width: 90px;
        height: 90px;
    }
}

@media screen and (min-width: 768px)
{
    .wonderland__badge
    {
        top: 300px;
        right: -40px; 

        width: 225px;
    }
}

.wonderland__inner
{
    position: relative;
}

.wonderlandBlock
{
    position: relative;

    color: #4c4031;
}

@media screen and (max-width: 767px)
{
    .wonderlandBlock
    {
        padding-bottom: 80px;
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandBlock
    {
        min-height: 800px;
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandBlock--01
    {
        padding-bottom: 115px;
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandBlock--01 .wonderlandBlock__heading
    {
        margin-bottom: 100px;
    }
}

@media screen and (max-width: 767px)
{
    .wonderlandBlock--blue
    {
        background: url(../img/wonderland_bg_01_sp.jpg) repeat-x top center;
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandBlock--blue
    {
        background: url(../img/wonderland_bg_01.jpg) repeat-x top center;
    }
}

@media screen and (max-width: 767px)
{
    .wonderlandBlock--orange
    {
        background: url(../img/wonderland_bg_02_sp.jpg) repeat-x top center;
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandBlock--orange
    {
        background: url(../img/wonderland_bg_02.jpg) repeat-x top center;
    }
}

@media screen and (max-width: 767px)
{
    .wonderlandBlock--green
    {
        background: url(../img/wonderland_bg_03_sp.jpg) repeat-x top center;
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandBlock--green
    {
        background: url(../img/wonderland_bg_03.jpg) repeat-x top center;
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandBlock--rev .wonderlandBlock__heading
    {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
            -ms-flex-direction: row-reverse;
                flex-direction: row-reverse;
    }
}

.wonderlandBlock--rev .wonderlandBlock__heading::after
{
    display: block;

    content: '';
}

@media screen and (min-width: 768px)
{
    .wonderlandBlock--rev .wonderlandBlock__heading::after
    {
        right: auto;
        left: 100px;
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandBlock--rev .wonderlandBlock__container
    {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
            -ms-flex-direction: row-reverse;
                flex-direction: row-reverse;
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandBlock--rev .wonderlandBlock__gallery
    {
        -webkit-transform: translateX(100px);
                transform: translateX(100px);
    }
}

.wonderlandBlock__heading
{
    position: relative;
    z-index: 2;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    margin-right: auto; 
    margin-left: auto;

    -webkit-box-pack: justify;

        -ms-flex-pack: justify;

            justify-content: space-between;
}

@media screen and (max-width: 767px)
{
    .wonderlandBlock__heading
    {
        width: 337px;
        margin-bottom: 20px;
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandBlock__heading
    {
        width: 1000px;
        margin-bottom: 35px;
    }
}

.wonderlandBlock__heading::after
{
    position: absolute;
    top: 50%;

    display: block;

    content: '';
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%); 

    background: rgba(76, 64, 49, .8);
}

@media screen and (max-width: 767px)
{
    .wonderlandBlock__heading::after
    {
        right: 50px; 

        width: 207px;
        height: 1px;
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandBlock__heading::after
    {
        width: 755px;
    }
}

.wonderlandBlock__serial
{
    position: relative; 

    display: inline-block;
}

.wonderlandBlock__label
{
    position: absolute;
    left: 50%;

    display: inline-block;

    -webkit-transform: translateX(-50%);

            transform: translateX(-50%);
}

@media screen and (max-width: 767px)
{
    .wonderlandBlock__label
    {
        width: 64px;

        -webkit-transform: translate(-50%, -100%);

                transform: translate(-50%, -100%);
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandBlock__label
    {
        top: -25px;
    }
}

@media screen and (max-width: 767px)
{
    .wonderlandBlock__label img
    {
        width: 100%;
        height: auto;
    }
}

@media screen and (max-width: 767px)
{
    .wonderlandBlock__number
    {
        display: inline-block;

        width: 60px;
    }
}

@media screen and (max-width: 767px)
{
    .wonderlandBlock__area
    {
        width: 50px;
    }
}

@media screen and (max-width: 767px)
{
    .wonderlandBlock__carosel
    {
        margin-bottom: 60px;
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandBlock__carosel
    {
        margin-bottom: 115px;
    }
}

.wonderlandBlock__container
{
    position: relative;
    z-index: 2;
}

@media screen and (max-width: 767px)
{
    .wonderlandBlock__container
    {
        width: 300px;
        margin-right: auto; 
        margin-left: auto;
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandBlock__container
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        max-width: 1200px;
        margin-right: auto;
        margin-left: auto;
        padding: 0 100px; 

        -webkit-box-pack: justify; 

            -ms-flex-pack: justify; 

                justify-content: space-between;
    }
}

@media screen and (max-width: 767px)
{
    .wonderlandBlock__col
    {
        margin-bottom: 45px;
    }
}

@media screen and (max-width: 767px)
{
    .wonderlandBlock__col:last-child
    {
        margin-bottom: 0;
    }
}

@media screen and (max-width: 767px)
{
    .wonderlandBlock__gallery
    {
        margin-bottom: 30px;
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandBlock__gallery
    {
        width: 600px;

        -webkit-transform: translateX(-100px);

                transform: translateX(-100px);
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandBlock__content
    {
        width: 420px; 
        padding-top: 35px;
    }
}

.wonderlandBlock__lead
{
    font-weight: normal;
    line-height: 1.3;

    white-space: nowrap; 
    letter-spacing: .05em;
}

@media screen and (max-width: 767px)
{
    .wonderlandBlock__lead
    {
        font-size: 200%;

        margin-bottom: 20px;
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandBlock__lead
    {
        font-size: 300%; 

        margin-bottom: 25px;
    }
}

.wonderlandBlock__text
{
    font-weight: bold; 
    line-height: 2.3;

    letter-spacing: .1em;
}

@media screen and (min-width: 768px)
{
    .wonderlandBlock__text
    {
        font-size: 108%;
    }
}

@media screen and (max-width: 767px)
{
    .wonderlandBlock__footer
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        margin-top: 30px; 
        padding-top: 30px;

        border-top: 1px solid #4c4031;

        -webkit-box-pack: center;

            -ms-flex-pack: center;

                justify-content: center;
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandBlock__footer
    {
        margin-top: 40px; 
        padding-top: 46px;

        border-top: 1px solid #4c4031;
    }
}

.wonderlandBlock__button
{
    font-weight: bold;

    position: relative;

    display: inline-block;

    width: 100%;

    letter-spacing: .1em; 

    color: #4c4031;
    background-color: #fff;
}

@media screen and (max-width: 767px)
{
    .wonderlandBlock__button
    {
        font-size: 83%;
        line-height: 1.75;

        margin-top: 17px; 
        padding: 12px 38px 12px 15px;

        border-radius: 6px;
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandBlock__button
    {
        font-size: 125%;
        line-height: 1.75;

        margin-top: 24px; 
        padding: 18px 45px 18px 20px;

        border-radius: 12px;
    }
}

.wonderlandBlock__button:first-child
{
    margin-top: 0;
}

.wonderlandBlock__button::after
{
    position: absolute;
    top: 50%;

    display: inline-block;

    content: '';
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);

    background: url(../img/arrow_03.svg) no-repeat left top;
}

@media screen and (max-width: 767px)
{
    .wonderlandBlock__button::after
    {
        right: 12px; 

        width: 14px;
        height: 14px;
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandBlock__button::after
    {
        right: 20px;

        width: 20px;
        height: 20px;
    }
}

.wonderlandBlock__button--fullwidth
{
    width: 100%;
}

.wonderlandBlock__button--rev
{
    color: #fff;
    background-color: #4c4031;
}

.wonderlandBlock__button--blank::after
{
    background: url(../img/blank_03.svg) no-repeat left top;
}

@media screen and (max-width: 767px)
{
    .wonderlandBlock__button--blank::after
    {
        right: 12px; 

        width: 10px;
        height: 10px;
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandBlock__button--blank::after
    {
        right: 24px; 

        width: 14px;
        height: 14px;
    }
}

.wonderlandBlock__button--blank.wonderlandBlock__button--rev::after
{
    background: url(../img/blank_03_white.svg) no-repeat left top;
}

.wonderlandDeco
{
    position: absolute;

    display: inline-block;
}

@media screen and (max-width: 767px)
{
    .wonderlandDeco--style1
    {
        width: calc(273px / 2);
        height: calc(94px / 2);
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandDeco--style1
    {
        width: 273px;
        height: 94px;
    }
}

@media screen and (max-width: 767px)
{
    .wonderlandDeco--style2
    {
        width: calc(470px / 2);
        height: calc(155px / 2);
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandDeco--style2
    {
        width: 470px;
        height: 155px;
    }
}

@media screen and (max-width: 767px)
{
    .wonderlandDeco--posi1
    {
        top: 65px;
        right: -40px;
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandDeco--posi1
    {
        top: 106px;
        right: -32px;
    }
}

@media screen and (max-width: 767px)
{
    .wonderlandDeco--posi2
    {
        top: 170px; 
        left: -80px;
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandDeco--posi2
    {
        top: 305px;
        left: -184px;
    }
}

@media screen and (max-width: 767px)
{
    .wonderlandDeco--posi3
    {
        top: 280px;
        right: -20px;
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandDeco--posi3
    {
        top: 70px;
        left: 50%;

        -webkit-transform: translateX(420px) scale(-1, 1);

                transform: translateX(420px) scale(-1, 1);
    }
}

@media screen and (max-width: 767px)
{
    .wonderlandDeco--posi4
    {
        bottom: 360px;
        left: -40px;

        width: calc(470px / 2);
        height: calc(155px / 2);
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandDeco--posi4
    {
        bottom: 450px;
        left: 50%;

        -webkit-transform: translateX(-590px);

                transform: translateX(-590px);
    }
}

@media screen and (max-width: 767px)
{
    .wonderlandDeco--posi5
    {
        top: 340px;
        left: -90px;
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandDeco--posi5
    {
        top: 110px;
        left: 50%;

        -webkit-transform: translateX(250px) scale(-1, 1);

                transform: translateX(250px) scale(-1, 1);
    }
}

@media screen and (max-width: 767px)
{
    .wonderlandDeco--posi6
    {
        top: 310px;
        right: -40px;

        -webkit-transform: scale(-1, 1);

                transform: scale(-1, 1);
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandDeco--posi6
    {
        top: 130px;
        left: 50%;

        -webkit-transform: translateX(-730px) scale(-1, 1);

                transform: translateX(-730px) scale(-1, 1);
    }
}

@media screen and (max-width: 767px)
{
    .wonderlandDeco--posi7
    {
        top: 380px;
        left: -40px;

        -webkit-transform: scale(-1, 1);

                transform: scale(-1, 1);
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandDeco--posi7
    {
        top: 170px;
        left: 50%;

        -webkit-transform: translateX(360px) scale(-1, 1);

                transform: translateX(360px) scale(-1, 1);
    }
}

.wonderlandSpot
{
    font-family: 'Yu Mincho', serif;
}

@media screen and (max-width: 767px)
{
    .wonderlandSpot
    {
        background: url(../img/wonderland_bg_05_sp.jpg) repeat;
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandSpot
    {
        background: url(../img/wonderland_bg_05.jpg) repeat;
    }
}

@media screen and (max-width: 767px)
{
    .wonderlandSpot--archive
    {
        background: url(../img/wonderland_bg_07_sp.jpg) repeat;
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandSpot--archive
    {
        background: url(../img/wonderland_bg_07.jpg) repeat;
    }
}

@media screen and (max-width: 767px)
{
    .wonderlandSpot--archive .wonderlandSpot__heading
    {
        background: url(../img/wonderland_bg_06_sp.jpg) repeat-x;
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandSpot--archive .wonderlandSpot__heading
    {
        background: url(../img/wonderland_bg_06.jpg) repeat-x;
    }
}

@media screen and (max-width: 767px)
{
    .wonderlandSpot__heading
    {
        padding-top: 175px; 

        background: url(../img/wonderland_bg_04_sp.jpg) repeat-x;
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandSpot__heading
    {
        padding-top: 300px; 

        background: url(../img/wonderland_bg_04.jpg) repeat-x;
    }
}

.wonderlandSpot__title
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;

    margin-right: auto; 
    margin-left: auto;

    -webkit-box-pack: center;

        -ms-flex-pack: center;

            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

@media screen and (max-width: 767px)
{
    .wonderlandSpot__title
    {
        width: 235px;
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandSpot__title
    {
        width: 524px;
    }
}

@media screen and (max-width: 767px)
{
    .wonderlandSpot__en
    {
        width: 225px;
    }
}

.wonderlandSpot__jp
{
    font-weight: bold;

    text-align: center;
    letter-spacing: .1em;

    color: #fff;
    border-top: 1px solid #fff;
}

@media screen and (max-width: 767px)
{
    .wonderlandSpot__jp
    {
        font-size: 92%;

        width: 100%;
        margin-top: 8px;
        padding-top: 10px;
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandSpot__jp
    {
        font-size: 183%; 

        width: 100%;
        margin-top: 20px;
        padding-top: 20px;
    }
}

.wonderlandSpot__text
{
    line-height: 2.4;

    text-align: center;
    letter-spacing: .1em; 

    color: #fff;
}

@media screen and (max-width: 767px)
{
    .wonderlandSpot__text
    {
        margin-top: 25px;
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandSpot__text
    {
        font-size: 125%; 

        margin-top: 50px;
    }
}

@media screen and (max-width: 767px)
{
    .wonderlandSpot__body
    {
        padding-top: 35px;
        padding-bottom: 50px;
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandSpot__body
    {
        padding-top: 70px;
        padding-bottom: 94px;
    }
}

@media screen and (max-width: 767px)
{
    .wonderlandSpot__container
    {
        padding: 0 5%;
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandSpot__container
    {
        max-width: 1000px;
        margin-right: auto; 
        margin-left: auto;
    }
}

@media screen and (max-width: 767px)
{
    .wonderlandSpot__map
    {
        margin-top: 50px; 
        margin-right: -2%;
        margin-left: -2%;
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandSpot__map
    {
        margin-top: 100px;
    }
}

@media screen and (max-width: 767px)
{
    .wonderlandSpot__map iframe
    {
        width: 100%;
        height: 280px;
    }
}

.wonderlandVisual
{
    overflow: hidden;
}

@media screen and (max-width: 767px)
{
    .wonderlandVisual
    {
        height: 170vw;
    }
}

.wonderlandVisual__container
{
    position: relative;

    overflow: hidden; 

    width: 100%;
}

@media screen and (max-width: 767px)
{
    .wonderlandVisual__container
    {
        height: 170vw;
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandVisual__container
    {
        height: 170vw;
    }
}

.wonderlandVisual__layer
{
    position: absolute;

    width: 100%;

    background-repeat: no-repeat; 
    background-size: contain;
}

@media screen and (max-width: 767px)
{
    .wonderlandVisual__layer
    {
        height: 170vw;
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandVisual__layer
    {
        height: 170vw;
    }
}

.wonderlandVisual__layer--01
{
    z-index: 0;
    top: 0;
}

@media screen and (max-width: 767px)
{
    .wonderlandVisual__layer--01
    {
        background-image: url(../img/wonderland_parallax_01_sp.jpg);
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandVisual__layer--01
    {
        background-image: url(../img/wonderland_parallax_01.jpg);
    }
}

.wonderlandVisual__layer--02
{
    z-index: 3;
    top: 0;

    visibility: hidden; 

    opacity: 0;
}

@media screen and (max-width: 767px)
{
    .wonderlandVisual__layer--02
    {
        background-image: url(../img/wonderland_parallax_02_sp.png);
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandVisual__layer--02
    {
        background-image: url(../img/wonderland_parallax_02.png);
    }
}

.wonderlandVisual__layer--03
{
    z-index: 2;
    top: 0;

    visibility: hidden; 

    opacity: 0;
}

@media screen and (max-width: 767px)
{
    .wonderlandVisual__layer--03
    {
        background-image: url(../img/wonderland_parallax_03_sp.png);
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandVisual__layer--03
    {
        background-image: url(../img/wonderland_parallax_03.png);
    }
}

.wonderlandVisual__layer--04
{
    z-index: 3;
    bottom: 0;

    visibility: hidden; 

    opacity: 0;
}

@media screen and (max-width: 767px)
{
    .wonderlandVisual__layer--04
    {
        background-image: url(../img/wonderland_parallax_04_sp.png);
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandVisual__layer--04
    {
        background-image: url(../img/wonderland_parallax_04.png);
    }
}

.wonderlandVisual__title
{
    position: absolute;
    z-index: 4;
    left: 50%;

    display: inline-block;
    visibility: hidden;

    -webkit-transform: translateX(-50%);

            transform: translateX(-50%); 

    opacity: 0;
}

@media screen and (max-width: 767px)
{
    .wonderlandVisual__title
    {
        position: fixed;
        top: 12vw;

        width: 22.26667vw;
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandVisual__title
    {
        top: 8vw;

        width: 19vw;
    }
}

.wonderlandVisual__title img
{
    width: 100%;
    height: auto;
}

.wonderlandVisual__title.is-show
{
    visibility: visible; 

    opacity: 1;
}

.wonderlandVisual__copy
{
    position: absolute;
    z-index: 4;
    left: 50%;

    display: inline-block;
    visibility: hidden;

    -webkit-transform: translateX(-50%);

            transform: translateX(-50%); 

    opacity: 0;
}

@media screen and (max-width: 767px)
{
    .wonderlandVisual__copy
    {
        bottom: 21.33vw; 

        width: 42.4vw;
    }
}

@media screen and (min-width: 768px)
{
    .wonderlandVisual__copy
    {
        bottom: 41.07vw; 

        width: 29.5vw;
    }
}

.wonderlandVisual__copy img
{
    width: 100%;
    height: auto;
}

footer
{
    position: relative;

    width: 100%;
}

@media screen and (min-width: 768px)
{
    footer::before
    {
        position: absolute;
        top: 0;
        left: 0;

        display: block;

        width: 100%;
        height: 10px;

        content: '';
        -webkit-transform: translateY(-100%);
                transform: translateY(-100%); 

        background: url(../img/footer_bg.png) repeat-x left top;
    }
}

#footer-wrap
{
    position: relative;

    width: 100%;

    background: #5c5d5d;
}

@media screen and (max-width: 767px)
{
    #footer-wrap
    {
        padding-top: 30px;
        padding-bottom: 10px;
    }
}

@media screen and (min-width: 768px)
{
    #footer-wrap
    {
        padding-top: 47px;
        padding-bottom: 35px;
    }
}

@media screen and (max-width: 767px)
{
    #foot-logo
    {
        margin-bottom: 30px;

        text-align: center;
    }
}

@media screen and (min-width: 768px)
{
    #foot-logo
    {
        width: 144px;
        height: 72px;
        margin: 0 auto 30px;
    }
}

@media screen and (max-width: 767px)
{
    #copyright
    {
        font-size: 10px;

        text-align: center;
        letter-spacing: .2em; 

        color: #fff;
    }
}

@media screen and (min-width: 768px)
{
    #copyright
    {
        font-size: 84%;

        margin: 35px 30px 0 0;

        text-align: center;
        letter-spacing: .2em; 

        color: #fff;
    }
}

@media screen and (max-width: 767px)
{
    .footer-list
    {
        margin: 0 auto 30px;
        padding: 0 5%;
    }
}

@media screen and (min-width: 768px)
{
    .footer-list
    {
        width: 850px;
        margin: 0 auto 60px;
        padding-left: 50px;
    }
}

@media screen and (max-width: 767px)
{
    .footer-list-item
    {
        font-size: 11px;

        float: left;

        width: 50%;

        text-align: left; 
        letter-spacing: .2em;
    }
}

@media screen and (min-width: 768px)
{
    .footer-list-item
    {
        font-size: 92%;

        float: left;

        width: 150px;
        margin-bottom: 20px;
        padding-left: 20px;

        letter-spacing: .2em;

        background: url(../img/arrow_01.png) no-repeat left center;
        background-size: 10px 10px;
    }
}

.footer-list-item a
{
    color: #fff;
}

@media screen and (max-width: 767px)
{
    .footer-list-item a
    {
        display: block;

        padding: 10px 0 10px 20px;

        background: url(../img/arrow_01.png) no-repeat left center;
        background-size: 10px 10px;
    }
}

@media screen and (max-width: 767px)
{
    .foot-contact
    {
        margin-bottom: 30px;

        text-align: center;
        letter-spacing: .1em; 

        color: #fff;
    }
}

@media screen and (min-width: 768px)
{
    .foot-contact
    {
        margin-bottom: 40px;

        text-align: center;
        letter-spacing: .1em; 

        color: #fff;
    }
}

.foot-contact a
{
    color: #fff;
}

.foot-contact-button
{
    font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;

    position: relative;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    margin-right: auto;
    margin-left: auto;

    letter-spacing: .075em;

    color: #5c5d5d !important;
    border-radius: 4px;
    background-color: #fff; 

    -webkit-box-align: center; 

        -ms-flex-align: center; 

            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

@media screen and (max-width: 767px)
{
    .foot-contact-button
    {
        font-size: 12px;

        width: 180px;
        height: 40px;
        margin-top: 20px;
    }
}

@media screen and (min-width: 768px)
{
    .foot-contact-button
    {
        font-size: 13px;

        width: 200px;
        height: 40px;
        margin-top: 30px;
    }
}

.foot-contact-arrow
{
    position: absolute;
    top: 50%;

    display: inline-block; 

    -webkit-transform: translateY(-50%); 

            transform: translateY(-50%);
}

@media screen and (max-width: 767px)
{
    .foot-contact-arrow
    {
        right: 25px; 

        width: 3px;
        height: 7px;
    }
}

@media screen and (min-width: 768px)
{
    .foot-contact-arrow
    {
        right: 25px; 

        width: 3px;
        height: 7px;
    }
}

.foot-contact-arrow img
{
    width: 100%;
    height: auto;
}

@media screen and (max-width: 767px)
{
    .foot-contact-title
    {
        font-size: 13px;
    }
}

@media screen and (min-width: 768px)
{
    .foot-contact-title
    {
        font-size: 120%;
    }
}

@media screen and (max-width: 767px)
{
    #container
    {
        width: 100%;
    }
    .inside-head
    {
        position: relative;

        width: 100%;
    }
    .inside-head-title
    {
        width: 100%;
        padding: 20% 0;
    }
    .inside-head-title h1
    {
        margin: 0 auto; 

        text-align: center;
    }
    #calendar .inside-head
    {
        background: url(../img/calendar_head.jpg) no-repeat center center;
        background-size: cover;
    }
    .matsuri-icon
    {
        position: absolute;
        right: 1%;
        bottom: 5px;

        width: 120px;
        height: 113px;
    }
    #calendar .inside-head-title h1
    {
        width: 50%;
        margin: 0 auto;
    }
    #calendar-contents
    {
        padding: 30px 5% 0;
    }
    #calendar-contents nav
    {
        margin-bottom: 30px;
    }
    #calendar-contents nav ul
    {
        font-family: 'Times New Roman', '游明朝', YuMincho, 'Hiragino Mincho ProN', Meiryo, serif;

        overflow: hidden; 

        text-align: center;

        color: #5c5c5c;
    }
    #calendar-contents nav ul li
    {
        font-size: 134%;

        display: block;
        float: left;

        width: 25%;

        letter-spacing: .12em;

        border-top: 1px dotted #aaa; 
        border-right: 1px dotted #aaa;
    }
    #calendar-contents nav ul li:nth-child(4n)
    {
        border-right: none;
    }
    #calendar-contents nav ul li:nth-child(1),
    #calendar-contents nav ul li:nth-child(2),
    #calendar-contents nav ul li:nth-child(3),
    #calendar-contents nav ul li:nth-child(4)
    {
        border-top: none;
    }
    #calendar-contents nav ul li a
    {
        display: block;

        padding: 20px 0;

        color: #5c5c5c;
    }
    .calender-head
    {
        height: 61px;

        background: url(../img/calendar_line.jpg) no-repeat right center;
    }
    .calender-head img
    {
        width: 61px;
    }
    .calender-box
    {
        margin-bottom: 20px;
    }
    .calendar-body
    {
        margin-bottom: 20px;
    }
    .calendar-body dl
    {
        overflow: hidden;

        padding: 8px 0;

        background: url(../img/calendar_line2.gif) repeat-x left bottom;
    }
    .calendar-body dl dt
    {
        font-size: 109%;
        line-height: 1.5;

        letter-spacing: .05em;

        color: #a3a65d;
    }
    .calendar-body dl dd
    {
        overflow: hidden;
    }
    .calendar-body dl dd:after
    {
        font-size: .1em;
        line-height: 0; 

        display: block;
        visibility: hidden;
        clear: both;

        height: .1px;

        content: ' ';
    }
    .calendar-body dl dd p
    {
        font-family: 'Times New Roman', '游明朝', YuMincho, 'Hiragino Mincho ProN', Meiryo, serif; 
        font-size: 117%;
        font-weight: bolder;
        line-height: 1.5;

        display: inline-block;
        float: left;

        letter-spacing: .1em;
    }
    .calendar-body dl dd .area
    {
        font-size: 109%;
        line-height: 1.5;

        display: block;
        float: right;
        overflow: hidden; 

        text-align: right;

        color: #3388c9;
    }
    .calendar-body dl dd .area a
    {
        display: inline-block;
    }
    .area a[target='_blank']
    {
        padding-right: 16px;

        background: url(../img/blank.png) no-repeat right center;
    }
    .calender-box figure
    {
        text-align: center;
    }
    .calender-box figure figcaption
    {
        font-family: 'Times New Roman', '游明朝', YuMincho, 'Hiragino Mincho ProN', Meiryo, serif; 
        font-size: 109%;
        font-weight: bolder;

        padding: 10px 0 0;

        text-align: center;
        letter-spacing: .2em;
    }
    .small1
    {
        font-size: 78%;
    }
    .small2
    {
        font-size: 85%;
    }
    #calender-lead
    {
        margin: 0 0 30px;
        padding: 30px 0 0;

        text-align: center;

        background: url(../img/calendar_line2.png) no-repeat left top;
    }
    #matsuri .inside-head-title h1
    {
        width: 80%;
        margin: 0 auto;
    }
    #matsuri .inside-head
    {
        width: 100%;

        background: url(../img/calendar_head2.jpg) no-repeat center center;
        background-size: cover;
    }
    .matsuri-contents
    {
        padding: 30px 5% 50px;
    }
    .table-scroll
    {
        overflow: auto;

        white-space: nowrap;
    }
    .table-scroll::-webkit-scrollbar
    {
        height: 5px;
    }
    .table-scroll::-webkit-scrollbar-track
    {
        background: #f1f1f1;
    }
    .table-scroll::-webkit-scrollbar-thumb
    {
        background: #bcbcbc;
    }
    .matsuri-table
    {
        width: 100%;
    }
    .matsuri-table td
    {
        font-size: 11px;
        line-height: 1.5;

        padding: 8px;

        vertical-align: middle;
    }
    .matsuri-table thead th
    {
        font-size: 10px;

        padding: 12px 5px;

        text-align: center; 
        letter-spacing: .1em;
    }
    .matsuri-table tbody th
    {
        font-size: 11px;

        padding: 0;

        text-align: center;
        vertical-align: middle;
        letter-spacing: .1em;

        color: #fff;
        border: 1px solid #ccc;
    }
    .matsuri-list
    {
        margin-top: 30px;
    }
    .matsuri-name
    {
        font-size: 109%;

        background: #fafafa;
    }
    .matsuri-item
    {
        position: relative;

        float: left;

        width: 49%;
        margin-right: 2%;
        margin-bottom: 10px;
    }
    .matsuri-item:nth-child(2n)
    {
        margin-right: 0;
    }
    .matsuri-item img
    {
        width: 100%;
    }
    .matsuri-area
    {
        font-size: 11px;
        line-height: 24px;

        position: absolute;
        bottom: 24px;
        left: 50%;

        width: 80px;
        height: 24px;
        margin-left: -40px;

        text-align: center; 

        color: #fff;
    }
    #access-bg
    {
        background: url(../img/inside_bg.jpg) repeat center center;
    }
    #access .inside-head
    {
        width: 100%;

        background: url(../img/access_head.jpg) no-repeat center center;
        background-size: cover;
    }
    #access .inside-head-title h1
    {
        width: 22%;
        margin: 0 auto;
    }
    #access-container .sp img
    {
        width: 100%;
        height: auto;
    }
    #access-list
    {
        margin: 30px 0;
    }
    #transportation
    {
        font-size: 117%; 

        margin: 0 auto 30px;
    }
    #transportation a[target='_blank']
    {
        padding-right: 16px;

        background: url(../img/blank.png) no-repeat right center;
    }
    #transportation h1
    {
        margin: 0 auto 15px;

        text-align: center;
    }
    #transportation table
    {
        width: 96%;
        margin: 0 auto;

        border-top: 0;
    }
    #transportation th
    {
        line-height: 22px;

        display: block;

        width: 100%;
        padding: 3% 0; 

        text-align: center;

        border-right: 0;
        border-bottom: 0;
        border-left: 0;
    }
    #transportation th img
    {
        margin-right: 10px;
    }
    #transportation th span
    {
        display: inline-block;

        margin-left: -10px;
    }
    #transportation td
    {
        display: block;

        width: 100%;
        padding: 3% 5%;

        text-align: left;

        border-right: 0; 
        border-bottom: 0;
        border-left: 0;
    }
    #transportation td.cel-2
    {
        padding-top: 0; 

        border-top: none;
    }
    #tour
    {
        width: 100%;
    }
    #tour-head
    {
        margin: 0 0 4px;
        padding: 10% 0;

        text-align: center;

        background: url(../img/tour_bg_01.jpg) no-repeat center center;
        background-size: cover;
    }
    #tour-head h1
    {
        width: 70%;
        margin: 0 auto;

        text-align: center;
    }
    #tour-list li
    {
        position: relative;

        display: -webkit-box;

        display: -ms-flexbox;

        display: flex;

        -webkit-box-sizing: border-box;

                box-sizing: border-box;
        width: 100%;

        -webkit-box-align: center;

            -ms-flex-align: center;

                align-items: center;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        aspect-ratio: 750 / 540;
    }
    #tour-list li:not(:last-child)
    {
        margin-bottom: 4px;
    }
    #tour-list li:hover
    {
        opacity: 1;
    }
    .tl-title
    {
        width: 60%;
        max-width: 300px;
    }
    .tl-caption p
    {
        font-size: 11px;
        line-height: 2; 

        margin: 0 0 3%;

        letter-spacing: .1em;
    }
    .tl-caption a
    {
        font-size: 12px;

        display: block;

        width: 50%;
        margin: 0 auto;
        padding: 2% 2%;

        -webkit-transition: .3s ease-out;
                transition: .3s ease-out; 
        text-align: center;
        text-decoration: none;
        letter-spacing: .1em;

        color: #fff;
        border: 2px solid #fff;
    }
    .tl-caption a:hover
    {
        font-weight: bolder;

        opacity: 1; 
        color: #555;
        background: #fff;
    }
    .tl-caption .tl-icon
    {
        width: 10%;
        margin: 0 auto 3%;

        text-align: center;
    }
    #tl-01
    {
        background: url(../img/tour_bg_02.jpg) no-repeat center center;
        background-size: cover;
    }
    #tl-02
    {
        background: url(../img/tour_bg_03.jpg) no-repeat center center;
        background-size: cover;
    }
    .tl-overlay
    {
        position: absolute;
        z-index: 5;
        top: 0;
        left: 0;

        display: -webkit-box;

        display: -ms-flexbox;

        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;

        -webkit-box-sizing: border-box;

                box-sizing: border-box;
        width: 100%;
        height: 100%;
        padding: 3% 5% 0;

        -webkit-transition: .6s ease-in-out;
                transition: .6s ease-in-out;

        opacity: 0;
        color: #fff;
        background: rgba(0, 0, 0, .7);

        -webkit-box-pack: center;

            -ms-flex-pack: center;

                justify-content: center;
    }
    #tour-list li:hover .tl-overlay
    {
        opacity: 1;
    }
    #tour-list .comingsoon
    {
        background: #eeeeed;
    }
    #tour-list .comingsoon p
    {
        width: 40%;
        margin: 0 auto;
    }
    .route-head
    {
        width: 100%;
        padding: 5% 0 0;
    }
    .route-head h1
    {
        width: 50%;
        margin: 0 auto 5%;

        text-align: center;
    }
    #route-head-block-02
    {
        width: 100%;

        color: #fff;
        background: rgba(0, 0, 0, .5);
    }
    #route-head-block-02 .inner
    {
        padding: 3%;
    }
    #route-head-block-02 p
    {
        font-size: 12px;
    }
    .rhb2-text
    {
        line-height: 2; 

        margin: 0 0 3%;

        letter-spacing: .1em;
    }
    .rhb2-img
    {
        width: 50%;
        margin: 0 auto;

        text-align: center;
    }
    #route-head-block-02 .scroll
    {
        display: none;
    }
    #course-sp
    {
        width: 90%;
        margin: 3% auto 8%;
        padding: 5% 10% 5%;

        border: 3px solid #000;
        background: rgba(255, 255, 255, .8);
    }
    .course-title
    {
        width: 50%;
        margin: 0 auto 5%;

        text-align: center;
    }
    #course-sp ul
    {
        width: 90%;
        margin: 0 auto;
    }
    #course-sp ul li a
    {
        font-size: 14px;
        line-height: 40px;

        display: block;

        padding-left: 30px;

        letter-spacing: .1em;

        color: #221814;
        background: url(../img/course_nav_item.png) no-repeat left top;
    }
    #course-sp ul li:first-child a
    {
        background: url(../img/course_nav_top.png) no-repeat left top;
    }
    #course-sp ul li:first-child a:hover
    {
        opacity: 1;
        background: url(../img/course_nav_top_on.png) no-repeat left top;
    }
    #course-sp ul li:last-child a
    {
        background: url(../img/course_nav_bottom.png) no-repeat left top;
    }
    #course-sp ul li:last-child a:hover
    {
        opacity: 1;
        background: url(../img/course_nav_bottom_on.png) no-repeat left top;
    }
    #course-sp ul li a:hover
    {
        opacity: 1;
        background: url(../img/course_nav_item_on.png) no-repeat left top;
    }
    #route-spot
    {
        padding: 5% 5% 0;
    }
    .route-row
    {
        margin-bottom: 15%;
    }
    .route-row-img
    {
        position: relative;

        border: 4px solid #030000;
    }
    .route-tag
    {
        position: absolute;
        top: -4px;
        left: -4px;

        width: 70px;
        height: 70px;
    }
    .route-row-text
    {
        padding: 5% 0 0;
    }
    .text-row-01
    {
        margin-bottom: 3%;
    }
    .text-row-01 h2
    {
        font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
        font-size: 22px;

        margin: 0 0 2%;

        letter-spacing: .05em; 

        color: #221814;
    }
    .text-row-01 p
    {
        font-size: 12px;
        line-height: 2; 

        margin-bottom: 3%;

        letter-spacing: .1em;
    }
    .text-row-02 p
    {
        margin-bottom: 5%; 

        letter-spacing: .05em;
    }
    .text-row-02 ul li
    {
        float: left;

        width: 24%;

        border: 2px solid #eeeded;
    }
    .text-row-02 ul li:not(:last-child)
    {
        margin-right: 1.3%;
    }
    .blank-link
    {
        font-size: 13px;

        display: block;

        width: 100%;
        padding: 3% 0;
        padding-left: 14px;

        text-align: center;
        letter-spacing: .1em;

        color: #fff;
        border-radius: 4px;
        background: #000;
    }
    .blank-link:after
    {
        display: inline-block;

        width: 13px;
        height: 10px;
        margin-left: 8px;

        content: '';

        background: url(../img/blank_02.png) no-repeat left top;
    }
    #route1
    {
        background: url(../img/route_01_bg_01.jpg) no-repeat center center;
        background-size: cover;
    }
    #route2
    {
        background: url(../img/route_02_bg_01.jpg) no-repeat center center;
        background-size: cover;
    }
    #route-tachiyori
    {
        padding: 8% 5% 5%;

        background: #000;
    }
    #route-tachiyori h1
    {
        width: 60%;
        margin: 0 auto 8%;

        text-align: center;
    }
    .tachiyori-list li
    {
        width: 75%;
        margin: 0 auto 5%;
    }
    .tachiyori-wrap
    {
        position: relative;

        width: 100%;

        border: 2px solid #cdcece;
    }
    .tachiyori-list li:hover .tachiyori-wrap
    {
        border: 2px solid #333;
    }
    .tachiyori-list-img
    {
        overflow: hidden;
    }
    .tachiyori-list-img img
    {
        width: 100%;
    }
    .tachiyori-caption
    {
        font-size: 12px;
    }
    .tachiyori-caption p a
    {
        text-decoration: none; 

        color: #c0a441;
    }
    .tachiyori-title
    {
        font-size: 13px;
        line-height: 1.5;

        margin: 5% 0 0;

        text-align: center; 
        letter-spacing: .1em;

        color: #fff;
    }
    .tachiyori-title span
    {
        font-size: 12px; 

        display: block;
    }
    #route-map
    {
        margin: 0 0 8%;
        padding: 8% 0 0;

        background: url(../img/route_bg_01.png) repeat;
    }
    #route-map h1
    {
        width: 60%;
        margin: 0 auto 10%;

        text-align: center;
    }
    #map-canvas
    {
        width: 100%;
        height: 350px;
    }
    .gm-style-iw
    {
        line-height: 1.2;
    }
    .route-nav
    {
        margin: 0 auto 10%; 
        padding: 0 5%;
    }
    .route-nav ul li
    {
        float: left;

        width: 30%;
    }
    .route-nav ul li a
    {
        display: block;
    }
    .route-nav ul li a:hover
    {
        opacity: 1;
    }
    .route-nav ul li:not(:last-child)
    {
        margin-right: 5%;
    }
    .tachiyori-overlay
    {
        position: absolute;
        z-index: 3;
        top: 0;
        left: 0;

        -webkit-box-sizing: border-box;

                box-sizing: border-box; 
        width: 100%;
        height: 100%;
        padding: 5%;

        -webkit-transition: opacity .6s ease-in-out;
                transition: opacity .6s ease-in-out;

        opacity: 0;
        color: #fff;
        background: rgba(0, 0, 0, .6);
    }
    .tachiyori-overlay p
    {
        font-size: 12px;
        line-height: 1.8;

        margin-bottom: 1em; 

        letter-spacing: .1em;
    }
    .tachiyori-overlay a:hover
    {
             opacity: 1; 

        filter: alpha(opacity=100);
        -moz-opacity: 1;
    }
    .tachiyori-list li:hover .tachiyori-overlay
    {
        opacity: 1;
    }
    #route3
    {
        background: url(../img/route_03_bg_01.jpg) no-repeat center center;
        background-size: cover;
    }
    #route3 .rhb2-img
    {
        width: 20%;
    }
    .route-spot-03 #course-sp
    {
        border: 5px solid #dd5360;
    }
    .route-spot-03 .blank-link
    {
        background: #dd5360;
    }
    .route-spot-03 h2
    {
        color: #dd5360;
    }
    .route-spot-03 .route-row-img
    {
        border: 5px solid #dd5360;
    }
    #tl-03
    {
        background: url(../img/tour_bg_04.jpg) no-repeat center center;
        background-size: cover;
    }
    #route4
    {
        background: url(../img/route_04_bg_01.jpg) no-repeat center center;
        background-size: cover;
    }
    #route4 .rhb2-img
    {
        width: 20%;
    }
    .route-spot-04 #course-sp,
    .route-spot-04 .route-row-img
    {
        border: 5px solid #04a5af;
    }
    .route-spot-04 .blank-link
    {
        background: #04a5af;
    }
    .route-spot-04 h2
    {
        color: #04a5af;
    }
    #tl-04
    {
        background: url(../img/tour_bg_05.jpg) no-repeat center center;
        background-size: cover;
    }
    #route5
    {
        background: url(../img/route_05_bg_01.jpg) no-repeat center center;
        background-size: cover;
    }
    #route5 .rhb2-img
    {
        width: 20%;
    }
    .route-spot-05 #course-sp
    {
        border: 5px solid #e6ba01;
    }
    .route-spot-05 .blank-link
    {
        background: #e6ba01;
    }
    .route-spot-05 h2
    {
        color: #e6ba01;
    }
    .route-spot-05 .route-row-img
    {
        border: 5px solid #e6ba01;
    }
    #tl-05
    {
        background: url(../img/tour_bg_06.jpg) no-repeat center center;
        background-size: cover;
    }
    #route6
    {
        background: url(../img/route_06_bg_01.jpg) no-repeat center center;
        background-size: cover;
    }
    #route6 .rhb2-img
    {
        width: 20%;
    }
    .route-spot-06 #course-sp
    {
        border: 5px solid #5f94a2;
    }
    .route-spot-06 .blank-link
    {
        background: #5f94a2;
    }
    .route-spot-06 h2
    {
        color: #5f94a2;
    }
    .route-spot-06 .route-row-img
    {
        border: 5px solid #5f94a2;
    }
    #tl-06
    {
        background: url(../img/tour_bg_07.jpg) no-repeat center center;
        background-size: cover;
    }
    #route7
    {
        background: url(../img/route_07_bg_01.jpg) no-repeat center center;
        background-size: cover;
    }
    #route7 .rhb2-img
    {
        width: 20%;
    }
    .route-spot-07 #course-sp
    {
        border: 5px solid #bc313a;
    }
    .route-spot-07 .blank-link
    {
        background: #bc313a;
    }
    .route-spot-07 h2
    {
        color: #bc313a;
    }
    .route-spot-07 .route-row-img
    {
        border: 5px solid #bc313a;
    }
    #tl-07
    {
        background: url(../img/tour_bg_08.jpg) no-repeat 70% center;
        background-size: cover;
    }
    #route8
    {
        background: url(../img/route_08_bg_01.jpg) no-repeat center center;
        background-size: cover;
    }
    #route8 .rhb2-img
    {
        width: 20%;
    }
    .route-spot-08 #course-sp
    {
        border: 5px solid #bc313a;
    }
    .route-spot-08 .blank-link
    {
        background: #bc313a;
    }
    .route-spot-08 h2
    {
        color: #bc313a;
    }
    .route-spot-08 .route-row-img
    {
        border: 5px solid #bc313a;
    }
    #tl-08
    {
        background: url(../img/tour_bg_09.jpg) no-repeat center center;
        background-size: cover;
    }
    #tour-list li#tl-09
    {
        padding: 0;
    }
    #tl-09 .tl-label
    {
        display: none;
    }
    #tl-09 .tl-title
    {
        width: 100%;
        max-width: 100%;
    }
    #tl-09 .tl-title img
    {
        width: 100%;
        height: auto;
    }
    #tl-10
    {
        background: url(../img/tour_bg_11_sp.jpg) no-repeat center center;
        background-size: cover;
    }
    #tl-10 .tl-title
    {
        width: 35%;
    }
    #tl-10 .tl-title img
    {
        width: 100%;
        height: auto;
    }
    .route-nav .bx-wrapper
    {
        margin: 0 auto;
        margin-bottom: none;

        border: none;
        background: none; 
        -webkit-box-shadow: none;
                box-shadow: none;
    }
    .route-nav .bx-wrapper .bx-controls-direction a
    {
        top: 50%;

        width: 12px;
        height: 22px; 
        margin-top: -11px;
    }
    .route-nav .bx-wrapper .bx-prev
    {
        left: -30px;

        background: url(../img/arrow_prev.png) no-repeat;
        background-size: 12px 22px;
    }
    .route-nav .bx-wrapper .bx-next
    {
        right: -30px;

        background: url(../img/arrow_next.png) no-repeat;
        background-size: 12px 22px;
    }
    .route-nav .bx-wrapper .bx-prev:focus,
    .route-nav .bx-wrapper .bx-prev:hover
    {
        background-position: 0 0;
    }
    .route-nav .bx-wrapper .bx-next:focus,
    .route-nav .bx-wrapper .bx-next:hover
    {
        background-position: 0 0;
    }
    #about .inside-head
    {
        background: url(../img/about_head.jpg) no-repeat center center;
        background-size: cover;
    }
    #about .inside-head-title h1
    {
        width: 53%;
        margin: 0 auto;
    }
    #about-wrapper
    {
        padding-top: 30px;
    }
    #about-contents
    {
        padding: 20px 5% 0;
    }
    #about-contents table
    {
        width: 100%;

        color: #5c5c5c;
        border-bottom: none;
    }
    #about-contents table th
    {
        font-weight: normal;

        position: relative;

        padding: 5% 5% 5% 6%;

        text-align: center;
        vertical-align: middle;

        background: #eeeeed;
    }
    #about-contents table th::after
    {
        position: absolute;
        top: 0;
        left: 0;

        display: block;

        width: 8px;
        height: 100%;

        content: '';
    }
    #about-contents table tr
    {
        overflow: hidden;
    }
    table td
    {
        background: #fff;
    }
    #about-contents section
    {
        margin-bottom: 50px;
    }
    .about-ttl
    {
        font-family: 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro', 'HG明朝E', 'メイリオ', Meiryo, sans-serif;
        font-size: 20px;

        margin-bottom: 20px;

        text-align: center;
        letter-spacing: .1em; 

        color: #a3a65d;
    }
    .about-ttl span
    {
        display: inline-block;

        padding-bottom: 8px;

        background: url(../img/line_01.png) repeat-x center bottom;
        background-size: 408px 3px;
    }
    #about-contents section p
    {
        font-size: 13px;
        line-height: 2; 

        margin-bottom: 2em;
    }
    #kyogikai p
    {
        margin-bottom: 0;

        letter-spacing: .1em;
    }
    #kyogikai p:after
    {
        display: block;

        height: 80px;

        content: '';

        background: url(../img/about_mark.png) no-repeat center center;
    }
    #about-contents section h2
    {
        font-family: 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro', 'HG明朝E', 'メイリオ', Meiryo, sans-serif;
        font-size: 16px;

        margin-bottom: 20px;

        text-align: center; 
        letter-spacing: .1em;

        color: #5c5d5d;
    }
    .about-tel
    {
        width: 40%;

        text-align: center;

        border: none;
        border-bottom: 1px solid #ccc;
    }
    .about-name
    {
        width: 50%;

        border: none;
        border-right: 1px solid #ccc;
        border-bottom: 1px solid #ccc;
    }
    .about-name a[target='_blank']
    {
        padding-right: 16px;

        background: url(../img/blank.png) no-repeat right center;
    }
    .page-nav
    {
        width: 90%;
        margin: 0 auto;
        padding: 15px 5%;

        border: 1px solid #a3a65d;
    }
    .page-nav ul li
    {
        margin-bottom: 10px;

        border: 1px solid #a3a65f;
    }
    .page-nav ul li:last-child
    {
        margin-bottom: 0;
    }
    .page-nav ul li a
    {
        font-family: 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro', 'HG明朝E', 'メイリオ', Meiryo, sans-serif;
        font-size: 13px;

        position: relative;

        display: block;

        padding: 15px 0;

        -webkit-transition: .3s;

        transition: .3s; 
        text-align: center;
        letter-spacing: .1em;

        color: #fff;
        background: #a3a65f;
    }
    .page-nav ul li a::after
    {
        position: absolute;
        top: 50%;
        right: 3%;

        display: inline-block;

        width: 6px;
        height: 6px;
        margin-top: -5px;

        content: ' ';
        -webkit-transition: .3s;
        transition: .3s; 
        -webkit-transform: rotate(45deg);
                transform: rotate(45deg);

        border-top: 2px solid #fff;
        border-right: 2px solid #fff;
    }
    .page-nav ul li a:hover
    {
        opacity: 1; 
        color: #a3a65f;
        background: #fff;
    }
    .page-nav ul li a:hover::after
    {
        border-top: 2px solid #a3a65f; 
        border-right: 2px solid #a3a65f;
    }
    #parallax-wrap
    {
        position: relative;

        max-width: 450px;
        margin: 0 auto 0; 
        padding: 0 5%;
    }
    #anchor
    {
        position: absolute;
        top: 0; 

        display: block;
    }
    #parallax-layer1,
    #parallax-layer2,
    #parallax-layer3,
    #text-wrap,
    #read1,
    #read2,
    #read3,
    #read4,
    #read5,
    #read6,
    #read7,
    #read8,
    #read9
    {
        display: none;
    }
    #catch1
    {
        width: 90%;
        margin: 0 auto;
        margin-bottom: 5%;
    }
    #catch2
    {
        width: 90%;
        margin: 0 auto;
    }
    .l-main
    {
        margin-bottom: 50px;
    }
    .sidebar-block
    {
        margin-bottom: 30px;
    }
    .sidebar-block-ttl
    {
        font-family: 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro', 'HG明朝E', 'メイリオ', Meiryo, sans-serif;
        font-size: 13px;
        font-weight: normal;

        margin-bottom: 15px;
        padding: 10px 3%;

        letter-spacing: .1em;

        background: url(../img/bg_02.jpg) repeat;
    }
    .sidebar-block-item
    {
        margin-bottom: 15px;
        padding: 0 3% 15px;

        border-bottom: 1px dashed #ddd;
    }
    .sidebar-block-item:last-child
    {
        margin-bottom: 0;
        padding-bottom: 0;

        border-bottom: 0;
    }
    .sidebar-block .area-list-item a
    {
        background: #fff;
    }
    .endday::before
    {
        display: inline-block;

        padding: 0 5px; 

        content: '-';
    }
    .event-head-ttl
    {
        width: 36%;
        margin: 0 auto;
        padding: 30px 0;

        text-align: center;
    }
    .hotel-head-ttl
    {
        width: 36%;
        margin: 0 auto;
        padding: 30px 0;

        text-align: center;
    }
    .hotel-head-wrapper
    {
        font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;

        letter-spacing: .1em;

        background: url(../img/hotel_bg_01.jpg) no-repeat;
        background-position: center center;
        background-size: cover;
    }
    .hotel-head-inner
    {
        margin: 0 auto; 
        padding: 20px 0 10px;
    }
    .hotel-area-list
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        padding: 0 3%; 

        -ms-flex-wrap: wrap; 

            flex-wrap: wrap;
    }
    .hotel-area-list li
    {
        width: 49%;
        margin-right: 2%;
        margin-bottom: 10px;
    }
    .hotel-area-list li:nth-child(2n)
    {
        margin-right: 0;
    }
    .hotel-area-list li a
    {
        font-size: 14px;
        line-height: 36px;

        display: block;

        height: 38px;

        text-align: center;
        letter-spacing: .2em;

        color: #fff;
        border: 1px solid #fff;
    }
    .hotel-group
    {
        margin: 0 auto 50px;
        padding: 0 3%;
    }
    .hotel-group li
    {
        margin-bottom: 20px;
    }
    .hotel-group li:last-child
    {
        margin-bottom: 0;
    }
    .hotel-table
    {
        width: 100%;
    }
    .hotel-table thead th
    {
        font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
        font-size: 14px;
        font-weight: normal;
        line-height: 1.8;

        padding: 8px 16px;

        letter-spacing: .2em;

        color: #fff;
        border-color: #303335;
    }
    .hotel-table thead th.tokai
    {
        background: #4c616f;
    }
    .hotel-table thead th.oobu
    {
        background: #1b4f2d;
    }
    .hotel-table thead th.higashiura
    {
        background: #662554;
    }
    .hotel-table thead th.chita
    {
        background: #741d31;
    }
    .hotel-table thead th.tokoname
    {
        background: #7d592d;
    }
    .hotel-table thead th.agui
    {
        background: #76774e;
    }
    .hotel-table thead th.handa
    {
        background: #5c5d5d;
    }
    .hotel-table thead th.taketoyo
    {
        background: #552e1b;
    }
    .hotel-table thead th.mihama
    {
        background: #1c6659;
    }
    .hotel-table thead th.minamichita
    {
        background: #425378;
    }
    .hotel-table tbody tr:nth-child(even) td
    {
        background-color: #efefef;
    }
    .hotel-table tbody td
    {
        font-size: 12px;
        line-height: 1.5;

        position: relative;

        padding: 10px;

        border-color: #303335;
    }
    .hotel-table tbody td:nth-child(2)
    {
        width: 40%;
    }
    .hotel-link
    {
        text-decoration: underline;
    }
    .hotel-link::after
    {
        display: inline-block;

        width: 11px;
        height: 9px;
        margin-left: 10px;

        content: '';

        background: url(../img/icon_blank_02.svg) no-repeat left top;
    }
    .hotel-map
    {
        display: block;

        width: 70px;
        height: 24px;
        margin-top: 5px;

        text-align: center;

        color: #fff;
        border-radius: 4px;
        background-color: #5c5d5d;
    }
    .hotel-map::after
    {
        display: inline-block;

        width: 11px;
        height: 9px;
        margin-left: 10px;

        content: '';

        background: url(../img/icon_blank_01.svg) no-repeat left top;
    }
    .panflet-head-ttl
    {
        width: 36%;
        margin: 0 auto;
        padding: 30px 0;

        text-align: center;
    }
    .panflet-head-visual
    {
        width: 100%;
        height: 270px;

        background: url(../img/panflet_bg_01.jpg);
        background-repeat: no-repeat;
        background-position: center;
        background-size: cover;
    }
    .panflet-list
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        margin-bottom: 30px;
        padding: 0 3%; 

        -ms-flex-wrap: wrap; 

            flex-wrap: wrap;
    }
    .panflet-item
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        margin-bottom: 40px;
    }
    .panflet-item:nth-child(3n)
    {
        margin-right: 0;
    }
    .panflet-thumb
    {
        display: block;

        width: 120px;
        margin-right: 20px;
    }
    .panflet-thumb img
    {
        width: 120px;
        height: 120px;

        -o-object-fit: contain;

           object-fit: contain;
    }
    .panflet-content
    {
        -webkit-box-flex: 1;
            -ms-flex: 1;
                flex: 1;
    }
    .panflet-heading
    {
        font-size: 15px;
        line-height: 1.2; 

        margin-bottom: 15px;
        padding: 10px 0;

        border-top: 1px dashed #5c5d5d;
        border-bottom: 1px dashed #5c5d5d;
    }
    .panflet-meta
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        margin-bottom: 10px; 

        -webkit-box-align: center; 

            -ms-flex-align: center; 

                align-items: center;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
    }
    .panflet-data
    {
        font-size: 13px;
        font-weight: bold; 

        color: #3480bb;

        -webkit-box-flex: 1;

            -ms-flex: 1;

                flex: 1;
    }
    .panflet-date
    {
        font-size: 11px;
        line-height: 24px;

        display: block;

        height: 24px;
        padding: 0 10px;

        text-align: center;

        color: #231815;
        background-color: #efefef;
    }
    .panflet-desc
    {
        font-size: 12px;
        line-height: 1.8; 

        color: #5c5d5d;
    }
    .panflet-btn
    {
        font-size: 13px;
        font-weight: bold;
        line-height: 40px;

        position: relative;

        display: block;

        max-width: 200px;
        height: 40px;
        margin: 10px auto 0;

        text-align: center;

        color: #fff;
        border-radius: 4px;
        background-color: #231815;
    }
    .panflet-btn::after
    {
        position: absolute;
        top: 50%;
        right: 20px;

        display: block;

        width: calc(25px / 1.5);
        height: calc(23px / 1.5);

        content: '';
        -webkit-transform: translateY(-50%);
                transform: translateY(-50%);

        background: url(../img/common_icon_03.svg);
        background-size: cover;
    }
    .catapoke
    {
        padding: 40px 3% 60px;

        color: #231815;
        background: url(../img/common_bg_01.jpg);
    }
    .catapoke-thumb
    {
        width: 160px;
        margin: 0 auto 35px;
    }
    .catapoke-content
    {
        margin: 0 auto 50px;
    }
    .catapoke-heading
    {
        margin-bottom: 40px;
    }
    .catapoke-title
    {
        font-size: 20px;
        font-weight: bold;

        text-align: center;
    }
    .catapoke-desc
    {
        font-size: 13px;
        font-weight: bold;
        line-height: 1.8; 

        margin-bottom: 25px;
    }
    .catapoke-btn
    {
        font-size: 13px;
        font-weight: bold;
        line-height: 50px;

        position: relative;

        display: block;

        width: 290px;
        height: 50px;
        margin: 0 auto;

        text-align: center;

        color: #fff;
        border-radius: 4px;
        background-color: #5c5d5d;
    }
    .catapoke-btn::after
    {
        position: absolute;
        top: 50%;
        right: 20px;

        display: block;

        width: 17px;
        height: 14px;

        content: '';
        -webkit-transform: translateY(-50%);
                transform: translateY(-50%);

        background: url(../img/common_icon_04.svg);
        background-size: cover;
    }
    .app
    {
        max-width: 320px;
        margin: 0 auto;
        padding: 30px 0 30px;

        background-color: #fff;
    }
    .app-title
    {
        font-size: 15px; 

        margin-bottom: 25px;

        text-align: center;
    }
    .app-grid
    {
        position: relative;
    }
    .app-col
    {
        margin-bottom: 30px;
    }
    .app-col:last-child
    {
        margin-bottom: 0;
    }
    .app-label
    {
        font-size: 16px;

        margin-bottom: 15px;

        text-align: center; 

        color: #5c5d5d;
    }
    .app-content
    {
        width: 200px;
        margin: 0 auto;
    }
    .app-qr
    {
        display: none;
    }
    .area-list-wrapper
    {
        font-family: 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro', 'HG明朝E', 'メイリオ', Meiryo, sans-serif;

        letter-spacing: .1em; 

        background: url(../img/bg_02.jpg) repeat;
    }
    .area-list-inner
    {
        padding: 50px 0 50px;

        background: url(../img/bg_03.jpg) no-repeat center center;
    }
    .area-list-ttl
    {
        font-size: 18px;
        font-weight: bold;

        width: 240px;
        margin: 0 auto 30px;
        padding: 12px 0;

        text-align: center;

        color: #5c5d5d;
        border-top: 1px solid #5c5d5d;
        border-bottom: 1px solid #5c5d5d;
    }
    .area-list
    {
        padding: 0 3%;
    }
    .area-list-item
    {
        font-family: 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro', 'HG明朝E', 'メイリオ', Meiryo, sans-serif; 

        float: left;

        width: 49%;
        margin-right: 2%;
        margin-bottom: 10px;
    }
    .area-list-item:nth-child(2n)
    {
        margin-right: 0;
    }
    .area-list-item a
    {
        font-size: 14px;
        line-height: 38px;

        display: block;

        height: 38px;

        text-align: center;
        letter-spacing: .2em;

        color: #5c5d5d;
        border-left: 20px solid;
        background: rgba(255, 255, 255, .7);
    }
    .related-wrap
    {
        margin-top: 30px;
        padding: 25px 3% 30px;

        border: 1px dashed #5c5d5d;
    }
    .related-list-item
    {
        margin-bottom: 25px;
    }
    .related-list-item:last-child
    {
        margin-bottom: 0;
    }
    .entries-related
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
    .related-title
    {
        font-family: 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro', 'HG明朝E', 'メイリオ', Meiryo, sans-serif;
        font-size: 14px;

        margin-bottom: 30px;

        text-align: center; 
        letter-spacing: .1em;

        color: #333;
    }
    .entries-related-thumb
    {
        width: 90px;
        height: 90px;
    }
    .entries-related-heading
    {
        padding-left: 20px;
        -webkit-box-flex: 1;
            -ms-flex: 1;
                flex: 1;
    }
    .entries-related-tag
    {
        font-size: 10px;
        line-height: 18px;

        display: block;
        float: left;

        width: 60px;
        height: 18px;

        text-align: center; 
        letter-spacing: .2em;

        color: #fff;
    }
    .entries-related-meta
    {
        font-size: 10px;
        line-height: 18px; 

        display: inline-block;
        float: right;

        text-align: right;
    }
    .entries-related-ttl
    {
        font-size: 15px;
        font-weight: bold;
        line-height: 1.5;

        padding: 10px 0;

        vertical-align: middle;
    }
    .entries-related-ttl a
    {
        color: #5c5d5d;
    }
    .entries-related-period
    {
        font-size: 13px;

        padding: 7px 0;

        border-top: 1px dashed #5c5d5d;
        border-bottom: 1px dashed #5c5d5d;
    }
    .entries-related-period time:last-child::before
    {
        display: inline-block;

        padding: 0 9px; 

        content: '-';
    }
    .entries-related-period time:first-child::before
    {
        display: none;
    }
    #list .inside-head-title h1
    {
        width: 20%;
        margin: 0 auto;
    }
    #list .inside-head
    {
        width: 100%;

        background: url(../img/list_head.jpg) no-repeat center center;
        background-size: cover;
    }
    #list-wrapper
    {
        margin-bottom: 50px;
        padding: 20px 5% 0;
    }
    #list-wrapper section:not(:last-child)
    {
        margin-bottom: 40px;
    }
    #list-wrapper .list-title
    {
        font-family: 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro', 'HG明朝E', 'メイリオ', Meiryo, sans-serif;
        font-size: 16px;

        margin-bottom: 20px;

        text-align: center; 
        letter-spacing: .1em;

        color: #5c5d5d;
    }
    .list-table
    {
        width: 100%;

        letter-spacing: .1em;

        border: none;
        border-top: 1px dashed #ccc;
    }
    .list-table th
    {
        font-size: 15px;
        font-weight: normal;
        line-height: 1.8;

        display: block;

        width: 100%;
        padding: 15px 0 0;

        text-align: left;
        vertical-align: middle;

        border: none;
        background: none;
    }
    .lt-name
    {
        font-size: 14px;
        font-weight: normal;
    }
    .lt-address
    {
        font-size: 12px; 

        color: #7b7b7b;
    }
    .lt-text
    {
        margin: 0 0 5px;
    }
    .list-table th a[target='_blank']
    {
        padding-right: 16px;

        background: url(../img/blank.png) no-repeat right center;
    }
    .list-table td
    {
        font-size: 13px;
        line-height: 1.8;

        display: block;

        padding: 10px 0 15px;

        vertical-align: middle;

        border: none;
        border-bottom: 1px dashed #ccc;
        background: none;
    }
    #pagenavi
    {
        font-family: 'Times New Roman', '游明朝', YuMincho, 'Hiragino Mincho ProN', Meiryo, serif; 

        padding-bottom: 20px;

        text-align: center;
    }
    .wp-pagenavi
    {
        font-size: 134%;
        line-height: 40px;

        margin: 0 auto;

        text-align: center;

        color: #5c5d5d;
    }
    .wp-pagenavi span
    {
        border: none !important;
    }
    .wp-pagenavi span.pages
    {
        margin: 3px !important;
        padding: 6px 10px !important;

        border: none !important;
    }
    .wp-pagenavi .current
    {
        font-weight: bolder;

        padding: 6px 10px !important;

        color: #5c5d5d;
        border: none !important; 
        background: none;
    }
    .wp-pagenavi a
    {
        margin: 3px !important;
        padding: 6px 10px !important;

        text-decoration: none !important;

        color: #5c5d5d; 
        border: none !important;
    }
    .aligncenter
    {
        display: block;

        margin: 0 auto;
    }
    .alignright
    {
        float: right;
    }
    .alignleft
    {
        float: left;
    }
    img[class*='wp-image-'],
    img[class*='attachment-']
    {
        max-width: 100%; 
        height: auto;
    }
    #index-fb-wrap
    {
        width: 100%;
        padding: 50px 0;

        background: url(../img/index_fb_bg.jpg) repeat; 
        -webkit-box-shadow: inset 0 10px 10px 0 rgba(0, 0, 0, .2);
                box-shadow: inset 0 10px 10px 0 rgba(0, 0, 0, .2);
    }
    #index-fb
    {
        overflow: hidden; 

        width: 86%;
        max-width: 420px;
        margin: 0 auto;

        border: 2px solid #fff;
    }
    .fb-box
    {
        width: 100%;
    }
    .fb-box:first-child
    {
        border-bottom: 2px solid #fff;
    }
}

@media screen and (min-width: 768px)
{
    #container
    {
        overflow: hidden; 

        width: 100%;
        min-width: 1200px;
    }
    .inside-head
    {
        position: relative;

        width: 100%;
        height: 450px;
    }
    .inside-head:after
    {
        position: absolute;
        z-index: 100;
        bottom: 0;

        width: 100%;
        height: 7px;

        content: '';

        background: url(../img/inside_head_bg.png) repeat-x center top;
    }
    .inside-head-title
    {
        position: relative;

        width: 100%;
        height: 450px;
        margin: 0 auto;
    }
    #calendar .inside-head-title h1
    {
        position: absolute;
        top: 50%;
        left: 150px;

        width: 342px;
        height: 60px;
        margin-top: -30px;
    }
    #calendar .inside-head
    {
        width: 100%;
        height: 450px;

        background: url(../img/calendar_head.jpg) no-repeat center center;
        background-size: cover;
    }
    #calendar .inside-head:after
    {
        position: absolute;
        z-index: 100;
        bottom: 0;

        width: 100%;
        height: 22px;

        content: '';

        background: url(../img/inside_head_bg2.png) repeat-x center bottom;
    }
    #calendar-contents
    {
        width: 850px;
        margin: 0 auto;
        padding-top: 60px;
    }
    #calendar-contents nav
    {
        margin-bottom: 50px;
    }
    #calendar-contents nav ul
    {
        font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;

        padding-left: 43px;

        text-align: center;

        color: #5c5c5c;
        background: url(../img/calendar_arrow.gif) no-repeat 30px center;
    }
    #calendar-contents nav ul li
    {
        font-size: 134%;

        display: inline-block;

        margin-right: 30px; 

        letter-spacing: .12em;
    }
    #calendar-contents nav ul li:last-child
    {
        margin-right: 0;
    }
    #calendar-contents nav ul li a
    {
        color: #5c5c5c;
    }
    .calender-head
    {
        height: 81px;

        background: url(../img/calendar_line.jpg) no-repeat right center;
    }
    .calender-box
    {
        margin-bottom: 40px;
    }
    .calendar-body
    {
        float: left;

        width: 550px;
        margin-left: 70px;
    }
    .calendar-body dl
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        width: 550px;
        padding: 15px 0;

        background: url(../img/calendar_line2.gif) repeat-x left bottom;
    }
    .calendar-body dl dt
    {
        font-size: 125%;
        line-height: 18px;

        width: 165px;
        padding-left: 10px;

        letter-spacing: .05em;

        color: #a3a65d;
    }
    .calendar-body dl dd
    {
        position: relative;

        display: -webkit-box;

        display: -ms-flexbox;

        display: flex;

        width: 335px; 

        -webkit-box-pack: justify; 

            -ms-flex-pack: justify; 

                justify-content: space-between;
    }
    .calendar-body dl dd p
    {
        font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif; 
        font-size: 150%;
        font-weight: bolder;
        line-height: 1;

        letter-spacing: .1em;

        -ms-flex-negative: 0;

            flex-shrink: 0;
    }
    .calendar-body dl dd .area
    {
        font-size: 125%; 
        line-height: 18px;

        width: 220px;

        text-align: right;

        color: #3388c9;
    }
    .area a[target='_blank']
    {
        padding-right: 16px;

        background: url(../img/blank.png) no-repeat right center;
    }
    .calender-box figure
    {
        float: right;

        width: 186px;
        margin-right: 4px;
    }
    .calender-box figure figcaption
    {
        font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif; 
        font-size: 109%;
        font-weight: bolder;

        padding: 10px 0 0;

        text-align: center;
        letter-spacing: .2em;
    }
    .small1
    {
        font-size: 78%;
    }
    .small2
    {
        font-size: 67%;
    }
    #calender-lead
    {
        font-size: 125%;

        margin-bottom: 160px;
        padding-top: 90px;

        text-align: center;

        background: url(../img/calendar_line2.png) no-repeat left top;
    }
    #cal-wide
    {
        height: 70px;
    }
    #calendar .inside-head-title h1
    {
        position: absolute;
        top: 50%;
        left: 50px;

        width: 346px;
        height: 63px;
        margin-top: -31px;
    }
    #calendar .inside-head
    {
        width: 100%;
        height: 450px;

        background: url(../img/calendar_head.jpg) no-repeat center center;
        background-size: cover;
    }
    #calendar .inside-head:after
    {
        position: absolute;
        z-index: 100;
        bottom: 0;

        width: 100%;
        height: 22px;

        content: '';

        background: url(../img/inside_head_bg2.png) repeat-x center bottom;
    }
    #matsuri .inside-head-title h1
    {
        position: absolute;
        top: 50%;
        left: 50%;

        width: 637px;
        height: 188px;
        margin-top: -94px;
        margin-left: -318px;
    }
    #matsuri .inside-head
    {
        width: 100%;
        height: 450px;

        background: url(../img/calendar_head2.jpg) no-repeat center center;
        background-size: cover;
    }
    #matsuri .inside-head:after
    {
        position: absolute;
        z-index: 100;
        bottom: 0;

        width: 100%;
        height: 22px;

        content: '';

        background: url(../img/inside_head_bg2.png) repeat-x center bottom;
    }
    .matsuri-icon
    {
        position: absolute;
        top: 50%;
        right: 130px;

        width: 286px;
        height: 269px;
        margin-top: -135px;
    }
    .matsuri-contents
    {
        margin-bottom: 90px; 
        padding: 60px 0 0;
    }
    .matsuri-table
    {
        width: 1000px;
        margin: 0 auto 60px;
    }
    .matsuri-table td
    {
        line-height: 1.5;

        vertical-align: middle;
    }
    .matsuri-table thead th
    {
        padding: 20px 0;

        text-align: center; 
        letter-spacing: .1em;
    }
    .matsuri-table tbody th
    {
        font-size: 117%;

        width: 100px;
        padding: 0;

        text-align: center;
        letter-spacing: .1em;

        color: #fff;
        border: 1px solid #ccc;
    }
    .matsuri-table tbody tr td:nth-child(2)
    {
        width: 300px;
    }
    .matsuri-name
    {
        font-size: 109%;

        background: #fafafa;
    }
    .matsuri-item
    {
        position: relative;

        float: left;

        width: 196px;
        margin-right: 5px;
        margin-bottom: 5px;
    }
    .matsuri-item:nth-child(5n)
    {
        margin-right: 0;
    }
    .matsuri-area
    {
        font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
        line-height: 24px;

        position: absolute;
        bottom: 24px;
        left: 50%;

        width: 80px;
        height: 24px;
        margin-left: -40px;

        text-align: center; 

        color: #fff;
    }
    #access-bg
    {
        background: url(../img/inside_bg.jpg) repeat center center;
    }
    #access .inside-head-title h1
    {
        position: absolute;
        top: 50%;
        left: 150px;

        width: 146px;
        height: 58px;
        margin-top: -24px;
    }
    #access .inside-head
    {
        width: 100%;
        height: 453px;

        background: url(../img/access_head.jpg) no-repeat center center;
        background-size: cover;
    }
    #access-wrap
    {
        padding: 1385px 0 0;

        background: url(../img/access_bg.jpg) no-repeat center top;
    }
    #access-list
    {
        width: 930px;
        margin: 0 auto 85px;
    }
    #access-list dt
    {
        margin-bottom: 20px;
    }
    #access-list dd
    {
        margin-bottom: 60px; 
        padding-left: 40px;
    }
    #transportation
    {
        font-size: 117%; 

        width: 930px;
        margin: 0 auto 140px;
    }
    #transportation a[target='_blank']
    {
        padding-right: 16px;

        background: url(../img/blank.png) no-repeat right center;
    }
    #transportation h1
    {
        margin-bottom: 15px; 
        padding-left: 40px;
    }
    #transportation th
    {
        line-height: 22px; 

        width: 200px;
    }
    #transportation th img
    {
        margin-right: 17px;
    }
    .cel-1
    {
        width: 360px;
        padding-left: 70px;
    }
    .cel-2
    {
        width: 190px;
        padding-left: 80px;
    }
    #tour
    {
        width: 100%;
        min-width: 1000px;
    }
    #tour-head
    {
        margin: 0 0 4px;

        text-align: center;

        background: url(../img/tour_bg_01.jpg) no-repeat center center;
        background-size: cover;
    }
    #tour-head .inner
    {
        padding: 67px 0 80px;
    }
    #tour-list
    {
        margin: 0 auto 30px;
    }
    #tour-list li
    {
        position: relative;

        -webkit-box-sizing: border-box;

                box-sizing: border-box; 
        width: 100%;
        height: 400px;
    }
    #tour-list li:not(:last-child)
    {
        margin-bottom: 4px;
    }
    #tour-list li:hover
    {
        opacity: 1;
    }
    .tl-title
    {
        position: absolute;
        top: 50%;
        left: 50%;

        display: inline-block;

        -webkit-transform: translate(-50%, -50%);

                transform: translate(-50%, -50%);
    }
    .tl-label--film
    {
        position: absolute;
        bottom: 60px;
        left: 50%;

        display: inline-block;

        -webkit-transform: translateX(400px);

                transform: translateX(400px);
    }
    .tl-caption
    {
        width: 615px;
        margin: 0 auto;
    }
    .tl-caption p
    {
        font-size: 134%;
        line-height: 2; 

        margin: 0 0 25px;

        letter-spacing: .1em;
    }
    .tl-caption a
    {
        font-size: 125%;
        line-height: 29px;

        display: block;

        width: 246px;
        height: 29px;
        margin: 0 auto;

        -webkit-transition: .3s ease-out;
                transition: .3s ease-out; 
        text-align: center;
        text-decoration: none;
        letter-spacing: .1em;

        color: #fff;
        border: 2px solid #fff;
    }
    .tl-caption a:hover
    {
        font-weight: bolder;

        opacity: 1; 
        color: #555;
        background: #fff;
    }
    .tl-caption .tl-icon
    {
        margin: 0 0 25px;

        text-align: center;
    }
    #tl-01
    {
        background: url(../img/tour_bg_02.jpg) no-repeat center center;
        background-size: cover;
    }
    #tl-02
    {
        background: url(../img/tour_bg_03.jpg) no-repeat center center;
        background-size: cover;
    }
    .tl-overlay
    {
        position: absolute;
        z-index: 3;
        top: 0;
        left: 0;

        -webkit-box-sizing: border-box;

                box-sizing: border-box; 
        width: 100%;
        height: 100%;
        padding: 40px 0 0;

        -webkit-transition: .6s ease-in-out;
                transition: .6s ease-in-out;

        opacity: 0;
        color: #fff;
        background: rgba(0, 0, 0, .7);
    }
    #tour-list li:hover .tl-overlay
    {
        opacity: 1;
    }
    #tour-list .comingsoon
    {
        background: #eeeeed;
    }
    #tour-list .comingsoon p
    {
        position: absolute;
        top: 50%;
        left: 50%;

        width: 289px;
        height: 45px;
        margin-top: -22px; 
        margin-left: -145px;
    }
    .route-head
    {
        width: 100%;
        min-width: 1000px;
        height: 700px;
    }
    .route-head h1
    {
        height: 357px;
        padding-top: 93px;

        text-align: center;
    }
    #route-head-block-02
    {
        position: relative;

        width: 100%;
        height: 250px;

        color: #fff;
        background: rgba(0, 0, 0, .5);
    }
    #route-head-block-02 .inner
    {
        width: 910px;
        padding: 45px 45px 0;
    }
    #route-head-block-02 p
    {
        font-size: 134%;
    }
    .rhb2-text
    {
        line-height: 2; 

        float: left;

        width: 610px;

        letter-spacing: .1em;
    }
    .rhb2-img
    {
        float: right;

        width: 300px;

        text-align: center;
    }
    #route-head-block-02 .scroll
    {
        position: absolute;
        bottom: 20px;
        left: 50%;

        width: 48px;
        height: 48px;
        margin-left: -24px;

        -webkit-transition: .3s;
                transition: .3s;
    }
    #route-head-block-02 .scroll:hover
    {
        bottom: 25px;
    }
    #course
    {
        position: absolute;
        top: 260px;
        right: 0;

        width: 188px;
        padding: 16px 21px 21px;

        border: 5px solid #000;
        background: url(../img/course_bg_00.png) repeat;
    }
    #course p
    {
        margin: 0 0 5px; 

        text-align: center;
    }
    #course ul
    {
        width: 188px;
    }
    #course ul li
    {
        width: 188px;
        height: 40px;
    }
    #course ul li a
    {
        font-size: 117%;
        line-height: 40px;

        display: block;

        height: 40px;
        padding-left: 30px;

        letter-spacing: .1em;

        color: #221814;
        background: url(../img/course_nav_item.png) no-repeat left top;
    }
    #course ul li:first-child a
    {
        background: url(../img/course_nav_top.png) no-repeat left top;
    }
    #course ul li:first-child a:hover
    {
        opacity: 1;
        background: url(../img/course_nav_top_on.png) no-repeat left top;
    }
    #course ul li:last-child a
    {
        background: url(../img/course_nav_bottom.png) no-repeat left top;
    }
    #course ul li:last-child a:hover
    {
        opacity: 1;
        background: url(../img/course_nav_bottom_on.png) no-repeat left top;
    }
    #course ul li a:hover
    {
        opacity: 1;
        background: url(../img/course_nav_item_on.png) no-repeat left top;
    }
    .layout-01 .route-row-img
    {
        float: left;
    }
    .layout-01 .route-row-text
    {
        float: right;
    }
    .layout-02 .route-row-img
    {
        float: right;
    }
    .layout-02 .route-row-text
    {
        float: left;
    }
    #route-spot
    {
        padding: 80px 0 0;
    }
    .route-row
    {
        margin-bottom: 50px;
    }
    .route-row-img
    {
        position: relative;

        width: 490px;

        border: 5px solid #030000;
    }
    .route-tag
    {
        position: absolute;
        top: -5px;
        left: -5px;

        width: 100px;
        height: 100px;
    }
    .route-row-text
    {
        width: 440px;
        height: 440px;
        padding: 30px;

        background: url(../img/route_line_01.gif) repeat-x center left;
    }
    .text-row-01
    {
        position: relative;

        width: 440px;
        height: 218px;
        margin-bottom: 4px;
    }
    .text-row-01 h2
    {
        font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
        font-size: 300%;

        margin: 0 0 30px;

        letter-spacing: .05em; 

        color: #221814;
    }
    .text-row-01 p
    {
        font-size: 109%;
        line-height: 2; 

        letter-spacing: .1em;
    }
    .text-row-02
    {
        position: relative;

        width: 440px;
        height: 198px;
        padding: 20px 0 0;
    }
    .text-row-02 p
    {
        letter-spacing: .05em;
    }
    .text-row-02 ul
    {
        position: absolute;
        bottom: 0;
        left: 1px;

        width: 440px;
        height: 104px;
    }
    .text-row-02 ul li
    {
        float: left;

        width: 100px;
        height: 100px;

        border: 2px solid #eeeded;
    }
    .text-row-02 ul li:not(:last-child)
    {
        margin-right: 8px;
    }
    .blank-link
    {
        font-size: 117%;
        line-height: 30px;

        position: absolute;
        right: 0;
        bottom: 15px;

        display: block;

        width: 86px;
        height: 30px;
        padding-left: 14px;

        letter-spacing: .1em;

        color: #fff;
        background: #000;
    }
    .blank-link:after
    {
        display: inline-block;

        width: 13px;
        height: 10px;
        margin-left: 8px;

        content: '';

        background: url(../img/blank_02.png) no-repeat left top;
    }
    #route1
    {
        background: url(../img/route_01_bg_01.jpg) no-repeat center center;
        background-size: cover;
    }
    #route2
    {
        background: url(../img/route_02_bg_01.jpg) no-repeat center center;
        background-size: cover;
    }
    #route-tachiyori
    {
        background: #000;
    }
    #route-tachiyori h1
    {
        margin: 0 0 25px; 

        text-align: center;
    }
    #route-tachiyori .inner
    {
        padding: 25px 0 40px;
    }
    .tachiyori-list li
    {
        float: left;

        width: 226px;
        margin: 0 16px 0 0;
    }
    .tachiyori-wrap
    {
        position: relative;

        width: 226px;
        height: 226px;

        border: 2px solid #cdcece;
    }
    .tachiyori-list li:hover .tachiyori-wrap
    {
        border: 2px solid #333;
    }
    .tachiyori-list li:last-child
    {
        margin-right: 0;
    }
    .tachiyori-list-img
    {
        overflow: hidden; 

        width: 226px;
        height: 226px;
    }
    .tachiyori-caption
    {
        font-size: 115%;
    }
    .tachiyori-caption p a
    {
        text-decoration: none; 

        color: #c0a441;
    }
    .tachiyori-title
    {
        font-size: 117%;
        line-height: 1.5;

        margin: 18px 0 0;

        text-align: center; 
        letter-spacing: .1em;

        color: #fff;
    }
    .tachiyori-title span
    {
        font-size: 86%; 

        display: block;
    }
    #route-map
    {
        margin: 0 0 60px;

        background: url(../img/route_bg_01.png) repeat;
    }
    #route-map h1
    {
        padding: 25px 0;

        text-align: center;
    }
    #map-canvas
    {
        width: 100%;
        height: 635px;
    }
    .gm-style-iw
    {
        line-height: 1.2;
    }
    .route-nav
    {
        width: 872px;
        margin: 0 auto 70px;
    }
    .route-nav ul li
    {
        float: left;

        width: 137px;
    }
    .route-nav ul li a
    {
        display: block;
    }
    .route-nav ul li a:hover
    {
        opacity: 1;
    }
    .route-nav ul li:not(:last-child)
    {
        margin-right: 50px;
    }
    .tachiyori-overlay
    {
        position: absolute;
        z-index: 3;
        top: 0;
        left: 0;

        -webkit-box-sizing: border-box;

                box-sizing: border-box; 
        width: 100%;
        height: 100%;
        padding: 20px;

        -webkit-transition: opacity .6s ease-in-out;
                transition: opacity .6s ease-in-out;

        opacity: 0;
        color: #fff;
        background: rgba(0, 0, 0, .6);
    }
    .tachiyori-overlay p
    {
        font-size: 86%;
        line-height: 1.8;

        margin-bottom: 25px; 

        letter-spacing: .1em;
    }
    .tachiyori-overlay a:hover
    {
             opacity: 1; 

        filter: alpha(opacity=100);
        -moz-opacity: 1;
    }
    .tachiyori-list li:hover .tachiyori-overlay
    {
        opacity: 1;
    }
    #route3
    {
        background: url(../img/route_03_bg_01.jpg) no-repeat center center;
        background-size: cover;
    }
    #route3 #course
    {
        border: 5px solid #dd5360;
    }
    .route-spot-03 .blank-link
    {
        background: #dd5360;
    }
    .route-spot-03 h2
    {
        color: #dd5360;
    }
    .route-spot-03 .route-row-text
    {
        background: url(../img/route_line_02.gif) repeat-x center left;
    }
    .route-spot-03 .route-row-img
    {
        border: 5px solid #dd5360;
    }
    .tachiyori-list-season
    {
        width: 476px;
        margin: 0 auto;
    }
    #tl-03
    {
        background: url(../img/tour_bg_04.jpg) no-repeat center center;
        background-size: cover;
    }
    #route4
    {
        background: url(../img/route_04_bg_01.jpg) no-repeat center center;
        background-size: cover;
    }
    #route4 #course
    {
        border: 5px solid #04a5af;
    }
    .route-spot-04 .blank-link
    {
        background: #04a5af;
    }
    .route-spot-04 h2
    {
        color: #04a5af;
    }
    .route-spot-04 .route-row-text
    {
        background: url(../img/route_line_03.gif) repeat-x center left;
    }
    .route-spot-04 .route-row-img
    {
        border: 5px solid #04a5af;
    }
    .text-row-01 .route-title-small
    {
        font-size: 267%;
    }
    #tl-04
    {
        background: url(../img/tour_bg_05.jpg) no-repeat center center;
        background-size: cover;
    }
    #route5
    {
        background: url(../img/route_05_bg_01.jpg) no-repeat center center;
        background-size: cover;
    }
    #route5 #course
    {
        border: 5px solid #e6ba01;
    }
    .route-spot-05 .blank-link
    {
        background: #e6ba01;
    }
    .route-spot-05 h2
    {
        color: #e6ba01;
    }
    .route-spot-05 .route-row-text
    {
        background: url(../img/route_line_04.gif) repeat-x center left;
    }
    .route-spot-05 .route-row-img
    {
        border: 5px solid #e6ba01;
    }
    #tl-05
    {
        background: url(../img/tour_bg_06.jpg) no-repeat center center;
        background-size: cover;
    }
    #route6
    {
        background: url(../img/route_06_bg_01.jpg) no-repeat center center;
        background-size: cover;
    }
    #route6 #course
    {
        border: 5px solid #5f94a2;
    }
    .route-spot-06 .blank-link
    {
        background: #5f94a2;
    }
    .route-spot-06 h2
    {
        color: #5f94a2;
    }
    .route-spot-06 .route-row-text
    {
        background: url(../img/route_line_05.gif) repeat-x center left;
    }
    .route-spot-06 .route-row-img
    {
        border: 5px solid #5f94a2;
    }
    .text-row-01 .route-title-mb
    {
        margin: 0 0 15px;
    }
    .text-row-01 h2 span
    {
        font-size: 78%; 

        display: block;

        margin-bottom: 10px;
    }
    #tl-06
    {
        background: url(../img/tour_bg_07.jpg) no-repeat center center;
        background-size: cover;
    }
    #route7
    {
        background: url(../img/route_07_bg_01.jpg) no-repeat center center;
        background-size: cover;
    }
    #route7 #course
    {
        border: 5px solid #bc313a;
    }
    .route-spot-07 .blank-link
    {
        background: #bc313a;
    }
    .route-spot-07 h2
    {
        color: #bc313a;
    }
    .route-spot-07 .route-row-text
    {
        background: url(../img/route_line_06.gif) repeat-x center left;
    }
    .route-spot-07 .route-row-img
    {
        border: 5px solid #bc313a;
    }
    #tl-07
    {
        background: url(../img/tour_bg_08.jpg) no-repeat center center;
        background-size: cover;
    }
    #route8
    {
        background: url(../img/route_08_bg_01.jpg) no-repeat center center;
        background-size: cover;
    }
    #route8 #course
    {
        border: 5px solid #bc313a;
    }
    .route-spot-08 .blank-link
    {
        background: #bc313a;
    }
    .route-spot-08 h2
    {
        color: #bc313a;
    }
    .route-spot-08 .route-row-text
    {
        background: url(../img/route_line_06.gif) repeat-x center left;
    }
    .route-spot-08 .route-row-img
    {
        border: 5px solid #bc313a;
    }
    #tl-08
    {
        background: url(../img/tour_bg_09.jpg) no-repeat center center;
        background-size: cover;
    }
    #tl-09
    {
        background: url(../img/tour_bg_10.jpg) repeat-x center center;
        background-size: contain;
    }
    #tl-10
    {
        background: url(../img/tour_bg_11.jpg) no-repeat center center;
        background-size: cover;
    }
    .route-nav .bx-wrapper
    {
        margin-bottom: none;

        border: none;
        background: none; 
        -webkit-box-shadow: none;
                box-shadow: none;
    }
    .route-nav .bx-wrapper .bx-controls-direction a
    {
        top: 50%;

        width: 17px;
        height: 31px; 
        margin-top: -15.5px;
    }
    .route-nav .bx-wrapper .bx-prev
    {
        left: -50px;

        background: url(../img/arrow_prev.png) no-repeat;
        background-size: 17px 31px;
    }
    .route-nav .bx-wrapper .bx-next
    {
        right: -50px;

        background: url(../img/arrow_next.png) no-repeat;
        background-size: 17px 31px;
    }
    .route-nav .bx-wrapper .bx-prev:focus,
    .route-nav .bx-wrapper .bx-prev:hover
    {
        background-position: 0 0;
    }
    .route-nav .bx-wrapper .bx-next:focus,
    .route-nav .bx-wrapper .bx-next:hover
    {
        background-position: 0 0;
    }
    #about .inside-head-title h1
    {
        position: absolute;
        top: 50%;
        left: 50px;

        width: 427px;
        height: 67px;
        margin-top: -33px;
    }
    #about .inside-head
    {
        width: 100%;
        height: 450px;

        background: url(../img/about_head.jpg) no-repeat center center;
        background-size: cover;
    }
    #about .inside-head:after
    {
        position: absolute;
        z-index: 100;
        bottom: 0;

        width: 100%;
        height: 22px;

        content: '';

        background: url(../img/inside_head_bg2.png) repeat-x center bottom;
    }
    #about-wrapper
    {
        padding-top: 100px;
    }
    #about-contents
    {
        width: 750px;
        margin: 0 auto;
    }
    #about-contents table
    {
        font-size: 117%;

        width: 100%;

        color: #5c5c5c;
        border: 1px solid #ccc;
    }
    #about-contents table th
    {
        font-weight: normal;

        position: relative;

        width: 180px;
        padding: 0;

        text-align: center;
        vertical-align: middle;

        background: #eeeeed;
    }
    #about-contents table th::after
    {
        position: absolute;
        top: 0;
        left: 0;

        display: block;

        width: 15px;
        height: 100%;

        content: '';
    }
    table td
    {
        padding: 15px;

        border: 1px solid #ccc; 
        background: #fff;
    }
    #about-contents section
    {
        margin-bottom: 90px;
    }
    .about-ttl
    {
        font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
        font-size: 217%;

        margin-bottom: 35px;

        text-align: center;
        letter-spacing: .1em; 

        color: #a3a65d;
    }
    .about-ttl span
    {
        display: inline-block;

        padding-bottom: 8px;

        background: url(../img/line_01.png) repeat-x center bottom;
        background-size: 408px 3px;
    }
    #about-contents section p
    {
        font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif; 
        font-size: 134%;
        line-height: 2.25;

        margin-bottom: 50px;

        letter-spacing: .25em;
    }
    #kyogikai p
    {
        margin-bottom: 0;
    }
    #kyogikai p:after
    {
        display: block;

        height: 160px;

        content: '';

        background: url(../img/about_mark.png) no-repeat center 110px;
    }
    #about-contents section h2
    {
        font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
        font-size: 217%;

        margin-bottom: 25px;

        text-align: center; 
        letter-spacing: .1em;

        color: #5c5d5d;
    }
    .about-tel
    {
        text-align: center;
    }
    .about-name
    {
        padding-left: 70px;
    }
    .about-name a[target='_blank']
    {
        padding-right: 16px;

        background: url(../img/blank.png) no-repeat right center;
    }
    .page-nav
    {
        padding: 50px 49px;

        border: 1px solid #a3a65d;
    }
    .page-nav ul
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -webkit-box-pack: justify;

            -ms-flex-pack: justify;

                justify-content: space-between;
    }
    .page-nav ul li
    {
        width: 423px;

        border: 1px solid #a3a65f;
    }
    .page-nav ul li:nth-child(2n)
    {
        margin-right: 0;
    }
    .page-nav ul li a
    {
        font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
        font-size: 142%;
        line-height: 78px;

        display: block;

        height: 78px;

        -webkit-transition: .3s;

        transition: .3s; 
        text-align: center;
        letter-spacing: .1em;

        color: #fff;
        background: #a3a65f;
    }
    .page-nav ul li a::after
    {
        line-height: 78px;

        display: inline-block;

        width: 10px;
        height: 10px;
        margin-left: 20px;

        content: ' ';
        -webkit-transition: .3s;
        transition: .3s; 
        -webkit-transform: rotate(45deg);
                transform: rotate(45deg);

        border-top: 2px solid #fff;
        border-right: 2px solid #fff;
    }
    .page-nav ul li a:hover
    {
        opacity: 1; 
        color: #a3a65f;
        background: #fff;
    }
    .page-nav ul li a:hover::after
    {
        border-top: 2px solid #a3a65f; 
        border-right: 2px solid #a3a65f;
    }
    #parallax-wrap
    {
        position: relative;

        width: 1000px;
        height: 1700px;
        margin: 0 auto;
        padding: 100px 0 20px;

        text-align: center;
    }
    #parallax-layer1,
    #parallax-layer2
    {
        position: absolute;
        top: 0;
        left: 0;

        width: 1000px;
        height: 1740px;
    }
    #parallax-layer1
    {
        background: url(../img/layer2.png) no-repeat left top scroll;
    }
    #parallax-layer2
    {
        background: url(../img/layer1.png) no-repeat left top scroll;
    }
    #parallax-layer3
    {
        position: absolute;
        top: 0;
        left: 0;

        width: 100%;
        height: 1850px;

        background: url(../img/chita.png);
        background-repeat: no-repeat;
        background-attachment: fixed; 
        background-position: center center;
    }
    #text-wrap
    {
        position: relative;
        z-index: 999; 

        width: 1000px;
        height: 1640px;
    }
    #read1
    {
        margin-bottom: 136px;
    }
    #read2,
    #read3,
    #read4,
    #read6,
    #read8
    {
        margin-bottom: 85px;
    }
    #read5,
    #read7
    {
        margin-bottom: 136px;
    }
    #catch1
    {
        margin-bottom: 65px;

        opacity: 0;
    }
    #catch2
    {
        margin-bottom: 130px;
    }
    .l-container
    {
        width: 1000px;
        margin: 0 auto;
        padding-bottom: 90px;
    }
    .l-main
    {
        float: left;

        width: 740px;
    }
    .l-sub
    {
        float: right;

        width: 230px;
    }
    .sidebar-block
    {
        margin-bottom: 50px;
    }
    .sidebar-block-inner
    {
        padding-left: 20px;
    }
    .sidebar-block-ttl
    {
        font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
        font-size: 150%;
        font-weight: normal;
        line-height: 48px;

        margin-bottom: 25px;

        text-align: center;
        letter-spacing: .1em;

        border: 1px solid #303335;
    }
    .sidebar-block-item
    {
        margin-bottom: 28px;
    }
    .sidebar-block-item:last-child
    {
        margin-bottom: 0;
    }
    .sidebar-block .area-list-item
    {
        width: 100px;
        height: 20px;
        margin: 0 0 15px 20px;
    }
    .sidebar-block .area-list-item a
    {
        font-size: 117%;
        line-height: 20px;

        display: block;

        height: 20px;
        padding-left: 15px;

        color: #5c5d5d;
        background: none;
    }
    .area-list-item a
    {
        border-left: 20px solid;
    }
    .event-head-ttl
    {
        padding: 45px 0;

        text-align: center;
    }
    .hotel-head-ttl
    {
        padding: 45px 0;

        text-align: center;
    }
    .hotel-head-wrapper
    {
        font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;

        letter-spacing: .1em;

        background: url(../img/hotel_bg_01.jpg) no-repeat;
        background-position: center center;
        background-size: cover;
    }
    .hotel-head-inner
    {
        width: 1000px;
        margin: 0 auto; 
        padding: 110px 0 105px;
    }
    .hotel-area-list
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -ms-flex-wrap: wrap;

            flex-wrap: wrap;
    }
    .hotel-area-list li
    {
        width: 180px;
        height: 40px;
        margin-right: 25px;
        margin-bottom: 25px;
    }
    .hotel-area-list li:nth-child(5n)
    {
        margin-right: 0;
    }
    .hotel-area-list li a
    {
        font-size: 150%;
        line-height: 40px;

        display: block;

        height: 40px;

        text-align: center;
        letter-spacing: .2em;

        color: #fff;
        border: 1px solid #fff;
    }
    .hotel-group
    {
        width: 930px;
        margin: 0 auto;
    }
    .hotel-group li
    {
        margin-bottom: 50px;
    }
    .hotel-group li:last-child
    {
        margin-bottom: 0;
    }
    .hotel-table
    {
        width: 100%;
    }
    .hotel-table thead th
    {
        font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
        font-size: 150%;
        font-weight: normal;
        line-height: 1.8;

        padding: 10px 20px;

        letter-spacing: .2em;

        color: #fff;
        border-color: #303335;
    }
    .hotel-table thead th.tokai
    {
        background: #4c616f;
    }
    .hotel-table thead th.oobu
    {
        background: #1b4f2d;
    }
    .hotel-table thead th.higashiura
    {
        background: #662554;
    }
    .hotel-table thead th.chita
    {
        background: #741d31;
    }
    .hotel-table thead th.tokoname
    {
        background: #7d592d;
    }
    .hotel-table thead th.agui
    {
        background: #76774e;
    }
    .hotel-table thead th.handa
    {
        background: #5c5d5d;
    }
    .hotel-table thead th.taketoyo
    {
        background: #552e1b;
    }
    .hotel-table thead th.mihama
    {
        background: #1c6659;
    }
    .hotel-table thead th.minamichita
    {
        background: #425378;
    }
    .hotel-table tbody tr:nth-child(even) td
    {
        background-color: #efefef;
    }
    .hotel-table tbody td
    {
        font-size: 108%;
        line-height: 1.8;

        position: relative;

        padding: 12px 28px;

        border-color: #303335;
    }
    .hotel-table tbody td:nth-child(1),
    .hotel-table tbody td:nth-child(3)
    {
        width: 174px;
    }
    .hotel-table tbody td:nth-child(2)
    {
        padding-right: 110px;
    }
    .hotel-table tbody td:nth-child(3)
    {
        text-align: center;
    }
    .hotel-link
    {
        text-decoration: underline;
    }
    .hotel-link::after
    {
        display: inline-block;

        width: 11px;
        height: 9px;
        margin-left: 10px;

        content: '';

        background: url(../img/icon_blank_02.svg) no-repeat left top;
    }
    .hotel-map
    {
        position: absolute;
        top: 50%;
        right: 20px;

        display: block;

        width: 70px;
        height: 24px;

        -webkit-transform: translateY(-50%);

                transform: translateY(-50%); 
        text-align: center;

        color: #fff;
        border-radius: 4px;
        background-color: #5c5d5d;
    }
    .hotel-map::after
    {
        display: inline-block;

        width: 11px;
        height: 9px;
        margin-left: 10px;

        content: '';

        background: url(../img/icon_blank_01.svg) no-repeat left top;
    }
    .panflet-head-ttl
    {
        padding: 45px 0;

        text-align: center;
    }
    .panflet-head-visual
    {
        width: 100%;
        height: 350px;

        background: url(../img/panflet_bg_01.jpg);
        background-repeat: no-repeat;
        background-position: center;
        background-size: cover;
    }
    .panflet-list
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        margin-bottom: 30px; 

        -ms-flex-wrap: wrap; 

            flex-wrap: wrap;
    }
    .panflet-item
    {
        width: 29%;
        margin-right: 6.5%;
        margin-bottom: 60px;
    }
    .panflet-item:nth-child(3n)
    {
        margin-right: 0;
    }
    .panflet-thumb
    {
        display: block;

        margin-bottom: 20px;
    }
    .panflet-thumb img
    {
        font-family: 'object-fit: contain;'; 

        width: 290px;
        height: 290px;

        -o-object-fit: contain;

           object-fit: contain;
    }
    .panflet-heading
    {
        font-size: 18px;
        line-height: 1.2;

        margin-bottom: 20px;
        padding: 12px 0;

        text-align: center; 

        border-top: 1px dashed #5c5d5d;
        border-bottom: 1px dashed #5c5d5d;
    }
    .panflet-meta
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        margin-bottom: 15px; 

        -webkit-box-align: center; 

            -ms-flex-align: center; 

                align-items: center;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
    }
    .panflet-data
    {
        font-size: 14px;
        font-weight: bold; 

        color: #3480bb;
    }
    .panflet-date
    {
        font-size: 12px;
        line-height: 26px;

        display: inline-block;

        width: 120px;
        height: 26px;

        text-align: center;

        color: #231815;
        background-color: #efefef;
    }
    .panflet-desc
    {
        font-size: 13px;
        line-height: 1.8; 

        color: #5c5d5d;
    }
    .panflet-btn
    {
        font-size: 15px;
        font-weight: bold;
        line-height: 50px;

        position: relative;

        display: block;

        height: 50px;
        margin-top: 20px;

        text-align: center;

        color: #fff;
        border-radius: 4px;
        background-color: #231815;
    }
    .panflet-btn::after
    {
        position: absolute;
        top: 50%;
        right: 30px;

        display: block;

        width: 25px;
        height: 23px;

        content: '';
        -webkit-transform: translateY(-50%);
                transform: translateY(-50%);

        background: url(../img/common_icon_03.svg);
        background-size: cover;
    }
    .catapoke
    {
        margin: 0 -500%;
        padding: 65px 500% 130px;

        color: #231815;
        background: url(../img/common_bg_01.jpg);
    }
    .catapoke-thumb
    {
        width: 230px;
        margin: 0 auto 35px;
    }
    .catapoke-content
    {
        width: 700px;
        margin: 0 auto 70px;
    }
    .catapoke-heading
    {
        margin-bottom: 55px;
    }
    .catapoke-title
    {
        font-size: 26px;
        font-weight: bold;

        text-align: center;
    }
    .catapoke-desc
    {
        font-size: 13px;
        font-weight: bold;
        line-height: 1.8; 

        margin-bottom: 35px;
    }
    .catapoke-btn
    {
        font-size: 15px;
        font-weight: bold;
        line-height: 50px;

        position: relative;

        display: block;

        width: 290px;
        height: 50px;
        margin: 0 auto;

        text-align: center;

        color: #fff;
        border-radius: 4px;
        background-color: #5c5d5d;
    }
    .catapoke-btn::after
    {
        position: absolute;
        top: 50%;
        right: 30px;

        display: block;

        width: 17px;
        height: 14px;

        content: '';
        -webkit-transform: translateY(-50%);
                transform: translateY(-50%);

        background: url(../img/common_icon_04.svg);
        background-size: cover;
    }
    .app
    {
        padding: 18px 48px 30px;

        background-color: #fff;
    }
    .app-title
    {
        font-size: 15px; 

        margin-bottom: 25px;

        text-align: center;
    }
    .app-grid
    {
        position: relative;

        display: -webkit-box;

        display: -ms-flexbox;

        display: flex;

        -webkit-box-pack: justify;

            -ms-flex-pack: justify;

                justify-content: space-between;
    }
    .app-grid::after
    {
        position: absolute;
        top: 0;
        left: 50%;

        display: block;

        width: 2px;
        height: 100%;

        content: '';
        -webkit-transform: translateX(-50%);
                transform: translateX(-50%);

        background: url(../img/common_line_01.png);
        background-repeat: repeat-y;
        background-position: left top;
        background-size: contain;
    }
    .app-col
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex; 

        -webkit-box-flex: 1; 

            -ms-flex: 1; 

                flex: 1;
    }
    .app-label
    {
        font-size: 16px;

        margin-bottom: 25px;

        text-align: center; 

        color: #5c5d5d;
    }
    .app-content
    {
        width: 230px;
        margin-right: 65px;
    }
    .app-content--appstore
    {
        margin-left: 50px;
    }
    .app-qr
    {
        margin-top: 10px;
    }
    .area-list-wrapper
    {
        font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;

        letter-spacing: .1em;

        background: url(../img/bg_02.jpg) repeat;
    }
    .area-list-wrapper--gourmet
    {
        font-family: Arial, 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;

        background: none;
    }
    .area-list-inner
    {
        width: 1000px;
        margin: 0 auto;
        padding: 80px 0 100px;

        background: url(../img/bg_03.jpg) no-repeat center center;
    }
    .area-list-ttl
    {
        font-size: 209%;
        font-weight: bold;

        width: 240px;
        margin: 0 auto 50px;
        padding: 12px 0;

        text-align: center;

        color: #5c5d5d;
        border-top: 1px solid #5c5d5d;
        border-bottom: 1px solid #5c5d5d;
    }
    .area-list-wrapper .area-list-item
    {
        float: left;

        width: 180px;
        height: 40px;
        margin-right: 25px;
        margin-bottom: 25px;
    }
    .area-list-wrapper .area-list-item:nth-child(5n)
    {
        margin-right: 0;
    }
    .area-list-wrapper .area-list-item a
    {
        font-size: 150%;
        line-height: 40px;

        display: block;

        height: 40px;

        text-align: center;
        letter-spacing: .2em;

        color: #5c5d5d;
        background: rgba(255, 255, 255, .7);
    }
    .related-wrap
    {
        margin-top: 50px;
        padding: 38px 60px 65px;

        border: 1px dashed #5c5d5d;
    }
    .related-list-item
    {
        margin-bottom: 40px;
    }
    .related-list-item:last-child
    {
        margin-bottom: 0;
    }
    .related-title
    {
        font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
        font-size: 150%;

        margin-bottom: 38px;

        letter-spacing: .1em; 

        color: #333;
    }
    .entries-related-thumb
    {
        float: left;

        width: 90px;
        height: 90px;
    }
    .entries-related-heading
    {
        float: right;

        width: 400px;
    }
    .entries-related-tag
    {
        line-height: 18px;

        display: block;
        float: left;

        width: 60px;
        height: 18px;

        text-align: center; 
        letter-spacing: .2em;

        color: #fff;
    }
    .entries-related-meta
    {
        font-size: 92%;
        line-height: 18px; 

        display: inline-block;
        float: right;

        text-align: right;
    }
    .entries-related-ttl
    {
        font-size: 134%;
        font-weight: bold;
        line-height: 1.5;

        padding: 12px 0;

        vertical-align: middle;
    }
    .entries-related-ttl a
    {
        color: #5c5d5d;
    }
    .entries-related-period
    {
        padding: 7px 0;

        border-top: 1px dashed #5c5d5d;
        border-bottom: 1px dashed #5c5d5d;
    }
    #list .inside-head-title h1
    {
        position: absolute;
        top: 50%;
        left: 150px;

        width: 157px;
        height: 61px;
        margin-top: -30px;
    }
    #list .inside-head
    {
        width: 100%;
        height: 450px;

        background: url(../img/list_head.jpg) no-repeat center center;
        background-size: cover;
    }
    #list .inside-head:after
    {
        position: absolute;
        z-index: 100;
        bottom: 0;

        width: 100%;
        height: 22px;

        content: '';

        background: url(../img/inside_head_bg2.png) repeat-x center bottom;
    }
    #list-wrapper
    {
        width: 750px;
        margin: 0 auto 90px;
        padding-top: 80px;
    }
    #list-wrapper section:not(:last-child)
    {
        margin-bottom: 80px;
    }
    #list-wrapper .list-title
    {
        font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
        font-size: 217%;

        margin-bottom: 25px;

        text-align: center; 
        letter-spacing: .1em;

        color: #5c5d5d;
    }
    .list-table
    {
        width: 100%;

        letter-spacing: .1em;

        border: none;
        border-top: 1px dashed #ccc;
    }
    .list-table th
    {
        font-weight: normal;
        line-height: 1.8;

        width: 550px;
        padding: 20px 20px 20px 40px;

        text-align: left;
        vertical-align: middle;

        border: none;
        border-bottom: 1px dashed #ccc;
        background: none;
    }
    .lt-name
    {
        font-size: 134%;
        font-weight: normal;
    }
    .lt-address
    {
        color: #7b7b7b;
    }
    .lt-text
    {
        margin-bottom: 10px;
    }
    .list-table th a[target='_blank']
    {
        padding-right: 16px;

        background: url(../img/blank.png) no-repeat right center;
    }
    .list-table td
    {
        font-size: 117%;
        line-height: 2;

        width: 595px;
        padding: 20px 0;

        vertical-align: middle;

        border: none;
        border-bottom: 1px dashed #ccc;
        background: none;
    }
    #pagenavi
    {
        font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif; 

        padding-bottom: 20px;

        text-align: center;
    }
    .wp-pagenavi
    {
        font-size: 16px;
        line-height: 40px;

        margin: 0 auto;

        text-align: center;

        color: #5c5d5d;
    }
    .wp-pagenavi span
    {
        border: none !important;
    }
    .wp-pagenavi span.pages
    {
        margin: 3px !important;
        padding: 6px 10px !important;

        border: none !important;
    }
    .wp-pagenavi .current
    {
        font-weight: bolder;

        padding: 6px 10px !important;

        color: #5c5d5d;
        border: none !important; 
        background: none;
    }
    .wp-pagenavi a
    {
        margin: 3px !important;
        padding: 6px 10px !important;

        text-decoration: none !important;

        color: #5c5d5d; 
        border: none !important;
    }
    .aligncenter
    {
        display: block;

        margin: 0 auto;
    }
    .alignright
    {
        float: right;
    }
    .alignleft
    {
        float: left;
    }
    img[class*='wp-image-'],
    img[class*='attachment-']
    {
        max-width: 100%; 
        height: auto;
    }
    #index-fb-wrap
    {
        width: 100%;
        padding: 50px 0;

        background: url(../img/index_fb_bg.jpg) repeat; 
        -webkit-box-shadow: inset 0 10px 10px 0 rgba(0, 0, 0, .2);
                box-shadow: inset 0 10px 10px 0 rgba(0, 0, 0, .2);
    }
    #index-fb
    {
        width: 856px;
        margin: 0 auto;

        border: 2px solid #fff;
    }
    .fb-box
    {
        float: left;

        width: 427px;
    }
    .fb-box:first-child
    {
        border-right: 2px solid #fff;
    }
}
