body
{
    -webkit-text-size-adjust: 100%
}
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, textarea, p, blockquote, th, td, figure
{
    margin: 0;
    padding: 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    line-height: 1
}
img
{
    line-height: 0
}
figure
{
    line-height: 1
}
table
{
    border-collapse: collapse;
    border-spacing: 0
}
fieldset, img
{
    border: 0
}
address, caption, cite, code, dfn, em, strong, th, var
{
    font-style: normal
}
li
{
    list-style: none
}
caption, th
{
    text-align: left
}
h1, h2, h3, h4, h5, h6
{
    font-size: 100%;
    font-weight: normal
}
q:before, q:after
{
    content: ''
}
abbr, acronym
{
    border: 0;
    font-variant: normal
}
sup
{
    vertical-align: text-top
}
sub
{
    vertical-align: text-bottom
}
input, textarea, select
{
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit
}
input, textarea, select
{
    font-size: 100%;
}
legend
{
    color: #000
}
.sample:nth-child(1)
{
    -webkit-animation: open-h1 1s ease .7s;
    animation: open-h1 1s ease .7s;
    animation: open-h1 1s ease .7s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    animation-fill-mode: both
}
.sample:nth-child(2)
{
    -webkit-animation: open-h1 1s ease 1.2s;
    animation: open-h1 1s ease 1.2s;
    animation: open-h1 1s ease 1.2s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    animation-fill-mode: both
}
.sample:nth-child(3)
{
    -webkit-animation: open-h1 1s ease 1.7s;
    animation: open-h1 1s ease 1.7s;
    animation: open-h1 1s ease 1.7s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    animation-fill-mode: both
}
@-webkit-keyframes anime1
{
    0%
    {
        opacity: 0;
        -webkit-transform: translateY(-10px);
        transform: translateY(-10px)
    }
    100%
    {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}
@keyframes anime1
{
    0%
    {
        opacity: 0;
        -webkit-transform: translateY(-10px);
        transform: translateY(-10px)
    }
    100%
    {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}
body
{
    -webkit-text-size-adjust: 100%;
    position: relative;
    font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,serif
}
@media screen and (min-width: 751px)
{
    body
    {
        padding-top: 0
    }
}
@media screen and (min-width: 0) and (max-width: 750px)
{
    .wrapper
    {
        overflow: hidden
    }
}
*
{
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}
#wrap
{
    overflow: hidden;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: opacity 1.2s ease 0s,visibility 1.2s ease 0s;
    transition: opacity 1.2s ease 0s,visibility 1.2s ease 0s;
    position: relative
}
#wrap.fadein
{
    opacity: 1;
    visibility: visible
}
body
{
    width: 100%;
    min-width: 1024px;
    image-rendering: -webkit-optimize-contrast;
    -webkit-font-smoothing: antialiased;
    color: #282f37;
    background-attachment: fixed;
    background-position: center;
    background-size: cover;
    font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,serif
}
@media only screen and (min-width: 499px)
{
    body
    {
        font-size: 14px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    body
    {
        font-size: 12px
    }
}
@media only screen and (max-width: 500px)
{
    body
    {
        font-size: 3.3vw
    }
}
@media all and (-ms-high-contrast: none)
{
    body
    {
        font-family: "Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,"ＭＳ Ｐ明朝","MS PMincho",serif
    }
}
@media only screen and (max-width: 500px)
{
    body
    {
        min-width: 0;
        overflow-x: hidden;
        padding-top: 13.992vw
    }
}
body.hidden
{
    overflow: hidden
}
body.under
{
    background: #f7f7f3
}
@media only screen and (min-width: 499px)
{
    body.under
    {
        padding-top: 122px
    }
}
img
{
    width: 100%;
    max-width: 100%;
    height: auto;
    vertical-align: top
}
a
{
    text-decoration: none;
    outline: none;
    color: inherit
}
.inner
{
    position: relative;
    width: 100%;
    max-width: 1050px;
    margin-right: auto;
    margin-left: auto;
    padding: 0 20px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .inner
    {
        width: 1024px
    }
}
@media only screen and (max-width: 500px)
{
    .inner
    {
        width: 88.8888vw;
        max-width: none;
        padding: 0
    }
}
.inner1080
{
    position: relative;
    width: 100%;
    max-width: 1120px;
    margin-right: auto;
    margin-left: auto;
    padding: 0 20px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .inner1080
    {
        width: 1024px
    }
}
@media only screen and (max-width: 500px)
{
    .inner1080
    {
        width: 88.8888vw;
        max-width: none;
        padding: 0
    }
}
@media only screen and (min-width: 499px)
{
    .section
    {
        padding: 70px 0
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .section
    {
        padding: 60px 0
    }
}
@media only screen and (max-width: 500px)
{
    .section
    {
        padding: 8.3333vw 0
    }
}
@media only screen and (min-width: 499px)
{
    .hoverOpacity
    {
        -webkit-transition: opacity .2s ease 0s;
        transition: opacity .2s ease 0s;
        cursor: pointer
    }
    .hoverOpacity:hover
    {
        opacity: .7
    }
}
@media only screen and (min-width: 499px)
{
    .pcH
    {
        display: none !important
    }
}
@media only screen and (max-width: 500px)
{
    .spH
    {
        display: none !important
    }
}
@media only screen and (min-width: 321px)
{
    .osmH
    {
        display: none !important
    }
}
.secBg
{
    position: fixed;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100vw;
    background-size: cover;
    background-position: center;
    overflow: hidden
}
@media only screen and (min-width: 499px)
{
    .secBg
    {
        height: 100vh !important
    }
}
@media only screen and (min-width: 499px)
{
    .anchor
    {
        padding-top: 220px;
        margin-top: -220px
    }
}
@media only screen and (max-width: 500px)
{
    .anchor
    {
        padding-top: 16vw;
        margin-top: -16vw
    }
}
.fadein
{
    opacity: 0;
    -webkit-transition: opacity 1s ease 0s,margin-top 1s ease 0s;
    transition: opacity 1s ease 0s,margin-top 1s ease 0s
}
.fadein.scrollin
{
    opacity: 1
}
.fadein.slideT
{
    position: relative;
    margin-top: -30px
}
.fadein.slideT.scrollin
{
    margin-top: 0
}
.fadein.scaleBig
{
    -webkit-transform: scale(1.5);
    transform: scale(1.5)
}
.fadein.scaleBig.scrollin
{
    -webkit-transform: scale(1);
    transform: scale(1)
}
.fadein.scaleSmall
{
    -webkit-transform: scale(.85);
    transform: scale(.85)
}
.fadein.scaleSmall.scrollin
{
    -webkit-transform: scale(1);
    transform: scale(1)
}
.scaleWrap
{
    overflow: hidden
}
.secTtl
{
    text-align: center
}
@media only screen and (min-width: 499px)
{
    .secTtl
    {
        margin-bottom: 60px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .secTtl
    {
        margin-bottom: 50px
    }
}
@media only screen and (max-width: 500px)
{
    .secTtl
    {
        margin-bottom: 6.8vw
    }
}
.secTtl span
{
    display: block
}
.secTtl .en
{
    letter-spacing: .12em;
    font-family: petersburg-web,serif;
    font-weight: 400,700;
    font-style: normal,italic
}
@media only screen and (min-width: 499px)
{
    .secTtl .en
    {
        font-size: 35px;
        margin-bottom: 15px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .secTtl .en
    {
        font-size: 32px;
        margin-bottom: 10px
    }
}
@media only screen and (max-width: 500px)
{
    .secTtl .en
    {
        font-size: 6.25vw;
        margin-bottom: 2vw
    }
}
.secTtl .jp
{
    font-weight: bold;
    letter-spacing: .08em
}
.secTtl.secTtlCur .en
{
    color: #aaa08c;
    letter-spacing: normal;
    font-family: 'Italianno',cursive
}
@media only screen and (min-width: 499px)
{
    .secTtl.secTtlCur .en
    {
        font-size: 60px;
        margin-bottom: 0
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .secTtl.secTtlCur .en
    {
        font-size: 49.5px;
        margin-bottom: 0
    }
}
@media only screen and (max-width: 500px)
{
    .secTtl.secTtlCur .en
    {
        font-size: 15.1388vw;
        margin-bottom: 0
    }
}
@media only screen and (min-width: 499px)
{
    .under .secTtl
    {
        margin-bottom: 50px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .under .secTtl
    {
        margin-bottom: 41px
    }
}
@media only screen and (min-width: 499px)
{
    .under .secTtl.secTtlUnderTop
    {
        margin-top: 95px;
        margin-bottom: 80px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .under .secTtl.secTtlUnderTop
    {
        margin-top: 78px;
        margin-bottom: 66px
    }
}
@media only screen and (max-width: 500px)
{
    .under .secTtl.secTtlUnderTop
    {
        margin-top: 8.3333vw;
        margin-bottom: 8.3333vw
    }
}
.secLead
{
    text-align: center;
    font-weight: bold
}
@media only screen and (min-width: 499px)
{
    .secLead
    {
        font-size: 20px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .secLead
    {
        font-size: 17px
    }
}
@media only screen and (max-width: 500px)
{
    .secLead
    {
        font-size: 4.5vw
    }
}
@media only screen and (min-width: 499px)
{
    .secLead
    {
        margin-bottom: 15px;
        line-height: 2
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .secLead
    {
        margin-bottom: 13px
    }
}
@media only screen and (max-width: 500px)
{
    .secLead
    {
        margin-bottom: 2.7777vw;
        line-height: 1.666
    }
}
.secComment
{
    text-align: center
}
@media only screen and (min-width: 499px)
{
    .secComment
    {
        margin-bottom: 40px;
        line-height: 2.14
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .secComment
    {
        margin-bottom: 33px
    }
}
@media only screen and (max-width: 500px)
{
    .secComment
    {
        margin-bottom: 7.6388vw;
        line-height: 1.6666
    }
}
.blockTtl
{
    font-weight: bold;
    line-height: 2.2;
    letter-spacing: .12em
}
@media only screen and (min-width: 499px)
{
    .blockTtl
    {
        font-size: 20px;
        margin-bottom: 15px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .blockTtl
    {
        font-size: 16.5px;
        margin-bottom: 10px
    }
}
@media only screen and (max-width: 500px)
{
    .blockTtl
    {
        font-size: 4.1666vw;
        margin-bottom: 5vw;
        text-align: center;
        line-height: 1.666
    }
}
@media only screen and (max-width: 320px)
{
    .blockTtl
    {
        font-size: 4vw
    }
}
@media only screen and (max-width: 500px)
{
    .blockTtl .smallSp
    {
        letter-spacing: 0
    }
}
@media all and (-ms-high-contrast: none)
{
    *::-ms-backdrop, .blockTtl .msSmall
    {
        letter-spacing: 0
    }
}
@media all and (-ms-high-contrast: none)
{
    .blockTtl .msSmall
    {
        letter-spacing: 0
    }
}
.blockTxt
{
    line-height: 2.14;
    letter-spacing: .08em
}
@media only screen and (max-width: 500px)
{
    .blockTxt
    {
        padding: 0 1.4em;
        line-height: 1.666
    }
}
.white
{
    color: #fff
}
.gold
{
    color: #aaa08c
}
.brown
{
    color: #8c7c52
}
.red
{
    color: #821437
}
.center
{
    margin-left: auto;
    margin-right: auto;
    text-align: center
}
.btn a, .btn button
{
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    outline: none;
    background: transparent;
    display: block;
    position: relative;
    color: #fff;
    text-align: center
}
@media only screen and (min-width: 499px)
{
    .btn a, .btn button
    {
        -webkit-transition: opacity .2s ease 0s;
        transition: opacity .2s ease 0s;
        cursor: pointer
    }
    .btn a:hover, .btn button:hover
    {
        opacity: .7
    }
}
@media only screen and (min-width: 499px)
{
    .btn a, .btn button
    {
        font-size: 16px;
        margin-top: 40px;
        width: 260px;
        padding: 17px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .btn a, .btn button
    {
        font-size: 14px;
        margin-top: 35px;
        width: 250px;
        padding: 15px
    }
}
@media only screen and (max-width: 500px)
{
    .btn a, .btn button
    {
        margin: 11.3888vw auto 0;
        width: 57.7777vw;
        padding: 3.4722vw
    }
}
.btn a:after, .btn button:after
{
    content: " ";
    display: block;
    position: absolute;
    top: 50%;
    -webkit-transform: translate(0,-50%);
    transform: translate(0,-50%);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat
}
@media only screen and (min-width: 499px)
{
    .btn a:after, .btn button:after
    {
        width: 22px;
        height: 5px;
        right: 14px;
        background-image: url(assets/images/common/arw_btn_w.svg)
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .btn a:after, .btn button:after
    {
        width: 20px;
        height: 4px;
        right: 12px
    }
}
@media only screen and (max-width: 500px)
{
    .btn a:after, .btn button:after
    {
        width: 4.8888vw;
        height: 1.5vw;
        right: 3.055vw;
        background-image: url(assets/images/common/arw_btn_w_sp.svg)
    }
}
.btn button
{
    font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,serif;
    font-weight: bold
}
@media all and (-ms-high-contrast: none)
{
    .btn button
    {
        font-family: "Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,"ＭＳ Ｐ明朝","MS PMincho",serif
    }
}
.btn.btnBlack a, .btn.btnBlack button
{
    background: #282f37
}
.btn.btnGold a, .btn.btnGold button
{
    background: #aaa08c
}
.btn.btnBlue a, .btn.btnBlue button
{
    background: #aaa08c;
    color: #3c5064
}
.btn.btnRed a {
    background: #821437;
}

.btn.btnBlue a:after, .btn.btnBlue button:after
{
    background-image: url(assets/images/common/arw_btn_b.svg)
}
#header
{
    background: #fff;
    width: 100%;
    min-width: 1024px;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0);
    position: relative;
    z-index: 10000
}
@media only screen and (max-width: 500px)
{
    #header
    {
        min-width: 0;
        position: fixed;
        top: 0;
        left: 0;
        z-index: 500;
        border-bottom: 1px solid #dfe0e1
    }
}
#header.fixed
{
    position: fixed;
    top: 0;
    left: 0;
    z-index: 10000;
    width: 100%
}
@media only screen and (max-width: 500px)
{
    #header.fixed
    {
        z-index: 500
    }
}
#header.fixed .headerNavWrap
{
    border-bottom: 1px solid #dfe0e1
}
.headerInner
{
    margin: 0 auto
}
@media only screen and (min-width: 499px)
{
    .headerInner
    {
        width: 980px;
        max-width: 100%
    }
}
@media only screen and (max-width: 500px)
{
    .headerInner
    {
        width: 100%
    }
}
@media only screen and (min-width: 499px)
{
    .headerTop
    {
        border-bottom: 1px solid #dfe0e1
    }
}
@media only screen and (min-width: 499px)
{
    .headerTop .headerInner
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        padding: 13px 0
    }
}
@media only screen and (max-width: 500px)
{
    .headerTop .headerInner
    {
        padding: 1.666vw 0
    }
}
@media only screen and (min-width: 499px)
{
    .headerLogo
    {
        width: 160px;
        margin-right: auto;
        margin-left: 0;
        -ms-flex: 0 1 auto
    }
}
@media only screen and (max-width: 500px)
{
    .headerLogo
    {
        width: 31.9444vw;
        margin-left: 1.3888vw
    }
}
.headerRight
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}
.headerInfo
{
    text-align: right;
    margin-right: 15px;
    -ms-flex: 0 1 auto
}
.headerInfoTop
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 5px
}
.headerTel
{
    -ms-flex: 0 1 auto;
    letter-spacing: .1em;
    font-family: petersburg-web,serif;
    font-weight: 400,700;
    font-style: normal,italic
}
.headerTel a
{
    color: #821437
}
@media only screen and (min-width: 499px)
{
    .headerTel a
    {
        font-size: 15px;
        cursor: default
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .headerTel a
    {
        font-size: 12px
    }
}
.headerTel a span
{
    font-size: 166.6666%
}
.headerOpen
{
    -ms-flex: 0 1 auto;
    font-weight: bold;
    letter-spacing: .1em;
    line-height: 1.3333
}
@media only screen and (min-width: 499px)
{
    .headerOpen
    {
        font-size: 12px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .headerOpen
    {
        font-size: 11px
    }
}
@media only screen and (max-width: 500px)
{
    .headerOpen
    {
        font-size: 3.3vw
    }
}
.headerClose
{
    font-weight: bold;
    line-height: 1.3333
}
@media only screen and (min-width: 499px)
{
    .headerClose
    {
        font-size: 11px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .headerClose
    {
        font-size: 10px
    }
}
.headerSubNav
{
    -ms-flex: 0 1 auto
}
.headerSubNav ul
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}
.headerSubNavList
{
    margin-left: 4px;
    position: relative
}
.headerSubNavList>a
{
    display: block;
    width: 90px;
    padding: 10px 8px;
    text-align: center;
    background: #aaa08c;
    color: #fff;
    font-weight: bold
}
@media only screen and (min-width: 499px)
{
    .headerSubNavList>a
    {
        font-size: 12px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .headerSubNavList>a
    {
        font-size: 11px
    }
}
@media only screen and (max-width: 500px)
{
    .headerSubNavList>a
    {
        font-size: 3.3vw
    }
}
@media only screen and (min-width: 499px)
{
    .headerSubNavList>a
    {
        -webkit-transition: opacity .2s ease 0s;
        transition: opacity .2s ease 0s;
        cursor: pointer
    }
    .headerSubNavList>a:hover
    {
        opacity: .7
    }
}
.headerSubNavList.headerSubNavListFair>a
{
    width: auto;
    background: #821437;
    padding: 10px
}
.headerNavWrap .headerNav ul
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}
.headerNavList
{
    width: 16.66666%
}
.headerNavList a
{
    display: block;
    text-align: center;
    padding: 15px 0;
    position: relative;
    height: 40px
}
.headerNavList a:after
{
    content: " ";
    display: block;
    width: 1px;
    height: 13px;
    background: #dfe0e1;
    position: absolute;
    top: 50%;
    -webkit-transform: translate(0,-50%);
    transform: translate(0,-50%);
    right: 0
}
.headerNavList a:first-child:before
{
    content: " ";
    display: block;
    width: 1px;
    height: 13px;
    background: #dfe0e1;
    position: absolute;
    top: 50%;
    -webkit-transform: translate(0,-50%);
    transform: translate(0,-50%);
    left: 0
}
.headerNavList a span
{
    font-weight: bold;
    position: absolute;
    top: 50%;
    -webkit-transform: translate(0,-50%);
    transform: translate(0,-50%);
    width: 100%;
    display: block;
    letter-spacing: .05em
}
@media only screen and (min-width: 499px)
{
    .headerNavList a span
    {
        -webkit-transition: .2s;
        transition: .2s;
        cursor: pointer
    }
}
@media only screen and (min-width: 499px)
{
    .headerNavList a span
    {
        font-size: 13px;
        line-height: 0
    }
}
@media only screen and (max-width: 500px)
{
    .headerNavList a span
    {
        font-size: 3.3vw
    }
}
.headerNavList a .navOn
{
    opacity: 0
}
.headerNavList a .navOff
{
    opacity: 1
}
@media only screen and (min-width: 499px)
{
    .headerNavList a
    {
        -webkit-transition: .2s;
        transition: .2s;
        cursor: pointer
    }
}
.headerNavList a:hover
{
    background: #f0f0f1
}
.headerNavList a:hover .navOn
{
    opacity: 1
}
.headerNavList a:hover .navOff
{
    opacity: 0
}
.headerNavList:first-child span
{
    border-left: 1px solid #dfe0e1
}
.navRecommend
{
    display: none;
    position: absolute;
    top: 100%;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    z-index: 10000;
    background: #dbd7c6;
    padding: 6px;
    -webkit-box-shadow: 4px 4px 0 0 rgba(0,0,0,.2);
    box-shadow: 4px 4px 0 0 rgba(0,0,0,.2);
    margin-top: 8px
}
@media only screen and (min-width: 499px)
{
    .navRecommend
    {
        width: 373px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .navRecommend
    {
        width: 330px
    }
}
.navRecommend:before
{
    content: "　";
    width: 15px;
    height: 15px;
    background: #dbd7c6;
    -webkit-transform: rotate(45deg) translateX(-50%);
    transform: rotate(45deg) translateX(-50%);
    position: absolute;
    z-index: -1;
    top: 0;
    left: 50%
}
.navRecommend h3
{
    text-align: center
}
@media only screen and (min-width: 499px)
{
    .navRecommend h3
    {
        margin-bottom: 20px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .navRecommend h3
    {
        margin-bottom: 16px
    }
}
.navRecommend h3 span
{
    display: block
}
.navRecommend h3 .en
{
    color: #821437;
    font-family: 'Italianno',cursive
}
@media only screen and (min-width: 499px)
{
    .navRecommend h3 .en
    {
        font-size: 50px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .navRecommend h3 .en
    {
        font-size: 41px
    }
}
.navRecommend h3 .jp
{
    font-weight: bold
}
@media only screen and (min-width: 499px)
{
    .navRecommend h3 .jp
    {
        font-size: 13px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .navRecommend h3 .jp
    {
        font-size: 11px
    }
}
.navRecommendInner
{
    border: 2px dotted #fff;
    padding: 20px 17px 17px
}
@media only screen and (min-width: 499px)
{
    .navRecommendList
    {
        margin-bottom: 10px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .navRecommendList
    {
        margin-bottom: 8px
    }
}
.navRecommendList a
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}
@media only screen and (min-width: 499px)
{
    .navRecommendList a
    {
        -webkit-transition: opacity .2s ease 0s;
        transition: opacity .2s ease 0s;
        cursor: pointer
    }
    .navRecommendList a:hover
    {
        opacity: .7
    }
}
.navRecommendList a:hover
{
    opacity: .3
}
.navRecommendList:last-child
{
    margin-bottom: 0
}
.navRecommendTh
{
    width: 27.6%
}
.navRecommendTxt
{
    width: 67.7%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}
.navRecommendTxtInner
{
    -ms-flex: 0 1 auto
}
.navRecommendDate
{
    color: #821437;
    font-weight: bold;
    letter-spacing: .08em
}
@media only screen and (min-width: 499px)
{
    .navRecommendDate
    {
        font-size: 16px;
        margin-bottom: 5px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .navRecommendDate
    {
        font-size: 13px
    }
}
@media only screen and (min-width: 499px)
{
    .navRecommendDate span
    {
        font-size: 12px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .navRecommendDate span
    {
        font-size: 11px
    }
}
.navRecommendTime
{
    color: #821437;
    font-weight: bold;
    letter-spacing: .08em
}
@media only screen and (min-width: 499px)
{
    .navRecommendTime
    {
        font-size: 13px;
        margin-bottom: 5px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .navRecommendTime
    {
        font-size: 11px;
        margin-bottom: 4px
    }
}
.navRecommendComment
{
    letter-spacing: .08em;
    line-height: 1.846;
    font-weight: bold;
    -ms-flex: 0 1 auto
}
@media only screen and (min-width: 499px)
{
    .navRecommendComment
    {
        font-size: 13px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .navRecommendComment
    {
        font-size: 11px
    }
}
.menu-trigger, .menu-trigger span
{
    display: inline-block;
    -webkit-transition: all .4s;
    transition: all .4s;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}
.menu-trigger
{
    position: fixed;
    z-index: 510;
    top: 2.7777vw;
    right: 2.7777vw;
    width: 4.1666vw;
    height: 3.6111vw;
    cursor: pointer;
    background: #fff;
    padding: 2.3611vw;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    z-index: 510
}
.menu-trigger span
{
    position: absolute;
    left: 2.3611vw;
    width: 4.1666vw;
    height: 2px;
    background-color: #3c5064;
    z-index: 520
}
.menu-trigger span:nth-of-type(1)
{
    top: 2.3611vw
}
.menu-trigger span:nth-of-type(2)
{
    top: 4.0211vw
}
.menu-trigger span:nth-of-type(3)
{
    bottom: 2.3611vw
}
.menu-trigger.active span:nth-of-type(1)
{
    -webkit-transform: translateY(1.66vw) rotate(-45deg);
    transform: translateY(1.66vw) rotate(-45deg)
}
.menu-trigger.active span:nth-of-type(2)
{
    opacity: 0
}
.menu-trigger.active span:nth-of-type(3)
{
    -webkit-transform: translateY(-1.66vw) rotate(45deg);
    transform: translateY(-1.66vw) rotate(45deg)
}
.headerNavSp
{
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    z-index: 490;
    background: #282f37;
    color: #fff;
    text-align: center;
    padding: 23.4364vw 5.5555vw 6.25vw;
    -webkit-overflow-scrolling: touch
}
.headerNavSp
{
    overflow-y: scroll;
    padding-bottom: 100px
}
.headerNavSpSub
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}
.headerNavSpSubBtn
{
    width: 29.1666vw;
    font-size: 3.3333vw;
    font-weight: bold;
    background: #aaa08c;
    padding: 2.7777vw 0;
    margin-bottom: 7.3611vw
}
.headerNavSpSubBtn.headerNavSpSubBtnFair
{
    background: #821437
}
.headerNavSpContact
{
    padding-bottom: 6.9444vw;
    border-bottom: 1px dotted #fff
}
.headerNavSpTelTtl
{
    font-size: 3.4722vw;
    margin-bottom: 2.7777vw;
    letter-spacing: .12em
}
.headerNavSpTel
{
    font-family: petersburg-web,serif;
    font-weight: 400,700;
    font-style: normal,italic;
    font-size: 3.6111vw;
    letter-spacing: .05em
}
.headerNavSpTel span
{
    font-size: 6.25vw
}
.headerNavSpListWrap
{
    margin-bottom: 6.9444vw
}
.headerNavSpList
{
    border-bottom: 1px dotted #fff
}
.headerNavSpList a
{
    display: block;
    padding: 5.5555vw 0
}
.headerNavSpList a span
{
    display: block;
    letter-spacing: .08em
}
.headerNavSpList a span.en
{
    font-weight: bold;
    font-size: 3.8888vw;
    margin-bottom: 1.3888vw
}
.headerNavSpList a span.jp
{
    font-size: 3.8888vw
}
.headerNavSpList_insta {
    margin: 22px 0 5px;
}
.headerNavSpList_insta img {
    height: 26px;
}
.headerNavSpFooter
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}
.headerNavSpFooterList
{
    border-right: 1px solid #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}
.headerNavSpFooterList a
{
    font-size: 2.7777vw;
    line-height: 1.35;
    padding: 0 4.5vw
}
.headerNavSpFooterList:first-child a
{
    padding: 0 4.5vw 0 0
}
.headerNavSpFooterList:last-child
{
    border-right: none
}
.headerNavSpFooterList:last-child a
{
    padding: 0 0 0 4.5vw
}
.mainvUnder
{
    background-size: cover;
    background-repeat: no-repeat
}
@media only screen and (min-width: 499px)
{
    .mainvUnder
    {
        background-attachment: fixed;
        background-position: center;
        height: 640px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .mainvUnder
    {
        height: 528px
    }
}
@media only screen and (min-width: 499px)
{
    .mainvUnder#mainvWeddingStage
    {
        background-image: url(assets/images/wedding_stage/mainv_wedding_stage_bg_pc.jpg)
    }
}
@media only screen and (max-width: 500px)
{
    .mainvUnder#mainvWeddingStage
    {
        background-image: url(assets/images/wedding_stage/mainv_wedding_stage_bg_sp.jpg)
    }
}
@media only screen and (min-width: 499px)
{
    .mainvUnder#mainvCuisine
    {
        background-image: url(assets/images/cuisine/mainv_cuisine_bg_pc.jpg)
    }
}
@media only screen and (max-width: 500px)
{
    .mainvUnder#mainvCuisine
    {
        background-image: url(assets/images/cuisine/mainv_cuisine_bg_sp.jpg)
    }
}
@media only screen and (min-width: 499px)
{
    .mainvUnder#mainvAccess
    {
        background-image: url(assets/images/access/mainv_access_bg_pc.jpg)
    }
}
@media only screen and (max-width: 500px)
{
    .mainvUnder#mainvAccess
    {
        background-image: url(assets/images/access/mainv_access_bg_sp.jpg)
    }
}
@media only screen and (min-width: 499px)
{
    .mainvUnder#mainvPlan
    {
        background-image: url(assets/images/plan/mainv_plan_bg_pc.jpg)
    }
}
@media only screen and (max-width: 500px)
{
    .mainvUnder#mainvPlan
    {
        background-image: url(assets/images/plan/mainv_plan_bg_sp.jpg)
    }
}
@media only screen and (min-width: 499px)
{
    .mainvUnder#mainvBestrate
    {
        background-image: url(assets/images/bestrate/mainv_bestrate_bg_pc.jpg)
    }
}
@media only screen and (max-width: 500px)
{
    .mainvUnder#mainvBestrate
    {
        background-image: url(assets/images/bestrate/mainv_bestrate_bg_sp.jpg)
    }
}
@media only screen and (min-width: 499px)
{
    .mainvUnder.mainvUnderMin
    {
        height: 430px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .mainvUnder.mainvUnderMin
    {
        height: 355px
    }
}
.tb .mainvUnder
{
    background-attachment: scroll
}
.mainvUnderInner
{
    width: 100%;
    margin-right: auto;
    margin-left: auto
}
@media only screen and (min-width: 499px)
{
    .mainvUnderInner
    {
        max-width: 1280px;
        padding: 0 20px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .mainvUnderInner
    {
        width: 1024px
    }
}
@media only screen and (max-width: 500px)
{
    .mainvUnderInner
    {
        width: 88.8888vw;
        padding-top: 55.5555vw;
        padding-bottom: 11.1111vw;
        text-align: center
    }
}
@media only screen and (min-width: 499px)
{
    .mainvUnderContent
    {
        color: #fff;
        padding-bottom: 80px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .mainvUnderContent
    {
        padding-bottom: 66px
    }
}
.manvUnderTtl
{
    font-family: 'Italianno',cursive
}
@media only screen and (min-width: 499px)
{
    .manvUnderTtl
    {
        font-size: 75px;
        margin-bottom: 20px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .manvUnderTtl
    {
        font-size: 62px;
        margin-bottom: 16px
    }
}
@media only screen and (max-width: 500px)
{
    .manvUnderTtl
    {
        font-size: 13.8888vw;
        margin-bottom: 4vw
    }
}
.manvUnderLead
{
    font-weight: bold
}
@media only screen and (min-width: 499px)
{
    .manvUnderLead
    {
        font-size: 20px;
        margin-bottom: 35px;
        line-height: 1.9;
        letter-spacing: .12em
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .manvUnderLead
    {
        font-size: 17px;
        margin-bottom: 28px
    }
}
@media only screen and (max-width: 500px)
{
    .manvUnderLead
    {
        font-size: 4.5vw;
        margin-bottom: 3.8vw;
        line-height: 1.666
    }
}
@media only screen and (min-width: 499px)
{
    .manvUnderComment
    {
        line-height: 2.14;
        letter-spacing: .08em
    }
}
@media only screen and (max-width: 500px)
{
    .manvUnderComment
    {
        font-size: 3.1944vw;
        line-height: 1.7391
    }
}
.mainvUnderMin
{
    background-attachment: scroll
}
@media only screen and (min-width: 499px)
{
    .mainvUnderMin .mainvUnderContent
    {
        padding-bottom: 0
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .mainvUnderMin .mainvUnderContent
    {
        padding-bottom: 0
    }
}
.underSectionInner
{
    width: 100%;
    margin-right: auto;
    margin-left: auto
}
@media only screen and (min-width: 499px)
{
    .underSectionInner
    {
        max-width: 1280px;
        padding: 0 20px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .underSectionInner
    {
        width: 1024px
    }
}
@media only screen and (max-width: 500px)
{
    .underSectionInner
    {
        width: 94.4444vw
    }
}
@media only screen and (min-width: 499px)
{
    .underSectionInner.underSectionInnerFirst .underSectionContent
    {
        padding: 80px 80px 55px;
        margin-top: -84px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .underSectionInner.underSectionInnerFirst .underSectionContent
    {
        padding: 66px 20px;
        margin-top: -69px
    }
}
@media only screen and (max-width: 500px)
{
    .underSectionInner.underSectionInnerFirst .underSectionContent
    {
        padding: 8.3333vw 2.7777vw
    }
}
.underSectionInner.underSectionInnerFirst .underSectionContent .secComment
{
    margin-bottom: 0
}
@media only screen and (min-width: 499px)
{
    .underSectionInner.underSectionInnerLast .underSectionContent
    {
        padding-bottom: 55px;
        margin-bottom: 120px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .underSectionInner.underSectionInnerLast .underSectionContent
    {
        padding-bottom: 66px;
        margin-bottom: 99px
    }
}
@media only screen and (max-width: 500px)
{
    .underSectionInner.underSectionInnerLast .underSectionContent
    {
        padding-bottom: 11.1111vw;
        margin-bottom: 11.1111vw
    }
}
.underSectionContent
{
    background: #fff
}
@media only screen and (min-width: 499px)
{
    .underSectionContent
    {
        padding: 0 80px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .underSectionContent
    {
        padding: 0 66px
    }
}
@media only screen and (max-width: 500px)
{
    .underSectionContent
    {
        padding: 0 2.7777vw
    }
}
.underSectionSliderWrap
{
    width: 100%;
    position: relative;
    overflow-x: hidden
}
.underSectionSliderWrap *
{
    outline: none
}
.underSectionSliderWrap *:focus
{
    outline: none
}
.underSectionSliderBg
{
    position: absolute;
    z-index: 5;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}
@media only screen and (min-width: 499px)
{
    .underSectionSliderBg
    {
        width: 100%;
        max-width: 1280px;
        padding: 0 20px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .underSectionSliderBg
    {
        width: 1024px
    }
}
@media only screen and (max-width: 500px)
{
    .underSectionSliderBg
    {
        width: 94.4444vw
    }
}
.underSectionSliderBg span
{
    display: block;
    width: 100%;
    background: #fff
}
.underSectionSlider
{
    width: 100%;
    position: relative;
    z-index: 20
}
.underSectionSlider .slick-dots
{
    width: 100%;
    bottom: 30px
}
@media only screen and (min-width: 499px)
{
    .underSectionSlider .slick-dots
    {
        bottom: 30px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .underSectionSlider .slick-dots
    {
        bottom: 24.75px
    }
}
@media only screen and (max-width: 500px)
{
    .underSectionSlider .slick-dots
    {
        bottom: 5.5555vw
    }
}
@media only screen and (min-width: 499px)
{
    .underSectionSlider .slick-dots li
    {
        height: 2px;
        width: 25px;
        margin: 0 6px
    }
}
@media only screen and (max-width: 500px)
{
    .underSectionSlider .slick-dots li
    {
        height: .4166vw;
        width: 5.2777vw;
        margin: 0 2.9vw
    }
}
.underSectionSlider .slick-dots li button
{
    padding: 5px;
    height: 2px;
    width: 25px
}
.underSectionSlider .slick-dots li button:hover, .underSectionSlider .slick-dots li button:focus
{
    outline: none
}
.underSectionSlider .slick-dots li button:hover:before, .underSectionSlider .slick-dots li button:focus:before
{
    opacity: 1
}
.underSectionSlider .slick-dots li button:before
{
    position: absolute;
    top: 0;
    left: 0;
    background: #dbd7c6;
    border-radius: 0;
    content: "";
    height: 2px;
    width: 25px;
    line-height: 2px;
    color: #dbd7c6;
    opacity: 1
}
.underSectionSlider .slick-dots li.slick-active button:before
{
    color: #282f37;
    background: #282f37;
    opacity: 1
}
@media only screen and (min-width: 499px)
{
    .underSecitonSliderItem
    {
        width: 100%;
        max-width: 1080px;
        text-align: center;
        padding-bottom: 60px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .underSecitonSliderItem
    {
        max-width: 940px;
        padding-bottom: 50px
    }
}
@media only screen and (max-width: 500px)
{
    .underSecitonSliderItem
    {
        max-width: 88.8888vw;
        padding-bottom: 12.5vw
    }
}
.underSecitonSliderItem p
{
    opacity: 0;
    -webkit-transition: .4s opacity;
    transition: .4s opacity
}
@media only screen and (min-width: 499px)
{
    .underSecitonSliderItem p
    {
        margin-top: 35px;
        font-size: 16px;
        letter-spacing: .1em;
        line-height: 1.8
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .underSecitonSliderItem p
    {
        margin-top: 29px;
        font-size: 13px
    }
}
@media only screen and (max-width: 500px)
{
    .underSecitonSliderItem p
    {
        margin-top: 6.9444vw;
        font-size: 3.1944vw;
        line-height: 1.73;
        padding: 0 6.25vw
    }
}
.underSecitonSliderItem.slick-current p
{
    opacity: 1
}
.slick-current .underSecitonSliderItem p
{
    opacity: 1
}
.underSectionArwPrv, .underSectionArwNxt
{
    position: absolute;
    top: 50%;
    z-index: 60;
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    content: " "
}
@media only screen and (min-width: 499px)
{
    .underSectionArwPrv, .underSectionArwNxt
    {
        -webkit-transition: opacity .2s ease 0s;
        transition: opacity .2s ease 0s;
        cursor: pointer
    }
    .underSectionArwPrv:hover, .underSectionArwNxt:hover
    {
        opacity: .7
    }
}
@media only screen and (min-width: 499px)
{
    .underSectionArwPrv, .underSectionArwNxt
    {
        width: 39px;
        height: 11px;
        margin-top: -35px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .underSectionArwPrv, .underSectionArwNxt
    {
        width: 32px;
        height: 9px;
        margin-top: -60px
    }
}
@media only screen and (max-width: 500px)
{
    .underSectionArwPrv, .underSectionArwNxt
    {
        width: 8.0555vw;
        height: 2.3958vw;
        top: 0;
        -webkit-transform: translate(0,0) !important;
        transform: translate(0,0) !important;
        margin-top: 31.8055vw
    }
}
.underSectionArwPrv
{
    background-image: url(assets/images/common/uss_arw_prv.svg);
    left: 50%;
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%)
}
@media only screen and (min-width: 499px)
{
    .underSectionArwPrv
    {
        margin-left: -540px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .underSectionArwPrv
    {
        margin-left: -470px
    }
}
@media only screen and (max-width: 500px)
{
    .underSectionArwPrv
    {
        left: 2.6388vw
    }
}
.underSectionArwNxt
{
    background-image: url(assets/images/common/uss_arw_nxt.svg);
    right: 50%;
    -webkit-transform: translate(50%,-50%);
    transform: translate(50%,-50%)
}
@media only screen and (min-width: 499px)
{
    .underSectionArwNxt
    {
        margin-right: -540px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .underSectionArwNxt
    {
        margin-right: -470px
    }
}
@media only screen and (max-width: 500px)
{
    .underSectionArwNxt
    {
        right: 2.6388vw
    }
}
.secDef
{
    position: relative;
    background: #fff;
    border-top: 2px solid #dbd7c6;
    border-bottom: 2px solid #dbd7c6
}
@media only screen and (max-width: 500px)
{
    .secDef
    {
        padding: 4.1666vw;
        text-align: center
    }
}
.secDef:before, .secDef:after
{
    content: "　";
    position: absolute;
    z-index: 10;
    height: 2px;
    background: #aaa08c
}
@media only screen and (min-width: 499px)
{
    .secDef:before, .secDef:after
    {
        width: 24.795918%;
        left: 0
    }
}
@media only screen and (max-width: 500px)
{
    .secDef:before, .secDef:after
    {
        width: 33.75vw;
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%)
    }
}
.secDef:before
{
    top: -2px
}
.secDef:after
{
    bottom: -2px
}
@media only screen and (min-width: 499px)
{
    .secDef dl
    {
        padding: 30px 0;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .secDef dl
    {
        padding: 25px 0
    }
}
.secDef dl:first-child
{
    border-bottom: 1px dotted #282f37
}
@media only screen and (max-width: 500px)
{
    .secDef dl:first-child
    {
        padding-bottom: 4.1666vw
    }
}
@media only screen and (max-width: 500px)
{
    .secDef dl:last-child
    {
        padding-top: 4.1666vw
    }
}
.secDef dt, .secDef dd
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}
.secDef dt
{
    text-align: center;
    color: #aaa08c
}
@media only screen and (min-width: 499px)
{
    .secDef dt
    {
        width: 24.795918%
    }
}
@media only screen and (max-width: 500px)
{
    .secDef dt
    {
        padding: 2.7777vw 0
    }
}
.secDef dt span
{
    display: block;
    margin: 0 auto
}
@media only screen and (min-width: 499px)
{
    .secDef dt span.secDefVisitors
    {
        width: 136.67px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .secDef dt span.secDefVisitors
    {
        width: 112.75px
    }
}
@media only screen and (max-width: 500px)
{
    .secDef dt span.secDefVisitors
    {
        width: 26.5755vw
    }
}
@media only screen and (min-width: 499px)
{
    .secDef dt span.secDefClose
    {
        width: 91.996px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .secDef dt span.secDefClose
    {
        width: 75.8967px
    }
}
@media only screen and (max-width: 500px)
{
    .secDef dt span.secDefClose
    {
        width: 17.889vw
    }
}
@media only screen and (min-width: 499px)
{
    .secDef dt span.secDefFacility
    {
        width: 135.169px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .secDef dt span.secDefFacility
    {
        width: 111.514425px
    }
}
@media only screen and (max-width: 500px)
{
    .secDef dt span.secDefFacility
    {
        width: 26.284vw
    }
}
.secDef dt span img
{
    width: 100%;
    height: auto
}
@media only screen and (min-width: 499px)
{
    .secDef dd
    {
        width: 75.2040816%;
        padding: 0 40px;
        border-left: 1px solid #aaa08c
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .secDef dd
    {
        padding: 0 33px
    }
}
@media only screen and (max-width: 500px)
{
    .secDef dd
    {
        padding: 2.7777vw 0;
        border-top: 1px solid #aaa08c
    }
}
@media only screen and (min-width: 499px)
{
    .secDef.secDef3cl dd:nth-of-type(1)
    {
        width: 33.877551%
    }
}
@media only screen and (min-width: 499px)
{
    .secDef.secDef3cl dd:nth-of-type(2)
    {
        width: 41.326531%
    }
}
.secDefElmWrap
{
    width: 100%
}
.spContentSlider *
{
    outline: none
}
.spContentSlider *:focus
{
    outline: none
}
@media only screen and (min-width: 499px)
{
    .spContentSlider
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between
    }
}
@media only screen and (max-width: 500px)
{
    .spContentSlider
    {
        width: 100vw;
        position: relative;
        left: -5.5555vw
    }
}
@media only screen and (min-width: 499px)
{
    .spContentSliderItem
    {
        width: 32%
    }
}
@media only screen and (max-width: 500px)
{
    .spContentSliderItem
    {
        max-width: 88.8888vw;
        padding: 6.9444vw;
        background: #eeece3;
        margin: 0 1vw
    }
}
.spContentArwPrv, .spContentArwNxt
{
    position: absolute;
    top: 50%;
    z-index: 60;
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    content: " "
}
@media only screen and (min-width: 499px)
{
    .spContentArwPrv, .spContentArwNxt
    {
        -webkit-transition: opacity .2s ease 0s;
        transition: opacity .2s ease 0s;
        cursor: pointer
    }
    .spContentArwPrv:hover, .spContentArwNxt:hover
    {
        opacity: .7
    }
}
@media only screen and (max-width: 500px)
{
    .spContentArwPrv, .spContentArwNxt
    {
        width: 8.0555vw;
        height: 2.3958vw;
        top: 0;
        -webkit-transform: translate(0,0) !important;
        transform: translate(0,0) !important;
        margin-top: 31.8055vw
    }
}
.spContentArwPrv
{
    background-image: url(assets/images/common/uss_arw_prv.svg);
    left: 50%;
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%)
}
@media only screen and (min-width: 499px)
{
    .spContentArwPrv
    {
        margin-left: -540px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .spContentArwPrv
    {
        margin-left: -470px
    }
}
@media only screen and (max-width: 500px)
{
    .spContentArwPrv
    {
        left: 2.6388vw
    }
}
.spContentArwNxt
{
    background-image: url(assets/images/common/uss_arw_nxt.svg);
    right: 50%;
    -webkit-transform: translate(50%,-50%);
    transform: translate(50%,-50%)
}
@media only screen and (min-width: 499px)
{
    .spContentArwNxt
    {
        margin-right: -540px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .spContentArwNxt
    {
        margin-right: -470px
    }
}
@media only screen and (max-width: 500px)
{
    .spContentArwNxt
    {
        right: 2.6388vw
    }
}
.spContentSliderEnTtl
{
    text-align: center;
    color: #3c5064;
    font-family: 'Italianno',cursive
}
@media only screen and (min-width: 499px)
{
    .spContentSliderEnTtl
    {
        font-size: 35px;
        margin: 20px auto 13px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .spContentSliderEnTtl
    {
        font-size: 29px;
        margin: 16px auto 11px
    }
}
@media only screen and (max-width: 500px)
{
    .spContentSliderEnTtl
    {
        font-size: 10vw;
        margin: 4.4444vw auto 3.0155vw
    }
}
.spContentSliderLead
{
    font-weight: bold;
    text-align: center
}
@media only screen and (min-width: 499px)
{
    .spContentSliderLead
    {
        font-size: 18px;
        line-height: 1.777;
        margin-bottom: 20px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .spContentSliderLead
    {
        font-size: 15px;
        margin-bottom: 16px
    }
}
@media only screen and (max-width: 500px)
{
    .spContentSliderLead
    {
        font-size: 4vw;
        line-height: 1.666;
        letter-spacing: .08em;
        margin-bottom: 4.1666vw
    }
}
@media only screen and (min-width: 499px)
{
    .spContentSliderComment
    {
        line-height: 2.1;
        padding: 0 15px;
        letter-spacing: .057em
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .spContentSliderComment
    {
        padding: 0 12px
    }
}
@media only screen and (max-width: 500px)
{
    .spContentSliderComment
    {
        line-height: 1.666;
        letter-spacing: .07em
    }
}
.mainvUnder2
{
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}
@media only screen and (min-width: 499px)
{
    .mainvUnder2
    {
        height: 430px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .mainvUnder2
    {
        height: 355px
    }
}
@media only screen and (max-width: 500px)
{
    .mainvUnder2
    {
        height: 54.5833vw
    }
}
@media only screen and (min-width: 499px)
{
    .mainvUnder2#mainvFair
    {
        background-image: url(assets/images/fair/mainv_fair_bg_pc.jpg);
        background-position-y: -112px;
    }
}
@media only screen and (max-width: 500px)
{
    .mainvUnder2#mainvFair
    {
        background-image: url(assets/images/fair/mainv_fair_bg_sp.jpg);
        text-align: center
    }
}
.mainvUnder2Inner
{
    margin: 0 auto
}
@media only screen and (min-width: 499px)
{
    .mainvUnder2Inner
    {
        width: 1240px;
        padding: 0 20px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .mainvUnder2Inner
    {
        width: 1024px;
        padding: 0 20px
    }
}
@media only screen and (max-width: 500px)
{
    .mainvUnder2Inner
    {
        width: 88.8888vw;
        padding: 0
    }
}
.manvUnder2Ttl
{
    color: #fff;
    font-family: 'Italianno',cursive
}
@media only screen and (min-width: 499px)
{
    .manvUnder2Ttl
    {
        font-size: 75px;
        margin-bottom: 20px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .manvUnder2Ttl
    {
        font-size: 62px;
        margin-bottom: 16px
    }
}
@media only screen and (max-width: 500px)
{
    .manvUnder2Ttl
    {
        font-size: 13.8888vw
    }
}
.manvUnder2Txt
{
    color: #fff;
    font-weight: bold
}
@media only screen and (min-width: 499px)
{
    .manvUnder2Txt
    {
        font-size: 20px;
        letter-spacing: .12em;
        line-height: 1.9
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .manvUnder2Txt
    {
        font-size: 16px
    }
}
.mainvUnder3
{
    background-size: cover;
    background-repeat: no-repeat;
    background-position: top;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}
@media only screen and (min-width: 499px)
{
    .mainvUnder3
    {
        height: 300px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .mainvUnder3
    {
        height: 247px
    }
}
@media only screen and (max-width: 500px)
{
    .mainvUnder3
    {
        height: 54.5833vw
    }
}
@media only screen and (min-width: 499px)
{
    .mainvUnder3#mainvContact
    {
        background-image: url(assets/images/contact/mainv_contact_bg_pc.jpg)
    }
}
@media only screen and (max-width: 500px)
{
    .mainvUnder3#mainvContact
    {
        background-image: url(assets/images/contact/mainv_contact_bg_sp.jpg)
    }
}
@media only screen and (min-width: 499px)
{
    .mainvUnder3#mainvInformation
    {
        background-image: url(assets/images/information/mainv_info_bg_pc.jpg)
    }
}
@media only screen and (max-width: 500px)
{
    .mainvUnder3#mainvInformation
    {
        background-image: url(assets/images/information/mainv_info_bg_sp.jpg)
    }
}
.manvUnder3Ttl
{
    min-width: 100%;
    max-width: 100%;
    text-align: center;
    color: #fff;
    font-family: 'Italianno',cursive
}
@media only screen and (min-width: 499px)
{
    .manvUnder3Ttl
    {
        font-size: 75px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .manvUnder3Ttl
    {
        font-size: 61.875px
    }
}
@media only screen and (max-width: 500px)
{
    .manvUnder3Ttl
    {
        font-size: 13.8888vw
    }
}
.under3
{
    margin: 0 auto
}
@media only screen and (min-width: 499px)
{
    .under3
    {
        width: 1120px;
        padding: 0 20px 130px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .under3
    {
        width: 1024px;
        padding: 0 20px 107px
    }
}
@media only screen and (max-width: 500px)
{
    .under3
    {
        width: 88.8888vw;
        padding: 0 0 11.1111vw
    }
}
.secUnder3Ttl
{
    font-weight: bold;
    text-align: center
}
@media only screen and (min-width: 499px)
{
    .secUnder3Ttl
    {
        padding: 70px 0;
        font-size: 24px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .secUnder3Ttl
    {
        padding: 56px 0;
        font-size: 20px
    }
}
@media only screen and (max-width: 500px)
{
    .secUnder3Ttl
    {
        padding: 8.3333vw 0;
        font-size: 4.1666vw
    }
}
.secUnder3Content
{
    position: relative;
    border-top: 2px solid #dbd7c6;
    border-bottom: 2px solid #dbd7c6;
    background: #fff
}
@media only screen and (min-width: 499px)
{
    .secUnder3Content
    {
        padding: 60px 50px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .secUnder3Content
    {
        padding: 50px 41px
    }
}
@media only screen and (max-width: 500px)
{
    .secUnder3Content
    {
        padding: 9.7222vw 6.25vw
    }
}
.secUnder3Content:before, .secUnder3Content:after
{
    content: " ";
    display: block;
    position: absolute;
    height: 2px;
    width: 62.2449%;
    background: #aaa08c;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    z-index: 20
}
.secUnder3Content:before
{
    top: -2px
}
.secUnder3Content:after
{
    bottom: -2px
}
.mainvWrap
{
    background: #fff
}
#mainv
{
    position: relative;
    z-index: 1;
    background: #fff
}
#mainv .slick-dots
{
    top: 50%;
    bottom: auto;
    right: auto;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}
@media only screen and (min-width: 499px)
{
    #mainv .slick-dots
    {
        width: 10px;
        left: 20px
    }
}
@media only screen and (max-width: 500px)
{
    #mainv .slick-dots
    {
        width: 3.0555vw;
        left: 2vw
    }
}
#mainv .slick-dots li
{
    display: block
}
@media only screen and (min-width: 499px)
{
    #mainv .slick-dots li
    {
        width: 9px;
        height: 9px;
        margin: 0 auto 15px
    }
}
@media only screen and (min-width: 499px) and (min-width: 499px)
{
    #mainv .slick-dots li
    {
        -webkit-transition: opacity .2s ease 0s;
        transition: opacity .2s ease 0s;
        cursor: pointer
    }
    #mainv .slick-dots li:hover
    {
        opacity: .7
    }
}
@media only screen and (max-width: 500px)
{
    #mainv .slick-dots li
    {
        width: 3.0555vw;
        height: 3.0555vw;
        margin: 0 auto 3.1944vw
    }
}
@media only screen and (min-width: 499px)
{
    #mainv .slick-dots li button
    {
        width: 9px;
        height: 9px
    }
}
@media only screen and (max-width: 500px)
{
    #mainv .slick-dots li button
    {
        width: 3.0555vw;
        height: 3.0555vw
    }
}
#mainv .slick-dots li button:before
{
    color: #fff;
    opacity: 1
}
#mainv .slick-dots li.slick-active button:before
{
    color: #821437;
    background: #821437;
    opacity: 1
}
.mainvSlider
{
    overflow: hidden;
    width: 100%;
    background: #fff
}
.mainvSlider *
{
    outline: none
}
.mainvSlider *:focus
{
    outline: none
}
.mainvSlider figure
{
    width: 100%;
    position: relative
}
.mainvSlider figure figcaption
{
    position: absolute;
    left: 0;
    bottom: 0;
    background: -webkit-gradient(linear,left top,left bottom,from(rgba(40,47,55,0)),to(rgba(40,47,55,.8)));
    background: linear-gradient(rgba(40,47,55,0),rgba(40,47,55,.8));
    text-align: center;
    z-index: 8
}
@media only screen and (max-width: 500px)
{
    .mainvSlider figure figcaption
    {
        background: none;
        position: static
    }
}
.mainvSlider figure figcaption p
{
    color: #fff;
    font-weight: bold;
    letter-spacing: .1em;
    line-height: 1.58;
    text-shadow: #000 1px 1px 7px;
    text-align: left;
    display: inline-block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}
@media only screen and (min-width: 499px)
{
    .mainvSlider figure figcaption p
    {
        font-size: 24px;
        padding: 50px 40px 30px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .mainvSlider figure figcaption p
    {
        font-size: 20px;
        padding: 41px 33px 24px
    }
}
@media only screen and (max-width: 500px)
{
    .mainvSlider figure figcaption p
    {
        font-size: 3.5vw;
        letter-spacing: .03em;
        padding: 6.9444vw 5.5555vw 4.1666vw;
        display: none;
        
    }
}
.mainvTxt
{
    text-align: center;
    text-shadow: #fff 2px 2px 7px,#fff -2px 2px 7px,#fff 2px -2px 7px,#fff -2px -2px 7px;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 10;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background: #fff
}
.maivCur
{
    margin-bottom: 20px;
    font-family: 'Italianno',cursive
}
@media only screen and (min-width: 499px)
{
    .maivCur
    {
        font-size: 75px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .maivCur
    {
        font-size: 62px
    }
}
@media only screen and (max-width: 500px)
{
    .maivCur
    {
        font-size: 14.7222vw
    }
}
.maivCur span
{
    font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,serif;
    display: block;
    font-weight: bold;
    margin-top: 1em;
    letter-spacing: .1em
}
@media all and (-ms-high-contrast: none)
{
    .maivCur span
    {
        font-family: "Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,"ＭＳ Ｐ明朝","MS PMincho",serif
    }
}
@media only screen and (min-width: 499px)
{
    .maivCur span
    {
        font-size: 13px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .maivCur span
    {
        font-size: 10px
    }
}
@media only screen and (max-width: 500px)
{
    .maivCur span
    {
        font-size: 3.0555vw
    }
}
.mainvComment
{
    position: relative;
    z-index: 10;
    padding-top: 4.5833vw;
    padding-bottom: 5vw
}
.mainvComment .maivCur
{
    margin-bottom: 0;
    display: inline-block;
    position: relative;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}
.mainvComment .maivCur span
{
    margin-top: -.8em;
    padding-left: 1em
}
.mainvTxtSpWrap
{
    text-align: center;
    padding-bottom: 4.8611vw
}
.mainvTxtSp p
{
    font-size: 3.1944vw;
    font-weight: bold;
    letter-spacing: .03em;
    line-height: 1.6956
}
@media only screen and (min-width: 499px)
{
    .mainvBtnWrap
    {
        position: absolute;
        bottom: 0;
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        z-index: 10
    }
}
@media only screen and (max-width: 500px)
{
    .mainvBtnWrap
    {
        background: #f7f7f3
    }
}
.mainvBtn
{
    display: block
}
@media only screen and (min-width: 499px)
{
    .mainvBtn
    {
        position: absolute;
        bottom: 18px;
        right: 18px;
        z-index: 11;
        -webkit-transition: opacity .2s ease 0s;
        transition: opacity .2s ease 0s;
        cursor: pointer
    }
    .mainvBtn:hover
    {
        opacity: .7 !important
    }
    .mainvBtn img
    {
        width: 200px;
        height: auto
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .mainvBtn img
    {
        width: 180px;
        height: auto
    }
}
@media only screen and (max-width: 500px)
{
    .mainvBtn img
    {
        width: 100%;
        height: auto
    }
}
#topics
{
    background: #f7f7f3;
    overflow-x: hidden
}
@media only screen and (min-width: 499px)
{
    #topics
    {
        padding: 70px 0
    }
}
@media only screen and (max-width: 500px)
{
    #topics
    {
        padding: 8.3333vw 0
    }
}
@media only screen and (min-width: 499px)
{
    #topics.fixed
    {
        padding-top: 192px
    }
}
@media only screen and (min-width: 499px)
{
    #topics .inner
    {
        padding: 0;
        max-width: 1048px
    }
}
.topicsPC
{
    position: relative
}
.topicsPC *
{
    outline: none
}
.topicsPC *:focus
{
    outline: none
}
.topicsPC .arwPrv, .topicsPC .arwNxt
{
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    width: 37px;
    height: 40px;
    position: absolute;
    top: 50%;
    -webkit-transform: translate(0,-50%);
    transform: translate(0,-50%);
    z-index: 20
}
@media only screen and (min-width: 499px)
{
    .topicsPC .arwPrv, .topicsPC .arwNxt
    {
        -webkit-transition: opacity .2s ease 0s;
        transition: opacity .2s ease 0s;
        cursor: pointer
    }
    .topicsPC .arwPrv:hover, .topicsPC .arwNxt:hover
    {
        opacity: .7
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topicsPC .arwPrv, .topicsPC .arwNxt
    {
        width: 30px;
        height: 30px
    }
}
.topicsPC .arwPrv
{
    background-image: url(assets/images/common/arw_prv.svg);
    left: -77px
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topicsPC .arwPrv
    {
        left: -50px
    }
}
.topicsPC .arwNxt
{
    background-image: url(assets/images/common/arw_nxt.svg);
    right: -77px
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topicsPC .arwNxt
    {
        right: -50px
    }
}
.topicsPCList
{
    padding: 0 19px
}
@media only screen and (max-width: 500px)
{
    .topicsPCList
    {
        padding: 0;
        margin-bottom: 4vw
    }
}
.topicsPCList.hide
{
    display: none
}
.topicsPCList a
{
    display: block
}
@media only screen and (min-width: 499px)
{
    .topicsPCList a
    {
        -webkit-transition: opacity .2s ease 0s;
        transition: opacity .2s ease 0s;
        cursor: pointer
    }
    .topicsPCList a:hover
    {
        opacity: .7
    }
}
@media only screen and (max-width: 500px)
{
    .topicsPCList a
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
}
.topicsPCListTh
{
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    height: 0;
    -webkit-box-sizing: content-box;
    box-sizing: content-box
}
@media only screen and (min-width: 499px)
{
    .topicsPCListTh
    {
        width: 100%;
        margin-bottom: 15px;
        padding-bottom: 71.428571%
    }
}
@media only screen and (max-width: 500px)
{
    .topicsPCListTh
    {
        width: 26.3888vw;
        padding-bottom: 26.3888vw
    }
}
@media only screen and (max-width: 500px)
{
    .topicsPCContentWrap
    {
        width: 57.5vw
    }
}
.topicsPCListInfo
{
    margin-bottom: 15px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: baseline;
    -ms-flex-align: baseline;
    align-items: baseline
}
@media only screen and (max-width: 500px)
{
    .topicsPCListInfo
    {
        margin-bottom: 4.1666vw
    }
}
.topicsCat
{
    color: #821437;
    font-family: petersburg-web,serif;
    font-weight: 400,700;
    font-style: normal,italic
}
@media only screen and (min-width: 499px)
{
    .topicsCat
    {
        font-size: 25px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topicsCat
    {
        font-size: 21px
    }
}
@media only screen and (max-width: 500px)
{
    .topicsCat
    {
        font-size: 5.5555vw
    }
}
.topicsDate
{
    color: #821437;
    font-weight: bold
}
@media only screen and (min-width: 499px)
{
    .topicsDate
    {
        font-size: 16px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topicsDate
    {
        font-size: 13px
    }
}
@media only screen and (max-width: 500px)
{
    .topicsDate
    {
        font-size: 3.6111vw
    }
}
.topicsDate span
{
    display: inline-block;
    margin-left: .2em
}
@media only screen and (min-width: 499px)
{
    .topicsDate span
    {
        font-size: 14px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topicsDate span
    {
        font-size: 12px
    }
}
@media only screen and (max-width: 500px)
{
    .topicsDate span
    {
        font-size: 3.3333vw
    }
}
@media only screen and (min-width: 499px)
{
    .topicsContent
    {
        font-size: 13px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topicsContent
    {
        font-size: 12px
    }
}
@media only screen and (max-width: 500px)
{
    .topicsContent
    {
        font-size: 3.3vw
    }
}
.topicsTtl
{
    font-weight: bold;
    line-height: 1.8;
    margin-bottom: 10px
}
@media only screen and (min-width: 499px)
{
    .topicsTtl
    {
        min-height: 4em
    }
}
@media only screen and (max-width: 500px)
{
    .topicsTtl
    {
        margin-bottom: 0;
        letter-spacing: -.04em
    }
}
.topicsTxt
{
    line-height: 1.8
}
@media only screen and (min-width: 499px)
{
    .topicsTxt
    {
        font-size: 12px;
        letter-spacing: -.01em
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topicsTxt
    {
        font-size: 11px;
        letter-spacing: 0
    }
}
@media only screen and (max-width: 500px)
{
    .topicsTxt
    {
        font-size: 3.3vw
    }
}
.topicsBtn .off
{
    display: none
}
.topicsBtn .topicsMore:after
{
    width: 3vw;
    background-size: 4.888vw auto;
    background-position: right;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg)
}
.topicsBtn .topicsClose:after
{
    width: 2.0833vw;
    height: 2.0833vw;
    background-image: url(assets/images/common/close.svg)
}

@media only screen and (min-width: 499px) {
  .bestrate {
    margin: 50px auto 0;
    text-align: center;
  }
  .bestrate img {
    width: 1010px;
  }
  .bestrate a {
  -webkit-transition: opacity 0.2s ease 0s;
      transition: opacity 0.2s ease 0s;}
  .bestrate a:hover {
    opacity: 0.7;
  }
}

@media only screen and (max-width: 500px) {
  .bestrate {
    margin: 30px 0 0;
    padding: 0 20px;
    width: 100%;
  }
}
#concept
{
    text-align: center
}
@media only screen and (min-width: 499px)
{
    #concept
    {
        padding: 54.166% 0 130px
    }
}
@media only screen and (max-width: 500px)
{
    #concept
    {
        padding: 13.88888vw 0
    }
}
.conceptConntent
{
    background: rgba(60,80,100,.95);
    margin: 0 auto
}
@media only screen and (min-width: 499px)
{
    .conceptConntent
    {
        width: 840px;
        padding: 5px
    }
}
@media only screen and (max-width: 500px)
{
    .conceptConntent
    {
        width: 88.8888vw;
        padding: 1vw
    }
}
.conceptConntentInner
{
    border: 1px solid rgba(170,160,140,.5);
    color: #fff
}
@media only screen and (min-width: 499px)
{
    .conceptConntentInner
    {
        padding: 70px 80px 100px
    }
}
@media only screen and (max-width: 500px)
{
    .conceptConntentInner
    {
        padding: 10.5vw 2.7vw
    }
}
.conceptConntentInner h2
{
    color: #aaa08c;
    font-family: 'Italianno',cursive
}
@media only screen and (min-width: 499px)
{
    .conceptConntentInner h2
    {
        margin-bottom: 40px;
        font-size: 75px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .conceptConntentInner h2
    {
        margin-bottom: 35px;
        font-size: 62px
    }
}
@media only screen and (max-width: 500px)
{
    .conceptConntentInner h2
    {
        margin-bottom: 6.94vw;
        font-size: 13.8888vw
    }
}
.conceptLead
{
    line-height: 1.9
}
@media only screen and (min-width: 499px)
{
    .conceptLead
    {
        margin-bottom: 30px;
        font-size: 24px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .conceptLead
    {
        margin-bottom: 25px;
        font-size: 20px
    }
}
@media only screen and (max-width: 500px)
{
    .conceptLead
    {
        margin-bottom: 6.94vw;
        font-size: 3.7vw;
        letter-spacing: -.06em
    }
}
@media only screen and (max-width: 320px)
{
    .conceptLead
    {
        font-size: 3.5vw;
        letter-spacing: -.07em
    }
}
.conceptTxt
{
    line-height: 1.8
}
@media only screen and (min-width: 499px)
{
    .conceptTxt
    {
        font-size: 17px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .conceptTxt
    {
        font-size: 14.5px
    }
}
@media only screen and (max-width: 500px)
{
    .conceptTxt
    {
        font-size: 3.3333vw;
        text-align: left;
        padding: 0 .9em;
        line-break: strict
    }
}
@media only screen and (max-width: 320px)
{
    .conceptTxt
    {
        font-size: 3vw;
        padding: 0 .9em
    }
}
@media only screen and (min-width: 499px)
{
    .conceptBg
    {
        background-image: url(assets/images/top/top_concept_bg_pc.jpg)
    }
}
@media only screen and (max-width: 500px)
{
    .conceptBg
    {
        background-image: url(assets/images/top/top_concept_bg_sp.jpg)
    }
}
.tb .conceptBg
{
    background-size: auto 100% !important
}
#inparis
{
    text-align: center;
    background-size: cover;
    background-position: top;
    background-repeat: no-repeat;
    background-color: #f7f7f3;
    -webkit-transform: matrix3d(0,0,0);
    transform: matrix3d(0,0,0)
}
@media only screen and (min-width: 499px)
{
    #inparis
    {
        padding: 100px 0 90px;
        background-image: url(assets/images/top/top_inparis_bg_pc.jpg)
    }
}
@media only screen and (max-width: 500px)
{
    #inparis
    {
        padding: 11.111vw 0;
        background-image: url(assets/images/top/top_inparis_bg_sp.jpg)
    }
}
#inparis h2
{
    color: #aaa08c;
    font-family: 'Italianno',cursive
}
@media only screen and (min-width: 499px)
{
    #inparis h2
    {
        margin-bottom: 10px;
        font-size: 80px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    #inparis h2
    {
        margin-bottom: 8px;
        font-size: 66px
    }
}
@media only screen and (max-width: 500px)
{
    #inparis h2
    {
        margin-bottom: 6.94vw;
        font-size: 12.5vw
    }
}
.inparisLead
{
    font-weight: bold
}
@media only screen and (min-width: 499px)
{
    .inparisLead
    {
        font-size: 24px;
        margin-bottom: 30px;
        line-height: 2;
        letter-spacing: .08em
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .inparisLead
    {
        font-size: 20px;
        margin-bottom: 25px
    }
}
@media only screen and (max-width: 500px)
{
    .inparisLead
    {
        margin-bottom: 6vw;
        font-size: 4.4vw;
        line-height: 1.666
    }
}
@media only screen and (min-width: 499px)
{
    .inparisTxt
    {
        font-size: 16px;
        line-height: 2.3;
        font-weight: bold
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .inparisTxt
    {
        font-size: 13px
    }
}
@media only screen and (max-width: 500px)
{
    .inparisTxt
    {
        font-size: 3.3333vw;
        text-align: left;
        width: 73.6111vw;
        margin: 0 auto;
        line-height: 1.666
    }
}
.topCarouselWrap
{
    width: 100%;
    overflow: hidden
}
@media only screen and (min-width: 499px)
{
    .topCarouselWrap
    {
        margin-top: 90px
    }
}
@media only screen and (max-width: 500px)
{
    .topCarouselWrap
    {
        margin-top: 12.5vw
    }
}
@media only screen and (min-width: 499px)
{
    .topCarousel
    {
        width: 3208px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topCarousel
    {
        width: 2900px
    }
}
@media only screen and (max-width: 500px)
{
    .topCarousel
    {
        width: 294.72vw
    }
}
@media only screen and (min-width: 499px)
{
    .topSection.secBgWrap
    {
        padding-top: 54.166%
    }
}
@media only screen and (max-width: 500px)
{
    .topSection.secBgWrap
    {
        padding-top: 0
    }
}
@media only screen and (max-width: 500px)
{
    .topSection .secBg
    {
        padding-top: 75%;
        background-attachment: scroll;
        width: 100%;
        height: 0 !important;
        -webkit-box-sizing: content-box;
        box-sizing: content-box;
        position: static;
        display: block !important
    }
}
.tb .secBgWrap
{
    background-attachment: scroll !important;
    background-size: 100% auto !important;
    background-position: top center !important
}
.topSectionContentWrap
{
    background: #f7f7f3
}
@media only screen and (max-width: 500px)
{
    .topSectionContentWrap
    {
        padding-bottom: 11vw
    }
}
.topSectionContent
{
    background: #fff;
    max-width: 1240px;
    margin-right: auto;
    margin-left: auto;
    position: relative
}
@media only screen and (min-width: 499px)
{
    .topSectionContent
    {
        top: -80px;
        padding: 50px 80px 80px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topSectionContent
    {
        top: -60px;
        padding: 40px 65px 65px;
        width: 1024px
    }
}
@media only screen and (max-width: 500px)
{
    .topSectionContent
    {
        width: 94.4444vw;
        max-width: none;
        padding: 8.3333vw 2.7777vw 11.1111vw;
        top: -5.555vw
    }
}
@media only screen and (min-width: 499px)
{
    .topSectionContent .secTtl
    {
        margin-bottom: 50px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topSectionContent .secTtl
    {
        margin-bottom: 40px
    }
}
@media only screen and (max-width: 500px)
{
    .topSectionContent .secTtl
    {
        margin-bottom: 8.3333vw
    }
}
@media only screen and (min-width: 499px)
{
    .topSectionContentInner
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        margin: 40px auto 0;
        width: 1000px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topSectionContentInner
    {
        margin: 35px auto 0;
        width: 95%
    }
}
@media only screen and (max-width: 500px)
{
    .topSectionContentInner
    {
        margin: 8.3333vw auto 0;
        width: 88.8888vw
    }
}
.topSectionContentInnerBlock
{
    position: relative;
    -ms-flex: 0 1 auto
}
@media only screen and (min-width: 499px)
{
    .topSectionContentInnerBlock
    {
        width: 46.9%
    }
}
.topSectionContentInnerBlock img
{
    position: relative;
    display: block
}
.topSectionContentInnerBlockTxtWrap
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}
@media only screen and (min-width: 499px)
{
    .topSectionContentInnerBlockTxtWrap
    {
        width: 46%
    }
}
.topSectionContentInnerBlockTxt
{
    -ms-flex: 0 1 auto
}
@media only screen and (max-width: 500px)
{
    .topSectionContentInnerBlockImgWrap
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        margin-top: 6.9444vw
    }
    .topSectionContentInnerBlockImgWrap img
    {
        width: 49%;
        height: auto
    }
}
@media only screen and (min-width: 499px)
{
    #topCeremony
    {
        background-image: url(assets/images/top/top_ceremony_bg_pc.jpg);
        background-attachment: fixed;
        background-size: cover;
        background-position: center
    }
}
@media only screen and (min-width: 499px)
{
    .topCeremonyImg2
    {
        margin-bottom: 20px;
        width: 394px;
        height: auto;
        left: 70px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topCeremonyImg2
    {
        margin-bottom: 16px;
        width: 325px;
        height: auto;
        left: 58px
    }
}
@media only screen and (min-width: 499px)
{
    .topCeremonyImg3
    {
        width: 322px;
        height: auto
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topCeremonyImg3
    {
        width: 265px;
        height: auto
    }
}
@media only screen and (max-width: 500px)
{
    .ceremonyBg
    {
        background-image: url(assets/images/top/top_ceremony_bg_sp.jpg)
    }
}
@media only screen and (min-width: 499px)
{
    #topParty
    {
        background-image: url(assets/images/top/top_party_bg_pc.jpg);
        background-attachment: fixed;
        background-size: cover;
        background-position: center
    }
    #topParty .topSectionContentInnerBlockTxtWrap
    {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2
    }
    #topParty .topSectionContentInnerBlockImgWrap
    {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1
    }
    #topParty .topSectionContentInnerBlockTxtWrap
    {
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end;
        margin-right: 12px
    }
    #topParty .topSectionContentInnerBlockTxt
    {
        width: 83%
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    #topParty .topSectionContentInnerBlockTxtWrap
    {
        margin-right: 10px
    }
}
@media only screen and (min-width: 499px)
{
    .topPartyImg2
    {
        margin-bottom: 20px;
        width: 394px;
        height: auto
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topPartyImg2
    {
        margin-bottom: 16px;
        width: 325px;
        height: auto
    }
}
@media only screen and (min-width: 499px)
{
    .topPartyImg3
    {
        width: 322px;
        height: auto;
        left: 136px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topPartyImg3
    {
        width: 265px;
        height: auto;
        left: 112px
    }
}
@media only screen and (max-width: 500px)
{
    .partyBg
    {
        background-image: url(assets/images/top/top_party_bg_sp.jpg)
    }
}
@media only screen and (min-width: 499px)
{
    #topTreat
    {
        background-image: url(assets/images/top/top_treat_bg_pc.jpg);
        background-attachment: fixed;
        background-size: cover;
        background-position: center
    }
    #topTreat .topSectionContentInnerBlockTxtWrap
    {
        width: 47%
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    #topTreat .topSectionContentInnerBlockTxtWrap
    {
        margin-right: 10px
    }
}
@media only screen and (min-width: 499px)
{
    .topCuisineImg2
    {
        width: 440px;
        height: auto;
        left: 29px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topCuisineImg2
    {
        width: 363px;
        height: auto;
        left: 24px
    }
}
@media only screen and (max-width: 500px)
{
    .topCuisineImg2
    {
        width: 100% !important;
        height: auto
    }
}
@media only screen and (max-width: 500px)
{
    .treatBg
    {
        background-image: url(assets/images/top/top_treat_bg_sp.jpg)
    }
}
#topImage1
{
    background-size: cover;
    background-position: center;
    text-align: center
}
@media only screen and (min-width: 499px)
{
    #topImage1
    {
        height: 400px;
        background-image: url(assets/images/top/top_img1_pc.jpg);
        background-attachment: fixed
    }
}
@media only screen and (max-width: 500px)
{
    #topImage1
    {
        padding: 15.2777vw 0;
        background-image: url(assets/images/top/top_img1_sp.jpg)
    }
}
#topImage1 p
{
    color: #fff;
    line-height: 1.53
}
@media only screen and (min-width: 499px)
{
    #topImage1 p
    {
        font-size: 24px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    #topImage1 p
    {
        font-size: 20px
    }
}
@media only screen and (max-width: 500px)
{
    #topImage1 p
    {
        font-size: 3.8888vw
    }
}
.tb #topImage1
{
    background-attachment: scroll
}
#topHospitality
{
    background-size: cover;
    background-position: top
}
@media only screen and (min-width: 499px)
{
    #topHospitality
    {
        background-image: url(assets/images/top/top_hospitality_bg_pc.jpg)
    }
}
@media only screen and (max-width: 500px)
{
    #topHospitality
    {
        background-image: url(assets/images/top/top_hospitality_bg_sp.jpg)
    }
}
@media only screen and (min-width: 499px)
{
    .topHospitalityListWrap
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        margin-bottom: 80px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topHospitalityListWrap
    {
        margin-bottom: 66px
    }
}
@media only screen and (max-width: 500px)
{
    .topHospitalityListWrap
    {
        margin-bottom: 13.8888vw
    }
}
@media only screen and (min-width: 499px)
{
    .topHospitalityList
    {
        width: 47.959184%
    }
}
@media only screen and (max-width: 500px)
{
    .topHospitalityList
    {
        width: 83.3333vw;
        margin: 0 auto 5.5555vw
    }
    .topHospitalityList:last-child
    {
        margin-bottom: 0
    }
}
.topHospitalityListContent
{
    background: #e6e6dc
}
@media only screen and (min-width: 499px)
{
    .topHospitalityListContent
    {
        padding: 30px 40px 40px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topHospitalityListContent
    {
        padding: 24.75px 33px 33px
    }
}
@media only screen and (max-width: 500px)
{
    .topHospitalityListContent
    {
        padding: 7.7777vw 4.8611vw 8.3333vw
    }
}
@media only screen and (min-width: 499px)
{
    .topHospitalityListContent h3
    {
        margin-bottom: 40px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topHospitalityListContent h3
    {
        margin-bottom: 33px
    }
}
@media only screen and (max-width: 500px)
{
    .topHospitalityListContent h3
    {
        margin-bottom: 6.9444vw
    }
}
.topHospitalityListContent h3 span
{
    display: block;
    text-align: center
}
.topHospitalityListContent h3 .en
{
    color: #aaa08c;
    font-family: 'Italianno',cursive
}
@media only screen and (min-width: 499px)
{
    .topHospitalityListContent h3 .en
    {
        font-size: 60px;
        margin-bottom: 10px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topHospitalityListContent h3 .en
    {
        font-size: 49.5px;
        margin-bottom: 8px
    }
}
@media only screen and (max-width: 500px)
{
    .topHospitalityListContent h3 .en
    {
        font-size: 11.1111vw;
        margin-bottom: 1.8055vw
    }
}
.topHospitalityListContent h3 .jp
{
    font-weight: bold;
    letter-spacing: .12em
}
@media only screen and (min-width: 499px)
{
    .topHospitalityListContent h3 .jp
    {
        font-size: 17px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topHospitalityListContent h3 .jp
    {
        font-size: 14px
    }
}
@media only screen and (max-width: 500px)
{
    .topHospitalityListContent h3 .jp
    {
        font-size: 3.3333vw
    }
}
.topHospitalityListContent p
{
    line-height: 1.71;
    line-break: strict
}
@media only screen and (max-width: 500px)
{
    .topHospitalityListContent p
    {
        font-size: 3vw
    }
}
@media only screen and (max-width: 320px)
{
    .topHospitalityListContent p
    {
        padding: 0 1em
    }
}
#topProduse
{
    text-align: center
}
#topProduse>p
{
    line-break: strict
}
@media only screen and (min-width: 499px)
{
    #topProduse>p
    {
        font-size: 16px;
        line-height: 2.06;
        letter-spacing: .12em
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    #topProduse>p
    {
        font-size: 13px
    }
}
@media only screen and (max-width: 500px)
{
    #topProduse>p
    {
        font-size: 3.5vw;
        line-height: 1.69;
        text-align: left;
        padding: 0 1.2em;
        letter-spacing: -.01em;
        text-align: justify
    }
}
@media only screen and (min-width: 499px)
{
    .topProduseLogo
    {
        margin-bottom: 35px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topProduseLogo
    {
        margin-bottom: 28.875px
    }
}
@media only screen and (max-width: 500px)
{
    .topProduseLogo
    {
        margin-bottom: 5.5555vw
    }
}
.topProduseLogo p
{
    color: #aaa08c;
    font-family: petersburg-web,serif;
    font-weight: 400,700;
    font-style: normal,italic
}
@media only screen and (min-width: 499px)
{
    .topProduseLogo p
    {
        font-size: 20px;
        margin-bottom: 15px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topProduseLogo p
    {
        font-size: 17px;
        margin-bottom: 12.375px
    }
}
@media only screen and (max-width: 500px)
{
    .topProduseLogo p
    {
        font-size: 4.0277vw;
        margin-bottom: 1.3888vw
    }
}
@media only screen and (min-width: 499px)
{
    .topProduseLogo img
    {
        width: 290px;
        height: auto
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topProduseLogo img
    {
        width: 239px;
        height: auto
    }
}
@media only screen and (max-width: 500px)
{
    .topProduseLogo img
    {
        width: 58.8888vw;
        height: auto
    }
}
@media only screen and (min-width: 499px)
{
    .topHospitalityImg
    {
        margin-top: 60px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topHospitalityImg
    {
        margin-top: 50px
    }
}
@media only screen and (max-width: 500px)
{
    .topHospitalityImg
    {
        margin-top: 8.3333vw
    }
}
@media only screen and (min-width: 499px)
{
    #topBeauty
    {
        background-image: url(assets/images/top/top_beauty_bg_pc.jpg);
        background-attachment: fixed;
        background-size: cover;
        background-position: center
    }
}
#topBeauty .topSectionContentWrap
{
    background: #fff
}
@media only screen and (min-width: 499px)
{
    #topBeauty .topSectionContentWrap
    {
        padding-bottom: 30px
    }
}
#topBeauty .topSectionContent
{
    padding: 0
}
@media only screen and (min-width: 499px)
{
    #topBeauty .topSectionContent
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }
}
.topDressBox
{
    position: relative
}
@media only screen and (min-width: 499px)
{
    .topDressBox
    {
        width: 50%
    }
}
.topDressLeft
{
    text-align: center;
    color: #fff;
    background: #3c5064
}
@media only screen and (min-width: 499px)
{
    .topDressLeft
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
}
@media only screen and (max-width: 500px)
{
    .topDressLeft
    {
        padding: 8.3333vw 0
    }
}
@media only screen and (min-width: 499px)
{
    .topDressLeft p
    {
        letter-spacing: .12em;
        font-size: 20px;
        line-height: 2
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topDressLeft p
    {
        font-size: 16.5px
    }
}
@media only screen and (max-width: 500px)
{
    .topDressLeft p
    {
        letter-spacing: .1em;
        font-size: 3.7vw;
        line-height: 1.6666
    }
}
@media only screen and (max-width: 320px)
{
    .topDressLeft p
    {
        letter-spacing: 0;
        font-size: 3.6vw
    }
}
@media only screen and (max-width: 500px)
{
    .topDressLeftInner
    {
        margin: 0 auto;
        width: 88.8888vw
    }
}
@media only screen and (min-width: 499px)
{
    .dressLogo
    {
        width: 180px;
        height: auto;
        margin-bottom: 60px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .dressLogo
    {
        width: 148.5px;
        height: auto;
        margin-bottom: 49.5px
    }
}
@media only screen and (max-width: 500px)
{
    .dressLogo
    {
        width: 39.6786vw;
        height: auto;
        margin-bottom: 8.3333vw
    }
}
.txtDress
{
    position: absolute;
    z-index: 10
}
@media only screen and (min-width: 499px)
{
    .txtDress
    {
        width: 376.6px;
        height: auto;
        right: 24px;
        bottom: -53px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .txtDress
    {
        width: 310.695px;
        height: auto;
        right: 19.8px;
        bottom: -43.725px
    }
}
@media only screen and (max-width: 500px)
{
    .txtDress
    {
        width: 69.4444vw;
        height: auto;
        right: 4.1666vw;
        bottom: -10.4166vw
    }
}
@media only screen and (max-width: 500px)
{
    .beautyBg
    {
        background-image: url(assets/images/top/top_beauty_bg_sp.jpg)
    }
}
#topFair
{
    background: #f7f7f3
}
@media only screen and (min-width: 499px)
{
    #topFair .btn
    {
        margin-top: 80px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    #topFair .btn
    {
        margin-top: 66px
    }
}
@media only screen and (max-width: 500px)
{
    #topFair .btn
    {
        margin-top: 8.3333vw
    }
}
@media only screen and (min-width: 499px)
{
    .topFairSecLead
    {
        margin-bottom: 40px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topFairSecLead
    {
        margin-bottom: 33px
    }
}
@media only screen and (max-width: 500px)
{
    .topFairSecLead
    {
        margin-bottom: 7.6388vw;
        font-size: 3.8888vw
    }
}
@media only screen and (min-width: 499px)
{
    .topFairContent
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between
    }
}
@media only screen and (max-width: 500px)
{
    .topFairContent
    {
        margin-bottom: 8.3333vw
    }
}
@media only screen and (min-width: 499px)
{
    .topFairContentBox
    {
        width: 47.55102%
    }
}
.topFairCalendar
{
    background: #fff
}
@media only screen and (min-width: 499px)
{
    .topFairCalendar
    {
        padding: 8px;
        margin-bottom: 30px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topFairCalendar
    {
        margin-bottom: 25px
    }
}
@media only screen and (max-width: 500px)
{
    .topFairCalendar
    {
        padding: 1.3888vw;
        margin-bottom: 6.9444vw
    }
}
.topFairCalendarInner
{
    border: 1px dotted #282f37;
    position: relative
}
@media only screen and (min-width: 499px)
{
    .topFairCalendarInner
    {
        padding: 35px 32px 28px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topFairCalendarInner
    {
        padding: 29px 26px 23px
    }
}
@media only screen and (max-width: 500px)
{
    .topFairCalendarInner
    {
        padding: 4.8611vw 4.4444vw 3.8888vw
    }
}
.topFairCalendarTable
{
    width: 100%
}
.topFairCalendarTable caption
{
    text-align: center
}
@media only screen and (min-width: 499px)
{
    .topFairCalendarTable caption
    {
        margin-bottom: 35px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topFairCalendarTable caption
    {
        margin-bottom: 28px
    }
}
@media only screen and (max-width: 500px)
{
    .topFairCalendarTable caption
    {
        margin-bottom: 4.5vw
    }
}
.topFairCalendarTable caption span
{
    display: block
}
.topFairCalendarTable caption .monthNum
{
    font-family: liana,script;
    font-weight: 400;
    font-style: normal
}
@media only screen and (min-width: 499px)
{
    .topFairCalendarTable caption .monthNum
    {
        font-size: 55px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topFairCalendarTable caption .monthNum
    {
        font-size: 45px
    }
}
@media only screen and (max-width: 500px)
{
    .topFairCalendarTable caption .monthNum
    {
        font-size: 8.9736vw
    }
}
.topFairCalendarTable caption .monthEn
{
    font-family: petersburg-web,serif;
    font-weight: 400,700;
    font-style: normal,italic
}
@media only screen and (max-width: 500px)
{
    .topFairCalendarTable caption .monthEn
    {
        font-size: 2.143vw
    }
}
.topFairCalendarTable th
{
    text-align: center;
    width: 14.2857143%;
    font-weight: normal;
    font-family: petersburg-web,serif;
    font-weight: 400,700;
    font-style: normal,italic
}
@media only screen and (min-width: 499px)
{
    .topFairCalendarTable th
    {
        padding: 8px;
        font-size: 13px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topFairCalendarTable th
    {
        font-size: 12px
    }
}
@media only screen and (max-width: 500px)
{
    .topFairCalendarTable th
    {
        padding: 1vw;
        font-size: 2.7777vw
    }
}
.topFairCalendarTable td
{
    text-align: center;
    width: 14.2857143%;
    font-family: petersburg-web,serif;
    font-weight: 400,700;
    font-style: normal,italic
}
@media only screen and (min-width: 499px)
{
    .topFairCalendarTable td
    {
        padding: 12px;
        font-size: 17px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topFairCalendarTable td
    {
        padding: 10px;
        font-size: 14px
    }
}
@media only screen and (max-width: 500px)
{
    .topFairCalendarTable td
    {
        padding: 1.8055vw;
        font-size: 3.3333vw
    }
}
.topFairCalendarTable td.week6
{
    color: #0083a3
}
.topFairCalendarTable td.week7
{
    color: #821437
}
.topFairCalendarTable td a
{
    text-decoration: underline
}
.topFairArxPrv, .topFairArxNxt
{
    position: absolute;
    z-index: 20
}
@media only screen and (min-width: 499px)
{
    .topFairArxPrv, .topFairArxNxt
    {
        -webkit-transition: opacity .2s ease 0s;
        transition: opacity .2s ease 0s;
        cursor: pointer
    }
    .topFairArxPrv:hover, .topFairArxNxt:hover
    {
        opacity: .7
    }
}
@media only screen and (min-width: 499px)
{
    .topFairArxPrv, .topFairArxNxt
    {
        top: 65px;
        width: 22px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topFairArxPrv, .topFairArxNxt
    {
        top: 60px
    }
}
@media only screen and (max-width: 500px)
{
    .topFairArxPrv, .topFairArxNxt
    {
        top: 6.5833vw;
        width: 9.4722vw;
        padding: 3vw;
        cursor: pointer
    }
}
.topFairArxPrv img, .topFairArxNxt img
{
    width: 100%;
    height: auto
}
@media only screen and (min-width: 499px)
{
    .topFairArxPrv
    {
        left: 10%
    }
}
@media only screen and (max-width: 500px)
{
    .topFairArxPrv
    {
        left: 12%
    }
}
@media only screen and (min-width: 499px)
{
    .topFairArxNxt
    {
        right: 10%
    }
}
@media only screen and (max-width: 500px)
{
    .topFairArxNxt
    {
        right: 12%
    }
}
@media only screen and (min-width: 499px)
{
    .topFairContact
    {
        margin-top: 30px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topFairContact
    {
        margin-top: 28px
    }
}
@media only screen and (max-width: 500px)
{
    .topFairContact
    {
        margin-top: 6.9444vw
    }
}
.topFairBtnArea
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}
@media only screen and (min-width: 499px)
{
    .topFairBtnArea
    {
        margin-bottom: 30px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topFairBtnArea
    {
        margin-bottom: 28px
    }
}
@media only screen and (max-width: 500px)
{
    .topFairBtnArea
    {
        margin-bottom: 6.9444vw
    }
}
.topFairBtnArea li
{
    width: 48.206278%;
    -ms-flex: 0 1 auto
}
.topFairBtn
{
    display: block;
    background: #aaa08c;
    color: #fff;
    font-weight: bold;
    width: 100%;
    text-align: center;
    -ms-flex: 0 1 auto
}
@media only screen and (min-width: 499px)
{
    .topFairBtn
    {
        -webkit-transition: opacity .2s ease 0s;
        transition: opacity .2s ease 0s;
        cursor: pointer
    }
    .topFairBtn:hover
    {
        opacity: .7
    }
}
@media only screen and (min-width: 499px)
{
    .topFairBtn
    {
        padding: 18px;
        letter-spacing: .08em
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topFairBtn
    {
        padding: 15px
    }
}
@media only screen and (max-width: 500px)
{
    .topFairBtn
    {
        padding: 2.7777vw 2vw;
        letter-spacing: .03em;
        font-size: 3vw
    }
}
@media only screen and (max-width: 500px)
{
    .topFairContactInfo
    {
        width: 78.3333vw;
        margin: 0 auto
    }
}
.topFairContactInfo dl
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}
.topFairContactInfo dt
{
    border: 1px solid #282f37;
    font-weight: bold;
    text-align: center
}
@media only screen and (min-width: 499px)
{
    .topFairContactInfo dt
    {
        padding: 10px;
        font-size: 13px;
        line-height: 1.76923077
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topFairContactInfo dt
    {
        font-size: 11px;
        padding: 9px
    }
}
@media only screen and (max-width: 500px)
{
    .topFairContactInfo dt
    {
        padding: 2.7777vw 1vw;
        font-size: 2.5vw;
        line-height: 1.55;
        width: 38%
    }
}
@media only screen and (max-width: 500px)
{
    .topFairContactInfo dd
    {
        width: 55%
    }
}
@media only screen and (min-width: 499px)
{
    #topFair .topFairContactInfoBtn
    {
        margin-top: 60px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    #topFair .topFairContactInfoBtn
    {
        margin-top: 60px
    }
}
@media only screen and (max-width: 500px)
{
    #topFair .topFairContactInfoBtn
    {
        margin-top: 8.3333vw
    }
    #topFair .topFairContactInfoBtn a
    {
        margin-top: 0
    }
}
.topFairTel
{
    margin-bottom: 10px;
    letter-spacing: .05em;
    font-family: petersburg-web,serif;
    font-weight: 400,700;
    font-style: normal,italic
}
@media only screen and (min-width: 499px)
{
    .topFairTel a
    {
        cursor: default;
        font-size: 18px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topFairTel a
    {
        font-size: 15px
    }
}
@media only screen and (max-width: 500px)
{
    .topFairTel a
    {
        font-size: 3.0555vw
    }
}
@media only screen and (min-width: 499px)
{
    .topFairTel a span
    {
        font-size: 28px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topFairTel a span
    {
        font-size: 23px
    }
}
@media only screen and (max-width: 500px)
{
    .topFairTel a span
    {
        font-size: 4.8611vw
    }
}
.topFairOpen
{
    font-weight: bold
}
@media only screen and (min-width: 499px)
{
    .topFairOpen
    {
        font-size: 12px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topFairOpen
    {
        font-size: 11px
    }
}
@media only screen and (max-width: 500px)
{
    .topFairOpen
    {
        font-size: 2.5vw;
        line-height: 1.5
    }
}
.topFairInfo.overFlowY
{
    overflow-y: auto
}
@media only screen and (min-width: 499px)
{
    .topFairInfoList
    {
        margin-bottom: 10px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topFairInfoList
    {
        margin-bottom: 8px
    }
}
@media only screen and (max-width: 500px)
{
    .topFairInfoList
    {
        margin-bottom: 1.3888vw
    }
}
.topFairInfoList a
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}
@media only screen and (min-width: 499px)
{
    .topFairInfoList a
    {
        -webkit-transition: opacity .2s ease 0s;
        transition: opacity .2s ease 0s;
        cursor: pointer
    }
    .topFairInfoList a:hover
    {
        opacity: .7
    }
}
@media only screen and (min-width: 499px)
{
    .topFairInfoTh
    {
        width: 39.270386%
    }
}
@media only screen and (max-width: 500px)
{
    .topFairInfoTh
    {
        width: 28.125%
    }
}
.topFairInfoTh figure
{
    height: 0;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    width: 100%;
    display: block
}
@media only screen and (min-width: 499px)
{
    .topFairInfoTh figure
    {
        padding-bottom: 103.825137%
    }
}
@media only screen and (max-width: 500px)
{
    .topFairInfoTh figure
    {
        padding-bottom: 100%
    }
}
.topFairInfoContent
{
    background: #fff
}
@media only screen and (min-width: 499px)
{
    .topFairInfoContent
    {
        width: 60.729614%;
        padding: 20px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topFairInfoContent
    {
        padding: 18px
    }
}
@media only screen and (max-width: 500px)
{
    .topFairInfoContent
    {
        width: 71.875%;
        padding: 3.8888vw 2vw
    }
}
.topFairInfoContentTop
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}
@media only screen and (min-width: 499px)
{
    .topFairInfoContentTop
    {
        margin-bottom: 10px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topFairInfoContentTop
    {
        margin-bottom: 8px
    }
}
@media only screen and (max-width: 500px)
{
    .topFairInfoContentTop
    {
        margin-bottom: 3vw
    }
}
.topFairInfoDate
{
    letter-spacing: .08em;
    color: #821437
}
@media only screen and (min-width: 499px)
{
    .topFairInfoDate
    {
        font-size: 18px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topFairInfoDate
    {
        font-size: 15px
    }
}
@media only screen and (max-width: 500px)
{
    .topFairInfoDate
    {
        font-size: 3.3333vw
    }
}
.topFairInfoDate span
{
    display: inline-block;
    margin-left: .2em
}
@media only screen and (min-width: 499px)
{
    .topFairInfoDate span
    {
        font-size: 14px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topFairInfoDate span
    {
        font-size: 12px
    }
}
@media only screen and (max-width: 500px)
{
    .topFairInfoDate span
    {
        font-size: 2.9166vw
    }
}
.topFairInfoBtn
{
    color: #aaa08c;
    font-family: petersburg-web,serif;
    font-weight: 400,700;
    font-style: normal,italic
}
@media only screen and (min-width: 499px)
{
    .topFairInfoBtn
    {
        font-size: 16px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topFairInfoBtn
    {
        font-size: 13px
    }
}
@media only screen and (max-width: 500px)
{
    .topFairInfoBtn
    {
        font-size: 3.2857vw
    }
}
.topFairInfoBtn:after
{
    content: "　";
    display: inline-block;
    background-image: url(assets/images/common/arw_btn_g.svg);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    margin-left: .8em;
    padding-top: .1em
}
@media only screen and (min-width: 499px)
{
    .topFairInfoBtn:after
    {
        width: 17px;
        height: 17px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topFairInfoBtn:after
    {
        width: 14px;
        height: 14px
    }
}
@media only screen and (max-width: 500px)
{
    .topFairInfoBtn:after
    {
        width: 3.2vw;
        height: 3.2vw
    }
}
.topFairInfoContentTtl
{
    font-weight: bold
}
@media only screen and (min-width: 499px)
{
    .topFairInfoContentTtl
    {
        font-size: 13px;
        line-height: 1.84615385
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topFairInfoContentTtl
    {
        font-size: 12px
    }
}
@media only screen and (max-width: 500px)
{
    .topFairInfoContentTtl
    {
        font-size: 3.3333vw;
        line-height: 1.6666
    }
}
@media only screen and (min-width: 499px)
{
    .topFairInfoContentComment
    {
        font-size: 13px;
        line-height: 1.84615385;
        margin-top: 8px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topFairInfoContentComment
    {
        font-size: 12px;
        margin-top: 7px
    }
}
.topFairEvent
{
    position: relative;
    -webkit-box-shadow: 3px 3px 0 0 rgba(60,80,100,.2);
    box-shadow: 3px 3px 0 0 rgba(60,80,100,.2);
    background-image: url(assets/images/common/bg_blue_noise.jpg);
    background-size: 200px 200px
}
@media only screen and (min-width: 499px)
{
    .topFairEvent
    {
        padding: 15px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        margin-top: 80px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topFairEvent
    {
        padding: 13px;
        margin-top: 66px
    }
}
@media only screen and (max-width: 500px)
{
    .topFairEvent
    {
        padding: 6.9444vw;
        margin-top: 8.3333vw;
        background-image: url(assets/images/common/bg_blue_noise_sp.jpg);
        background-size: 100px 100px
    }
}
.topFairEvent:before, .topFairEvent:after
{
    content: "　";
    position: absolute;
    z-index: 10;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain
}
@media only screen and (min-width: 499px)
{
    .topFairEvent:before, .topFairEvent:after
    {
        width: 77px;
        height: 77px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topFairEvent:before, .topFairEvent:after
    {
        width: 66px;
        height: 66px
    }
}
@media only screen and (max-width: 500px)
{
    .topFairEvent:before, .topFairEvent:after
    {
        width: 10.6944vw;
        height: 10.6944vw
    }
}
.topFairEvent:before
{
    background-image: url(assets/images/common/corner_left.svg)
}
@media only screen and (min-width: 499px)
{
    .topFairEvent:before
    {
        bottom: -15px;
        left: -15px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topFairEvent:before
    {
        bottom: -12px;
        left: -12px
    }
}
@media only screen and (max-width: 500px)
{
    .topFairEvent:before
    {
        bottom: -2.0833vw;
        left: -2.0833vw
    }
}
.topFairEvent:after
{
    background-image: url(assets/images/common/corner_right.svg)
}
@media only screen and (min-width: 499px)
{
    .topFairEvent:after
    {
        top: -15px;
        right: -15px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topFairEvent:after
    {
        top: -12px;
        right: -12px
    }
}
@media only screen and (max-width: 500px)
{
    .topFairEvent:after
    {
        top: -2.0833vw;
        right: -2.0833vw
    }
}
@media only screen and (min-width: 499px)
{
    .topFairEventImg
    {
        width: 43%
    }
}
.topFairEventContent
{
    text-align: center
}
@media only screen and (min-width: 499px)
{
    .topFairEventContent
    {
        width: 57%;
        padding: 25px 35px 25px 35px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topFairEventContent
    {
        padding: 21px 29px 21px 29px
    }
}
@media only screen and (max-width: 500px)
{
    .topFairEventContent
    {
        padding: 4.1666vw 0 0;
        text-align: left
    }
}
@media only screen and (min-width: 499px)
{
    .topFairEventContent h3
    {
        width: 433px;
        margin: 0 auto 20px
    }
}
@media only screen and (max-width: 500px)
{
    .topFairEventContent h3
    {
        width: 72.2222vw;
        margin: 0 auto 4.1666vw
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topFairEventContent .secLead
    {
        font-size: 18px;
        margin-bottom: 15px
    }
}
@media only screen and (max-width: 500px)
{
    .topFairEventContent .secLead
    {
        line-height: 1.6666;
        font-size: 3.6vw
    }
}
.topFairEventContent .topFairEventComment
{
    line-break: strict
}
@media only screen and (min-width: 499px)
{
    .topFairEventContent .topFairEventComment
    {
        font-size: 14px;
        line-height: 1.75
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topFairEventContent .topFairEventComment
    {
        font-size: 13px
    }
}
@media only screen and (max-width: 500px)
{
    .topFairEventContent .topFairEventComment
    {
        font-size: 3.2vw;
        line-height: 1.6666;
        letter-spacing: -.03em
    }
}
@media only screen and (min-width: 499px)
{
    .topFairSp
    {
        margin-top: 80px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topFairSp
    {
        margin-top: 60px
    }
}
@media only screen and (max-width: 500px)
{
    .topFairSp
    {
        margin-top: 8.3333vw
    }
}
.topFairSpLead
{
    font-weight: bold;
    letter-spacing: .12em
}
@media only screen and (min-width: 499px)
{
    .topFairSpLead
    {
        font-size: 18px;
        margin-bottom: 20px;
        line-height: 1.2
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topFairSpLead
    {
        font-size: 15px;
        margin-bottom: 16px
    }
}
@media only screen and (max-width: 500px)
{
    .topFairSpLead
    {
        font-size: 3.3333vw;
        margin-bottom: 2.1vw;
        line-height: 1.5
    }
}
.topFairSpLead .red
{
    display: inline-block
}
@media only screen and (min-width: 499px)
{
    .topFairSpLead .red
    {
        font-size: 144.4444%;
        margin: 0 .1em
    }
}
@media only screen and (max-width: 500px)
{
    .topFairSpLead .red
    {
        font-size: 5.8333vw
    }
}
@media only screen and (min-width: 499px)
{
    .topFairSpLead .small
    {
        font-size: 60%
    }
}
@media only screen and (max-width: 500px)
{
    .topFairSpLead .small
    {
        font-size: 4.1666vw
    }
}
@media only screen and (max-width: 500px)
{
    .topFairSpLead .smallSp
    {
        font-size: 4.1666vw
    }
}
.topFairSpComment
{
    margin-bottom: .5em
}
@media only screen and (min-width: 499px)
{
    .topFairSpComment
    {
        font-size: 13px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topFairSpComment
    {
        font-size: 12px
    }
}
@media only screen and (max-width: 500px)
{
    .topFairSpComment
    {
        font-size: 3.0555vw;
        line-height: 1.875
    }
}
.topFairSpComment:last-of-type
{
    margin-bottom: 0
}
@media only screen and (min-width: 499px)
{
    .topFairSpTable
    {
        margin-top: 25px;
        width: 92%
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topFairSpTable
    {
        margin-top: 21px
    }
}
@media only screen and (max-width: 500px)
{
    .topFairSpTable
    {
        margin-top: 3.4722vw;
        width: 100%;
        text-align: left
    }
}
.topFairSpTable th, .topFairSpTable td
{
    vertical-align: top;
    padding: 0 0 .5em
}
@media only screen and (min-width: 499px)
{
    .topFairSpTable th, .topFairSpTable td
    {
        font-size: 13px;
        line-height: 1.69
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topFairSpTable th, .topFairSpTable td
    {
        font-size: 12px
    }
}
@media only screen and (max-width: 500px)
{
    .topFairSpTable th, .topFairSpTable td
    {
        font-size: 3.05vw;
        line-height: 1.69
    }
}
@media only screen and (min-width: 499px)
{
    .topFairSpTable th
    {
        width: 13%
    }
}
@media only screen and (max-width: 500px)
{
    .topFairSpTable th
    {
        width: 28%
    }
}
@media only screen and (max-width: 500px)
{
    .topFairSpTable td.pbNonSP
    {
        padding-bottom: 0
    }
}
#topInfo
{
    background: #fff
}
@media only screen and (min-width: 499px)
{
    #topInfo .btn
    {
        margin-top: 60px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    #topInfo .btn
    {
        margin-top: 50px
    }
}
@media only screen and (max-width: 500px)
{
    #topInfo .btn
    {
        margin-top: 8.3333vw
    }
}
@media only screen and (min-width: 499px)
{
    .topInfoListWrap
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }
}
@media only screen and (min-width: 499px)
{
    .topInfoList
    {
        width: 47.96%;
        margin: 40px 4.08% 0 0
    }
    .topInfoList:nth-child(2n)
    {
        margin: 40px 0 0 0
    }
    .topInfoList:nth-child(1)
    {
        margin: 0 4.08% 0 0
    }
    .topInfoList:nth-child(2)
    {
        margin: 0 0 0 0
    }
}
@media only screen and (max-width: 500px)
{
    .topInfoList
    {
        margin-bottom: 5.5555vw
    }
    .topInfoList:last-child
    {
        margin-bottom: 0
    }
}
.topInfoList a
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    position: relative
}
@media only screen and (min-width: 499px)
{
    .topInfoList a
    {
        -webkit-transition: opacity .2s ease 0s;
        transition: opacity .2s ease 0s;
        cursor: pointer
    }
    .topInfoList a:hover
    {
        opacity: .7
    }
}
@media only screen and (min-width: 499px)
{
    .topInfoTh
    {
        width: 38.3%
    }
}
@media only screen and (max-width: 500px)
{
    .topInfoTh
    {
        width: 29.9%
    }
}
.topInfoTh figure
{
    display: block;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    height: 0;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    width: 100%
}
@media only screen and (min-width: 499px)
{
    .topInfoTh figure
    {
        padding-bottom: 66.6666%
    }
}
@media only screen and (max-width: 500px)
{
    .topInfoTh figure
    {
        padding-bottom: 100%
    }
}
@media only screen and (min-width: 499px)
{
    .topInfoContent
    {
        width: 55.32%;
        padding-top: 7px
    }
}
@media only screen and (max-width: 500px)
{
    .topInfoContent
    {
        width: 65.6%;
        padding-top: 1.3888vw
    }
}
.infoNewBadge
{
    position: absolute;
    z-index: 10
}
@media only screen and (min-width: 499px)
{
    .infoNewBadge
    {
        width: 55px;
        height: auto;
        top: -10px;
        left: -7px
    }
}
@media only screen and (max-width: 500px)
{
    .infoNewBadge
    {
        width: 11.0916vw;
        height: auto;
        top: -2.7777vw;
        left: -1.2888vw
    }
}
.topInfoContentTop
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}
@media only screen and (min-width: 499px)
{
    .topInfoContentTop
    {
        margin-bottom: 15px
    }
}
@media only screen and (max-width: 500px)
{
    .topInfoContentTop
    {
        margin-bottom: 2vw
    }
}
.topInfoDate
{
    padding-right: .5em;
    border-right: 1px solid #282f37;
    font-weight: bold;
    letter-spacing: .08em
}
@media only screen and (min-width: 499px)
{
    .topInfoDate
    {
        font-size: 16px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topInfoDate
    {
        font-size: 13px
    }
}
@media only screen and (max-width: 500px)
{
    .topInfoDate
    {
        font-size: 3.1944vw
    }
}
@media only screen and (min-width: 499px)
{
    .topInfoDate span
    {
        font-size: 14px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topInfoDate span
    {
        font-size: 12px
    }
}
@media only screen and (max-width: 500px)
{
    .topInfoDate span
    {
        font-size: 2.7777vw
    }
}
.topInfoCat
{
    padding-left: 1.4em;
    letter-spacing: .08em
}
@media only screen and (min-width: 499px)
{
    .topInfoCat
    {
        font-size: 15px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topInfoCat
    {
        font-size: 13px
    }
}
@media only screen and (max-width: 500px)
{
    .topInfoCat
    {
        font-size: 3.1944vw
    }
}
@media only screen and (min-width: 499px)
{
    .topContentDiscription
    {
        line-height: 2
    }
}
@media only screen and (max-width: 500px)
{
    .topContentDiscription
    {
        line-height: 1.6666
    }
}
.topContentReadMore
{
    position: absolute;
    right: 0;
    letter-spacing: .05em;
    font-family: petersburg-web,serif;
    font-weight: 400,700;
    font-style: normal,italic
}
@media only screen and (min-width: 499px)
{
    .topContentReadMore
    {
        bottom: .5em
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topContentReadMore
    {
        bottom: .5em
    }
}
@media only screen and (max-width: 500px)
{
    .topContentReadMore
    {
        bottom: 0
    }
}
.topContentReadMore:after
{
    content: "　";
    display: inline-block;
    background-image: url(assets/images/common/arw_btn.svg);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    margin-left: .4em
}
@media only screen and (min-width: 499px)
{
    .topContentReadMore:after
    {
        width: 17px;
        height: 14px
    }
    .topIntroduction {
        margin-top: 50px;
        text-align: center;
    }
    .topIntroduction img {
        width: 720px;
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topContentReadMore:after
    {
        width: 14px;
        height: 12px
    }
}
@media only screen and (max-width: 500px)
{
    .topContentReadMore:after
    {
        width: 3.2vw;
        height: 3.333vw
    }
    .topIntroduction {
        margin-top: 30px;
    }
}

.topImage2
{
    width: 100%;
    height: 0;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    background-size: cover;
    background-position: center
}
@media only screen and (min-width: 499px)
{
    .topImage2
    {
        background-image: url(assets/images/top/top_img2_pc.jpg);
        background-attachment: fixed;
        padding-bottom: 43.055%
    }
}
@media only screen and (max-width: 500px)
{
    .topImage2
    {
        background-image: url(assets/images/top/top_img2_sp.jpg);
        padding-bottom: 41.666%
    }
}
.tb .topImage2
{
    background-attachment: scroll
}
.facilityContent dl:first-child
{
    border-bottom: none !important
}
@media only screen and (min-width: 499px)
{
    .facilityContent
    {
        margin-bottom: 60px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .facilityContent
    {
        margin-bottom: 50px
    }
}
@media only screen and (max-width: 500px)
{
    .facilityContent
    {
        margin-bottom: 8.3333vw;
        padding-left: 8.7vw;
        padding-right: 8.7vw
    }
    .facilityContent dl:last-child
    {
        padding: 0
    }
}
@media only screen and (max-width: 320px)
{
    .facilityContent
    {
        padding-left: 7.5vw;
        padding-right: 7.5vw
    }
}
.facilityTable
{
    width: 100%
}
.facilityTable th
{
    font-weight: normal
}
@media only screen and (min-width: 499px)
{
    .facilityTable th
    {
        width: 46%;
        letter-spacing: .16em
    }
}
@media only screen and (max-width: 500px)
{
    .facilityTable th
    {
        width: 33%
    }
}
@media only screen and (max-width: 320px)
{
    .facilityTable th
    {
        width: 40%
    }
}
.facilityTable th span
{
    display: inline-block;
    font-size: 87%;
    margin-right: .2em
}
.facilityTable td
{
    padding-top: .3em !important;
    text-align: left;
    font-family: "游ゴシック","Yu Gothic",YuGothic,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ ゴシック",sans-serif
}
@media only screen and (min-width: 499px)
{
    .facilityTable td
    {
        width: 54%
    }
}
@media only screen and (max-width: 500px)
{
    .facilityTable td
    {
        width: 67%
    }
}
@media only screen and (max-width: 320px)
{
    .facilityTable td
    {
        width: 60%
    }
}
@media only screen and (min-width: 499px)
{
    .facilityTable th, .facilityTable td
    {
        padding: 0 0 10px;
        font-size: 13px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .facilityTable th, .facilityTable td
    {
        padding: 0 0 8px;
        font-size: 11px
    }
}
@media only screen and (max-width: 500px)
{
    .facilityTable th, .facilityTable td
    {
        padding: 0 0 2.0833vw;
        font-size: 2.7777vw;
        letter-spacing: .12em
    }
}
.facilityTable tr:last-child th, .facilityTable tr:last-child td
{
    padding: 0
}
.facilityPoint
{
    color: #aaa08c
}
@media only screen and (min-width: 499px)
{
    .facilityPoint
    {
        font-size: 20px;
        margin-bottom: 15px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .facilityPoint
    {
        font-size: 16px;
        margin-bottom: 12px
    }
}
@media only screen and (max-width: 500px)
{
    .facilityPoint
    {
        font-size: 4.2857vw;
        margin-bottom: 3.75vw
    }
}
@media only screen and (min-width: 499px)
{
    .facilityList
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }
}
@media only screen and (max-width: 500px)
{
    .facilityList
    {
        text-align: left
    }
}
@media only screen and (min-width: 499px)
{
    .facilityList li
    {
        line-height: 1.69;
        margin-right: 2em;
        font-size: 13px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .facilityList li
    {
        font-size: 11px;
        margin-right: 1em
    }
}
@media only screen and (max-width: 500px)
{
    .facilityList li
    {
        font-size: 2.7777vw;
        display: inline;
        line-height: 1.8
    }
    .facilityList li span
    {
        display: inline-block
    }
}
.underSecMinvBg
{
    width: 100%;
    height: 0;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center
}
@media only screen and (min-width: 499px)
{
    .underSecMinvBg
    {
        padding-bottom: 45.8333%;
        background-attachment: fixed
    }
}
@media only screen and (max-width: 500px)
{
    .underSecMinvBg
    {
        padding-bottom: 72.5%
    }
}
.tb .underSecMinvBg
{
    background-attachment: scroll
}
#courtYard
{
    background: #fff
}
@media only screen and (min-width: 499px)
{
    #courtYard
    {
        padding: 130px 0 290px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    #courtYard
    {
        padding: 107px 0 239px
    }
}
@media only screen and (max-width: 500px)
{
    #courtYard
    {
        padding: 24.7222vw 0 63.7777vw
    }
}
.courtYardInner
{
    position: relative
}
@media only screen and (min-width: 499px)
{
    .courtYardInner
    {
        background: #e6e6dc;
        padding-bottom: 256px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .courtYardInner
    {
        padding-bottom: 211px
    }
}
@media only screen and (max-width: 500px)
{
    .courtYardInner
    {
        background: #f5f3ee;
        padding-bottom: 29.1666vw
    }
}
.courtYardInnersec1
{
    margin: 0 auto;
    position: relative
}
@media only screen and (min-width: 499px)
{
    .courtYardInnersec1
    {
        width: 100%;
        max-width: 1240px;
        min-width: 1024px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .courtYardInnersec1
    {
        width: 1024px
    }
}
@media only screen and (max-width: 500px)
{
    .courtYardInnersec1
    {
        width: 88.8888vw
    }
}
.courtYardMainv
{
    position: relative
}
@media only screen and (min-width: 499px)
{
    .courtYardMainv
    {
        width: 850px;
        margin-top: -50px;
        margin-right: -100px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .courtYardMainv
    {
        width: 701px;
        margin-top: -41px;
        margin-right: -82px
    }
}
@media only screen and (max-width: 500px)
{
    .courtYardMainv
    {
        width: 94.4444vw;
        top: -11.1111vw;
        margin-left: -5.5555vw;
        margin-bottom: 7vw
    }
}
.courtYardMainv p
{
    font-family: 'Italianno',cursive;
    color: #aaa08c;
    display: inline-block;
    position: absolute
}
@media only screen and (min-width: 499px)
{
    .courtYardMainv p
    {
        -webkit-transform: rotate(-5deg) translate(-15%,70%);
        transform: rotate(-5deg) translate(-15%,70%);
        font-size: 92px;
        left: 50%;
        bottom: 0
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .courtYardMainv p
    {
        font-size: 76px
    }
}
@media only screen and (max-width: 500px)
{
    .courtYardMainv p
    {
        -webkit-transform: rotate(-5deg) translate(-10%,50%);
        transform: rotate(-5deg) translate(-10%,50%);
        font-size: 13.8888vw;
        bottom: 0;
        right: 0
    }
}
@media only screen and (min-width: 499px)
{
    .courtYardContent
    {
        position: absolute;
        width: 460px;
        top: 106px;
        left: 28px;
        text-align: left
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .courtYardContent
    {
        width: 380px;
        top: 87px;
        left: 23px
    }
}
@media only screen and (min-width: 499px)
{
    .courtYardContent .secTtl
    {
        text-align: left
    }
}
@media only screen and (min-width: 499px)
{
    .courtYardContent .secLead
    {
        text-align: left;
        margin-bottom: 35px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .courtYardContent .secLead
    {
        margin-bottom: 29px
    }
}
@media only screen and (max-width: 500px)
{
    .courtYardContent .secLead
    {
        letter-spacing: -.02em;
        font-size: 4.3vw
    }
    .courtYardContent .secLead .small
    {
        letter-spacing: -.04em
    }
}
@media only screen and (min-width: 499px)
{
    .courtYardContent .secComment
    {
        text-align: left;
        padding-right: 120px;
        margin-bottom: 0
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .courtYardContent .secComment
    {
        padding-right: 99px
    }
}
@media only screen and (max-width: 500px)
{
    .courtYardContent .secComment
    {
        text-align: left;
        letter-spacing: .07em
    }
}
@media only screen and (max-width: 500px)
{
    .courtYardInnersec2
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        position: absolute;
        bottom: -13.8888vw;
        left: 5.5555vw
    }
}
@media only screen and (min-width: 499px)
{
    .courtYardImg2
    {
        position: absolute;
        width: 448px;
        height: auto;
        top: 100px;
        left: 0
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .courtYardImg2
    {
        width: 370px;
        height: auto;
        top: 82px;
        left: 50px
    }
}
@media only screen and (max-width: 500px)
{
    .courtYardImg2
    {
        width: 53.8888vw;
        height: auto
    }
}
@media only screen and (min-width: 499px)
{
    .courtYardImg3
    {
        position: absolute;
        width: 258px;
        height: auto;
        top: 212px;
        left: 490px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .courtYardImg3
    {
        width: 213px;
        height: auto;
        top: 175px;
        left: 454px
    }
}
@media only screen and (max-width: 500px)
{
    .courtYardImg3
    {
        width: 31.25vw;
        height: auto;
        margin-left: 12px;
        margin-top: 13.9166vw
    }
}
@media only screen and (min-width: 499px)
{
    .courtYardImg4
    {
        position: absolute;
        width: 448px;
        height: auto;
        top: 130px;
        left: 800px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .courtYardImg4
    {
        width: 340px;
        height: auto;
        top: 100px;
        left: 680px;
    }
}
@media only screen and (max-width: 500px)
{
    .courtYardImg4
    {
        width: 54.25vw;
        height: auto;
        left: 18vw;
        position: absolute;
        top: 49vw;
    }
}
@media only screen and (min-width: 499px)
{
    #banquetArea .underSecMinvBg
    {
        background-image: url(assets/images/wedding_stage/banquet_bg_pc.jpg)
    }
}
@media only screen and (max-width: 500px)
{
    #banquetArea .underSecMinvBg
    {
        background-image: url(assets/images/wedding_stage/banquet_bg_sp.jpg)
    }
}
@media only screen and (max-width: 500px)
{
    #banquetArea .secLead
    {
        letter-spacing: -.06em;
        font-size: 4.35vw
    }
}
#facility
{
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: top
}
@media only screen and (min-width: 499px)
{
    #facility
    {
        background-image: url(assets/images/wedding_stage/facility_bg_pc.jpg);
        padding-bottom: 154px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    #facility
    {
        padding-bottom: 127px
    }
}
@media only screen and (max-width: 500px)
{
    #facility
    {
        background-image: url(assets/images/wedding_stage/facility_bg_sp.jpg);
        padding-bottom: 10.8333vw
    }
}
#facility .secComment
{
    margin-bottom: 0
}
@media only screen and (min-width: 499px)
{
    .facilityTop
    {
        padding-top: 125px;
        padding-bottom: 135px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .facilityTop
    {
        padding-top: 103px;
        padding-bottom: 111px
    }
}
@media only screen and (max-width: 500px)
{
    .facilityTop
    {
        padding-top: 13.8888vw;
        padding-bottom: 10.4166vw
    }
}
@media only screen and (max-width: 500px)
{
    .facilityTop .secComment
    {
        text-align: left
    }
}
.facilitySliderWrap
{
    position: relative
}
@media only screen and (max-width: 500px)
{
    .facilitySliderWrap
    {
        width: 83vw;
        margin: 0 auto
    }
}
.facilitySliderImg
{
    position: relative
}
@media only screen and (min-width: 499px)
{
    .facilitySliderImg
    {
        width: 1210px;
        left: -230px;
        padding-bottom: 36px;
        border-bottom: 1px dotted #282f37
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .facilitySliderImg
    {
        width: 998px;
        left: -190px;
        padding-bottom: 30px
    }
}
@media only screen and (max-width: 500px)
{
    .facilitySliderImg
    {
        vertical-align: bottom;
        margin-bottom: -2px
    }
}
@media only screen and (max-width: 500px)
{
    .facilitySliderImgItem
    {
        color: #fff;
        position: relative;
        padding-top: 1.8vw
    }
}
@media only screen and (min-width: 499px)
{
    .facilitySliderTxtWrap
    {
        position: absolute;
        width: 640px;
        top: 386px;
        right: -230px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .facilitySliderTxtWrap
    {
        width: 528px;
        top: 318px;
        right: -100px
    }
}
@media only screen and (max-width: 500px)
{
    .facilitySliderTxtWrap
    {
        position: relative
    }
}
.facilitySliderTxt
{
    position: relative
}
@media only screen and (max-width: 500px)
{
    .facilitySliderTxt *
    {
        overflow: auto !important
    }
}
.facilitySliderTxtItem
{
    position: relative;
    background: rgba(60,80,100,.95);
    text-align: left;
    color: #fff
}
@media only screen and (min-width: 499px)
{
    .facilitySliderTxtItem
    {
        padding: 90px 156px 60px;
        margin-top: 10px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .facilitySliderTxtItem
    {
        padding: 74px 120px 49px;
        margin-top: 8px
    }
}
@media only screen and (max-width: 500px)
{
    .facilitySliderTxtItem
    {
        padding: 6.9444vw 9vw
    }
}
.facilitySliderRibbon
{
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    text-align: center;
    position: absolute;
    z-index: 300
}
@media only screen and (min-width: 499px)
{
    .facilitySliderRibbon
    {
        background-image: url(assets/images/common/ribbon_bg_facility_pc.svg);
        top: 0;
        left: 50px;
        margin-top: -10px;
        width: 65px;
        height: 130px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .facilitySliderRibbon
    {
        left: 41px;
        margin-top: -8px;
        width: 60px;
        height: 107px
    }
}
@media only screen and (max-width: 500px)
{
    .facilitySliderRibbon
    {
        background-image: url(assets/images/common/ribbon_bg_facility_sp.svg);
        top: 0;
        left: 5.5555vw;
        width: 16.6666vw;
        height: 23.1644vw
    }
}
.facilitySliderRibbon .cur
{
    -webkit-transform: rotate(-8deg) translateX(-50%);
    transform: rotate(-8deg) translateX(-50%);
    position: absolute;
    left: 50%;
    font-family: 'Italianno',cursive
}
@media only screen and (min-width: 499px)
{
    .facilitySliderRibbon .cur
    {
        font-size: 37px;
        top: 25px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .facilitySliderRibbon .cur
    {
        font-size: 30px;
        top: 20px
    }
}
@media only screen and (max-width: 500px)
{
    .facilitySliderRibbon .cur
    {
        font-size: 8.6111vw;
        top: 3vw
    }
}
.facilitySliderRibbon .num
{
    font-weight: bold;
    letter-spacing: .1em
}
@media only screen and (min-width: 499px)
{
    .facilitySliderRibbon .num
    {
        font-size: 32px;
        margin-top: 70px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .facilitySliderRibbon .num
    {
        font-size: 26px;
        margin-top: 57px
    }
}
@media only screen and (max-width: 500px)
{
    .facilitySliderRibbon .num
    {
        font-size: 5.6944vw;
        margin-top: 12.5vw
    }
}
.facilitySliderTtl
{
    font-weight: bold
}
@media only screen and (min-width: 499px)
{
    .facilitySliderTtl
    {
        font-size: 17px;
        margin-bottom: 25px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .facilitySliderTtl
    {
        font-size: 14px;
        margin-bottom: 20px
    }
}
@media only screen and (max-width: 500px)
{
    .facilitySliderTtl
    {
        font-size: 3.0555vw;
        margin-bottom: 1.3888vw
    }
}
.facilitySliderLead
{
    text-align: left
}
.facilitySliderComment
{
    text-align: left
}
.arwPrvW, .arwNxtW
{
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    z-index: 20
}
@media only screen and (min-width: 499px)
{
    .arwPrvW, .arwNxtW
    {
        -webkit-transition: opacity .2s ease 0s;
        transition: opacity .2s ease 0s;
        cursor: pointer
    }
    .arwPrvW:hover, .arwNxtW:hover
    {
        opacity: .7
    }
}
@media only screen and (min-width: 499px)
{
    .arwPrvW, .arwNxtW
    {
        background-position: center;
        top: 50%;
        -webkit-transform: translate(0,-50%);
        transform: translate(0,-50%);
        width: 38px;
        height: 40px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .arwPrvW, .arwNxtW
    {
        width: 35px;
        height: 35px
    }
}
@media only screen and (max-width: 500px)
{
    .arwPrvW, .arwNxtW
    {
        width: 10.8333vw;
        height: 9.7222vw;
        bottom: 100%;
        background: #3c5064;
        text-align: center;
        color: #fff;
        padding-top: 1vw
    }
    .arwPrvW:before, .arwNxtW:before
    {
        content: " ";
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        display: inline-block;
        width: 6.25vw;
        height: 1.8958vw
    }
    .arwPrvW:after, .arwNxtW:after
    {
        display: inline-block;
        font-size: 2.2222vw;
        font-family: petersburg-web,serif;
        font-weight: 400,700;
        font-style: normal,italic
    }
}
@media only screen and (min-width: 499px)
{
    .arwPrvW
    {
        background-image: url(assets/images/common/arw_prv_w.svg);
        left: 80px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .arwPrvW
    {
        left: 66px
    }
}
@media only screen and (max-width: 500px)
{
    .arwPrvW
    {
        right: 10.8333vw
    }
    .arwPrvW:before
    {
        background-image: url(assets/images/common/arw_prv_w.svg)
    }
    .arwPrvW:after
    {
        content: "BACK"
    }
}
@media only screen and (min-width: 499px)
{
    .arwNxtW
    {
        background-image: url(assets/images/common/arw_nxt_w.svg);
        right: 80px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .arwNxtW
    {
        right: 66px
    }
}
@media only screen and (max-width: 500px)
{
    .arwNxtW
    {
        right: 0
    }
    .arwNxtW:before
    {
        background-image: url(assets/images/common/arw_nxt_w.svg)
    }
    .arwNxtW:after
    {
        content: "NEXT"
    }
}
#cuisine .underSectionInnerFirst .secTtl
{
    margin-bottom: 0
}
@media only screen and (min-width: 499px)
{
    .cuisineFeatureArea .underSectionContent
    {
        padding-top: 30px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .cuisineFeatureArea .underSectionContent
    {
        padding-top: 25px
    }
    .cuisineFeatureArea .underSectionContent .inner
    {
        width: 100%;
        padding-left: 0;
        padding-right: 0
    }
}
@media only screen and (max-width: 500px)
{
    .cuisineFeatureArea .underSectionContent
    {
        padding-top: 1.5vw
    }
    .cuisineFeatureArea .underSectionContent .inner
    {
        width: 100%
    }
}
.cuisineFeature
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    position: relative
}
@media only screen and (min-width: 499px)
{
    .cuisineFeature
    {
        margin-bottom: 55px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .cuisineFeature
    {
        margin-bottom: 45px
    }
}
@media only screen and (max-width: 500px)
{
    .cuisineFeature
    {
        margin-bottom: 10.8333vw;
        right: -5.5555vw
    }
}
.cuisineFeature:last-child
{
    margin-bottom: 0
}
@media only screen and (max-width: 500px)
{
    .cuisineFeature:nth-child(2n)
    {
        right: 0;
        left: -5.5555vw
    }
}
.cuisineFeature:nth-child(2n) .cuisineFeatureTxtWap
{
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2
}
@media only screen and (min-width: 499px)
{
    .cuisineFeature:nth-child(2n) .cuisineFeatureTxtWap
    {
        margin-top: 30px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .cuisineFeature:nth-child(2n) .cuisineFeatureTxtWap
    {
        margin-top: 25px
    }
}
@media only screen and (max-width: 500px)
{
    .cuisineFeature:nth-child(2n) .cuisineFeatureTxtWap
    {
        margin-top: 5.5555vw;
        padding-left: 6.25vw
    }
    .cuisineFeature:nth-child(2n) .cuisineFeatureTxtWap .secLead
    {
        width: 120%;
        letter-spacing: -.03em
    }
    .cuisineFeature:nth-child(2n) .cuisineFeatureTxtWap .secComment
    {
        padding-right: 0
    }
    .cuisineFeature:nth-child(2n) .cuisineFeatureTxtWap .FeatureCur
    {
        padding-right: 0
    }
}
.cuisineFeature:nth-child(2n) .cuisineFeatureImg
{
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
    margin-top: 0
}
@media only screen and (min-width: 499px)
{
    .cuisineFeatureTxtWap
    {
        width: 390px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .cuisineFeatureTxtWap
    {
        width: 322px
    }
}
@media only screen and (max-width: 500px)
{
    .cuisineFeatureTxtWap
    {
        width: 56.5277vw
    }
}
.cuisineFeatureTxtWap .secLead
{
    text-align: left
}
@media only screen and (min-width: 499px)
{
    .cuisineFeatureTxtWap .secLead
    {
        font-size: 22px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .cuisineFeatureTxtWap .secLead
    {
        font-size: 18px
    }
}
@media only screen and (max-width: 500px)
{
    .cuisineFeatureTxtWap .secLead
    {
        font-size: 3.6111vw;
        line-height: 1.923;
        margin-bottom: 1vw
    }
}
.cuisineFeatureTxtWap .secComment
{
    text-align: left
}
@media only screen and (min-width: 499px)
{
    .cuisineFeatureTxtWap .secComment
    {
        padding-right: 80px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .cuisineFeatureTxtWap .secComment
    {
        padding-right: 66px
    }
}
@media only screen and (max-width: 500px)
{
    .cuisineFeatureTxtWap .secComment
    {
        line-height: 1.8181;
        font-size: 3.0555vw;
        padding-right: 6.25vw;
        letter-spacing: -.05em
    }
}
.FeatureCur
{
    text-align: right
}
@media only screen and (min-width: 499px)
{
    .FeatureCur
    {
        margin-top: -30px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .FeatureCur
    {
        margin-top: -25px
    }
}
@media only screen and (max-width: 500px)
{
    .FeatureCur
    {
        margin-top: -5vw;
        padding-right: 6.25vw
    }
}
.FeatureCur .en
{
    color: #aaa08c;
    -webkit-transform: rotate(-5deg);
    transform: rotate(-5deg);
    display: inline-block;
    margin-bottom: -.2em;
    font-family: 'Italianno',cursive
}
@media only screen and (min-width: 499px)
{
    .FeatureCur .en
    {
        font-size: 75px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .FeatureCur .en
    {
        font-size: 62px
    }
}
@media only screen and (max-width: 500px)
{
    .FeatureCur .en
    {
        font-size: 10.4166vw
    }
}
.FeatureCur .jp
{
    display: block;
    font-weight: bold
}
@media only screen and (max-width: 500px)
{
    .FeatureCur .jp
    {
        font-size: 3.1944vw
    }
}
.FeatureCur.FeatureCurDown .en
{
    margin-bottom: .1em
}
.cuisineFeatureImg
{
    position: relative
}
.cuisineFeatureImg img
{
    position: relative;
    z-index: 20
}
@media only screen and (min-width: 499px)
{
    .cuisineFeatureImg
    {
        width: 545px;
        margin-top: 35px
    }
    .cuisineFeatureImg:after
    {
        content: " ";
        position: absolute;
        display: block;
        background: #edecec;
        width: 100%;
        height: 0;
        -webkit-box-sizing: content-box;
        box-sizing: content-box;
        padding-bottom: 56.273%;
        z-index: 10;
        top: 8px;
        left: 8px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .cuisineFeatureImg
    {
        width: 450px;
        margin-top: 29px
    }
}
@media only screen and (max-width: 500px)
{
    .cuisineFeatureImg
    {
        width: 38.75vw;
        margin-top: 5.5555vw
    }
}
.originalMenuWrap
{
    position: relative
}
@media only screen and (min-width: 499px)
{
    .originalMenuWrap
    {
        padding: 5px;
        background-image: url(assets/images/common/bg_blue_noise.jpg);
        background-size: 200px 200px
    }
}
@media only screen and (max-width: 500px)
{
    .originalMenuWrap
    {
        padding: 1.3888vw;
        background-image: url(assets/images/common/bg_blue_noise_sp.jpg);
        background-size: 100px 100px
    }
}
.originalMenuWrap:before, .originalMenuWrap:after
{
    content: "　";
    position: absolute;
    z-index: 10;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain
}
@media only screen and (min-width: 499px)
{
    .originalMenuWrap:before, .originalMenuWrap:after
    {
        width: 77px;
        height: 77px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .originalMenuWrap:before, .originalMenuWrap:after
    {
        width: 66px;
        height: 66px
    }
}
@media only screen and (max-width: 500px)
{
    .originalMenuWrap:before, .originalMenuWrap:after
    {
        width: 10.8333vw;
        height: 10.8333vw
    }
}
@media only screen and (min-width: 499px)
{
    .originalMenuWrap:before
    {
        background-image: url(assets/images/common/corner_left_w_pc.svg);
        bottom: -15px;
        left: -15px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .originalMenuWrap:before
    {
        bottom: -12px;
        left: -12px
    }
}
@media only screen and (max-width: 500px)
{
    .originalMenuWrap:before
    {
        background-image: url(assets/images/common/corner_left_w_sp.svg);
        bottom: -2.0833vw;
        left: -2.0833vw
    }
}
@media only screen and (min-width: 499px)
{
    .originalMenuWrap:after
    {
        background-image: url(assets/images/common/corner_right_w_pc.svg);
        top: -15px;
        right: -15px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .originalMenuWrap:after
    {
        top: -12px;
        right: -12px
    }
}
@media only screen and (max-width: 500px)
{
    .originalMenuWrap:after
    {
        background-image: url(assets/images/common/corner_right_w_sp.svg);
        top: -2.3611vw;
        right: -2.3611vw
    }
}
.originalMenu
{
    position: relative;
    border: 1px solid rgba(145,161,140,.5)
}
@media only screen and (min-width: 499px)
{
    .originalMenu
    {
        padding: 36px 85px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between
    }
}
@media only screen and (max-width: 500px)
{
    .originalMenu
    {
        padding: 4.7222vw 4.7222vw 9.7222vw
    }
}
.originalMenuImg
{
    position: relative
}
@media only screen and (min-width: 499px)
{
    .originalMenuImg
    {
        width: 49%
    }
}
@media only screen and (max-width: 500px)
{
    .originalMenuImg
    {
        margin-bottom: 5.5555vw
    }
}
.originalMenuImg p
{
    position: absolute;
    color: #f7f7f3;
    -webkit-transform: rotate(-6deg);
    transform: rotate(-6deg);
    font-family: 'Italianno',cursive
}
@media only screen and (min-width: 499px)
{
    .originalMenuImg p
    {
        bottom: -10px;
        right: 10px;
        font-size: 59px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .originalMenuImg p
    {
        font-size: 48px;
        bottom: -8px;
        right: 8px
    }
}
@media only screen and (max-width: 500px)
{
    .originalMenuImg p
    {
        font-size: 11.1111vw;
        bottom: 0;
        right: 0
    }
}
.originalMenuContent
{
    text-align: center
}
@media only screen and (min-width: 499px)
{
    .originalMenuContent
    {
        width: 42%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
}
@media only screen and (max-width: 500px)
{
    .originalMenuContent
    {
        text-align: left
    }
}
.originalMenuContent h3
{
    text-align: center;
    font-family: petersburg-web,serif;
    font-weight: 400,700;
    font-style: normal,italic
}
@media only screen and (min-width: 499px)
{
    .originalMenuContent h3
    {
        font-size: 28px;
        letter-spacing: .12em;
        margin-bottom: 30px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .originalMenuContent h3
    {
        font-size: 23px;
        margin-bottom: 25px
    }
}
@media only screen and (max-width: 500px)
{
    .originalMenuContent h3
    {
        font-size: 5.8333vw;
        margin-bottom: 5.5555vw
    }
}
.originalMenuContent h3:after
{
    content: "　";
    height: 1px;
    background: #aaa08c;
    display: block;
    margin: 0 auto
}
@media only screen and (min-width: 499px)
{
    .originalMenuContent h3:after
    {
        width: 34px;
        margin-top: 30px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .originalMenuContent h3:after
    {
        width: 28px;
        margin-top: 25px
    }
}
@media only screen and (max-width: 500px)
{
    .originalMenuContent h3:after
    {
        width: 7.0833vw;
        margin-top: 5.5555vw
    }
}
@media only screen and (max-width: 500px)
{
    .originalMenuContent .secLead
    {
        line-height: 1.6666
    }
}
.originalMenuContent .secComment
{
    line-break: strict;
    text-align: left;
    margin-bottom: 0
}
@media only screen and (min-width: 499px)
{
    .originalMenuContent .secComment
    {
        letter-spacing: .07em;
        line-height: 2
    }
}
@media only screen and (max-width: 500px)
{
    .originalMenuContent .secComment
    {
        font-size: 3.3333vw;
        line-height: 1.6666
    }
}
.originalMenuContentInner
{
    max-width: 100%
}
#sweets
{
    width: 100%;
    margin: 0 auto;
    background: #fff
}
@media only screen and (min-width: 499px)
{
    #sweets
    {
        min-width: 1024px
    }
}
.sweets_img1
{
    vertical-align: bottom
}
@media only screen and (min-width: 499px)
{
    .sweetsFlex
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between
    }
}
@media only screen and (min-width: 499px)
{
    .sweetsFlexImg
    {
        width: 20.69%
    }
}
@media only screen and (min-width: 499px)
{
    .sweetsFlexContent
    {
        width: 58.33%
    }
}
@media only screen and (max-width: 500px)
{
    .sweetsFlexContent .secLead
    {
        letter-spacing: -.05em
    }
}
.sweetsFlexContent .secComment
{
    margin-bottom: 0
}
@media only screen and (max-width: 500px)
{
    .sweetsFlexContent .secComment
    {
        text-align: left;
        padding: 0 .8em;
        letter-spacing: -.04em
    }
}
.sweetsFlexContentWrap
{
    background: #fff
}
@media only screen and (min-width: 499px)
{
    .sweetsFlexContentWrap
    {
        padding: 5px;
        margin-bottom: 2px
    }
}
@media only screen and (max-width: 500px)
{
    .sweetsFlexContentWrap
    {
        padding: 1.3888vw
    }
}
.sweetsFlexContentWrap2
{
    border: 1px solid #aaa08c
}
@media only screen and (min-width: 499px)
{
    .sweetsFlexContentWrap2
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
}
@media only screen and (max-width: 500px)
{
    .sweetsFlexContentWrap2
    {
        padding: 11.1111vw 6.5vw
    }
}
#access .secTtl
{
    margin-bottom: 0
}
.accessMap
{
    position: relative
}
.mapTtl
{
    text-align: center;
    position: relative;
    margin-bottom: 5.5555vw
}
.mapTtl span
{
    color: #3c5064;
    font-weight: bold;
    font-size: 3.6111vw;
    position: relative;
    z-index: 20;
    display: inline-block;
    padding: 0 1.4em;
    background: #fff
}
.mapTtl:after
{
    content: " ";
    width: 100%;
    height: 1px;
    background: #afa18c;
    display: block;
    position: absolute;
    left: 0;
    top: 50%;
    z-index: 10
}
@media only screen and (min-width: 499px)
{
    .map1
    {
        width: 690px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .map1
    {
        width: 570px
    }
}
@media only screen and (max-width: 500px)
{
    .map1
    {
        margin-bottom: 9vw
    }
}
@media only screen and (min-width: 499px)
{
    .map2
    {
        position: absolute;
        width: 491px;
        right: 0;
        bottom: 0;
        z-index: 10
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .map2
    {
        width: 404px
    }
}
@media only screen and (min-width: 499px)
{
    .mapBtn
    {
        padding-left: 4.4444%
    }
}
.mapTxt
{
    border-left: 2px solid #aaa08c
}
@media only screen and (min-width: 499px)
{
    .mapTxt
    {
        padding-left: 17px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .mapTxt
    {
        padding-left: 14px
    }
}
@media only screen and (max-width: 500px)
{
    .mapTxt
    {
        width: 76.3888vw;
        margin: 11.1111vw auto 0;
        padding-left: 4.1666vw
    }
}
.mapTxt h3
{
    color: #3c5064;
    font-weight: bold
}
@media only screen and (min-width: 499px)
{
    .mapTxt h3
    {
        font-size: 18px;
        margin-bottom: 10px;
        letter-spacing: .12em
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .mapTxt h3
    {
        font-size: 15px;
        margin-bottom: 8px
    }
}
@media only screen and (max-width: 500px)
{
    .mapTxt h3
    {
        font-size: 3.6111vw;
        margin-bottom: 4.1666vw
    }
}
@media only screen and (min-width: 499px)
{
    .mapTxt p
    {
        font-weight: bold;
        font-size: 13px;
        margin-bottom: 25px;
        line-height: 1.8461
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .mapTxt p
    {
        font-size: 11px;
        margin-bottom: 20px
    }
}
@media only screen and (max-width: 500px)
{
    .mapTxt p
    {
        font-size: 3vw;
        margin-bottom: 5.5555vw;
        line-height: 1.8181
    }
}
.mapTxt p:last-child
{
    margin-bottom: 0
}
.mapTxt p a
{
    color: #aaa08c;
    text-decoration: underline
}
@media only screen and (min-width: 499px)
{
    .mapInfo
    {
        position: absolute;
        width: 31.4814%;
        right: 0;
        top: 24px;
        z-index: 10
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .mapInfo
    {
        top: 20px
    }
}
@media only screen and (max-width: 500px)
{
    .mapInfo
    {
        margin: 11.1111vw auto 0
    }
}
@media only screen and (min-width: 499px)
{
    .accessInfo
    {
        width: 980px;
        margin: 0 auto
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .accessInfo
    {
        width: 100%
    }
}
@media only screen and (min-width: 499px)
{
    .accessInfo .secDef
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
}
@media only screen and (max-width: 500px)
{
    .accessInfo .secDef
    {
        width: 77.5vw;
        margin: 0 auto;
        padding: 6.9444vw 0
    }
}
@media only screen and (min-width: 499px)
{
    .accessInfo .secDefContent1
    {
        width: 34.18%
    }
}
@media only screen and (max-width: 500px)
{
    .accessInfo .secDefContent1
    {
        margin-bottom: 5.5555vw
    }
}
@media only screen and (min-width: 499px)
{
    .accessInfo .secDefContent2
    {
        width: 65.82%;
        padding: 30px 0
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .accessInfo .secDefContent2
    {
        width: 65.82%;
        padding: 25px 0
    }
}
@media only screen and (max-width: 500px)
{
    .accessInfo .secDefContent2
    {
        text-align: left !important
    }
}
.accessLogo a
{
    display: block;
    margin: 0 auto
}
@media only screen and (min-width: 499px)
{
    .accessLogo a
    {
        -webkit-transition: opacity .2s ease 0s;
        transition: opacity .2s ease 0s;
        cursor: pointer
    }
    .accessLogo a:hover
    {
        opacity: .7
    }
}
@media only screen and (min-width: 499px)
{
    .accessLogo a
    {
        width: 137px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .accessLogo a
    {
        width: 113px
    }
}
@media only screen and (max-width: 500px)
{
    .accessLogo a
    {
        width: 50vw
    }
}
.accessInfoTtl
{
    color: #aaa08c
}
@media only screen and (min-width: 499px)
{
    .accessInfoTtl
    {
        margin-bottom: 20px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .accessInfoTtl
    {
        margin-bottom: 18px
    }
}
@media only screen and (max-width: 500px)
{
    .accessInfoTtl
    {
        margin-bottom: 4.1666vw
    }
}
.accessInfoTtl span
{
    display: block
}
.accessInfoTtl .en
{
    font-family: petersburg-web,serif;
    font-weight: 400,700;
    font-style: normal,italic
}
@media only screen and (min-width: 499px)
{
    .accessInfoTtl .en
    {
        font-size: 25px;
        margin-bottom: 15px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .accessInfoTtl .en
    {
        font-size: 20px;
        margin-bottom: 13px
    }
}
@media only screen and (max-width: 500px)
{
    .accessInfoTtl .en
    {
        font-size: 20px;
        margin-bottom: 1.38888vw
    }
}
.accessInfoTtl .jp
{
    font-weight: bold
}
@media only screen and (min-width: 499px)
{
    .accessInfoTtl .jp
    {
        letter-spacing: .12em
    }
}
.accessInfoTable
{
    width: 100%
}
.accessInfoTable th, .accessInfoTable td
{
    vertical-align: top;
    line-height: 1.846
}
@media only screen and (min-width: 499px)
{
    .accessInfoTable th, .accessInfoTable td
    {
        font-weight: bold;
        font-size: 13px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .accessInfoTable th, .accessInfoTable td
    {
        font-size: 12px
    }
}
@media only screen and (max-width: 500px)
{
    .accessInfoTable th, .accessInfoTable td
    {
        font-size: 3.0555vw;
        font-weight: normal
    }
}
.accessInfoTable th
{
    width: 5.5em
}
@media only screen and (max-width: 500px)
{
    .accessInfoTable th
    {
        width: 6em
    }
}
.accessInfoTable th:after
{
    content: "：";
    float: right
}
@media only screen and (min-width: 499px)
{
    .accessParking
    {
        padding-top: 40px;
        margin-top: 40px;
        margin-bottom: 100px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .accessParking
    {
        padding-top: 33px;
        margin-top: 33px;
        margin-bottom: 82px
    }
}
@media only screen and (max-width: 500px)
{
    .accessParking
    {
        padding-top: 11.1111vw;
        margin-bottom: 15.8333vw
    }
}
@media only screen and (min-width: 499px)
{
    .map3
    {
        width: 692px;
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
        -ms-flex: 0 1 auto
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .map3
    {
        width: 571px
    }
}
@media only screen and (min-width: 499px)
{
    .parkingTxtWrap
    {
        width: 370px;
        padding-left: 50px;
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
        -ms-flex: 0 1 auto
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .parkingTxtWrap
    {
        width: 305px;
        padding-left: 0
    }
}
@media only screen and (min-width: 499px)
{
    .parkingTxtWrap p
    {
        margin-bottom: 20px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .parkingTxtWrap p
    {
        margin-bottom: 16px
    }
}
@media only screen and (max-width: 500px)
{
    .parkingTxtWrap p
    {
        margin-bottom: 5.5555vw
    }
}
.parkingTxtWrap .parkingNotes p
{
    margin-bottom: .5em
}
.parkingTxtWrap .parkingNotes p.mapTxtNum
{
    display: block;
    color: #fff;
    background: #3c5064;
    border-radius: 50%;
    text-align: center;
    font-weight: bold;
    margin-bottom: .5em
}
@media only screen and (min-width: 499px)
{
    .parkingTxtWrap .parkingNotes p.mapTxtNum
    {
        font-size: 12.25px;
        width: 18px;
        line-height: 18px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .parkingTxtWrap .parkingNotes p.mapTxtNum
    {
        font-size: 11px;
        width: 15px;
        line-height: 15px
    }
}
@media only screen and (max-width: 500px)
{
    .parkingTxtWrap .parkingNotes p.mapTxtNum
    {
        font-size: 2.7777vw;
        width: 3.8279vw;
        line-height: 3.8279vw
    }
}
@media all and (-ms-high-contrast: none)
{
    *::-ms-backdrop, .parkingTxtWrap .msSmall
    {
        letter-spacing: -.03em
    }
}
@media all and (-ms-high-contrast: none)
{
    .parkingTxtWrap .msSmall
    {
        letter-spacing: -.03em
    }
}
.contactLead
{
    text-align: center;
    font-weight: bold
}
@media only screen and (min-width: 499px)
{
    .contactLead
    {
        font-size: 13px;
        letter-spacing: .1em;
        line-height: 1.846;
        margin-bottom: 50px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .contactLead
    {
        font-size: 11px;
        margin-bottom: 41px
    }
}
@media only screen and (max-width: 500px)
{
    .contactLead
    {
        font-size: 2.7777vw;
        margin-bottom: 5.5555vw;
        line-height: 1.7
    }
}
.contactLead a
{
    color: #3c5064;
    text-decoration: underline
}
@media only screen and (min-width: 499px)
{
    .contactLead a
    {
        -webkit-transition: opacity .2s ease 0s;
        transition: opacity .2s ease 0s;
        cursor: pointer
    }
    .contactLead a:hover
    {
        opacity: .7
    }
}
.contactTelInfo
{
    text-align: center;
    border: 2px solid #aaa08c
}
@media only screen and (min-width: 499px)
{
    .contactTelInfo
    {
        width: 660px;
        margin: 0 auto 50px;
        padding: 2px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .contactTelInfo
    {
        width: 544px;
        margin: 0 auto 41px
    }
}
@media only screen and (max-width: 500px)
{
    .contactTelInfo
    {
        width: 100%;
        margin: 0 auto 8.3333vw;
        padding: 1.3888vw
    }
}
.contactTelInfoInner
{
    border: 1px solid #aaa08c
}
@media only screen and (min-width: 499px)
{
    .contactTelInfoInner
    {
        padding: 30px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .contactTelInfoInner
    {
        padding: 25px
    }
}
@media only screen and (max-width: 500px)
{
    .contactTelInfoInner
    {
        padding: 6.25vw
    }
}
.contactTelInfoTtl
{
    font-weight: bold
}
@media only screen and (min-width: 499px)
{
    .contactTelInfoTtl
    {
        letter-spacing: .1em;
        margin-bottom: 25px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .contactTelInfoTtl
    {
        margin-bottom: 20px
    }
}
@media only screen and (max-width: 500px)
{
    .contactTelInfoTtl
    {
        letter-spacing: .12em;
        margin-bottom: 4.1666vw
    }
}
.contactTelInfoTel
{
    font-family: petersburg-web,serif;
    font-weight: 400,700;
    font-style: normal,italic
}
@media only screen and (min-width: 499px)
{
    .contactTelInfoTel
    {
        font-size: 20px;
        letter-spacing: .09em;
        margin-bottom: 10px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .contactTelInfoTel
    {
        font-size: 16px;
        margin-bottom: 8px
    }
}
@media only screen and (max-width: 500px)
{
    .contactTelInfoTel
    {
        font-size: 3.3333vw;
        letter-spacing: .05em;
        margin-bottom: 2.7777vw
    }
}
@media only screen and (min-width: 499px)
{
    .contactTelInfoTel span
    {
        font-size: 32px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .contactTelInfoTel span
    {
        font-size: 26px
    }
}
@media only screen and (max-width: 500px)
{
    .contactTelInfoTel span
    {
        font-size: 5.9722vw
    }
}
.contactTelInfoOpen
{
    font-weight: bold
}
@media only screen and (min-width: 499px)
{
    .contactTelInfoOpen
    {
        font-size: 15px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .contactTelInfoOpen
    {
        font-size: 12px
    }
}
@media only screen and (max-width: 500px)
{
    .contactTelInfoOpen
    {
        font-size: 3.1944vw;
        line-height: 1.7
    }
}
.contactTelInfoClose
{
    font-weight: bold;
    margin-top: .5em
}
@media only screen and (max-width: 500px)
{
    .contactTelInfoClose
    {
        font-size: 3.1944vw;
        line-height: 1.7
    }
}
.contactFormWrap table
{
    width: 100%
}
@media only screen and (max-width: 500px)
{
    .contactFormWrap table
    {
        display: block
    }
}
@media only screen and (max-width: 500px)
{
    .contactFormWrap table tbody
    {
        display: block
    }
}
@media only screen and (max-width: 500px)
{
    .contactFormWrap table tr
    {
        display: block
    }
}
@media only screen and (min-width: 499px)
{
    .contactFormWrap table tr:last-child th, .contactFormWrap table tr:last-child td
    {
        border-bottom: 1px solid #e0e0e0
    }
}
@media only screen and (max-width: 500px)
{
    .contactFormWrap table tr:last-child td
    {
        padding-bottom: 0
    }
}
.contactFormWrap table th, .contactFormWrap table td
{
    vertical-align: middle
}
@media only screen and (min-width: 499px)
{
    .contactFormWrap table th, .contactFormWrap table td
    {
        border-top: 1px solid #e0e0e0
    }
}
@media only screen and (max-width: 500px)
{
    .contactFormWrap table th, .contactFormWrap table td
    {
        display: block
    }
}
.contactFormWrap table th
{
    text-align: center
}
@media only screen and (min-width: 499px)
{
    .contactFormWrap table th
    {
        width: 15.3%;
        padding: 20px 15px;
        background: #f2f1ee
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .contactFormWrap table th
    {
        padding: 16px 12px
    }
}
@media only screen and (max-width: 500px)
{
    .contactFormWrap table th
    {
        padding: 3.3333vw;
        border-top: 1px solid #e0e0e0;
        border-bottom: 1px solid #e0e0e0
    }
}
@media only screen and (min-width: 499px)
{
    .contactFormWrap table td
    {
        width: 84.7%;
        padding: 20px 45px 20px 40px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .contactFormWrap table td
    {
        padding: 16px 37.125px 16px 33px
    }
}
@media only screen and (max-width: 500px)
{
    .contactFormWrap table td
    {
        padding: 3.4722vw 0 11.1111vw
    }
}
.contactFormWrap input[type="text"], .contactFormWrap input[type="mail"], .contactFormWrap input[type="tel"]
{
    border: none;
    border-radius: 0;
    outline: none;
    background: #f2f1ee
}
@media only screen and (min-width: 499px)
{
    .contactFormWrap input[type="text"], .contactFormWrap input[type="mail"], .contactFormWrap input[type="tel"]
    {
        padding: 10px 10px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .contactFormWrap input[type="text"], .contactFormWrap input[type="mail"], .contactFormWrap input[type="tel"]
    {
        padding: 9px 9px
    }
}
@media only screen and (max-width: 500px)
{
    .contactFormWrap input[type="text"], .contactFormWrap input[type="mail"], .contactFormWrap input[type="tel"]
    {
        padding: 3.0555vw
    }
}
.contactFormWrap input[type="text"]:placeholder-shown, .contactFormWrap input[type="mail"]:placeholder-shown, .contactFormWrap input[type="tel"]:placeholder-shown
{
    color: #aaa08c
}
.contactFormWrap input[type="text"]::-webkit-input-placeholder, .contactFormWrap input[type="mail"]::-webkit-input-placeholder, .contactFormWrap input[type="tel"]::-webkit-input-placeholder
{
    color: #aaa08c
}
@media only screen and (max-width: 500px)
{
    .contactFormWrap input[type="text"]::-webkit-input-placeholder, .contactFormWrap input[type="mail"]::-webkit-input-placeholder, .contactFormWrap input[type="tel"]::-webkit-input-placeholder
    {
        padding-top: .2em
    }
}
.contactFormWrap input[type="text"]:-moz-placeholder, .contactFormWrap input[type="mail"]:-moz-placeholder, .contactFormWrap input[type="tel"]:-moz-placeholder
{
    color: #aaa08c;
    opacity: 1
}
.contactFormWrap input[type="text"]::-moz-placeholder, .contactFormWrap input[type="mail"]::-moz-placeholder, .contactFormWrap input[type="tel"]::-moz-placeholder
{
    color: #aaa08c;
    opacity: 1
}
.contactFormWrap input[type="text"]:-ms-input-placeholder, .contactFormWrap input[type="mail"]:-ms-input-placeholder, .contactFormWrap input[type="tel"]:-ms-input-placeholder
{
    color: #aaa08c
}
.contactFormWrap textarea
{
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    resize: none;
    padding: 0;
    border: 0;
    outline: none;
    background: #f2f1ee;
    max-width: 100%;
    min-width: 100%;
    line-height: 1.6
}
@media only screen and (min-width: 499px)
{
    .contactFormWrap textarea
    {
        padding: 10px 10px;
        height: 143px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .contactFormWrap textarea
    {
        padding: 9px 9px;
        height: 118px
    }
}
@media only screen and (max-width: 500px)
{
    .contactFormWrap textarea
    {
        padding: 3.0555vw;
        height: 33.3333vw
    }
}
.selectWrap
{
    position: relative
}
.selectWrap:after
{
    content: "▼";
    position: absolute;
    right: 1em;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: 10;
    font-size: 6px
}
.selectWrap select
{
    outline: none;
    border: none;
    text-indent: .01px;
    text-overflow: '';
    vertical-align: middle;
    font-size: inherit;
    color: inherit;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: #f2f1ee;
    border-radius: 0;
    width: 100%
}
@media only screen and (min-width: 499px)
{
    .selectWrap select
    {
        padding: 10px 30px 10px 10px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .selectWrap select
    {
        padding: 9px 27px 9px 9px
    }
}
@media only screen and (max-width: 500px)
{
    .selectWrap select
    {
        padding: 3.0555vw 9.1666vw 3.0555vw 3.0555vw
    }
}
.selectWrap select::-ms-expand
{
    display: none
}
.selectWrap select:-moz-focusring
{
    color: transparent;
    text-shadow: none
}
.selectWrap select option
{
    background-color: #fff;
    color: #282f37
}
.inputTxtWrap
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    position: relative
}
.required
{
    text-align: center;
    background: #3c5064;
    color: #fff;
    font-weight: bold
}
@media only screen and (min-width: 499px)
{
    .required
    {
        width: 6.42%;
        font-size: 11px;
        padding: 5px;
        position: absolute;
        top: 1em;
        left: 0
    }
}
@media only screen and (max-width: 500px)
{
    .required
    {
        width: 8.75vw;
        font-size: 2.2916vw;
        padding: .8vw
    }
}
.inputTxtHalf, .inputTxtFull
{
    width: 100%
}
@media only screen and (min-width: 499px)
{
    .inputTxtHalf
    {
        padding-left: 10%
    }
}
@media only screen and (max-width: 500px)
{
    .inputTxtHalf
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
}
.inputTxtHalf dt
{
    display: inline-block;
    vertical-align: top
}
@media only screen and (min-width: 499px)
{
    .inputTxtHalf dt
    {
        width: 8%;
        text-align: right;
        padding-right: .8em;
        padding-top: 1em
    }
}
@media only screen and (max-width: 500px)
{
    .inputTxtHalf dt
    {
        width: 9%;
        margin-top: 3.4722vw
    }
}
.inputTxtHalf dd
{
    display: inline-block
}
@media only screen and (min-width: 499px)
{
    .inputTxtHalf dd
    {
        width: 28.5714%
    }
}
@media only screen and (max-width: 500px)
{
    .inputTxtHalf dd
    {
        width: 91%;
        margin-top: 3.4722vw
    }
}
.inputTxtHalf dd input
{
    width: 100%
}
@media only screen and (max-width: 500px)
{
    .inputTxtHalf.inputTxtHalfKana dt
    {
        width: 11%
    }
}
@media only screen and (max-width: 500px)
{
    .inputTxtHalf.inputTxtHalfKana dd
    {
        width: 89%
    }
}
@media only screen and (min-width: 499px)
{
    .inputTxtFull
    {
        padding-left: 17%
    }
}
@media only screen and (max-width: 500px)
{
    .inputTxtFull
    {
        margin-top: 3.4722vw
    }
}
.inputTxtFull input
{
    margin-bottom: .3em;
    width: 100%
}
.inputTxtFull input:last-child
{
    margin-bottom: 0
}
@media only screen and (min-width: 499px)
{
    .inputComment
    {
        font-size: 13px;
        margin-bottom: 15px;
        line-height: 1.69;
        display: block !important
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .inputComment
    {
        font-size: 11px;
        margin-bottom: 12px
    }
}
@media only screen and (max-width: 500px)
{
    .inputComment
    {
        font-size: 2.7777vw;
        margin-bottom: 2.7777vw;
        line-height: 1.5
    }
}
.inputComment:last-child, .inputComment.last
{
    margin-bottom: 0
}
.inputRadio li
{
    display: block;
    margin-bottom: 1em
}
.inputRadio li:last-child
{
    margin-bottom: 0
}
.inputRadio li input
{
    margin-right: 1em
}
@media only screen and (min-width: 499px)
{
    .inputCal
    {
        margin-left: 17%;
        width: 140px
    }
}
@media only screen and (max-width: 500px)
{
    .inputCal
    {
        margin-top: 3.4722vw;
        width: 100%
    }
}
.inputCal input
{
    width: 100%
}
@media only screen and (min-width: 499px)
{
    .inputCalElm
    {
        width: 140px
    }
}
@media only screen and (max-width: 500px)
{
    .inputCalElm
    {
        width: 100%
    }
}
.inputCalElm input
{
    width: 100%
}
.inputAddressWrap
{
    position: relative
}
.inputAddress
{
    margin-bottom: 1em
}
.inputAddress:last-child
{
    margin-bottom: 0
}
.inputAddress dt, .inputAddress dd
{
    display: inline-block;
    vertical-align: top
}
.inputAddress dt
{
    text-align: right
}
@media only screen and (min-width: 499px)
{
    .inputAddress dt
    {
        width: 24%;
        padding-top: 1em;
        padding-right: 1em
    }
}
@media only screen and (max-width: 500px)
{
    .inputAddress dt
    {
        vertical-align: middle;
        padding-right: .5em
    }
}
@media only screen and (min-width: 499px)
{
    .inputAddress dd
    {
        width: 76%
    }
}
@media only screen and (max-width: 500px)
{
    .inputAddress dd
    {
        vertical-align: middle;
        width: 100%
    }
}
.inputAddress .inputComment
{
    margin-bottom: 0
}
.inputAddressFull
{
    width: 100%
}
@media only screen and (max-width: 500px)
{
    .inputAddressFull
    {
        margin-top: .5em
    }
}
.inputAddressFull input
{
    width: 100%
}
@media only screen and (max-width: 500px)
{
    .inputAddressFull input
    {
        margin-bottom: .5em
    }
}
@media only screen and (max-width: 500px)
{
    .inputZip
    {
        margin-bottom: .5em
    }
}
.inputZip>*
{
    display: inline-block
}
.inputZip .inputTxtSpan
{
    margin: 0 .4em
}
@media only screen and (max-width: 500px)
{
    .inputAddressSpCol dt
    {
        width: 19.1666vw;
        text-align: left
    }
}
@media only screen and (max-width: 500px)
{
    .inputAddressSpCol dd
    {
        width: 57vw
    }
}
@media only screen and (max-width: 500px)
{
    .inputAddressSpCol dd .inputZipW
    {
        width: 27vw
    }
}
@media only screen and (max-width: 500px)
{
    .inputAddressSpCol dd .inputSpFull
    {
        width: 100%
    }
}
@media only screen and (min-width: 499px)
{
    .input140
    {
        width: 140px
    }
}
@media only screen and (max-width: 500px)
{
    .input140
    {
        width: 30.1388vw
    }
}
.input140 input
{
    width: 100%
}
@media only screen and (min-width: 499px)
{
    .input160
    {
        width: 160px
    }
}
@media only screen and (max-width: 500px)
{
    .input160
    {
        width: 45vw
    }
}
.input160 input
{
    width: 100%
}
.inputTxtSpan
{
    display: inline-block
}
@media only screen and (min-width: 499px)
{
    .inputTxtSpan
    {
        margin: 0 1em;
        line-height: 3em
    }
}
@media only screen and (max-width: 500px)
{
    .inputTxtSpan
    {
        margin: 0 .4em;
        padding: 1.2em 0
    }
}
.privacyPolicyLink
{
    text-align: center
}
@media only screen and (min-width: 499px)
{
    .privacyPolicyLink
    {
        margin-top: 50px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .privacyPolicyLink
    {
        margin-top: 41px
    }
}
@media only screen and (max-width: 500px)
{
    .privacyPolicyLink
    {
        margin-top: 8.3333vw
    }
}
.privacyPolicyLink a
{
    color: #3c5064;
    text-decoration: underline;
    font-weight: bold
}
@media only screen and (min-width: 499px)
{
    .privacyPolicyLink a
    {
        font-size: 16px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .privacyPolicyLink a
    {
        font-size: 13px
    }
}
@media only screen and (max-width: 500px)
{
    .privacyPolicyLink a
    {
        font-size: 3.3333vw
    }
}
.confirm td
{
    letter-spacing: .08em
}
@media only screen and (min-width: 499px)
{
    .confirm td
    {
        font-size: 15px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .confirm td
    {
        font-size: 13px
    }
}
@media only screen and (max-width: 500px)
{
    .confirm td
    {
        font-size: 3.5vw
    }
}
.confirm .inputTxtWrap
{
    display: block
}
.confirm .inputTxtWrap .inputTxtHalf
{
    padding: 0;
    display: inline-block
}
.confirm .inputTxtWrap .inputTxtHalf *
{
    margin: 0
}
.confirm .inputTxtWrap .inputTxtFull
{
    padding: 0;
    display: inline-block;
    margin: 0
}
.confirm .inputTxtWrap .inputCal
{
    padding: 0;
    margin: 0;
    width: 100%;
    display: inline-block
}
.confirm .inputTxtWrap .inputCalElm
{
    padding: 0;
    margin: 0;
    width: 100%;
    display: inline-block
}
.confirm .inputTxtWrap .input140
{
    padding: 0;
    margin: 0;
    width: auto;
    display: inline-block
}
.confirm .inputTxtWrap .input160
{
    padding: 0;
    margin: 0;
    width: auto;
    display: inline-block
}
.confirm .inputTxtWrap .inputTxtSpan
{
    line-height: 1;
    padding: 0;
    margin: 0;
    display: inline-block
}
.confirm .selectWrap:after
{
    content: none
}
.confirm .formBtn
{
    text-align: center
}
.confirm .formBtn button
{
    display: inline-block;
    margin-left: 1em;
    margin-right: 1em
}
@media only screen and (max-width: 500px)
{
    .confirm .formBtn button:last-child
    {
        margin-top: 3vw
    }
}
.confirm .formBtn button.modify-btn
{
    background: #bbb
}
.confirm .formBtn button.modify-btn:after
{
    -webkit-transform: scale(-1,1) translate(0,-50%);
    transform: scale(-1,1) translate(0,-50%);
    right: auto
}
@media only screen and (min-width: 499px)
{
    .confirm .formBtn button.modify-btn:after
    {
        left: 14px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .confirm .formBtn button.modify-btn:after
    {
        left: 12px
    }
}
@media only screen and (max-width: 500px)
{
    .confirm .formBtn button.modify-btn:after
    {
        left: 3.055vw
    }
}
.err-block
{
    display: block !important
}
@media only screen and (min-width: 499px)
{
    .err-block.pcH
    {
        display: none !important
    }
}
@media only screen and (max-width: 500px)
{
    .err-block.spH
    {
        display: none !important
    }
}
.err-block .pp-em
{
    padding: 0;
    background: none
}
@media only screen and (min-width: 499px)
{
    .err-block .pp-em
    {
        margin-top: 10px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .err-block .pp-em
    {
        margin-top: 8px
    }
}
@media only screen and (max-width: 500px)
{
    .err-block .pp-em
    {
        margin-top: 2vw
    }
}
.err-block .pp-em p
{
    display: inline-block;
    padding: .5em;
    background: #df4547;
    border-radius: .3em
}
@media only screen and (min-width: 499px)
{
    .err-block .pp-em p
    {
        font-size: 14px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .err-block .pp-em p
    {
        font-size: 12px
    }
}
@media only screen and (max-width: 500px)
{
    .err-block .pp-em p
    {
        font-size: 3.3vw
    }
}
.mailCheck
{
    padding-bottom: .5em;
    border-bottom: 1px solid #282f37
}
@media only screen and (min-width: 499px)
{
    .mailCheck
    {
        font-size: 13px;
        margin-top: 10px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .mailCheck
    {
        font-size: 11px;
        margin-top: 8px
    }
}
@media only screen and (max-width: 500px)
{
    .mailCheck
    {
        font-size: 2.7777vw;
        margin-top: 2vw
    }
}
.mailCheck span
{
    display: inline-block;
    vertical-align: bottom;
    min-height: 1em
}
.mailCheck .text
{
    margin-left: .3em;
    letter-spacing: .03em
}
@media only screen and (min-width: 499px)
{
    .mailCheck .text
    {
        font-size: 16px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .mailCheck .text
    {
        font-size: 14px
    }
}
@media only screen and (max-width: 500px)
{
    .mailCheck .text
    {
        font-size: 3.7vw
    }
}
.ui-datepicker
{
    z-index: 15 !important
}
.mainvFairTxtSp
{
    padding: 8.3333vw 3vw 0;
    background: #fff
}
.mainvFairTxtSp .secLead
{
    margin-bottom: 0;
    font-size: 4.5vw
}

.movie_w {
    width: 100%;
}

#fairMovie {
    text-align: center;
    padding: 70px 0 0;
    background-color: #fff;
}

#fairMovie p {
    margin-top: 15px;
    line-height: 1.6;
}

@media screen and (max-width:491px){
    #fairMovie {
        padding: 50px 15px 20px !important;
    }
    #fairMovie video {
        width: 100%;
    }
}
.formFair
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}
@media only screen and (max-width: 500px)
{
    .formFair
    {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
}
@media only screen and (min-width: 499px)
{
    .formFairTh
    {
        width: 121px;
        -webkit-box-shadow: 3px 3px 0 0 rgba(60,80,100,.2);
        box-shadow: 3px 3px 0 0 rgba(60,80,100,.2);
        margin-right: 24px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .formFairTh
    {
        width: 100px;
        margin-right: 20px
    }
}
@media only screen and (max-width: 500px)
{
    .formFairTh
    {
        width: 30.36%;
        margin-right: 3.0555vw
    }
}
.formFairTh figure
{
    display: block;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    width: 100%;
    height: 0;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    padding-bottom: 100%
}
.formFairTxt
{
    max-width: 100%
}
@media only screen and (max-width: 500px)
{
    .formFairTxt
    {
        width: 69.64%
    }
}
.formFairDate
{
    color: #3c5064;
    padding-left: .5em;
    border-left: 3px solid #3c5064
}
@media only screen and (min-width: 499px)
{
    .formFairDate
    {
        margin-bottom: 10px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .formFairDate
    {
        margin-bottom: 8px
    }
}
@media only screen and (max-width: 500px)
{
    .formFairDate
    {
        margin-bottom: 3.0555vw
    }
}
.formFairDate span
{
    display: inline-block;
    font-weight: bold
}
@media only screen and (min-width: 499px)
{
    .formFairDate .date
    {
        font-size: 14px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .formFairDate .date
    {
        font-size: 12px
    }
}
@media only screen and (max-width: 500px)
{
    .formFairDate .date
    {
        font-size: 3.6111vw
    }
}
.formFairDate .week
{
    margin-right: .5em
}
@media only screen and (min-width: 499px)
{
    .formFairDate .week
    {
        font-size: 12px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .formFairDate .week
    {
        font-size: 11px
    }
}
@media only screen and (max-width: 500px)
{
    .formFairDate .week
    {
        font-size: 2.7777vw
    }
}
@media only screen and (min-width: 499px)
{
    .formFairDate .time
    {
        font-size: 14px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .formFairDate .time
    {
        font-size: 12px
    }
}
@media only screen and (max-width: 500px)
{
    .formFairDate .time
    {
        font-size: 3.3333vw
    }
}
.formFairTtl
{
    font-weight: bold
}
@media only screen and (min-width: 499px)
{
    .formFairTtl
    {
        font-size: 18px;
        line-height: 1.4444;
        letter-spacing: .08em
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .formFairTtl
    {
        font-size: 15px
    }
}
@media only screen and (max-width: 500px)
{
    .formFairTtl
    {
        font-size: 3.3333vw;
        line-height: 1.6666
    }
}
#fairWeekend
{
    background: #fff
}
@media only screen and (min-width: 499px)
{
    #fairWeekend
    {
        padding: 100px 0 60px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    #fairWeekend
    {
        padding: 82px 0 50px
    }
}
@media only screen and (max-width: 500px)
{
    #fairWeekend
    {
        padding: 8.3333vw 0 12.5vw
    }
}
.weekendContent
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}
@media only screen and (min-width: 499px)
{
    .weekendContent
    {
        margin-bottom: 40px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .weekendContent
    {
        margin-bottom: 33px
    }
}
@media only screen and (max-width: 500px)
{
    .weekendContent
    {
        margin-bottom: 8.3333vw
    }
}
.weekendContent:last-child
{
    margin-bottom: 0
}
.weekendDateWrap
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}
@media only screen and (min-width: 499px)
{
    .weekendDateWrap
    {
        width: 5.5555%;
        padding-bottom: 5px
    }
}
@media only screen and (max-width: 500px)
{
    .weekendDateWrap
    {
        width: 10.9375%;
        padding-bottom: 2.9166vw
    }
}
.weekendDate
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
    z-index: 20;
    width: 100%
}
.weekendDate:after
{
    content: " ";
    display: block;
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translate(50%,-50%) rotate(45deg);
    transform: translate(50%,-50%) rotate(45deg)
}
@media only screen and (min-width: 499px)
{
    .weekendDate:after
    {
        width: 11px;
        height: 11px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .weekendDate:after
    {
        width: 9px;
        height: 9px
    }
}
@media only screen and (max-width: 500px)
{
    .weekendDate:after
    {
        width: 2.5vw;
        height: 2.5vw
    }
}
.weekendDate .dateCon
{
    text-align: center;
    font-weight: bold;
    color: #fff;
    line-height: 1.2
}
@media only screen and (min-width: 499px)
{
    .weekendDate .dateCon
    {
        font-size: 18px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .weekendDate .dateCon
    {
        font-size: 15px
    }
}
@media only screen and (max-width: 500px)
{
    .weekendDate .dateCon
    {
        font-size: 3.6111vw
    }
}
.weekendDate .dateCon.week
{
    margin-top: .5em
}
@media only screen and (max-width: 500px)
{
    .weekendDate .dateCon.week
    {
        font-size: 3.0555vw
    }
}
@media only screen and (min-width: 499px)
{
    .weekendListWrap
    {
        width: 86.2962%;
        width: calc(86.2962% + 24px);
        padding-left: 12px
    }
    .weekendListWrap .slick-slide
    {
        margin-right: 12px
    }
    .weekendListWrap .slick-list
    {
        padding-top: 5px;
        position: relative;
        top: -5px
    }
}
@media only screen and (max-width: 500px)
{
    .weekendListWrap
    {
        width: 84.6875%
    }
}
.weekendList
{
    position: relative;
    background-size: 100px 100px
}
@media only screen and (min-width: 499px)
{
    .weekendList
    {
        padding: 5px;
        width: 49.3562%
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .weekendList
    {
        padding: 4px
    }
}
@media only screen and (max-width: 500px)
{
    .weekendList
    {
        padding: .6944vw;
        margin-bottom: 2.9166vw
    }
    .weekendList.hide
    {
        display: none !important
    }
}
.weekendListInner
{
    border: 1px solid #aaa08c;
    max-width: 100%;
    height: 100%
}
@media only screen and (min-width: 499px)
{
    .weekendListInner
    {
        padding: 37px 25px 22px 30px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .weekendListInner
    {
        padding: 30px 20px 18px 25px
    }
}
@media only screen and (max-width: 500px)
{
    .weekendListInner
    {
        padding: 7.2222vw 4.8611vw 3.8888vw
    }
}
.weekendListRibbon
{
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    text-align: center;
    position: absolute;
    overflow: visible !important
}
@media only screen and (min-width: 499px)
{
    .weekendListRibbon
    {
        background-image: url(assets/images/fair/ribbon_fair_pc.svg);
        right: 20px;
        top: -5px;
        width: 70px;
        height: 70px;
        padding-top: 35px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .weekendListRibbon
    {
        right: 16px;
        top: -5px;
        width: 62px;
        height: 62px;
        padding-top: 30px
    }
}
@media only screen and (max-width: 500px)
{
    .weekendListRibbon
    {
        background-image: url(assets/images/fair/ribbon_fair_sp.svg);
        right: 3vw;
        top: -1.5277vw;
        width: 15vw;
        height: 15vw;
        padding-top: 7vw
    }
}
.weekendListRibbon>*
{
    color: #aaa08c
}
.weekendListRibbon .en
{
    display: inline-block;
    position: absolute;
    -webkit-transform: rotate(-7deg) translateX(-50%);
    transform: rotate(-7deg) translateX(-50%);
    left: 50%;
    font-family: 'Italianno',cursive
}
@media only screen and (min-width: 499px)
{
    .weekendListRibbon .en
    {
        font-size: 30px;
        top: 2px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .weekendListRibbon .en
    {
        font-size: 26px;
    }
}
@media only screen and (max-width: 500px)
{
    .weekendListRibbon .en
    {
        font-size: 6.5vw;
        top: 0;
    }
}
.weekendListRibbon .jp
{
    display: inline-block;
    position: relative;
    text-align: center;
    font-weight: bold;
    padding: 0 .7em
}
@media only screen and (min-width: 499px)
{
    .weekendListRibbon .jp
    {
        font-size: 12px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .weekendListRibbon .jp
    {
        font-size: 10px
    }
}
@media only screen and (max-width: 500px)
{
    .weekendListRibbon .jp
    {
        font-size: 2.7777vw
    }
}
/*.weekendListRibbon .jp:before, .weekendListRibbon .jp:after
{
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    display: block;
    content: " ";
    background: #aaa08c;
    height: 1px
}
@media only screen and (min-width: 499px)
{
    .weekendListRibbon .jp:before, .weekendListRibbon .jp:after
    {
        width: 5px
    }
}
@media only screen and (max-width: 500px)
{
    .weekendListRibbon .jp:before, .weekendListRibbon .jp:after
    {
        width: 1.1111vw
    }
}
.weekendListRibbon .jp:before
{
    left: 0
}
.weekendListRibbon .jp:after
{
    right: 0
}*/
.weekendListTop
{
    border-bottom: 1px dotted #aaa08c;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}
@media only screen and (min-width: 499px)
{
    .weekendListTop
    {
        padding-bottom: 15px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .weekendListTop
    {
        padding-bottom: 12px
    }
}
@media only screen and (max-width: 500px)
{
    .weekendListTop
    {
        padding-bottom: 3.3333vw
    }
}
@media only screen and (min-width: 499px)
{
    .weekendListTh
    {
        width: 41.7718%
    }
}
@media only screen and (max-width: 500px)
{
    .weekendListTh
    {
        width: 31.1688%
    }
}
.weekendListTh span
{
    display: block;
    width: 100%;
    height: 0;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    padding-bottom: 100%;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat
}
@media only screen and (min-width: 499px)
{
    .weekendListTxt
    {
        width: 52.0304%
    }
}
@media only screen and (max-width: 500px)
{
    .weekendListTxt
    {
        width: 64.935%
    }
}
.weekendListDateWrap
{
    border-left: 2px solid #3c5064;
    padding-left: .5em;
    font-weight: bold;
    color: #3c5064
}
@media only screen and (min-width: 499px)
{
    .weekendListDateWrap
    {
        margin-bottom: 20px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .weekendListDateWrap
    {
        margin-bottom: 16px
    }
}
@media only screen and (max-width: 500px)
{
    .weekendListDateWrap
    {
        margin-bottom: 4.0277vw
    }
}
.weekendListDate
{
    letter-spacing: .05em
}
@media only screen and (min-width: 499px)
{
    .weekendListDate
    {
        font-size: 20px;
        margin-bottom: 8px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .weekendListDate
    {
        font-size: 16px;
        margin-bottom: 7px
    }
}
@media only screen and (max-width: 500px)
{
    .weekendListDate
    {
        font-size: 3.6111vw;
        margin-bottom: 2.0833vw
    }
}
@media only screen and (min-width: 499px)
{
    .weekendListDate span
    {
        font-size: 15px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .weekendListDate span
    {
        font-size: 12px
    }
}
@media only screen and (max-width: 500px)
{
    .weekendListDate span
    {
        font-size: 2.7777vw
    }
}
@media only screen and (min-width: 499px)
{
    .weekendListTime
    {
        font-size: 12px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .weekendListTime
    {
        font-size: 11px
    }
}
@media only screen and (max-width: 500px)
{
    .weekendListTime
    {
        font-size: 3.3vw
    }
}
.weekendListTtl
{
    font-weight: bold
}
@media only screen and (min-width: 499px)
{
    .weekendListTtl
    {
        font-size: 16px;
        line-height: 1.625;
        letter-spacing: .1em
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .weekendListTtl
    {
        font-size: 13px
    }
}
@media only screen and (max-width: 500px)
{
    .weekendListTtl
    {
        font-size: 3.6111vw;
        line-height: 1.538;
        letter-spacing: .05em
    }
}
@media only screen and (min-width: 499px)
{
    .weekendListComment
    {
        font-weight: bold;
        margin-top: 15px;
        line-height: 1.571
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .weekendListComment
    {
        margin-top: 12px
    }
}
@media only screen and (max-width: 500px)
{
    .weekendListComment
    {
        margin-top: 3.4722vw;
        line-height: 1.666
    }
}
@media only screen and (min-width: 499px)
{
    .weekendListBtn a
    {
        margin-top: 20px;
        font-size: 14px;
        padding: 1em
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .weekendListBtn a
    {
        margin-top: 16px;
        font-size: 12px
    }
}
@media only screen and (max-width: 500px)
{
    .weekendListBtn a
    {
        margin-top: 4.1666vw;
        font-size: 3.3333vw;
        width: 57.7777vw
    }
}
.weekendArw
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}
@media only screen and (min-width: 499px)
{
    .weekendArw
    {
        width: 3.7037%;
        padding-bottom: 5px
    }
}
@media only screen and (max-width: 500px)
{
    .weekendArw
    {
        display: block;
        width: 100%;
        text-align: center
    }
}
.weekendArw button, .weekendArw a
{
    background-color: transparent;
    border: 2px solid #3c5064;
    cursor: pointer;
    outline: none;
    padding: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: 100%;
    text-align: center
}
@media only screen and (min-width: 499px)
{
    .weekendArw button, .weekendArw a
    {
        -webkit-transition: opacity .2s ease 0s;
        transition: opacity .2s ease 0s;
        cursor: pointer
    }
    .weekendArw button:hover, .weekendArw a:hover
    {
        opacity: .7
    }
}
@media only screen and (min-width: 499px)
{
    .weekendArw button, .weekendArw a
    {
        -webkit-transition: .2s;
        transition: .2s
    }
    .weekendArw button.slick-disabled, .weekendArw a.slick-disabled
    {
        display: none !important
    }
    .weekendArw button.weekendArwPrev, .weekendArw a.weekendArwPrev
    {
        margin-bottom: 1em
    }
    .weekendArw button.weekendArwPrev:before, .weekendArw a.weekendArwPrev:before
    {
        -webkit-transform: rotate(180deg);
        transform: rotate(180deg)
    }
    .weekendArw button.arwMBNone, .weekendArw a.arwMBNone
    {
        margin-bottom: 0
    }
    .weekendArw button:before, .weekendArw a:before
    {
        content: " ";
        width: 9px;
        height: 15px;
        background: url(assets/images/fair/arw_weekend_pc.svg) center no-repeat;
        background-size: contain;
        display: inline-block
    }
}
@media only screen and (max-width: 500px)
{
    .weekendArw button, .weekendArw a
    {
        margin-top: 3.4722vw;
        display: block;
        text-align: center;
        padding: 3.8vw 0
    }
    .weekendArw button.off, .weekendArw a.off
    {
        display: none
    }
}
@media only screen and (max-width: 500px)
{
    .weekendArw button img, .weekendArw a img
    {
        width: 2.9166vw;
        height: auto;
        vertical-align: middle;
        display: block;
        margin: 0 auto
    }
}
@media only screen and (max-width: 500px)
{
    .weekendArw button.weekendArwLink img, .weekendArw a.weekendArwLink img
    {
        -webkit-transform: rotate(-90deg);
        transform: rotate(-90deg)
    }
}
.weekendContentSat .weekendDate, .weekendContentSat .weekendDate:after
{
    background: #3c5064
}
@media only screen and (min-width: 499px)
{
    .weekendContentSat .slick-slide:nth-child(2n-1) .weekendList
    {
        background-image: url(assets/images/common/weekend_bg1.jpg)
    }
    .weekendContentSat .slick-slide:nth-child(2n) .weekendList
    {
        background-image: url(assets/images/common/weekend_bg2.jpg)
    }
}
@media only screen and (max-width: 500px)
{
    .weekendContentSat .weekendList:nth-child(2n-1)
    {
        background-image: url(assets/images/common/weekend_bg1.jpg)
    }
    .weekendContentSat .weekendList:nth-child(2n)
    {
        background-image: url(assets/images/common/weekend_bg2.jpg)
    }
}
.weekendContentSun .weekendDate, .weekendContentSun .weekendDate:after
{
    background: #821437
}
@media only screen and (min-width: 499px)
{
    .weekendContentSun .slick-slide:nth-child(2n-1) .weekendList
    {
        background-image: url(assets/images/common/weekend_bg2.jpg)
    }
    .weekendContentSun .slick-slide:nth-child(2n) .weekendList
    {
        background-image: url(assets/images/common/weekend_bg1.jpg)
    }
}
@media only screen and (max-width: 500px)
{
    .weekendContentSun .weekendList:nth-child(2n-1)
    {
        background-image: url(assets/images/common/weekend_bg2.jpg)
    }
    .weekendContentSun .weekendList:nth-child(2n)
    {
        background-image: url(assets/images/common/weekend_bg1.jpg)
    }
}
@media only screen and (min-width: 499px)
{
    .calLinkBtn a
    {
        font-size: 14px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .calLinkBtn a
    {
        font-size: 12px
    }
}
@media only screen and (max-width: 500px)
{
    .calLinkBtn a
    {
        font-size: 3.3vw
    }
}
@media only screen and (min-width: 499px)
{
    #fairContent, #fairArc
    {
        padding-top: 80px;
        margin-top: -80px
    }
}
@media only screen and (max-width: 500px)
{
    #fairContent, #fairArc
    {
        padding-top: 16vw;
        margin-top: -16vw
    }
}
@media only screen and (min-width: 499px)
{
    #fairMain
    {
        padding: 95px 0
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    #fairMain
    {
        padding: 78px 0
    }
}
@media only screen and (max-width: 500px)
{
    #fairMain
    {
        padding: 11.1111vw 0
    }
}
#fairMain .topFairSp
{
    margin-right: auto;
    margin-left: auto
}
@media only screen and (min-width: 499px)
{
    #fairMain .topFairSp
    {
        width: 1010px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    #fairMain .topFairSp
    {
        width: 100%
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    #fairMain .topFairSpTable
    {
        width: 100%
    }
    #fairMain .topFairSpTable th
    {
        width: 15%
    }
    #fairMain .topFairSpTable td
    {
        width: 75%
    }
}
.fairMainInner
{
    position: relative;
    width: 100%;
    max-width: 1260px;
    margin-right: auto;
    margin-left: auto;
    padding: 0 20px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairMainInner
    {
        width: 1024px
    }
}
@media only screen and (max-width: 500px)
{
    .fairMainInner
    {
        width: 88.8888vw;
        max-width: none;
        padding: 0
    }
}
.fairMainTabBtnWrap
{
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}
@media only screen and (min-width: 499px)
{
    .fairMainTabBtnWrap
    {
        width: 980px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairMainTabBtnWrap
    {
        width: 808px
    }
}
@media only screen and (max-width: 500px)
{
    .fairMainTabBtnWrap
    {
        width: 76.3888vw
    }
}
.fairMainTabBtnWrap>span
{
    border-bottom: 1px solid #3c5064;
    display: block
}
@media only screen and (min-width: 499px)
{
    .fairMainTabBtnWrap>span
    {
        width: 4px
    }
}
@media only screen and (max-width: 500px)
{
    .fairMainTabBtnWrap>span
    {
        width: 1.3888vw
    }
}
.fairMainTabBtn
{
    text-align: center;
    color: #fff;
    background: #3c5064;
    border-top: 1px solid #3c5064;
    border-left: 1px solid #3c5064;
    border-right: 1px solid #3c5064;
    font-weight: bold;
    display: block
}
@media only screen and (min-width: 499px)
{
    .fairMainTabBtn
    {
        width: 488px;
        line-height: 45px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairMainTabBtn
    {
        width: 402px;
        line-height: 37px
    }
}
@media only screen and (max-width: 500px)
{
    .fairMainTabBtn
    {
        width: 37.5vw;
        line-height: 12.0833vw
    }
}
.fairMainTabBtn.current
{
    color: #3c5064;
    background: #fff
}
@media only screen and (min-width: 499px)
{
    a.fairMainTabBtn
    {
        -webkit-transition: opacity .2s ease 0s;
        transition: opacity .2s ease 0s;
        cursor: pointer
    }
    a.fairMainTabBtn:hover
    {
        opacity: .7
    }
}
.fairMainTabContentWrap
{
    width: 100%;
    background: #fff
}
@media only screen and (min-width: 499px)
{
    .fairMainTabContentWrap
    {
        padding: 70px 70px 80px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairMainTabContentWrap
    {
        padding: 58px 58px 66px
    }
}
@media only screen and (max-width: 500px)
{
    .fairMainTabContentWrap
    {
        padding: 8.3333vw 2.7777vw 10.5555vw
    }
}
@media only screen and (min-width: 499px)
{
    .fairPost .fairMainTabBtnWrap>span
    {
        width: 11px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairPost .fairMainTabBtnWrap>span
    {
        width: 9px
    }
}
@media only screen and (max-width: 500px)
{
    .fairPost .fairMainTabBtnWrap>span
    {
        width: 1.1111vw
    }
}
@media only screen and (min-width: 499px)
{
    .fairPost .fairMainTabBtn
    {
        width: 319px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairPost .fairMainTabBtn
    {
        width: 263px
    }
}
@media only screen and (max-width: 500px)
{
    .fairPost .fairMainTabBtn
    {
        width: 24.6944vw
    }
}
@media only screen and (min-width: 499px)
{
    .fairPost .fairMainTabContentWrap
    {
        padding: 70px 120px 80px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairPost .fairMainTabContentWrap
    {
        padding: 58px 99px 66px
    }
}
@media only screen and (max-width: 500px)
{
    #fairCalendar .secTtlCur .en
    {
        font-size: 10.1388vw
    }
}
.fairCalendarTableWrap
{
    position: relative;
    width: 100%
}
@media only screen and (max-width: 500px)
{
    .fairCalendarTableWrap
    {
        background: #f2f1ee;
        padding: 1.3888vw
    }
}
.fairCalendarTableSpDot
{
    width: 100%
}
@media only screen and (max-width: 500px)
{
    .fairCalendarTableSpDot
    {
        border: 1px dotted #3c5064;
        padding: 1.5em .5em
    }
}
.fairCalendarTable
{
    width: 100%;
    max-width: 100%;
    table-layout: fixed
}
.fairCalendarTable caption
{
    text-align: center
}
@media only screen and (min-width: 499px)
{
    .fairCalendarTable caption
    {
        padding-bottom: 26px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairCalendarTable caption
    {
        padding-bottom: 21px
    }
}
@media only screen and (max-width: 500px)
{
    .fairCalendarTable caption
    {
        padding-bottom: 4.1666vw
    }
}
.fairCalendarTable caption span
{
    display: block
}
.fairCalendarTable caption .num
{
    font-family: liana,script;
    font-weight: 400;
    font-style: normal
}
@media only screen and (min-width: 499px)
{
    .fairCalendarTable caption .num
    {
        font-size: 55px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairCalendarTable caption .num
    {
        font-size: 45px
    }
}
@media only screen and (max-width: 500px)
{
    .fairCalendarTable caption .num
    {
        font-size: 8.9736vw
    }
}
.fairCalendarTable caption .en
{
    font-family: petersburg-web,serif;
    font-weight: 400,700;
    font-style: normal,italic
}
@media only screen and (max-width: 500px)
{
    .fairCalendarTable caption .en
    {
        font-size: 2.143vw
    }
}
.fairCalendarTable th, .fairCalendarTable td
{
    width: 14.2857143%
}
@media only screen and (min-width: 499px)
{
    .fairCalendarTable th, .fairCalendarTable td
    {
        border: 1px solid #e0e0e0
    }
}
@media only screen and (max-width: 500px)
{
    .fairCalendarTable th, .fairCalendarTable td
    {
        text-align: center;
        padding: .8em .5em
    }
}
.fairCalendarTable thead th
{
    text-align: center
}
@media only screen and (min-width: 499px)
{
    .fairCalendarTable thead th
    {
        font-weight: bold;
        font-size: 13px;
        background: #d4cfc5;
        padding: .8em
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairCalendarTable thead th
    {
        font-size: 11px
    }
}
@media only screen and (max-width: 500px)
{
    .fairCalendarTable thead th
    {
        font-size: 2.7777vw;
        font-weight: normal
    }
}
@media only screen and (min-width: 499px)
{
    .fairCalendarTable thead th.week6
    {
        background: #3c5064;
        color: #fff
    }
}
@media only screen and (max-width: 500px)
{
    .fairCalendarTable thead th.week6
    {
        color: #3c5064
    }
}
@media only screen and (min-width: 499px)
{
    .fairCalendarTable thead th.week7
    {
        background: #821437;
        color: #fff
    }
}
@media only screen and (max-width: 500px)
{
    .fairCalendarTable thead th.week7
    {
        color: #821437
    }
}
.fairCalendarTable tbody td
{
    vertical-align: top
}
@media only screen and (min-width: 499px)
{
    .fairCalendarTable tbody td
    {
        padding: 7px 7px 25px;
        -webkit-transition: .2s;
        transition: .2s
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairCalendarTable tbody td
    {
        padding: 5px 5px 20px
    }
}
@media only screen and (min-width: 499px)
{
    .fairCalendarTable tbody td.eventAb
    {
        background: #efede9
    }
}
@media only screen and (max-width: 500px)
{
    .fairCalendarTable tbody td.eventPr
    {
        cursor: pointer
    }
    .fairCalendarTable tbody td.eventPr .eventBtn
    {
        text-decoration: underline
    }
}
@media only screen and (max-width: 500px)
{
    .fairCalendarTable tbody td.week6
    {
        color: #3c5064
    }
}
@media only screen and (max-width: 500px)
{
    .fairCalendarTable tbody td.week7
    {
        color: #821437
    }
}
@media only screen and (min-width: 499px)
{
    .fairCalendarTable tbody td .spCal
    {
        display: none
    }
}
.fairCalendarTable tbody td .spCal .eventBtn
{
    font-size: 3.3333vw;
    font-family: petersburg-web,serif;
    font-weight: 400,700;
    font-style: normal,italic
}
.fairCalendarTable tbody td .spCal .hold
{
    font-size: 2.7777vw;
    margin-top: .5em;
    font-family: "游ゴシック","Yu Gothic",YuGothic,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ ゴシック",sans-serif
}
@media only screen and (max-width: 500px)
{
    .fairCalendarTable tbody td .pcCal
    {
        display: none
    }
}
.fairCalendarTable tbody td .pcCal a
{
    display: block;
    margin-bottom: 5px;
    padding: 1em
}
@media only screen and (min-width: 499px)
{
    .fairCalendarTable tbody td .pcCal a
    {
        -webkit-transition: opacity .2s ease 0s;
        transition: opacity .2s ease 0s;
        cursor: pointer
    }
    .fairCalendarTable tbody td .pcCal a:hover
    {
        opacity: .7
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairCalendarTable tbody td .pcCal a
    {
        padding: .4em
    }
}
.fairCalendarTable tbody td .pcCal a p
{
    font-weight: bold;
    color: #3c5064;
    font-size: 12px;
    line-height: 1.4;
    text-decoration: underline;
    margin-bottom: .5em
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairCalendarTable tbody td .pcCal a p
    {
        font-size: 11px
    }
}
.fairCalendarTable tbody td .pcCal a .tagArea
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}
.fairCalendarTable tbody td .pcCal a .tagArea>span
{
    width: 24%;
    margin: 0 .5% 2px;
    font-size: 10px;
    text-align: center;
    display: block;
    padding: .3em 0;
    font-family: "游ゴシック","Yu Gothic",YuGothic,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ ゴシック",sans-serif
}
.fairCalendarTable tbody td .pcCal a .tagArea>span.tag1
{
    width: 48.5%
}
.fairCalendarTable tbody td .pcCal a .tagArea>span.tag6
{
    width: 73%;
    font-size: 9.5px;
    letter-spacing: -.15em
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairCalendarTable tbody td .pcCal a .tagArea>span.tag6
    {
        letter-spacing: -.2em
    }
}
.calDay
{
    font-weight: bold;
    letter-spacing: .05em;
    margin-bottom: 1em
}
@media only screen and (min-width: 499px)
{
    .calDay
    {
        font-size: 18px
    }
}
@media only screen and (min-width: 499px)
{
    .calDay
    {
        font-size: 15px
    }
}
.week6 .calDay
{
    color: #3c5064
}
.week7 .calDay
{
    color: #821437
}
.calFairCat1
{
    background: #fafaf8
}
.calFairCat2
{
    background: #f5f5f1
}
.calFairCat3
{
    background: #f0f0ea
}
.calFairCat4
{
    background: #f2e7eb
}
.calFairCat5
{
    background: #e6d0d7
}
.calFairCat6
{
    background: #ebedef
}
.calFairCat7
{
    background: #edefee
}
.calFairCat8
{
    background: #dbe0dc
}
.calFairCat9
{
    background: #f8f4eb
}
.tag1
{
    background: #821437;
    color: #fff
}
.tag2
{
    background: #e6e6dc
}
.tag3
{
    background: #b56d57;
    color: #fff
}
.tag4
{
    background: #4a6452;
    color: #fff
}
.tag5
{
    background: #3c5064;
    color: #fff
}
.tag6
{
    background: #aaa08c;
    color: #fff
}
.tag7
{
    background: #9e9e9e;
    color: #fff
}
.fairArwArea
{
    position: absolute;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}
@media only screen and (min-width: 499px)
{
    .fairArwArea
    {
        width: 100%;
        top: 13px;
    }
}
@media only screen and (max-width: 500px)
{
    .fairArwArea
    {
        width: 57.6388vw;
        top: 2.5em;
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        display: block;
        overflow: hidden
    }
}
.fairArwArea>span
{
    display: block;
    width: 3px;
    height: auto;
    background: #aaa08c;
    display: none
}
@media only screen and (max-width: 500px)
{
    .fairArwArea>span
    {
        display: none
    }
}
@media only screen and (min-width: 499px)
{
    .fairArwArea>div
    {
        -webkit-transition: opacity .2s ease 0s;
        transition: opacity .2s ease 0s;
        cursor: pointer
    }
    .fairArwArea>div:hover
    {
        opacity: .7
    }
}
@media only screen and (min-width: 499px)
{
    .fairArwArea>div
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
}
@media only screen and (max-width: 500px)
{
    .fairArwArea>div
    {
        cursor: pointer;
        padding: 1em 1em
    }
}
@media only screen and (min-width: 499px)
{
    .fairArwArea>div img
    {
        width: 22px;
        height: auto
    }
}
@media only screen and (max-width: 500px)
{
    .fairArwArea>div img
    {
        width: 3.4722vw;
        height: auto
    }
}
.fairArwArea>div p
{
    text-align: center;
    padding: 0 1.5em
}
.fairArwArea>div p span
{
    display: block
}
.fairArwArea>div p .num
{
    font-family: liana,script;
    font-weight: 400;
    font-style: normal
}
@media only screen and (min-width: 499px)
{
    .fairArwArea>div p .num
    {
        font-size: 26px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairArwArea>div p .num
    {
        font-size: 21px
    }
}
.fairArwArea>div p .en
{
    font-family: petersburg-web,serif;
    font-weight: 400,700;
    font-style: normal,italic
}
@media only screen and (min-width: 499px)
{
    .fairArwArea>div p .en
    {
        font-size: 12px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairArwArea>div p .en
    {
        font-size: 11px
    }
}
@media only screen and (max-width: 500px)
{
    .fairArwArea>div p
    {
        display: none
    }
}
@media only screen and (max-width: 500px)
{
    .fairArwPrv
    {
        float: left
    }
}
@media only screen and (max-width: 500px)
{
    .fairArwNxt
    {
        float: right
    }
}
@media only screen and (min-width: 499px) {
    .fairArwPrv
    {
        position: absolute;
        left: 0;
    }
    .fairArwNxt
    {
        position: absolute;
        right: 0;
    }
}
.spFairEventContentWrap
{
    margin-top: 6.9444vw
}
.spFairEventContentWrap h3
{
    text-align: center;
    margin-bottom: 5.5555vw
}
.spFairEventContentWrap h3 span
{
    position: relative;
    padding: 0 6vw;
    font-weight: bold;
    font-size: 4.1666vw;
    display: inline-block
}
.spFairEventContentWrap h3 span:before, .spFairEventContentWrap h3 span:after
{
    content: " ";
    display: block;
    width: 4.5833vw;
    height: 4.5833vw;
    background: url(assets/images/common/icn_flower.svg) center no-repeat;
    background-size: contain;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-52%);
    transform: translateY(-52%)
}
.spFairEventContentWrap h3 span:before
{
    left: 0
}
.spFairEventContentWrap h3 span:after
{
    right: 0
}
.spFairEventContent .notes
{
    text-align: center;
    padding: 8.3333vw;
    font-weight: bold;
    line-height: 1.666;
    background: #f2f1ee
}
.spFairEventListWrap
{
    display: none
}
.spFairEventListWrap a
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 3.4722vw;
    background-image: url(assets/images/common/weekend_bg2.jpg);
    background-size: 100px 100px;
    margin-bottom: 1.25vw
}
.spFairEventListWrap a:last-child
{
    margin-bottom: 0
}
.spFairEventListWrap a:nth-child(2n)
{
    background-image: url(assets/images/common/weekend_bg1.jpg)
}
.spFairEventTh
{
    width: 30.7407%
}
.spFairEventTxt
{
    width: 65%
}
.spFairEventDate
{
    font-weight: bold;
    padding-left: 1.6666vw;
    border-left: .4166vw solid #3c5064;
    margin-bottom: 1em
}
.spFairEventDate span
{
    display: inline-block;
    color: #3c5064;
    letter-spacing: .05em
}
.spFairEventDate .date
{
    font-size: 3.5vw
}
.spFairEventDate .week
{
    font-size: 2.7777vw;
    margin-right: .7em
}
.spFairEventDate .time
{
    font-size: 3.1vw
}
.spFairEventTtl
{
    font-weight: bold;
    line-height: 1.666;
    font-size: 3.1vw;
    letter-spacing: -.03em
}
#overlayEvent
{
    display: none;
    width: 100%;
    height: 100vh;
    position: fixed;
    z-index: 10100;
    top: 0;
    left: 0;
    background: rgba(0,0,0,.6)
}
#overlayEvent img
{
    width: 20%;
    height: auto;
    position: absolute;
    top: 50%;
    left: 50%;
    display: block;
    -webkit-animation: loading 3s linear infinite;
    animation: loading 3s linear infinite
}
@-webkit-keyframes loading
{
    0%
    {
        -webkit-transform: translate(-50%,-50%) rotate(0deg);
        transform: translate(-50%,-50%) rotate(0deg)
    }
    100%
    {
        -webkit-transform: translate(-50%,-50%) rotate(360deg);
        transform: translate(-50%,-50%) rotate(360deg)
    }
}
@keyframes loading
{
    0%
    {
        -webkit-transform: translate(-50%,-50%) rotate(0deg);
        transform: translate(-50%,-50%) rotate(0deg)
    }
    100%
    {
        -webkit-transform: translate(-50%,-50%) rotate(360deg);
        transform: translate(-50%,-50%) rotate(360deg)
    }
}
.fairRec
{
    position: relative
}
@media only screen and (min-width: 499px)
{
    .fairRec
    {
        padding: 60px 50px 55px 60px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        background-image: url(assets/images/fair/bg_fair_recommend_pc.jpg);
        background-size: 50px 50px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairRec
    {
        padding: 50px 41px 45px 50px
    }
}
@media only screen and (max-width: 500px)
{
    .fairRec
    {
        padding: 6.9444vw 6.9444vw 11.1111vw 6.9444vw;
        background-image: url(assets/images/fair/bg_fair_recommend_sp.jpg);
        background-size: 100px 100px
    }
}
.fairRec:before, .fairRec:after
{
    content: "　";
    position: absolute;
    z-index: 10;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain
}
@media only screen and (min-width: 499px)
{
    .fairRec:before, .fairRec:after
    {
        width: 89px;
        height: 89px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairRec:before, .fairRec:after
    {
        width: 73px;
        height: 73px
    }
}
@media only screen and (max-width: 500px)
{
    .fairRec:before, .fairRec:after
    {
        width: 11.7638vw;
        height: 11.7638vw
    }
}
.fairRec:before
{
    background-image: url(assets/images/fair/corner_fair_left.svg)
}
@media only screen and (min-width: 499px)
{
    .fairRec:before
    {
        bottom: -15px;
        left: -15px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairRec:before
    {
        bottom: -12px;
        left: -12px
    }
}
@media only screen and (max-width: 500px)
{
    .fairRec:before
    {
        bottom: -2.0833vw;
        left: -2.0833vw
    }
}
.fairRec:after
{
    background-image: url(assets/images/fair/corner_fair_right.svg)
}
@media only screen and (min-width: 499px)
{
    .fairRec:after
    {
        top: -15px;
        right: -15px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairRec:after
    {
        top: -12px;
        right: -12px
    }
}
@media only screen and (max-width: 500px)
{
    .fairRec:after
    {
        top: -2.0833vw;
        right: -2.0833vw
    }
}
@media only screen and (min-width: 499px)
{
    .fairRecTh
    {
        width: 38.7797%;
        padding-right: 10px
    }
}
@media only screen and (max-width: 500px)
{
    .fairRecTh
    {
        padding-right: .6819vw
    }
}
.fairRecTh figure
{
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    width: 100%;
    height: 0;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    padding-bottom: 100%;
    display: block
}
@media only screen and (min-width: 499px)
{
    .fairRecTh figure
    {
        -webkit-box-shadow: 10px 10px 0 0 rgba(83,71,65,.1);
        box-shadow: 10px 10px 0 0 rgba(83,71,65,.1)
    }
}
@media only screen and (max-width: 500px)
{
    .fairRecTh figure
    {
        -webkit-box-shadow: .6819vw .6819vw 0 0 rgba(83,71,65,.1);
        box-shadow: .6819vw .6819vw 0 0 rgba(83,71,65,.1)
    }
}
@media only screen and (min-width: 499px)
{
    .fairRecTxt
    {
        width: 55.2223%
    }
}
.fairRecTxt h3
{
    background-position: left center;
    background-repeat: no-repeat;
    background-size: contain
}
@media only screen and (min-width: 499px)
{
    .fairRecTxt h3
    {
        background-image: url(assets/images/fair/ribbon_recommend_fair_pc.jpg);
        line-height: 52px;
        margin-top: 20px;
        margin-bottom: 35px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairRecTxt h3
    {
        line-height: 43px;
        margin-top: 10px;
        margin-bottom: 30px
    }
}
@media only screen and (max-width: 500px)
{
    .fairRecTxt h3
    {
        background-image: url(assets/images/fair/ribbon_recommend_fair_sp.jpg);
        line-height: 7.6388vw;
        margin-top: 4.8611vw;
        margin-bottom: 6.9444vw
    }
}
.fairRecTxt h3 span
{
    display: inline-block;
    width: 50%
}
.fairRecTxt h3 .en
{
    text-align: center;
    -webkit-transform: rotate(-11deg) translate(0,15%);
    transform: rotate(-11deg) translate(0,15%);
    color: #821437;
    font-family: 'Italianno',cursive
}
@media only screen and (min-width: 499px)
{
    .fairRecTxt h3 .en
    {
        font-size: 58px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairRecTxt h3 .en
    {
        font-size: 49px
    }
}
@media only screen and (max-width: 500px)
{
    .fairRecTxt h3 .en
    {
        font-size: 9.6347vw;
        letter-spacing: -.02em
    }
}
.fairRecTxt h3 .jp
{
    font-weight: bold
}
@media only screen and (min-width: 499px)
{
    .fairRecTxt h3 .jp
    {
        font-size: 17px;
        padding-left: .5em;
        letter-spacing: .08em
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairRecTxt h3 .jp
    {
        font-size: 14px
    }
}
@media only screen and (max-width: 500px)
{
    .fairRecTxt h3 .jp
    {
        font-size: 3vw;
        padding-left: .5em
    }
}
.fairRecDateWrap
{
    border-left: 2px solid #3c5064;
    padding-left: .5em;
    font-weight: bold;
    color: #3c5064
}
@media only screen and (min-width: 499px)
{
    .fairRecDateWrap
    {
        margin-bottom: 15px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairRecDateWrap
    {
        margin-bottom: 12px
    }
}
@media only screen and (max-width: 500px)
{
    .fairRecDateWrap
    {
        margin-bottom: 4.0277vw
    }
}
.fairRecDate
{
    letter-spacing: .05em
}
@media only screen and (min-width: 499px)
{
    .fairRecDate
    {
        font-size: 20px;
        margin-bottom: 8px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairRecDate
    {
        font-size: 16px;
        margin-bottom: 7px
    }
}
@media only screen and (max-width: 500px)
{
    .fairRecDate
    {
        font-size: 3.6111vw;
        margin-bottom: 2.0833vw
    }
}
@media only screen and (min-width: 499px)
{
    .fairRecDate span
    {
        font-size: 15px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairRecDate span
    {
        font-size: 12px
    }
}
@media only screen and (max-width: 500px)
{
    .fairRecDate span
    {
        font-size: 2.7777vw
    }
}
@media only screen and (min-width: 499px)
{
    .fairRecTime
    {
        font-size: 12px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairRecTime
    {
        font-size: 11px
    }
}
@media only screen and (max-width: 500px)
{
    .fairRecTime
    {
        font-size: 3.3vw
    }
}
.fairArcTtl
{
    font-weight: bold;
    padding-bottom: 1em;
    border-bottom: 1px dotted #282f37;
    letter-spacing: .05em;
    margin-bottom: .8em
}
@media only screen and (min-width: 499px)
{
    .fairArcTtl
    {
        font-size: 17px;
        line-height: 1.666
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairArcTtl
    {
        font-size: 14px
    }
}
@media only screen and (max-width: 500px)
{
    .fairArcTtl
    {
        font-size: 3.6111vw;
        line-height: 1.5384
    }
}
@media only screen and (min-width: 499px)
{
    .fairArcTtl.ichioshi
    {
        padding-right: 5em
    }
}
.fairArcComment
{
    font-weight: bold
}
@media only screen and (min-width: 499px)
{
    .fairArcComment
    {
        line-height: 1.5714
    }
}
@media only screen and (max-width: 500px)
{
    .fairArcComment
    {
        line-height: 1.666
    }
}
.fairArcBtnArea
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}
@media only screen and (min-width: 499px)
{
    .fairArcBtnArea
    {
        margin-top: 30px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairArcBtnArea
    {
        margin-top: 25px
    }
}
@media only screen and (max-width: 500px)
{
    .fairArcBtnArea
    {
        margin-top: 7.6388vw
    }
}
.fairArcBtnArea a
{
    display: block;
    position: relative;
    width: 48.6891%
}
@media only screen and (min-width: 499px)
{
    .fairArcBtnArea a
    {
        font-size: 14px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairArcBtnArea a
    {
        font-size: 12px
    }
}
@media only screen and (max-width: 500px)
{
    .fairArcBtnArea a
    {
        font-size: 3.3vw
    }
}
@media only screen and (min-width: 499px)
{
    .fairArcBtnArea a
    {
        -webkit-transition: opacity .2s ease 0s;
        transition: opacity .2s ease 0s;
        cursor: pointer
    }
    .fairArcBtnArea a:hover
    {
        opacity: .7
    }
}
@media only screen and (min-width: 499px)
{
    .fairArcBtnArea a
    {
        height: 50px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairArcBtnArea a
    {
        height: 41px
    }
}
@media only screen and (max-width: 500px)
{
    .fairArcBtnArea a
    {
        height: 9.7222vw;
        width: 48.6%
    }
}
.fairArcBtnArea a:after
{
    content: " ";
    display: block;
    position: absolute;
    top: 50%;
    -webkit-transform: translate(0,-50%);
    transform: translate(0,-50%);
    background-image: url(assets/images/common/arw_btn_w_sp.svg);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat
}
@media only screen and (min-width: 499px)
{
    .fairArcBtnArea a:after
    {
        width: 22px;
        height: 5px;
        right: 14px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairArcBtnArea a:after
    {
        width: 20px;
        height: 4px;
        right: 12px
    }
}
@media only screen and (max-width: 500px)
{
    .fairArcBtnArea a:after
    {
        width: 3.0555vw;
        height: 1vw;
        right: 3.055vw
    }
}
.fairArcBtnArea a span
{
    font-weight: bold;
    text-align: center;
    color: #fff;
    position: absolute;
    display: block;
    width: 100%;
    top: 50%;
    left: 0;
    -webkit-transform: translate(0,-50%);
    transform: translate(0,-50%)
}
.fairArcBtnArea .postBtn
{
    background: #282f37
}
.fairArcBtnArea .rsvBtn
{
    background: #aaa08c
}
@media only screen and (max-width: 500px)
{
    .fairArcBtnArea .rsvBtn span
    {
        font-size: 3.0555vw;
        line-height: 1.13
    }
}
.fairArcNotes
{
    float: right;
    text-align: center;
    margin-top: 1em;
    font-family: "游ゴシック","Yu Gothic",YuGothic,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ ゴシック",sans-serif
}
@media only screen and (min-width: 499px)
{
    .fairArcNotes
    {
        font-size: 12px;
        width: 48.6891%
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairArcNotes
    {
        font-size: 10px
    }
}
@media only screen and (max-width: 500px)
{
    .fairArcNotes
    {
        font-size: 3.0555vw
    }
}
.fairArcArea
{
    margin-top: 80px
}
@media only screen and (min-width: 499px)
{
    .fairArcArea
    {
        margin-top: 80px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairArcArea
    {
        margin-top: 66px
    }
}
@media only screen and (max-width: 500px)
{
    .fairArcArea
    {
        margin-top: 12.5vw
    }
}
@media only screen and (min-width: 499px)
{
    .fairArcDayWrap
    {
        padding-top: 150px;
        margin-top: -150px
    }
}
@media only screen and (max-width: 500px)
{
    .fairArcDayWrap
    {
        margin-bottom: 2.7777vw;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between
    }
    .fairArcDayWrap:last-child
    {
        margin-bottom: 0
    }
}
.airArcDay
{
    background: #d7d0c6;
    text-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding-top: 2em
}
@media only screen and (min-width: 499px)
{
    .airArcDay
    {
        width: 5.5555%
    }
}
@media only screen and (max-width: 500px)
{
    .airArcDay
    {
        width: 11.6666%
    }
}
.airArcDay#weekendSat
{
    background: #3c5064;
    color: #fff
}
.airArcDay#weekendSun
{
    background: #821437;
    color: #fff
}
.airArcDay .day
{
    font-weight: bold
}
@media only screen and (min-width: 499px)
{
    .airArcDay .day
    {
        font-size: 22px;
        margin-bottom: .4em;
        letter-spacing: -.05em
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .airArcDay .day
    {
        font-size: 18px
    }
}
@media only screen and (max-width: 500px)
{
    .airArcDay .day
    {
        font-size: 3.6111vw
    }
    .airArcDay .day span
    {
        display: block;
        margin-bottom: .3em
    }
}
.airArcDay .week
{
    font-weight: bold
}
@media only screen and (min-width: 499px)
{
    .airArcDay .week
    {
        font-size: 16px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .airArcDay .week
    {
        font-size: 13px
    }
}
@media only screen and (max-width: 500px)
{
    .airArcDay .week
    {
        font-size: 3.0555vw
    }
}
@media only screen and (max-width: 500px)
{
    .fairArcWrap
    {
        width: 83.5%
    }
}
.fairArcListWrap
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}
@media only screen and (min-width: 499px)
{
    .fairArcListWrap
    {
        margin-bottom: 30px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairArcListWrap
    {
        margin-bottom: 25px
    }
}
@media only screen and (max-width: 500px)
{
    .fairArcListWrap
    {
        margin-bottom: 2.5vw
    }
}
.fairArcDayWrap:last-child .fairArcListWrap:last-child
{
    margin-bottom: 0
}
.fairArcList
{
    border: 1px solid #aaa08c
}
@media only screen and (min-width: 499px)
{
    .fairArcList
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        padding: 27px 49px 27px 27px;
        margin-bottom: 30px;
        width: 92.5%
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairArcList
    {
        padding: 23px 40px 23px 23px;
        margin-bottom: 25px
    }
}
@media only screen and (max-width: 500px)
{
    .fairArcList
    {
        padding: 3.3333vw;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        margin-bottom: 2.7777vw
    }
}
.fairArcList:last-child
{
    margin-bottom: 0
}
@media only screen and (min-width: 499px)
{
    .fairArcList .fairArcBtnArea
    {
        margin-top: 15px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairArcList .fairArcBtnArea
    {
        margin-top: 12px
    }
}
@media only screen and (max-width: 500px)
{
    .fairArcList .fairArcTtl
    {
        margin-bottom: 0
    }
}
@media only screen and (min-width: 499px)
{
    .fairArcTh
    {
        width: 34.7826%
    }
}
@media only screen and (max-width: 500px)
{
    .fairArcTh
    {
        width: 31.1688%
    }
}
.fairArcTh figure
{
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    width: 100%;
    height: 0;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    padding-bottom: 100%;
    display: block
}
@media only screen and (min-width: 499px)
{
    .fairArcTxt
    {
        width: 61.9565%;
        padding-top: 15px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairArcTxt
    {
        padding-top: 12px
    }
}
@media only screen and (max-width: 500px)
{
    .fairArcTxt
    {
        width: 64.935%
    }
}
.fairArcTxt .fairArcTtl
{
    padding-bottom: .7em
}
@media only screen and (min-width: 499px)
{
    .fairArcTxt .fairArcTtl
    {
        font-size: 17px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairArcTxt .fairArcTtl
    {
        font-size: 14px
    }
}
@media only screen and (max-width: 500px)
{
    .fairArcTxt .fairArcTtl
    {
        font-size: 3.5vw;
        letter-spacing: 0;
        border-bottom: none;
        padding-bottom: 0
    }
}
.fairArcDateWrap
{
    border-left: 2px solid #3c5064;
    padding-left: .5em;
    font-weight: bold;
    color: #3c5064
}
@media only screen and (min-width: 499px)
{
    .fairArcDateWrap
    {
        margin-bottom: 10px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairArcDateWrap
    {
        margin-bottom: 8px
    }
}
@media only screen and (max-width: 500px)
{
    .fairArcDateWrap
    {
        margin-bottom: 2.7777vw
    }
}
.fairArcTagWrap
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}
@media only screen and (min-width: 499px)
{
    .fairArcTagWrap
    {
        margin-top: 20px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairArcTagWrap
    {
        margin-top: 16px
    }
}
.fairArcTag
{
    border: 1px solid #282f37;
    text-align: center;
    line-height: 1.666;
    padding: .5em 1.2em;
    font-family: "游ゴシック","Yu Gothic",YuGothic,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ ゴシック",sans-serif
}
@media only screen and (min-width: 499px)
{
    .fairArcTag
    {
        margin: 0 6px 8px 0;
        font-size: 13px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairArcTag
    {
        margin: 0 6px 7px 0;
        font-size: 11px
    }
}
@media only screen and (max-width: 500px)
{
    .fairArcTag
    {
        margin-bottom: 1.1111vw;
        font-size: 2.7777vw;
        margin-right: 2%
    }
}
@media only screen and (min-width: 499px)
{
    .fairArcTag.fairArcTagSmall
    {
        font-size: 11px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairArcTag.fairArcTagSmall
    {
        font-size: 10px;
        letter-spacing: -.1em
    }
}
@media only screen and (max-width: 500px)
{
    .fairArcTag.fairArcTagSmall
    {
        letter-spacing: -.1em
    }
}
.fairArcPageBtnWrap
{
    border-top: 1px dotted #282f37;
    display: block;
    clear: both;
    overflow: hidden
}
@media only screen and (min-width: 499px)
{
    .fairArcPageBtnWrap
    {
        margin-top: 60px;
        padding-top: 25px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairArcPageBtnWrap
    {
        margin-top: 50px;
        padding-top: 20px
    }
}
@media only screen and (max-width: 500px)
{
    .fairArcPageBtnWrap
    {
        margin-top: 8.3333vw;
        padding-top: 7.6388vw
    }
}
.fairArcPageBtn
{
    font-weight: bold;
    display: inline-block
}
@media only screen and (min-width: 499px)
{
    .fairArcPageBtn
    {
        font-size: 16px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairArcPageBtn
    {
        font-size: 13px
    }
}
@media only screen and (max-width: 500px)
{
    .fairArcPageBtn
    {
        font-size: 3.3333vw
    }
}
.fairArcPageBtn span, .fairArcPageBtn img
{
    display: inline-block;
    vertical-align: middle
}
.fairArcPageBtn span
{
    padding: 0 1.5em
}
@media only screen and (min-width: 499px)
{
    .fairArcPageBtn img
    {
        width: 22px;
        height: auto
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairArcPageBtn img
    {
        width: 18px;
        height: auto
    }
}
@media only screen and (max-width: 500px)
{
    .fairArcPageBtn img
    {
        width: 4.8888vw;
        height: auto
    }
}
.fairArcPageBtnPrv
{
    float: left
}
.fairArcPageBtnNxt
{
    float: right
}
.fairPostInner
{
    border: 2px solid #aaa08c;
    position: relative
}
@media only screen and (min-width: 499px)
{
    .fairPostInner
    {
        padding: 48px 48px 63px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairPostInner
    {
        padding: 40px 40px 52px
    }
}
@media only screen and (max-width: 500px)
{
    .fairPostInner
    {
        padding: 6.9444vw 6.9444vw 11.1111vw
    }
}
.fairPostRibbon
{
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    text-align: center;
    position: absolute;
    overflow: visible !important
}
@media only screen and (min-width: 499px)
{
    .fairPostRibbon
    {
        background-image: url(assets/images/fair/ribbon_fair_pc.svg);
        right: 48px;
        top: -9px;
        width: 102px;
        height: 106px;
        padding-top: 55px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairPostRibbon
    {
        right: 40px;
        top: -8px;
        width: 84px;
        height: 87px;
        padding-top: 45px
    }
}
@media only screen and (max-width: 500px)
{
    .fairPostRibbon
    {
        background-image: url(assets/images/fair/ribbon_fair_sp.svg);
        /* right: 6.9444vw;
        top: -1.3888vw;
        width: 18.0555vw;
        height: 18.3333vw;
        padding-top: 9.7222vw */
        right: 3vw;
        top: -4vw;
        width: 14.833vw;
        height: 14.958vw;
        padding-top: 8vw;
    }
}
.fairPostRibbon>*
{
    color: #aaa08c
}
.fairPostRibbon .en
{
    display: inline-block;
    position: absolute;
    -webkit-transform: rotate(-7deg) translateX(-50%);
    transform: rotate(-7deg) translateX(-50%);
    left: 50%;
    font-family: 'Italianno',cursive
}
@media only screen and (min-width: 499px)
{
    .fairPostRibbon .en
    {
        font-size: 46px;
        top: 2px;
        letter-spacing: -.02em
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairPostRibbon .en
    {
        font-size: 38px;
        top: 2px
    }
}
@media only screen and (max-width: 500px)
{
    .fairPostRibbon .en
    {
        /* font-size: 7.2222vw;
        top: 2.0833vw */
        font-size: 6.5vw;
        top: 0;
    }
}
.fairPostRibbon .jp
{
    display: inline-block;
    position: relative;
    text-align: center;
    font-weight: bold;
    padding: 0 .7em
}
@media only screen and (min-width: 499px)
{
    .fairPostRibbon .jp
    {
        font-size: 14px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairPostRibbon .jp
    {
        font-size: 12px
    }
}
@media only screen and (max-width: 500px)
{
    .fairPostRibbon .jp
    {
        /* font-size: 2.7777vw */
        font-size: 2vw
    }
}
.fairPostRibbon .jp:before, .fairPostRibbon .jp:after
{
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    display: block;
    content: " ";
    background: #aaa08c;
    height: 1px
}
@media only screen and (min-width: 499px)
{
    .fairPostRibbon .jp:before, .fairPostRibbon .jp:after
    {
        width: 6px
    }
}
@media only screen and (max-width: 500px)
{
    .fairPostRibbon .jp:before, .fairPostRibbon .jp:after
    {
        width: 1.1111vw
    }
}
.fairPostRibbon .jp:before
{
    left: 0
}
.fairPostRibbon .jp:after
{
    right: 0
}
.fairPostDateWrap
{
    border-left: 2px solid #3c5064;
    padding-left: .5em;
    font-weight: bold;
    color: #3c5064
}
@media only screen and (min-width: 499px)
{
    .fairPostDateWrap
    {
        margin-bottom: 10px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairPostDateWrap
    {
        margin-bottom: 8px
    }
}
@media only screen and (max-width: 500px)
{
    .fairPostDateWrap
    {
        margin-bottom: 4.0277vw
    }
}
.fairPostDate
{
    letter-spacing: .05em
}
@media only screen and (min-width: 499px)
{
    .fairPostDate
    {
        font-size: 14px;
        display: inline-block
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairPostDate
    {
        font-size: 12px
    }
}
@media only screen and (max-width: 500px)
{
    .fairPostDate
    {
        font-size: 3.6111vw;
        margin-bottom: 2.0833vw
    }
}
@media only screen and (min-width: 499px)
{
    .fairPostDate span
    {
        font-size: 12px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairPostDate span
    {
        font-size: 10px
    }
}
@media only screen and (max-width: 500px)
{
    .fairPostDate span
    {
        font-size: 2.7777vw
    }
}
@media only screen and (min-width: 499px)
{
    .fairPostTime
    {
        display: inline-block
    }
}
.fairPostTtl
{
    letter-spacing: .1em;
    font-weight: bold
}
@media only screen and (min-width: 499px)
{
    .fairPostTtl
    {
        font-size: 22px;
        line-height: 1.181;
        margin-bottom: 20px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairPostTtl
    {
        font-size: 18px;
        margin-bottom: 16px
    }
}
@media only screen and (max-width: 500px)
{
    .fairPostTtl
    {
        font-size: 3.6111vw;
        line-height: 1.538;
        margin-bottom: 3.4722vw
    }
}
.fairPostTagWrap
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}
@media only screen and (min-width: 499px)
{
    .fairPostTagWrap
    {
        margin-bottom: 30px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairPostTagWrap
    {
        margin-bottom: 25px
    }
}
@media only screen and (max-width: 500px)
{
    .fairPostTagWrap
    {
        margin-bottom: 7.9166vw
    }
}
.fairPostTag
{
    border: 1px solid #282f37;
    text-align: center;
    line-height: 1.666;
    padding: .5em 1.2em;
    font-family: "游ゴシック","Yu Gothic",YuGothic,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ ゴシック",sans-serif
}
@media only screen and (min-width: 499px)
{
    .fairPostTag
    {
        margin-right: 6px;
        margin-bottom: 8px;
        font-size: 13px
    }
    .fairPostTag:nth-child(7n)
    {
        margin-right: 0
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairPostTag
    {
        font-size: 6px;
        margin-bottom: 7px
    }
}
@media only screen and (max-width: 500px)
{
    .fairPostTag
    {
        margin-bottom: 1.1111vw;
        font-size: 2.7777vw;
        margin-right: 2%
    }
}
@media only screen and (min-width: 499px)
{
    .fairPostTag.fairPostTagSmall
    {
        font-size: 11px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairPostTag.fairPostTagSmall
    {
        font-size: 10px;
        letter-spacing: -.1em
    }
}
@media only screen and (min-width: 499px)
{
    .fairPostDescription
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        margin-bottom: 53px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairPostDescription
    {
        margin-bottom: 43px
    }
}
@media only screen and (max-width: 500px)
{
    .fairPostDescription
    {
        margin-bottom: 11.1111vw
    }
}
@media only screen and (min-width: 499px)
{
    .fairPostTh
    {
        width: 39.886%
    }
}
@media only screen and (max-width: 500px)
{
    .fairPostTh
    {
        margin-bottom: 3.4722vw
    }
}
.fairPostTh figure
{
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    width: 100%;
    height: 0;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    padding-bottom: 100%;
    display: block
}
@media only screen and (min-width: 499px)
{
    .fairPostTxt
    {
        width: 56.136%
    }
}
@media only screen and (min-width: 499px)
{
    .fairPostComment
    {
        font-weight: bold;
        line-height: 1.571;
        margin-bottom: 25px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairPostComment
    {
        margin-bottom: 20px
    }
}
@media only screen and (max-width: 500px)
{
    .fairPostComment
    {
        line-height: 1.666;
        margin-bottom: 6.25vw
    }
}
@media only screen and (min-width: 499px)
{
    .fairPostSpecial
    {
        margin-bottom: 25px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairPostSpecial
    {
        margin-bottom: 20px
    }
}
@media only screen and (max-width: 500px)
{
    .fairPostSpecial
    {
        margin-bottom: 8.3333vw
    }
}
.fairPostConTtl
{
    padding-left: .5em;
    font-weight: bold
}
@media only screen and (min-width: 499px)
{
    .fairPostConTtl
    {
        font-size: 18px;
        margin-bottom: 20px;
        border-left: 4px solid #3c5064
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairPostConTtl
    {
        font-size: 15px;
        margin-bottom: 16px
    }
}
@media only screen and (max-width: 500px)
{
    .fairPostConTtl
    {
        font-size: 4.1666vw;
        margin-bottom: 3.4722vw;
        border-left: .8333vw solid #3c5064
    }
}
@media only screen and (min-width: 499px)
{
    .fairPostSpecialContent
    {
        padding-left: 1.2em
    }
}
@media only screen and (max-width: 500px)
{
    .fairPostSpecialContent
    {
        padding-left: 1em
    }
}
@media only screen and (min-width: 499px)
{
    .fairPostSpecialContent ul
    {
        margin-bottom: 14px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairPostSpecialContent ul
    {
        margin-bottom: 11px
    }
}
@media only screen and (max-width: 500px)
{
    .fairPostSpecialContent ul
    {
        margin-bottom: 4.1666vw
    }
}
.fairPostSpecialContent ul li
{
    position: relative;
    padding-left: 1.5em
}
@media only screen and (min-width: 499px)
{
    .fairPostSpecialContent ul li
    {
        margin-bottom: 14px;
        letter-spacing: .1em
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairPostSpecialContent ul li
    {
        margin-bottom: 11px
    }
}
@media only screen and (max-width: 500px)
{
    .fairPostSpecialContent ul li
    {
        font-size: 3.0555vw;
        margin-bottom: 2.0833vw
    }
}
.fairPostSpecialContent ul li:last-child
{
    margin-bottom: 0
}
.fairPostSpecialContent ul li:before
{
    content: "　";
    display: block;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    background-image: url(assets/images/common/icn_flower.svg);
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}
@media only screen and (min-width: 499px)
{
    .fairPostSpecialContent ul li:before
    {
        width: 15px;
        height: 15px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairPostSpecialContent ul li:before
    {
        width: 13px;
        height: 13px
    }
}
@media only screen and (max-width: 500px)
{
    .fairPostSpecialContent ul li:before
    {
        width: 3.75vw;
        height: 3.75vw
    }
}
.fairPostSpecialContent .notes dl
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-family: "游ゴシック","Yu Gothic",YuGothic,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ ゴシック",sans-serif
}
@media only screen and (min-width: 499px)
{
    .fairPostSpecialContent .notes dl
    {
        font-size: 13px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairPostSpecialContent .notes dl
    {
        font-size: 11px
    }
}
@media only screen and (max-width: 500px)
{
    .fairPostSpecialContent .notes dl
    {
        font-size: 3vw
    }
}
.fairPostSpecialContent .notes dl dt
{
    width: 6em;
    position: relative;
    padding-right: 1em;
    line-height: 1.692
}
@media only screen and (max-width: 500px)
{
    .fairPostSpecialContent .notes dl dt
    {
        width: 10em
    }
}
.fairPostSpecialContent .notes dl dt:after
{
    content: ":";
    position: absolute;
    top: 0;
    right: .4em;
    display: block
}
.fairPostSpecialContent .notes dl dd
{
    width: 27em;
    line-height: 1.692
}
@media only screen and (max-width: 500px)
{
    .fairPostSpecialContent .notes dl dd
    {
        width: 24em;
        text-align: justify
    }
}
.fairPostBtn button, .fairPostFormBtn button
{
    margin-top: 0
}
@media only screen and (min-width: 499px)
{
    .fairPostBtn button, .fairPostFormBtn button
    {
        font-size: 14px;
        padding: 14px 0
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairPostBtn button, .fairPostFormBtn button
    {
        font-size: 12px;
        padding: 12px 0
    }
}
@media only screen and (max-width: 500px)
{
    .fairPostBtn button, .fairPostFormBtn button
    {
        font-size: 3.3333vw;
        padding: 3.34722vw 0
    }
}
@media only screen and (min-width: 499px)
{
    .fairPostRec
    {
        margin-bottom: 50px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairPostRec
    {
        margin-bottom: 41px
    }
}
@media only screen and (max-width: 500px)
{
    .fairPostRec
    {
        margin-bottom: 11.8055vw
    }
}
@media only screen and (min-width: 499px)
{
    .fairPostRecInner
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -ms-flex: 0 1 auto
    }
}
@media only screen and (min-width: 499px)
{
    .fairPostRecList
    {
        width: 48.409%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex: 0 1 auto
    }
}
@media only screen and (max-width: 500px)
{
    .fairPostRecList
    {
        margin-bottom: 2.0833vw
    }
    .fairPostRecList:last-child
    {
        margin-bottom: 0
    }
}
@media only screen and (min-width: 499px)
{
    .fairPostRecTh
    {
        width: 45.774%
    }
}
.fairPostRecTxt
{
    background: #edebe2;
    -ms-flex: 0 1 auto
}
@media only screen and (min-width: 499px)
{
    .fairPostRecTxt
    {
        width: 54.226%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        padding: 5px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairPostRecTxt
    {
        padding: 4px
    }
}
@media only screen and (max-width: 500px)
{
    .fairPostRecTxt
    {
        padding: 1.3888vw
    }
}
.fairPostRecTxtInner
{
    border: 1px solid #aaa08c;
    -ms-flex: 0 1 auto
}
@media only screen and (min-width: 499px)
{
    .fairPostRecTxtInner
    {
        padding: 20px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairPostRecTxtInner
    {
        padding: 16px
    }
}
@media only screen and (max-width: 500px)
{
    .fairPostRecTxtInner
    {
        padding: 4.1666vw 3.0555vw
    }
}
.fairPostRecTtl
{
    text-align: center
}
@media only screen and (min-width: 499px)
{
    .fairPostRecTtl
    {
        margin-bottom: 15px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairPostRecTtl
    {
        margin-bottom: 13px
    }
}
@media only screen and (max-width: 500px)
{
    .fairPostRecTtl
    {
        margin-bottom: 3.4722vw
    }
}
.fairPostRecTtl span
{
    display: block
}
.fairPostRecTtl .en
{
    color: #821437;
    font-family: 'Italianno',cursive
}
@media only screen and (min-width: 499px)
{
    .fairPostRecTtl .en
    {
        font-size: 38px;
        margin-bottom: 15px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairPostRecTtl .en
    {
        font-size: 31px;
        margin-bottom: 13px
    }
}
@media only screen and (max-width: 500px)
{
    .fairPostRecTtl .en
    {
        font-size: 8.75vw;
        margin-bottom: 2.7777vw
    }
}
.fairPostRecTtl .jp
{
    font-weight: bold
}
@media only screen and (min-width: 499px)
{
    .fairPostRecTtl .jp
    {
        font-size: 18px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairPostRecTtl .jp
    {
        font-size: 15px
    }
}
@media only screen and (max-width: 500px)
{
    .fairPostRecTtl .jp
    {
        font-size: 3.3333vw
    }
}
.fairPostReccomment
{
    font-family: "游ゴシック","Yu Gothic",YuGothic,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ ゴシック",sans-serif
}
@media only screen and (min-width: 499px)
{
    .fairPostReccomment
    {
        line-height: 1.714;
        letter-spacing: -.01em;
        font-size: 13px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairPostReccomment
    {
        font-size: 11px
    }
}
@media only screen and (max-width: 500px)
{
    .fairPostReccomment
    {
        font-size: 2.7361vw;
        line-height: 2
    }
}
@media only screen and (min-width: 499px)
{
    .fairPostInc
    {
        margin-bottom: 50px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairPostInc
    {
        margin-bottom: 41px
    }
}
@media only screen and (max-width: 500px)
{
    .fairPostInc
    {
        margin-bottom: 8.3333vw
    }
}
@media only screen and (min-width: 499px)
{
    .fairPostIncInner dl
    {
        border-top: 1px solid #ccc6ba;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }
    .fairPostIncInner dl:last-child
    {
        border-bottom: 1px solid #ccc6ba
    }
    .fairPostIncInner dl dt
    {
        background: #f2f1ee;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        width: 32.5%;
        padding: 15px
    }
    .fairPostIncInner dl dd
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        width: 67.5%;
        padding: 27px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairPostIncInner dl dt
    {
        padding: 13px
    }
    .fairPostIncInner dl dd
    {
        padding: 22px
    }
}
@media only screen and (max-width: 500px)
{
    .fairPostIncInner dl
    {
        margin-bottom: 7.5vw
    }
    .fairPostIncInner dl dt
    {
        text-align: center;
        padding-bottom: 3.75vw;
        border-bottom: 1px dotted #282f37;
        margin-bottom: 4.1666vw
    }
}
@media only screen and (min-width: 499px)
{
    .fairPostIncTh
    {
        width: 32.812%;
        -webkit-box-shadow: 1.4px 1.4px 0 0 rgba(60,80,100,.2);
        box-shadow: 1.4px 1.4px 0 0 rgba(60,80,100,.2)
    }
}
@media only screen and (max-width: 500px)
{
    .fairPostIncTh
    {
        -webkit-box-shadow: .6111vw .6111vw 0 0 rgba(60,80,100,.2);
        box-shadow: .6111vw .6111vw 0 0 rgba(60,80,100,.2);
        margin-bottom: 3.75vw
    }
}
@media only screen and (min-width: 499px)
{
    .fairPostIncTtl
    {
        width: 60.156%
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairPostIncTtl
    {
        width: 60.156%
    }
}
.fairPostIncTtl p
{
    text-align: center;
    font-weight: bold
}
@media only screen and (min-width: 499px)
{
    .fairPostIncTtl p
    {
        font-size: 13px;
        letter-spacing: .1em;
        line-height: 1.692
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairPostIncTtl p
    {
        font-size: 11px
    }
}
@media only screen and (max-width: 500px)
{
    .fairPostIncTtl p
    {
        font-size: 3.6111vw;
        letter-spacing: .12em
    }
}
.fairPostIncTxt
{
    -ms-flex: 0 1 auto
}
.fairPostIncTxt p
{
    -ms-flex: 0 1 auto;
    font-family: "游ゴシック","Yu Gothic",YuGothic,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ ゴシック",sans-serif
}
@media only screen and (min-width: 499px)
{
    .fairPostIncTxt p
    {
        line-height: 1.714
    }
    .fairPostIncTxt p.smallPC
    {
        letter-spacing: -.04em
    }
}
@media only screen and (max-width: 500px)
{
    .fairPostIncTxt p
    {
        line-height: 1.666
    }
    .fairPostIncTxt p.small
    {
        letter-spacing: -.04em
    }
}
#overlayRsv
{
    position: fixed;
    top: 0;
    left: 0;
    z-index: 800;
    width: 100%;
    background: rgba(175,161,140,.8);
    display: none
}
.fairPostFormWrap
{
    position: fixed;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
    z-index: 900;
    display: none
}
.fairPostForm
{
    background: #fff;
    position: relative
}
@media only screen and (min-width: 499px)
{
    .fairPostForm
    {
        padding: 55px 100px 50px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairPostForm
    {
        padding: 45px 82px 41px
    }
}
@media only screen and (max-width: 500px)
{
    .fairPostForm
    {
        padding: 9.7222vw 6.25vw 11.1111vw
    }
}
.fairPostForm h3
{
    font-weight: bold;
    text-align: center
}
@media only screen and (min-width: 499px)
{
    .fairPostForm h3
    {
        font-size: 20px;
        margin-bottom: 25px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairPostForm h3
    {
        font-size: 16px;
        margin-bottom: 20px
    }
}
@media only screen and (max-width: 500px)
{
    .fairPostForm h3
    {
        font-size: 3.6111vw;
        margin-bottom: 7.6388vw
    }
}
.close
{
    position: absolute
}
@media only screen and (min-width: 499px)
{
    .close
    {
        -webkit-transition: opacity .2s ease 0s;
        transition: opacity .2s ease 0s;
        cursor: pointer
    }
    .close:hover
    {
        opacity: .7
    }
}
@media only screen and (min-width: 499px)
{
    .close
    {
        width: 26px;
        top: 25px;
        right: 25px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .close
    {
        width: 21px;
        top: 20px;
        right: 20px
    }
}
@media only screen and (max-width: 500px)
{
    .close
    {
        width: 5.5555vw;
        top: 4.8611vw;
        right: 4.8611vw
    }
}
@media only screen and (min-width: 499px)
{
    .fairPostFormCon
    {
        margin-bottom: 34px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairPostFormCon
    {
        margin-bottom: 28px
    }
}
@media only screen and (max-width: 500px)
{
    .fairPostFormCon
    {
        margin-bottom: 8.1944vw
    }
}
@media only screen and (min-width: 499px)
{
    .fairPostFormCon dl:first-child
    {
        width: 64.772%
    }
}
@media only screen and (min-width: 499px)
{
    .fairPostFormCon dl:last-child
    {
        width: 35.228%
    }
}
@media only screen and (min-width: 499px)
{
    .fairPostFormCon dl:last-child dt
    {
        border-right: 1px solid #aaa08c
    }
}
@media only screen and (min-width: 499px)
{
    .fairPostFormCon dl:last-child dd
    {
        border-right: 1px solid #aaa08c
    }
}
@media only screen and (max-width: 500px)
{
    .fairPostFormCon dl:last-child dd
    {
        border-bottom: 1px solid #aaa08c
    }
}
.fairPostFormCon dt
{
    text-align: center;
    font-weight: bold;
    padding: 1em
}
@media only screen and (min-width: 499px)
{
    .fairPostFormCon dt
    {
        font-size: 18px;
        border-top: 1px solid #aaa08c;
        border-left: 1px solid #aaa08c;
        border-bottom: 1px solid #aaa08c
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairPostFormCon dt
    {
        font-size: 15px
    }
}
@media only screen and (max-width: 500px)
{
    .fairPostFormCon dt
    {
        font-size: 3.3333vw;
        border-top: 1px solid #aaa08c;
        border-left: 1px solid #aaa08c;
        border-right: 1px solid #aaa08c
    }
}
.fairPostFormCon dd
{
    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 only screen and (min-width: 499px)
{
    .fairPostFormCon dd
    {
        height: 167px;
        border-left: 1px solid #aaa08c;
        border-bottom: 1px solid #aaa08c
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairPostFormCon dd
    {
        height: 137px
    }
}
@media only screen and (max-width: 500px)
{
    .fairPostFormCon dd
    {
        border-top: 1px solid #aaa08c;
        border-left: 1px solid #aaa08c;
        border-right: 1px solid #aaa08c;
        padding: 1.5em
    }
}
@media only screen and (min-width: 499px)
{
    .fairPostFormCon dd .fairPostFormTh
    {
        width: 20.97%
    }
}
@media only screen and (max-width: 500px)
{
    .fairPostFormCon dd .fairPostFormTh
    {
        width: 33.877%
    }
}
@media only screen and (min-width: 499px)
{
    .fairPostFormCon dd .fairPostFormTh img
    {
        -webkit-box-shadow: 3.6px 3.6px 0 0 rgba(60,80,100,.2);
        box-shadow: 3.6px 3.6px 0 0 rgba(60,80,100,.2)
    }
}
@media only screen and (max-width: 500px)
{
    .fairPostFormCon dd .fairPostFormTh img
    {
        -webkit-box-shadow: .6902vw .6902vw 0 0 rgba(60,80,100,.2);
        box-shadow: .6902vw .6902vw 0 0 rgba(60,80,100,.2)
    }
}
.fairPostFormCon dd .fairPostFormTh figure
{
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    width: 100%;
    height: 0;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    padding-bottom: 100%;
    display: block
}
@media only screen and (min-width: 499px)
{
    .fairPostFormCon dd .fairPostFormTh figure
    {
        -webkit-box-shadow: 3.6px 3.6px 0 0 rgba(60,80,100,.2);
        box-shadow: 3.6px 3.6px 0 0 rgba(60,80,100,.2)
    }
}
@media only screen and (max-width: 500px)
{
    .fairPostFormCon dd .fairPostFormTh figure
    {
        -webkit-box-shadow: .6902vw .6902vw 0 0 rgba(60,80,100,.2);
        box-shadow: .6902vw .6902vw 0 0 rgba(60,80,100,.2)
    }
}
.fairPostFormCon dd .fairPostFormTtl
{
    font-weight: bold
}
@media only screen and (min-width: 499px)
{
    .fairPostFormCon dd .fairPostFormTtl
    {
        width: 65.043%;
        margin-left: 23px;
        font-size: 18px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairPostFormCon dd .fairPostFormTtl
    {
        width: 65.043%;
        margin-left: 19px;
        font-size: 15px
    }
}
@media only screen and (max-width: 500px)
{
    .fairPostFormCon dd .fairPostFormTtl
    {
        width: 60.612%;
        margin-left: 5%
    }
}
@media only screen and (min-width: 499px)
{
    .fairPostFormCon dd .fairPostFormTtl p
    {
        line-height: 1.444
    }
}
@media only screen and (max-width: 500px)
{
    .fairPostFormCon dd .fairPostFormTtl p
    {
        font-size: 3.6111vw;
        line-height: 1.538
    }
}
.fairPostFormCon dd .ddFormWrap
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}
.fairPostFormCon dd .ddFormWrap .date
{
    margin-right: 1em;
    font-weight: bold
}
@media only screen and (min-width: 499px)
{
    .fairPostFormCon dd .ddFormWrap .date
    {
        font-size: 16px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .fairPostFormCon dd .ddFormWrap .date
    {
        font-size: 13px
    }
}
@media only screen and (max-width: 500px)
{
    .fairPostFormCon dd .ddFormWrap .date
    {
        font-size: 3.75vw
    }
}
.airArcDay.Sat
{
    background: #3c5064;
    color: #fff
}
.airArcDay.Sun
{
    background: #821437;
    color: #fff
}
.fairArcBtnArea form
{
    width: 48.6891%
}
.fairArcBtnArea button
{
    width: 100%
}
.fairArcList
{
    position: relative
}
@media only screen and (max-width: 420px)
{
    .fairArcBtnArea button
    {
        margin: 0;
        padding: 0;
        font-size: 3.0555vw;
        height: 9.7222vw;
        line-height: 1.13
    }
    .fairArcBtnArea button:after
    {
        width: 3.0555vw;
        height: 1vw;
        right: 3.055vw
    }
}
@media only screen and (max-width: 500px)
{
    #mainvPlan .manvUnderComment
    {
        font-size: 3vw
    }
}
@media only screen and (max-width: 500px)
{
    #mainvPlan .manvUnderLead
    {
        font-size: 3.7vw;
        letter-spacing: 0
    }
}
@media only screen and (min-width: 499px)
{
    .planList
    {
        margin-bottom: 60px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .planList
    {
        margin-bottom: 50px
    }
}
@media only screen and (max-width: 500px)
{
    .planList
    {
        margin-bottom: 11.0416vw
    }
}
.planList:last-child
{
    margin-bottom: 0
}
.planListTop
{
    position: relative
}
.planListRibbon
{
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    text-align: center
}
@media only screen and (min-width: 499px)
{
    .planListRibbon
    {
        position: absolute;
        background-image: url(assets/images/plan/ribbon_plan_pc.png);
        right: -11px;
        top: -62px;
        width: 133px;
        height: 153px;
        padding-top: 90px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .planListRibbon
    {
        right: -9px;
        top: -58px;
        width: 110px;
        height: 126px;
        padding-top: 74px
    }
}
@media only screen and (max-width: 500px)
{
    .planListRibbon
    {
        background-image: url(assets/images/plan/ribbon_plan_sp.png);
        width: 18.54165vw;
        height: 18.697875vw;
        margin-left: 53vw;
        margin-bottom: -17vw;
        position: absolute;
        z-index: 20;
        padding-top: 10.8888vw;
        top: -10.2vw;
        right: -10px;
    }
}
.planListRibbon>*
{
    color: #aaa08c
}
.planListRibbon .en
{
    display: inline-block;
    position: absolute;
    -webkit-transform: rotate(-7deg) translateX(-50%);
    transform: rotate(-7deg) translateX(-50%);
    left: 50%;
    font-family: 'Italianno',cursive
}
@media only screen and (min-width: 499px)
{
    .planListRibbon .en
    {
        font-size: 68px;
        top: 8px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .planListRibbon .en
    {
        font-size: 56px;
        top: 7px
    }
}
@media only screen and (max-width: 500px)
{
    .planListRibbon .en
    {
        font-size: 8.9583vw;
        top: .75vw
    }
}
.planListRibbon .jp
{
    display: inline-block;
    position: relative;
    text-align: center;
    font-weight: bold;
    padding: 0 1em
}
@media only screen and (min-width: 499px)
{
    .planListRibbon .jp
    {
        font-size: 16px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .planListRibbon .jp
    {
        font-size: 13px
    }
}
@media only screen and (max-width: 500px)
{
    .planListRibbon .jp
    {
        font-size: 2.18745vw
    }
}
.planListRibbon .jp:before, .planListRibbon .jp:after
{
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    display: block;
    content: " ";
    background: #aaa08c;
    height: 1px
}
@media only screen and (min-width: 499px)
{
    .planListRibbon .jp:before, .planListRibbon .jp:after
    {
        width: 8px
    }
}
@media only screen and (max-width: 500px)
{
    .planListRibbon .jp:before, .planListRibbon .jp:after
    {
        width: 1.3055vw
    }
}
.planListRibbon .jp:before
{
    left: 0
}
.planListRibbon .jp:after
{
    right: 0
}
@media only screen and (min-width: 499px)
{
    .planListTopInner
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between
    }
}
@media only screen and (min-width: 499px)
{
    .planListTh
    {
        width: 30.612245%
    }
}
@media only screen and (max-width: 500px)
{
    .planListTh
    {
        margin-bottom: 6vw;
        position: relative;
        left: -.8vw
    }
}
.planListTh figure
{
    display: block;
    background-size: cover;
    background-repeat: no-repeat;
    width: 100%;
    height: 0;
    -webkit-box-sizing: content-box;
    box-sizing: content-box
}
@media only screen and (min-width: 499px)
{
    .planListTh figure
    {
        -webkit-box-shadow: 15px 15px 0 0 rgba(83,71,65,.1);
        box-shadow: 15px 15px 0 0 rgba(83,71,65,.1);
        padding-bottom: 100%;
        background-position: center
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .planListTh figure
    {
        -webkit-box-shadow: 12px 12px 0 0 rgba(83,71,65,.1);
        box-shadow: 12px 12px 0 0 rgba(83,71,65,.1)
    }
}
@media only screen and (max-width: 500px)
{
    .planListTh figure
    {
        -webkit-box-shadow: 1.3888vw 1.3888vw 0 0 rgba(83,71,65,.1);
        box-shadow: 1.3888vw 1.3888vw 0 0 rgba(83,71,65,.1);
        padding-bottom: 56.25%;
        background-position: center
    }
}
@media only screen and (min-width: 499px)
{
    .planListTxt
    {
        width: 62.040816%
    }
}
.planListTxt.active
{
    border-bottom: 1px dotted #3c5064
}
@media only screen and (max-width: 500px)
{
    .planListTxt.active
    {
        padding-bottom: 5vw
    }
}
@media only screen and (min-width: 499px)
{
    .planListLead
    {
        font-weight: bold;
        letter-spacing: .12em;
        font-size: 16px;
        line-height: 1.7;
        margin-bottom: 20px;
        margin-right: 140px;
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .planListLead
    {
        font-size: 13px;
        margin-bottom: 20px;
        margin-right: 140px;
    }
}
@media only screen and (max-width: 500px)
{
    .planListLead
    {
        line-height: 1.6666;
        margin-bottom: 3.3333vw
    }
}
.planName
{
    color: #aaa08c
}
@media only screen and (min-width: 499px)
{
    .planName
    {
        margin-bottom: 25px;
        margin-right: 140px;
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .planName
    {
        margin-bottom: 25px;
        margin-right: 140px;
    }
}
@media only screen and (max-width: 500px)
{
    .planName
    {
        margin-bottom: 3.6111vw
    }
}
.planName .en
{
    letter-spacing: .08em;
    font-family: petersburg-web,serif;
    font-weight: 400,700;
    font-style: normal,italic;
    display: inline-block;
    margin-bottom: 8px;
}
@media only screen and (min-width: 499px)
{
    .planName .en
    {
        font-size: 26px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .planName .en
    {
        font-size: 21px
    }
}
@media only screen and (max-width: 500px)
{
    .planName .en
    {
        font-size: 5.4166vw;
        display: block;
        margin-bottom: 1.8vw
    }
}
.planName .jp
{
    font-weight: bold;
    letter-spacing: .12em
}
@media only screen and (min-width: 499px)
{
    .planName .jp
    {
        display: inline-block;
        margin-left: .8em
    }
}
@media only screen and (max-width: 500px)
{
    .planName .jp
    {
        font-size: 2.9166vw;
        display: block
    }
}
@media only screen and (min-width: 499px)
{
    .planNum
    {
        margin-bottom: 5px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .planNum
    {
        margin-bottom: 5px
    }
}
@media only screen and (max-width: 500px)
{
    .planNum
    {
        margin-bottom: 2.7777vw
    }
}
.planNum span
{
    display: inline-block;
    background: #aaa08c;
    color: #fff;
    font-weight: bold;
    letter-spacing: .16em
}
@media only screen and (min-width: 499px)
{
    .planNum span
    {
        padding: 3px 10px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .planNum span
    {
        padding: 2px 8px
    }
}
@media only screen and (max-width: 500px)
{
    .planNum span
    {
        font-size: 3.0555vw;
        padding: .8333vw 1.6666vw
    }
}
@media only screen and (min-width: 499px)
{
    .planPriceWrap
    {
        margin-bottom: 14px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .planPriceWrap
    {
        margin-bottom: 11px
    }
}
@media only screen and (max-width: 500px)
{
    .planPriceWrap
    {
        margin-bottom: 4.4444vw
    }
}
.planPriceWrap>*
{
    display: inline-block;
    letter-spacing: .16em;
    font-weight: bold
}
@media only screen and (min-width: 499px)
{
    .planPrice
    {
        font-size: 20px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .planPrice
    {
        font-size: 16px
    }
}
@media only screen and (max-width: 500px)
{
    .planPrice
    {
        font-size: 4.1666vw
    }
}
.planPrice .num
{
    font-weight: normal;
    font-family: minion-3,serif;
    font-weight: 400;
    font-style: normal
}
@media only screen and (min-width: 499px)
{
    .planPrice .num
    {
        font-size: 36px;
        letter-spacing: .07em
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .planPrice .num
    {
        font-size: 30px
    }
}
@media only screen and (max-width: 500px)
{
    .planPrice .num
    {
        font-size: 7.5vw
    }
}
@media only screen and (max-width: 500px)
{
    .planPriceTax
    {
        font-size: 3.0555vw
    }
}
@media only screen and (min-width: 499px)
{
    .planPriceNum
    {
        font-size: 18px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .planPriceNum
    {
        font-size: 15px
    }
}
@media only screen and (max-width: 500px)
{
    .planPriceNum
    {
        font-size: 3.6111vw
    }
}
@media only screen and (min-width: 499px)
{
    .planPriceNum span
    {
        font-size: 14px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .planPriceNum span
    {
        font-size: 12px
    }
}
@media only screen and (max-width: 500px)
{
    .planPriceNum span
    {
        font-size: 3.0555vw
    }
}
@media only screen and (min-width: 499px)
{
    .planListComment
    {
        line-height: 1.7
    }
}
@media only screen and (max-width: 500px)
{
    .planListComment
    {
        line-height: 1.666;
        margin-bottom: 7.5vw
    }
}
@media only screen and (max-width: 500px)
{
    .planBtnOpen button
    {
        margin-top: 0
    }
}
.planListContent
{
    display: none
}
@media only screen and (min-width: 499px)
{
    .planListContent
    {
        margin-top: 76px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .planListContent
    {
        margin-top: 63px
    }
}
@media only screen and (max-width: 500px)
{
    .planListContent
    {
        margin-top: 5vw
    }
}
.planConTtl
{
    padding-left: .5em;
    font-weight: bold;
    letter-spacing: .1em
}
@media only screen and (min-width: 499px)
{
    .planConTtl
    {
        font-size: 21px;
        border-left: 4px solid #3c5064;
        margin-bottom: 20px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .planConTtl
    {
        font-size: 17px;
        border-left: 3px solid #3c5064;
        margin-bottom: 16px
    }
}
@media only screen and (max-width: 500px)
{
    .planConTtl
    {
        font-size: 4.1666vw;
        border-left: .8333vw solid #3c5064;
        margin-bottom: 3.5vw
    }
}
@media only screen and (min-width: 499px)
{
    .planConTtl span
    {
        font-size: 16px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .planConTtl span
    {
        font-size: 13px
    }
}
@media only screen and (max-width: 500px)
{
    .planConTtl span
    {
        font-size: 3.6111vw
    }
}
@media only screen and (min-width: 499px)
{
    .planListSpecial
    {
        margin-bottom: 35px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .planListSpecial
    {
        margin-bottom: 29px
    }
}
@media only screen and (max-width: 500px)
{
    .planListSpecial
    {
        margin-bottom: 7.5vw
    }
}
@media only screen and (min-width: 499px)
{
    .planListSpecialList
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }
}
@media only screen and (min-width: 499px)
{
    .planListSpecialList ul
    {
        margin-right: 40px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .planListSpecialList ul
    {
        margin-right: 33px
    }
}
.planListSpecialList ul li
{
    position: relative;
    padding-left: 1.5em;
    letter-spacing: .1em
}
@media only screen and (min-width: 499px)
{
    .planListSpecialList ul li
    {
        margin-bottom: 14px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .planListSpecialList ul li
    {
        margin-bottom: 11px
    }
}
@media only screen and (max-width: 500px)
{
    .planListSpecialList ul li
    {
        margin-bottom: 3.3333vw
    }
}
@media only screen and (min-width: 499px)
{
    .planListSpecialList ul li:last-child
    {
        margin-bottom: 0
    }
}
.planListSpecialList ul li:before
{
    content: "　";
    display: block;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    background-image: url(assets/images/common/icn_flower.svg);
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}
@media only screen and (min-width: 499px)
{
    .planListSpecialList ul li:before
    {
        width: 15px;
        height: 15px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .planListSpecialList ul li:before
    {
        width: 13px;
        height: 13px
    }
}
@media only screen and (max-width: 500px)
{
    .planListSpecialList ul li:before
    {
        width: 4.02777vw;
        height: 4.02777vw
    }
}
@media only screen and (max-width: 500px)
{
    .planListSpecialList ul:last-child li:last-child
    {
        margin-bottom: 0
    }
}
@media only screen and (min-width: 499px)
{
    .planListPeriod
    {
        margin-bottom: 50px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .planListPeriod
    {
        margin-bottom: 41px
    }
}
@media only screen and (max-width: 500px)
{
    .planListPeriod
    {
        margin-bottom: 7.5vw
    }
}
@media only screen and (min-width: 499px)
{
    .planListPeriodContent
    {
        margin-bottom: 20px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .planListPeriodContent
    {
        margin-bottom: 16px
    }
}
@media only screen and (max-width: 500px)
{
    .planListPeriodContent
    {
        margin-bottom: 3.0555vw
    }
}
.planListPeriodContent:last-child
{
    margin-bottom: 0
}
.planListPeriodContent p
{
    line-height: 1.7
}
@media only screen and (max-width: 500px)
{
    .planListPeriodContent p
    {
        font-size: 3.0555vw;
        letter-spacing: .05em
    }
}
.planListPeriodContent p.notes
{
    margin-top: .5em;
    font-family: "游ゴシック","Yu Gothic",YuGothic,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ ゴシック",sans-serif
}
@media only screen and (min-width: 499px)
{
    .planListPeriodContent p.notes
    {
        font-size: 13px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .planListPeriodContent p.notes
    {
        font-size: 11px
    }
}
@media only screen and (max-width: 500px)
{
    .planListPeriodContent p.notes
    {
        font-size: 2.9166vw;
        letter-spacing: .03em
    }
}
.planConHead
{
    color: #3c5064;
    margin-bottom: .5em;
    margin-left: -.5em
}
@media only screen and (max-width: 500px)
{
    .planListIncludedTable
    {
        display: block
    }
}
@media only screen and (max-width: 500px)
{
    .planListIncludedTable tbody
    {
        display: block
    }
}
.planListIncludedTable th, .planListIncludedTable td
{
    border-top: 1px solid #ccc6ba;
    font-weight: normal;
    font-family: "游ゴシック","Yu Gothic",YuGothic,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ ゴシック",sans-serif
}
@media only screen and (max-width: 500px)
{
    .planListIncludedTable th, .planListIncludedTable td
    {
        display: block
    }
}
@media only screen and (max-width: 500px)
{
    .planListIncludedTable tr
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }
}
.planListIncludedTable tr:last-child th, .planListIncludedTable tr:last-child td
{
    border-bottom: 1px solid #ccc6ba
}
.planListIncludedTable th
{
    text-align: center;
    background: #f3f1ee
}
@media only screen and (min-width: 499px)
{
    .planListIncludedTable th
    {
        padding: 15px 10px;
        width: 15.8%
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .planListIncludedTable th
    {
        padding: 12px 8px
    }
}
@media only screen and (max-width: 500px)
{
    .planListIncludedTable th
    {
        padding: 4vw 0;
        width: 32.6%;
        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;
        line-height: 1.666
    }
}
@media only screen and (min-width: 499px)
{
    .planListIncludedTable td
    {
        padding: 15px 28px 15px 16px;
        width: 34.2%
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .planListIncludedTable td
    {
        padding: 12px 23px 12px 21px
    }
}
@media only screen and (max-width: 500px)
{
    .planListIncludedTable td
    {
        padding: 4.3055vw 0 4.3055vw 3.3333vw;
        width: 67.4%
    }
}
.planListIncludedTable td>*
{
    display: inline-block;
    vertical-align: middle
}
@media only screen and (min-width: 499px)
{
    .planListIncludedTable td .check
    {
        width: 10.3448%
    }
}
@media only screen and (max-width: 500px)
{
    .planListIncludedTable td .check
    {
        width: 13.5642%;
        font-size: 3.0555vw
    }
}
.planListIncludedTable td p
{
    line-height: 1.7
}
@media only screen and (min-width: 499px)
{
    .planListIncludedTable td p
    {
        width: 89.6552%
    }
}
@media only screen and (max-width: 500px)
{
    .planListIncludedTable td p
    {
        width: 86.4358%;
        font-size: 2.9166vw
    }
}
.planBtnClose button:after
{
    background-image: url(assets/images/common/close.svg)
}
@media only screen and (min-width: 499px)
{
    .planBtnClose button:after
    {
        width: 11px;
        height: 11px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .planBtnClose button:after
    {
        width: 9px;
        height: 9px
    }
}
@media only screen and (max-width: 500px)
{
    .planBtnClose button:after
    {
        width: 2.0833vw;
        height: 2.0833vw
    }
}
.planListRecommend
{
    background-image: url(assets/images/common/bg_noise1.jpg);
    background-size: 200px 200px
}
@media only screen and (min-width: 499px)
{
    .planListRecommend .planListRibbon
    {
        background-image: url(assets/images/plan/ribbon_plan_recommend_pc.png)
    }
}
@media only screen and (max-width: 500px)
{
    .planListRecommend .planListRibbon
    {
        background-image: url(assets/images/plan/ribbon_plan_recommend_sp.png)
    }
    .planListRecommend .planListRibbon .jp
    {
        padding: 0
    }
    .planListRecommend .planListRibbon .jp:before, .planListRecommend .planListRibbon .jp:after
    {
        content: none
    }
}
.planListRecommend .planListIncludedTable td
{
    background: #fff
}
@media only screen and (max-width: 500px)
{
    .planListRecommend .planListIncludedTable td
    {
        padding-right: .5em
    }
}
/*帯と重複しないようにするCSS
@media only screen and (min-width: 499px)
{
    .planListRecommend .planListLead, .planListSpecial .planListLead
    {
        min-height: 64px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .planListRecommend .planListLead, .planListSpecial .planListLead
    {
        min-height: 52px
    }
}*/
@media only screen and (min-width: 499px)
{
    .contentWrap
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        width: 1120px;
        margin: 83px auto 0;
        padding: 0 20px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .contentWrap
    {
        width: 1024px;
        margin: 68px auto 0
    }
}
@media only screen and (max-width: 500px)
{
    .contentWrap
    {
        margin: 10.8333vw auto 0
    }
}
@media only screen and (min-width: 499px)
{
    .contentWrap .content
    {
        width: 73.1481%;
        margin: 0;
        padding: 0 0 95px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .contentWrap .content
    {
        padding: 0 0 78px
    }
}
@media only screen and (min-width: 499px)
{
    .contentWrap .content.postInfo
    {
        padding: 0 0 75px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .contentWrap .content.postInfo
    {
        padding: 0 0 62px
    }
}
@media only screen and (min-width: 499px)
{
    .contentWrap #sidebar
    {
        width: 22.7777%
    }
}
@media only screen and (max-width: 500px)
{
    .contentWrap #sidebar
    {
        width: 88.8888vw;
        margin: 0 auto
    }
}
.categoryWrap
{
    text-align: center
}
@media only screen and (min-width: 499px)
{
    .categoryWrap
    {
        margin-top: 94px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .categoryWrap
    {
        margin-top: 77px
    }
}
@media only screen and (max-width: 500px)
{
    .categoryWrap ul
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }
}
.categoryWrap ul li
{
    position: relative
}
@media only screen and (min-width: 499px)
{
    .categoryWrap ul li
    {
        border-right: 2px solid #282f37;
        display: inline-block
    }
}
@media only screen and (max-width: 500px)
{
    .categoryWrap ul li
    {
        border-top: 2px solid #fff;
        border-right: 2px solid #fff;
        border-bottom: 2px solid #fff;
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: 1
    }
}
.categoryWrap ul li:last-child
{
    border-right: none
}
@media only screen and (min-width: 499px)
{
    .categoryWrap ul li.current a
    {
        color: #821437
    }
}
@media only screen and (max-width: 500px)
{
    .categoryWrap ul li.current a
    {
        background: #821437
    }
}
.categoryWrap ul li.current a:before
{
    content: " ";
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    background-image: url(assets/images/common/icn_flower.svg);
    display: inline-block
}
@media only screen and (min-width: 499px)
{
    .categoryWrap ul li.current a:before
    {
        position: absolute;
        left: 50%;
        top: -26px;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        height: 17px;
        width: 17px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .categoryWrap ul li.current a:before
    {
        top: -21px;
        height: 14px;
        width: 14px
    }
}
@media only screen and (max-width: 500px)
{
    .categoryWrap ul li.current a:before
    {
        height: 3.5vw;
        width: 3.5vw;
        -webkit-transform: translate(-.5em,15%);
        transform: translate(-.5em,15%)
    }
}
.categoryWrap ul li a
{
    display: inline-block;
    font-weight: bold
}
@media only screen and (min-width: 499px)
{
    .categoryWrap ul li a
    {
        -webkit-transition: opacity .2s ease 0s;
        transition: opacity .2s ease 0s;
        cursor: pointer
    }
    .categoryWrap ul li a:hover
    {
        opacity: .7
    }
}
@media only screen and (min-width: 499px)
{
    .categoryWrap ul li a
    {
        padding: .1em 2.5em
    }
}
@media only screen and (max-width: 500px)
{
    .categoryWrap ul li a
    {
        background: #282f37;
        color: #fff;
        line-height: 12.5vw;
        width: 100%
    }
}
.categoryWrap.searchWord a
{
    font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,serif
}
@media all and (-ms-high-contrast: none)
{
    .categoryWrap.searchWord a
    {
        font-family: "Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,"ＭＳ Ｐ明朝","MS PMincho",serif
    }
}
@media only screen and (min-width: 499px)
{
    .infoList
    {
        margin-top: 60px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .infoList
    {
        margin-top: 50px
    }
}
@media only screen and (max-width: 500px)
{
    .infoList
    {
        margin-top: 10.4166vw
    }
    .infoList>a
    {
        display: block
    }
}
@media only screen and (min-width: 499px)
{
    .infoList:first-child
    {
        margin-top: 15px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .infoList:first-child
    {
        margin-top: 12px
    }
}
@media only screen and (max-width: 500px)
{
    .infoList:first-child
    {
        margin-top: 0
    }
}
.infoListTop
{
    margin-bottom: .7em
}
@media only screen and (max-width: 500px)
{
    .infoListTop
    {
        margin-bottom: .2em
    }
}
.infoListTop>*
{
    display: inline-block;
    vertical-align: middle
}
.infoListTop .date
{
    padding-right: 1em;
    border-right: 1px solid #282f37;
    margin-right: 1em;
    letter-spacing: .08em
}
@media only screen and (min-width: 499px)
{
    .infoListTop .date
    {
        font-size: 14px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .infoListTop .date
    {
        font-size: 12px
    }
}
@media only screen and (max-width: 500px)
{
    .infoListTop .date
    {
        font-size: 3.1944vw
    }
}
@media only screen and (min-width: 499px)
{
    .infoListTop .date span
    {
        font-size: 12px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .infoListTop .date span
    {
        font-size: 10px
    }
}
@media only screen and (max-width: 500px)
{
    .infoListTop .date span
    {
        font-size: 2.7777vw
    }
}
.infoListTop .time
{
    margin-right: 1.5em;
    letter-spacing: .08em
}
@media only screen and (max-width: 500px)
{
    .infoListTop .time
    {
        font-size: 2.7777vw
    }
}
.catArea .cat
{
    font-family: petersburg-web,serif;
    font-weight: 400,700;
    font-style: normal,italic;
    font-weight: bold;
    display: inline-block;
    background: #821437;
    color: #fff;
    padding: .15em .5em
}
@media only screen and (min-width: 499px)
{
    .catArea .cat
    {
        font-size: 11px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .catArea .cat
    {
        font-size: 10px
    }
}
@media only screen and (max-width: 500px)
{
    .catArea .cat
    {
        font-size: 2.7777vw
    }
}
.infoListTtl
{
    font-weight: bold;
    padding-bottom: .7em;
    border-bottom: 1px dotted #3c5064
}
@media only screen and (min-width: 499px)
{
    .infoListTtl
    {
        font-size: 18px;
        letter-spacing: .16em;
        line-height: 1.4444;
        margin-bottom: 35px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .infoListTtl
    {
        font-size: 15px;
        margin-bottom: 29px
    }
}
@media only screen and (max-width: 500px)
{
    .infoListTtl
    {
        font-size: 4.1666vw;
        letter-spacing: .05em;
        line-height: 1.6666;
        margin-bottom: 3.4722vw
    }
}
@media only screen and (min-width: 499px)
{
    .infoListContent
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between
    }
}
.infoListTh
{
    position: relative
}
@media only screen and (min-width: 499px)
{
    .infoListTh
    {
        width: 265px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .infoListTh
    {
        width: 218px
    }
}
@media only screen and (max-width: 500px)
{
    .infoListTh
    {
        width: 100%;
        margin-bottom: 6.25vw
    }
}
.infoListTh figure
{
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    display: block;
    width: 100%;
    height: 0;
    -webkit-box-sizing: content-box;
    box-sizing: content-box
}
@media only screen and (min-width: 499px)
{
    .infoListTh figure
    {
        padding-bottom: 100%
    }
}
@media only screen and (max-width: 500px)
{
    .infoListTh figure
    {
        padding-bottom: 78.363636%
    }
}
.new .infoListTh:before
{
    content: " ";
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    background-image: url(assets/images/common/icn_new.svg);
    display: block;
    position: absolute;
    z-index: 20
}
@media only screen and (min-width: 499px)
{
    .new .infoListTh:before
    {
        width: 82px;
        height: 82px;
        top: -14px;
        left: -16px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .new .infoListTh:before
    {
        width: 67px;
        height: 67px;
        top: -12px;
        left: -13px
    }
}
@media only screen and (max-width: 500px)
{
    .new .infoListTh:before
    {
        width: 21.9444vw;
        height: 21.9444vw;
        top: -3.4722vw;
        left: -4.0277vw
    }
}
@media only screen and (min-width: 499px)
{
    .infoListTxt
    {
        width: 387px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .infoListTxt
    {
        width: 319px
    }
}
@media only screen and (max-width: 500px)
{
    .infoListTxt
    {
        width: 100%
    }
}
.infoListDes
{
    font-weight: bold
}
@media only screen and (min-width: 499px)
{
    .infoListDes
    {
        letter-spacing: .1em;
        line-height: 1.6923;
        font-size: 13px;
        margin-top: 30px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .infoListDes
    {
        font-size: 11px;
        margin-top: 25px
    }
}
@media only screen and (max-width: 500px)
{
    .infoListDes
    {
        letter-spacing: .08em;
        line-height: 1.6666
    }
}
.readMore
{
    text-align: right;
    font-family: petersburg-web,serif;
    font-weight: 400,700;
    font-style: normal,italic
}
@media only screen and (min-width: 499px)
{
    .readMore
    {
        font-size: 16px;
        margin-top: 50px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .readMore
    {
        font-size: 13px;
        margin-top: 41px
    }
}
@media only screen and (max-width: 500px)
{
    .readMore
    {
        font-size: 3.3333vw;
        margin-top: 4.8611vw
    }
}
.readMore a, .readMore p
{
    display: inline-block
}
@media only screen and (min-width: 499px)
{
    .readMore a, .readMore p
    {
        -webkit-transition: opacity .2s ease 0s;
        transition: opacity .2s ease 0s;
        cursor: pointer
    }
    .readMore a:hover, .readMore p:hover
    {
        opacity: .7
    }
}
.readMore a:after, .readMore p:after
{
    content: " ";
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    background-image: url(assets/images/common/arw_more.svg);
    display: inline-block;
    -webkit-transform: translateY(-20%);
    transform: translateY(-20%);
    margin-left: .5em
}
@media only screen and (min-width: 499px)
{
    .readMore a:after, .readMore p:after
    {
        width: 17px;
        height: 5px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .readMore a:after, .readMore p:after
    {
        font-size: 13px;
        width: 14px;
        height: 5px
    }
}
@media only screen and (max-width: 500px)
{
    .readMore a:after, .readMore p:after
    {
        font-size: 3.3333vw;
        width: 4.6944vw;
        height: 1vw
    }
}
@media only screen and (min-width: 499px)
{
    #pagination
    {
        margin-top: 76px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    #pagination
    {
        margin-top: 63px
    }
}
@media only screen and (max-width: 500px)
{
    #pagination
    {
        margin-top: 4.8611vw
    }
}
#pagination ul
{
    text-align: center
}
#pagination ul li
{
    display: inline-block;
    font-weight: bold
}
@media only screen and (min-width: 499px)
{
    #pagination ul li
    {
        font-size: 16px;
        width: 40px;
        line-height: 40px;
        margin: 0 5px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    #pagination ul li
    {
        font-size: 13px;
        width: 33px;
        line-height: 33px;
        margin: 0 4px
    }
}
@media only screen and (max-width: 500px)
{
    #pagination ul li
    {
        font-size: 3.3333vw;
        width: 8.3333vw;
        line-height: 8.3333vw;
        margin: 0 1vw
    }
}
#pagination ul li a, #pagination ul li span
{
    display: block;
    border: 1px solid #282f37
}
@media only screen and (min-width: 499px)
{
    #pagination ul li a
    {
        -webkit-transition: opacity .2s ease 0s;
        transition: opacity .2s ease 0s;
        cursor: pointer
    }
    #pagination ul li a:hover
    {
        opacity: .7
    }
}
#pagination ul li .prev, #pagination ul li .next
{
    border: none
}
#pagination ul li .prev:before, #pagination ul li .next:before
{
    content: " ";
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    display: inline-block
}
@media only screen and (min-width: 499px)
{
    #pagination ul li .prev:before, #pagination ul li .next:before
    {
        width: 22px;
        height: 5px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    #pagination ul li .prev:before, #pagination ul li .next:before
    {
        width: 18px;
        height: 4px
    }
}
@media only screen and (max-width: 500px)
{
    #pagination ul li .prev:before, #pagination ul li .next:before
    {
        width: 4.5833vw;
        height: 1vw
    }
}
#pagination ul li .prev
{
    margin-right: 1em
}
#pagination ul li .prev:before
{
    background-image: url(assets/images/common/arw_pagi_prv.svg)
}
#pagination ul li .next
{
    margin-left: 1em
}
#pagination ul li .next:before
{
    background-image: url(assets/images/common/arw_pagi_nxt.svg)
}
#pagination ul li .current
{
    background: #282f37;
    color: #fff
}
@media only screen and (min-width: 499px)
{
    .sidebarContent
    {
        margin-bottom: 50px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .sidebarContent
    {
        margin-bottom: 41px
    }
}
@media only screen and (max-width: 500px)
{
    .sidebarContent
    {
        margin-bottom: 6.9444vw
    }
}
.sidebarTtl
{
    color: #fff;
    font-weight: bold;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: left center;
    padding-left: 1em
}
@media only screen and (min-width: 499px)
{
    .sidebarTtl
    {
        line-height: 39px;
        background-image: url(assets/images/information/ribbon_side_ttl_pc.png);
        font-size: 16px;
        letter-spacing: .1em;
        margin-bottom: 29px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .sidebarTtl
    {
        line-height: 32px;
        font-size: 13px;
        margin-bottom: 24px
    }
}
@media only screen and (max-width: 500px)
{
    .sidebarTtl
    {
        line-height: 10.3811vw;
        background-image: url(assets/images/information/ribbon_side_ttl_sp.png);
        font-size: 4.4444vw;
        margin-bottom: 4.0244vw
    }
}
@media only screen and (min-width: 499px)
{
    .sidebarPostList
    {
        margin-bottom: 16px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .sidebarPostList
    {
        margin-bottom: 13px
    }
}
@media only screen and (max-width: 500px)
{
    .sidebarPostList
    {
        margin-bottom: 3.6111vw
    }
}
.sidebarPostList:last-child
{
    margin-bottom: 0
}
.sidebarPostList a
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}
@media only screen and (min-width: 499px)
{
    .sidebarPostTh
    {
        width: 28.455%
    }
}
@media only screen and (max-width: 500px)
{
    .sidebarPostTh
    {
        width: 28.906%
    }
}
.sidebarPostTh span
{
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    display: block;
    width: 100%;
    height: 0;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    padding-bottom: 100%
}
.sidebarPostTxt
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}
@media only screen and (min-width: 499px)
{
    .sidebarPostTxt
    {
        width: 65.04%
    }
}
@media only screen and (max-width: 500px)
{
    .sidebarPostTxt
    {
        width: 65.468%
    }
}
.sidebarPostTxtInner
{
    -ms-flex: 0 1 auto
}
@media only screen and (min-width: 499px)
{
    .sidebarPostTop
    {
        margin-bottom: 7px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .sidebarPostTop
    {
        margin-bottom: 5px
    }
}
@media only screen and (max-width: 500px)
{
    .sidebarPostTop
    {
        margin-bottom: 2vw
    }
}
.sidebarPostTop .date
{
    display: inline-block;
    vertical-align: middle;
    color: #3c5064;
    font-weight: bold
}
@media only screen and (min-width: 499px)
{
    .sidebarPostTop .date
    {
        font-size: 12px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .sidebarPostTop .date
    {
        font-size: 11px
    }
}
@media only screen and (max-width: 500px)
{
    .sidebarPostTop .date
    {
        font-size: 3.1944vw
    }
    .sidebarPostTop .date span
    {
        font-size: 2.7777vw
    }
}
.sidebarPostTop .catArea
{
    display: inline-block;
    vertical-align: middle
}
.sidebarPostTop .catArea .cat
{
    text-align: center;
    padding: .2em 0
}
@media only screen and (min-width: 499px)
{
    .sidebarPostTop .catArea .cat
    {
        width: 57px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .sidebarPostTop .catArea .cat
    {
        width: 47px
    }
}
@media only screen and (max-width: 500px)
{
    .sidebarPostTop .catArea .cat
    {
        width: 14.1666vw
    }
}
.sidebarPostTtl
{
    font-weight: bold;
    letter-spacing: .1em
}
@media only screen and (min-width: 499px)
{
    .sidebarPostTtl
    {
        font-size: 12px;
        line-height: 1.5
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .sidebarPostTtl
    {
        font-size: 11px
    }
}
@media only screen and (max-width: 500px)
{
    .sidebarPostTtl
    {
        font-size: 3.1944vw;
        line-height: 1.76
    }
}
@media only screen and (min-width: 499px)
{
    .sideCatList
    {
        margin-bottom: 20px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .sideCatList
    {
        margin-bottom: 16px
    }
}
@media only screen and (max-width: 500px)
{
    .sideCatList
    {
        margin-bottom: 4.1666vw
    }
}
.sideCatList:last-child
{
    margin-bottom: 0
}
.sideCatList a
{
    font-weight: bold;
    letter-spacing: .12em;
    position: relative;
    padding-left: 1.5em;
    display: block
}
@media only screen and (min-width: 499px)
{
    .sideCatList a
    {
        font-size: 15px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .sideCatList a
    {
        font-size: 12px
    }
}
@media only screen and (max-width: 500px)
{
    .sideCatList a
    {
        font-size: 4.1666vw
    }
}
.sideCatList a:before
{
    content: " ";
    position: absolute;
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    background-image: url(assets/images/common/icn_flower.svg)
}
@media only screen and (min-width: 499px)
{
    .sideCatList a:before
    {
        width: 17px;
        height: 17px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .sideCatList a:before
    {
        width: 14px;
        height: 14px
    }
}
@media only screen and (max-width: 500px)
{
    .sideCatList a:before
    {
        width: 4.625vw;
        height: 4.625vw
    }
}
.searchForm
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    border-bottom: 1px solid #3c5064
}
@media only screen and (min-width: 499px)
{
    .searchForm
    {
        margin-top: 25px;
        padding-bottom: 10px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .searchForm
    {
        margin-top: 21px;
        padding-bottom: 8px
    }
}
@media only screen and (max-width: 500px)
{
    .searchForm
    {
        margin-top: 6.9444vw;
        padding-bottom: 3.8888vw
    }
}
.searchsubmit
{
    background-color: transparent;
    border: none;
    cursor: pointer;
    outline: none;
    padding: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}
@media only screen and (min-width: 499px)
{
    .searchsubmit
    {
        width: 6.09756%
    }
}
@media only screen and (min-width: 499px) and (min-width: 499px)
{
    .searchsubmit
    {
        -webkit-transition: opacity .2s ease 0s;
        transition: opacity .2s ease 0s;
        cursor: pointer
    }
    .searchsubmit:hover
    {
        opacity: .7
    }
}
@media only screen and (max-width: 500px)
{
    .searchsubmit
    {
        width: 5.89875%
    }
}
.searchsubmit img
{
    width: 100%;
    height: auto
}
.searchfield
{
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    outline: none;
    background: transparent;
    letter-spacing: .1em;
    padding: 0 1em
}
@media only screen and (min-width: 499px)
{
    .searchfield
    {
        font-size: 20px;
        width: 93.90244%
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .searchfield
    {
        font-size: 15px
    }
}
@media only screen and (max-width: 500px)
{
    .searchfield
    {
        font-size: 4.1666vw;
        width: 94.10125%
    }
}
@media only screen and (max-width: 500px)
{
    .postInfoWrap
    {
        padding-bottom: 5.5555vw
    }
}
@media only screen and (min-width: 499px)
{
    .postInfo .infoListTtl
    {
        margin-bottom: 15px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .postInfo .infoListTtl
    {
        margin-bottom: 12px
    }
}
@media only screen and (max-width: 500px)
{
    .postInfo .infoListTtl
    {
        margin-bottom: 3.4722vw
    }
}
.infoListSns ul
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}
@media only screen and (min-width: 499px)
{
    .infoListSns ul li
    {
        width: 17px;
        margin-left: 20px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .infoListSns ul li
    {
        width: 14px;
        margin-left: 16px
    }
}
@media only screen and (max-width: 500px)
{
    .infoListSns ul li
    {
        width: 4.1666vw;
        margin-left: 4.1666vw
    }
}
.infoListSns ul li a
{
    display: block
}
@media only screen and (min-width: 499px)
{
    .infoListSns ul li a
    {
        -webkit-transition: opacity .2s ease 0s;
        transition: opacity .2s ease 0s;
        cursor: pointer
    }
    .infoListSns ul li a:hover
    {
        opacity: .7
    }
}
@media only screen and (min-width: 499px)
{
    .infoListSns.infoListSnsBottom
    {
        margin-top: 80px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .infoListSns.infoListSnsBottom
    {
        margin-top: 66px
    }
}
@media only screen and (max-width: 500px)
{
    .infoListSns.infoListSnsBottom
    {
        margin-top: 7.5vw
    }
}
@media only screen and (max-width: 500px)
{
    .infoListSns.infoListSnsBottom ul
    {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center
    }
}
.infoListPostContent
{
    border-bottom: 1px dotted #3c5064
}
@media only screen and (min-width: 499px)
{
    .infoListPostContent
    {
        margin-top: 35px;
        padding-bottom: 80px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .infoListPostContent
    {
        margin-top: 29px;
        padding-bottom: 66px
    }
}
@media only screen and (max-width: 500px)
{
    .infoListPostContent
    {
        margin-top: 6.9444vw;
        padding-bottom: 9.7222vw
    }
}
@media only screen and (min-width: 499px)
{
    .infoListPostContent p
    {
        font-size: 13px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .infoListPostContent p
    {
        font-size: 12px
    }
}
@media only screen and (max-width: 500px)
{
    .infoListPostContent p
    {
        font-size: 3.3vw
    }
}
@media only screen and (min-width: 499px)
{
    .infoListPostContent p
    {
        font-weight: bold;
        line-height: 1.69;
        letter-spacing: .1em;
        margin-bottom: 30px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .infoListPostContent p
    {
        margin-bottom: 25px
    }
}
@media only screen and (max-width: 500px)
{
    .infoListPostContent p
    {
        line-height: 1.66;
        letter-spacing: .08em;
        margin-bottom: 8.8888vw
    }
}
.infoListPostContent p:last-child
{
    margin-bottom: 0
}
@media only screen and (min-width: 499px)
{
    .infoListPostContent figure
    {
        margin-bottom: 30px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .infoListPostContent figure
    {
        margin-bottom: 25px
    }
}
@media only screen and (max-width: 500px)
{
    .infoListPostContent figure
    {
        margin-bottom: 8.8888vw
    }
}
.infoListPostContent figure:last-child
{
    margin-bottom: 0
}
.infoListPostContent figure img
{
    width: 100%;
    height: auto
}
.infoListPostContent h3
{
    font-weight: bold;
    color: #3c5064
}
@media only screen and (min-width: 499px)
{
    .infoListPostContent h3
    {
        font-size: 18px;
        letter-spacing: .08em;
        margin-bottom: 25px;
        line-height: 1.444
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .infoListPostContent h3
    {
        font-size: 15px;
        margin-bottom: 20px
    }
}
@media only screen and (max-width: 500px)
{
    .infoListPostContent h3
    {
        font-size: 4.1666vw;
        letter-spacing: .08em;
        margin-bottom: 4.1666vw;
        line-height: 1.666
    }
}
.infoListPostContent h3:last-child
{
    margin-bottom: 0
}
.infoListPostContent h4
{
    font-weight: bold;
    color: #3c5064;
    padding-left: 1.5em;
    position: relative
}
@media only screen and (min-width: 499px)
{
    .infoListPostContent h4
    {
        font-size: 18px;
        letter-spacing: .08em;
        margin-bottom: 25px;
        line-height: 1.444
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .infoListPostContent h4
    {
        font-size: 15px;
        margin-bottom: 20px
    }
}
@media only screen and (max-width: 500px)
{
    .infoListPostContent h4
    {
        font-size: 4.1666vw;
        letter-spacing: .08em;
        margin-bottom: 4.1666vw;
        line-height: 1.666
    }
}
.infoListPostContent h4:last-child
{
    margin-bottom: 0
}
.infoListPostContent h4:before
{
    content: " ";
    position: absolute;
    left: 0;
    top: 0;
    -webkit-transform: translateY(10%);
    transform: translateY(10%);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    background-image: url(assets/images/common/icn_flower.svg)
}
@media only screen and (min-width: 499px)
{
    .infoListPostContent h4:before
    {
        width: 20px;
        height: 20px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .infoListPostContent h4:before
    {
        width: 16px;
        height: 16px
    }
}
@media only screen and (max-width: 500px)
{
    .infoListPostContent h4:before
    {
        width: 5.1388vw;
        height: 5.1388vw
    }
}
@media only screen and (min-width: 499px)
{
    .infoListPostContent ul, .infoListPostContent ol
    {
        margin-bottom: 30px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .infoListPostContent ul, .infoListPostContent ol
    {
        margin-bottom: 25px
    }
}
@media only screen and (max-width: 500px)
{
    .infoListPostContent ul, .infoListPostContent ol
    {
        margin-bottom: 8.8888vw
    }
}
.infoListPostContent ul:last-child, .infoListPostContent ol:last-child
{
    margin-bottom: 0
}
.infoListPostContent ul li, .infoListPostContent ol li
{
    position: relative;
    padding-left: 1.5em
}
@media only screen and (min-width: 499px)
{
    .infoListPostContent ul li, .infoListPostContent ol li
    {
        font-size: 13px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .infoListPostContent ul li, .infoListPostContent ol li
    {
        font-size: 12px
    }
}
@media only screen and (max-width: 500px)
{
    .infoListPostContent ul li, .infoListPostContent ol li
    {
        font-size: 3.3vw
    }
}
@media only screen and (min-width: 499px)
{
    .infoListPostContent ul li, .infoListPostContent ol li
    {
        font-weight: bold;
        line-height: 1.69;
        letter-spacing: .1em;
        margin-bottom: 10px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .infoListPostContent ul li, .infoListPostContent ol li
    {
        margin-bottom: 8px
    }
}
@media only screen and (max-width: 500px)
{
    .infoListPostContent ul li, .infoListPostContent ol li
    {
        line-height: 1.66;
        letter-spacing: .08em;
        margin-bottom: 1vw
    }
}
.infoListPostContent ul li:last-child, .infoListPostContent ol li:last-child
{
    margin-bottom: 0
}
.infoListPostContent ul li:before
{
    content: "■";
    position: absolute;
    left: 0;
    top: 0;
    color: #3c5064
}
@media only screen and (min-width: 499px)
{
    .infoListPostContent ul li:before
    {
        font-size: 80%;
        -webkit-transform: translateY(12%);
        transform: translateY(12%)
    }
}
@media only screen and (max-width: 500px)
{
    .infoListPostContent ul li:before
    {
        font-size: 95%;
        -webkit-transform: translateY(5%);
        transform: translateY(5%)
    }
}
.infoListPostContent ol
{
    counter-reset: item
}
.infoListPostContent ol li:before
{
    counter-increment: item;
    content: counter(item);
    position: absolute;
    left: .1em;
    top: 0;
    -webkit-transform: translateY(-20%);
    transform: translateY(-20%);
    color: #3c5064;
    font-family: 'Italianno',cursive
}
@media only screen and (min-width: 499px)
{
    .infoListPostContent ol li:before
    {
        font-size: 22px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .infoListPostContent ol li:before
    {
        font-size: 18px
    }
}
@media only screen and (max-width: 500px)
{
    .infoListPostContent ol li:before
    {
        font-size: 6.3888vw
    }
}
@media only screen and (min-width: 499px)
{
    .infoListPostContent2
    {
        margin-top: 80px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .infoListPostContent2
    {
        margin-top: 66px
    }
}
@media only screen and (max-width: 500px)
{
    .infoListPostContent2
    {
        margin-top: 9.7222vw
    }
}
@media only screen and (min-width: 499px)
{
    .postColumn
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        margin-bottom: 60px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .postColumn
    {
        margin-bottom: 50px
    }
}
@media only screen and (max-width: 500px)
{
    .postColumn
    {
        margin-bottom: 8.8888vw
    }
}
@media only screen and (min-width: 499px)
{
    .postColumnBlockTxt p
    {
        font-size: 13px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .postColumnBlockTxt p
    {
        font-size: 12px
    }
}
@media only screen and (max-width: 500px)
{
    .postColumnBlockTxt p
    {
        font-size: 3.3vw
    }
}
@media only screen and (min-width: 499px)
{
    .postColumnBlockTxt p
    {
        font-weight: bold;
        line-height: 1.69;
        letter-spacing: .1em
    }
}
@media only screen and (max-width: 500px)
{
    .postColumnBlockTxt p
    {
        line-height: 1.66;
        letter-spacing: .08em
    }
}
@media only screen and (min-width: 499px)
{
    .hasColumn2 .postColumnBlockImg
    {
        width: 46.3768%
    }
}
@media only screen and (max-width: 500px)
{
    .hasColumn2 .postColumnBlockImg
    {
        margin-bottom: 3.05vw
    }
}
@media only screen and (min-width: 499px)
{
    .hasColumn2 .postColumnBlockTxt
    {
        width: 50%
    }
}
.postColumnBlockOder1
{
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1
}
.postColumnBlockOder2
{
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2
}
@media only screen and (min-width: 499px)
{
    .hasColumn3
    {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center
    }
}
@media only screen and (min-width: 499px)
{
    .hasColumn3 .postColumnBlock
    {
        width: 30.7246%
    }
}
@media only screen and (max-width: 500px)
{
    .hasColumn3 .postColumnBlock
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        margin-bottom: 4.1666vw
    }
    .hasColumn3 .postColumnBlock:last-child
    {
        margin-bottom: 0
    }
}
@media only screen and (max-width: 500px)
{
    .hasColumn3 .postColumnBlock figure
    {
        width: 38.545%;
        margin-bottom: 0
    }
}
@media only screen and (min-width: 499px)
{
    .hasColumn3 .postColumnBlock figcaption
    {
        font-size: 13px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .hasColumn3 .postColumnBlock figcaption
    {
        font-size: 12px
    }
}
@media only screen and (max-width: 500px)
{
    .hasColumn3 .postColumnBlock figcaption
    {
        font-size: 3.3vw
    }
}
@media only screen and (min-width: 499px)
{
    .hasColumn3 .postColumnBlock figcaption
    {
        font-weight: bold;
        line-height: 1.69;
        letter-spacing: .1em
    }
}
@media only screen and (max-width: 500px)
{
    .hasColumn3 .postColumnBlock figcaption
    {
        line-height: 1.66;
        letter-spacing: .08em;
        width: 56.909%
    }
}
.postQuoteBlock
{
    border: 2px solid #aaa08c
}
@media only screen and (min-width: 499px)
{
    .postQuoteBlock
    {
        padding: 25px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .postQuoteBlock
    {
        padding: 20px
    }
}
@media only screen and (max-width: 500px)
{
    .postQuoteBlock
    {
        padding: 1.1111vw
    }
}
@media only screen and (max-width: 500px)
{
    .postQuoteBlockInner
    {
        padding: 6.9444vw 5.5555vw;
        border: 1px solid #aaa08c
    }
}
.postQuoteTtl
{
    font-weight: bold
}
@media only screen and (min-width: 499px)
{
    .postQuoteTtl
    {
        font-size: 18px;
        letter-spacing: .08em;
        line-height: 1.44;
        margin-bottom: 15px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .postQuoteTtl
    {
        font-size: 15px;
        margin-bottom: 12px
    }
}
@media only screen and (max-width: 500px)
{
    .postQuoteTtl
    {
        font-size: 3.8888vw;
        letter-spacing: .12em;
        line-height: 1.78;
        margin-bottom: 2.7777vw
    }
}
@media only screen and (min-width: 499px)
{
    .postQuoteComment
    {
        font-size: 13px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .postQuoteComment
    {
        font-size: 12px
    }
}
@media only screen and (max-width: 500px)
{
    .postQuoteComment
    {
        font-size: 3.3vw
    }
}
@media only screen and (min-width: 499px)
{
    .postQuoteComment
    {
        font-weight: bold;
        line-height: 1.69;
        letter-spacing: .1em
    }
}
@media only screen and (max-width: 500px)
{
    .postQuoteComment
    {
        line-height: 1.66;
        letter-spacing: .08em
    }
}
@media only screen and (min-width: 499px)
{
    .postBtnArea
    {
        margin-top: 57px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .postBtnArea
    {
        margin-top: 47px
    }
}
@media only screen and (max-width: 500px)
{
    .postBtnArea
    {
        margin-top: 7.7777vw
    }
}
.postBtnMove
{
    clear: both;
    overflow: hidden;
    font-weight: bold;
    margin: 0 auto
}
@media only screen and (min-width: 499px)
{
    .postBtnMove
    {
        width: 92%
    }
}
.postBtnMove a
{
    letter-spacing: .08em
}
@media only screen and (min-width: 499px) and (min-width: 499px)
{
    .postBtnMove a
    {
        -webkit-transition: opacity .2s ease 0s;
        transition: opacity .2s ease 0s;
        cursor: pointer
    }
    .postBtnMove a:hover
    {
        opacity: .7
    }
}
.postBtnMove .prvPost
{
    float: left
}
.postBtnMove .nxtPost
{
    float: right
}
.postBtnMove .prvPost:before, .postBtnMove .nxtPost:after
{
    content: " ";
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    display: inline-block;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}
@media only screen and (min-width: 499px)
{
    .postBtnMove .prvPost:before, .postBtnMove .nxtPost:after
    {
        width: 22px;
        height: 5px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .postBtnMove .prvPost:before, .postBtnMove .nxtPost:after
    {
        width: 18px;
        height: 4px
    }
}
@media only screen and (max-width: 500px)
{
    .postBtnMove .prvPost:before, .postBtnMove .nxtPost:after
    {
        width: 4.5833vw;
        height: 1vw
    }
}
.postBtnMove .prvPost:before
{
    background-image: url(assets/images/common/arw_pagi_prv.svg);
    margin-right: 1em
}
.postBtnMove .nxtPost:after
{
    background-image: url(assets/images/common/arw_pagi_nxt.svg);
    margin-left: 1em
}
.postBtnTop
{
    text-align: center
}
@media only screen and (max-width: 500px)
{
    .postBtnTop
    {
        margin-top: 1.8em
    }
}
.postBtnTop a
{
    font-family: petersburg-web,serif;
    font-weight: 400,700;
    font-style: normal,italic;
    letter-spacing: .08em;
    text-decoration: underline;
    color: #3c5064;
    display: inline-block
}
@media only screen and (min-width: 499px)
{
    .postBtnTop a
    {
        -webkit-transform: translateY(-100%);
        transform: translateY(-100%)
    }
}
@media only screen and (min-width: 499px) and (min-width: 499px)
{
    .postBtnTop a
    {
        -webkit-transition: opacity .2s ease 0s;
        transition: opacity .2s ease 0s;
        cursor: pointer
    }
    .postBtnTop a:hover
    {
        opacity: .7
    }
}
#selection
{
    background: #fff;
    text-align: center
}
@media only screen and (min-width: 499px)
{
    #selection
    {
        padding: 60px 0 100px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    #selection
    {
        padding: 50px 0 82px
    }
}
@media only screen and (max-width: 500px)
{
    #selection
    {
        padding: 6.25vw 0 12.5vw
    }
}
#selection.fairClass
{
    background: #f7f7f3
}
#selection h2
{
    color: #aaa08c;
    font-family: 'Italianno',cursive
}
@media only screen and (min-width: 499px)
{
    #selection h2
    {
        margin-bottom: 60px;
        font-size: 75px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    #selection h2
    {
        margin-bottom: 50px;
        font-size: 62px
    }
}
@media only screen and (max-width: 500px)
{
    #selection h2
    {
        margin-bottom: 8.3333vw;
        font-size: 11.1111vw
    }
}
.selectionInner
{
    margin: 0 auto
}
@media only screen and (min-width: 499px)
{
    .selectionInner
    {
        width: 1030px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .selectionInner
    {
        width: 100%;
        padding: 0 20px
    }
}
@media only screen and (max-width: 500px)
{
    .selectionInner
    {
        width: 88.8888vw
    }
}
.selectionListWrap
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}
@media only screen and (max-width: 500px)
{
    .selectionListWrap
    {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }
}
@media only screen and (min-width: 499px)
{
    .selectionList
    {
        width: 18.834951%
    }
}
@media only screen and (max-width: 500px)
{
    .selectionList
    {
        width: 47.65625%;
        margin-top: 4.1666vw
    }
}
@media only screen and (max-width: 500px)
{
    .selectionList.selectionListWedding
    {
        width: 100%;
        margin-top: 0
    }
}
.selectionList a
{
    display: block
}
@media only screen and (min-width: 499px)
{
    .selectionList a
    {
        -webkit-transition: opacity .2s ease 0s;
        transition: opacity .2s ease 0s;
        cursor: pointer
    }
    .selectionList a:hover
    {
        opacity: .7
    }
}
@media only screen and (min-width: 499px)
{
    .selectionList a img
    {
        margin-bottom: 20px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .selectionList a img
    {
        margin-bottom: 16.5px
    }
}
@media only screen and (max-width: 500px)
{
    .selectionList a img
    {
        margin-bottom: 2.7777vw
    }
}
.selectionList a p
{
    font-family: petersburg-web,serif;
    font-weight: 400,700;
    font-style: normal,italic
}
@media only screen and (min-width: 499px)
{
    .selectionList a p
    {
        font-size: 15px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .selectionList a p
    {
        font-size: 12px
    }
}
@media only screen and (max-width: 500px)
{
    .selectionList a p
    {
        font-size: 3.3333vw
    }
}
.selectionList a p:after
{
    content: "　";
    display: inline-block;
    background-image: url(assets/images/common/arw_btn.svg);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    margin-left: .8em;
    padding-top: .3em
}
@media only screen and (min-width: 499px)
{
    .selectionList a p:after
    {
        width: 22px;
        height: 15px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .selectionList a p:after
    {
        width: 18.15px;
        height: 12px
    }
}
@media only screen and (max-width: 500px)
{
    .selectionList a p:after
    {
        width: 4.8888vw;
        height: 3.3333vw
    }
}
#footerContact
{
    background-image: url(assets/images/common/footer_contact_bg.jpg);
    background-position: center;
    background-size: cover;
    text-align: center
}
.footerContactContent .secLead
{
    margin-bottom: 20px;
    letter-spacing: .12em
}
@media only screen and (min-width: 499px)
{
    .footerContactBtnWrap
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        margin-bottom: 50px
    }
    .footerContactBtnWrap li
    {
        width: 236px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .footerContactBtnWrap
    {
        margin-bottom: 42px
    }
}
@media only screen and (max-width: 500px)
{
    .footerContactBtnWrap
    {
        margin-bottom: 7.6388vw
    }
    .footerContactBtnWrap li
    {
        width: 72.2222vw;
        margin: 0 auto 1vw
    }
}
.footerContactBtn
{
    background: #aaa08c;
    color: #fff;
    font-weight: bold;
    display: block
}
@media only screen and (min-width: 499px)
{
    .footerContactBtn
    {
        -webkit-transition: opacity .2s ease 0s;
        transition: opacity .2s ease 0s;
        cursor: pointer
    }
    .footerContactBtn:hover
    {
        opacity: .7
    }
}
@media only screen and (min-width: 499px)
{
    .footerContactBtn
    {
        width: 100%;
        padding: 20px
    }
}
@media only screen and (max-width: 500px)
{
    .footerContactBtn
    {
        width: 100%;
        padding: 3.75vw
    }
}
.footerContactBtn.footerContactBtnFair
{
    background: #821437
}
.footerContactInfo h3
{
    font-weight: bold
}
@media only screen and (min-width: 499px)
{
    .footerContactInfo h3
    {
        font-size: 18px;
        margin-bottom: 20px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .footerContactInfo h3
    {
        font-size: 15px;
        margin-bottom: 16.5px
    }
}
@media only screen and (max-width: 500px)
{
    .footerContactInfo h3
    {
        font-size: 3.6111vw;
        margin-bottom: 3.6111vw
    }
}
.footerTel
{
    letter-spacing: .05em;
    font-family: petersburg-web,serif;
    font-weight: 400,700;
    font-style: normal,italic
}
@media only screen and (min-width: 499px)
{
    .footerTel
    {
        margin-bottom: 20px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .footerTel
    {
        margin-bottom: 16.5px
    }
}
@media only screen and (max-width: 500px)
{
    .footerTel
    {
        margin-bottom: 3.8888vw
    }
}
@media only screen and (min-width: 499px)
{
    .footerTel a
    {
        cursor: default;
        font-size: 20px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .footerTel a
    {
        font-size: 16.5px
    }
}
@media only screen and (max-width: 500px)
{
    .footerTel a
    {
        font-size: 3.6111vw
    }
}
@media only screen and (min-width: 499px)
{
    .footerTel a span
    {
        font-size: 32px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .footerTel a span
    {
        font-size: 26.4px
    }
}
@media only screen and (max-width: 500px)
{
    .footerTel a span
    {
        font-size: 6.25vw
    }
}
.footerOpen
{
    font-weight: bold
}
@media only screen and (min-width: 499px)
{
    .footerOpen
    {
        font-size: 16px;
        line-height: 1.75
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .footerOpen
    {
        font-size: 13px
    }
}
@media only screen and (max-width: 500px)
{
    .footerOpen
    {
        font-size: 3.1944vw;
        line-height: 1.739
    }
}
@media only screen and (min-width: 499px)
{
    .footerOpen span
    {
        font-size: 14px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .footerOpen span
    {
        font-size: 12px
    }
}
@media only screen and (max-width: 500px)
{
    .footerOpen span
    {
        font-size: 2.7777vw
    }
}
#topFooter
{
    background: #f0f0ea;
    text-align: center
}
@media only screen and (min-width: 499px)
{
    #topFooter
    {
        padding: 30px 0 40px;
        border-bottom: 2px solid #dbd7c6;
        position: relative
    }
    #topFooter:after
    {
        content: "　";
        width: 980px;
        position: absolute;
        z-index: 10;
        height: 2px;
        background: #aaa08c;
        bottom: -2px;
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%)
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    #topFooter
    {
        padding: 24.75px 0 33px
    }
}
@media only screen and (max-width: 500px)
{
    #topFooter
    {
        padding: 2.7777vw 0 7.5vw
    }
}
@media only screen and (min-width: 499px)
{
    .topFooterLogo
    {
        width: 150px;
        margin: 0 auto 40px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .topFooterLogo
    {
        width: 124px;
        margin: 0 auto 33px
    }
}
@media only screen and (max-width: 500px)
{
    .topFooterLogo
    {
        width: 31.5vw;
        margin: 0 auto 3.4722vw
    }
}
.topFooterNav
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}
@media only screen and (min-width: 499px)
{
    .topFooterNav
    {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        align-items: center;
    }
}
@media only screen and (max-width: 500px)
{
    .topFooterNav
    {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between
    }
}
.topFooterNav a
{
    font-family: petersburg-web,serif;
    font-weight: 400,700;
    font-style: normal,italic
}
@media only screen and (max-width: 500px)
{
    .topFooterNav a.insta{
        width: 100%;
    }

    .topFooterNav a.insta img{
        width: 18vw;
    }
}
@media only screen and (min-width: 499px)
{
    .topFooterNav a
    {
        -webkit-transition: opacity .2s ease 0s;
        transition: opacity .2s ease 0s;
        cursor: pointer
    }
    .topFooterNav a:hover
    {
        opacity: .7
    }
}
@media only screen and (min-width: 499px)
{
    .topFooterNav a
    {
        margin: 0 1.5em
    }
}
@media only screen and (max-width: 500px)
{
    .topFooterNav a
    {
        position: relative;
        padding: 4.8611vw 0;
        font-size: 3.0555vw;
        width: 48.4375%;
        border-bottom: 1px solid #aaa08c
    }
    .topFooterNav a:first-child
    {
        width: 100%;
        border-top: 1px solid #aaa08c
    }
    .topFooterNav a:after
    {
        content: "　";
        position: absolute;
        top: 50%;
        right: 2.2222vw;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        background-image: url(assets/images/common/arw_btn.svg);
        background-size: contain;
        background-position: center;
        background-repeat: no-repeat
    }
}
#about
{
    background: #fff
}
.aboutInner
{
    width: 100%;
    max-width: 1160px;
    margin-right: auto;
    margin-left: auto;
    padding: 0 20px
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .aboutInner
    {
        width: 1024px
    }
}
@media only screen and (max-width: 500px)
{
    .aboutInner
    {
        width: 88.8888vw;
        max-width: none;
        padding: 0
    }
    .aboutInner .secLead
    {
        text-align: left
    }
}
.aboutListWrap
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}
@media only screen and (min-width: 499px)
{
    .aboutListWrap
    {
        margin-top: 40px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .aboutListWrap
    {
        margin-top: 33px
    }
}
@media only screen and (max-width: 500px)
{
    .aboutListWrap
    {
        margin-top: 11.1111vw
    }
}
@media only screen and (min-width: 499px)
{
    .aboutList
    {
        width: 31.96%;
        margin-right: 2.06%;
        margin-bottom: 20px
    }
}
@media only screen and (max-width: 500px)
{
    .aboutList
    {
        width: 32.5%;
        margin-right: 1.25%;
        margin-bottom: 1.1111vw
    }
}
.aboutList:nth-child(3n)
{
    margin-right: 0
}
@media only screen and (min-width: 499px)
{
    .aboutList a
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between
    }
}
@media only screen and (min-width: 499px) and (min-width: 499px)
{
    .aboutList a
    {
        -webkit-transition: opacity .2s ease 0s;
        transition: opacity .2s ease 0s;
        cursor: pointer
    }
    .aboutList a:hover
    {
        opacity: .7
    }
}
@media only screen and (max-width: 500px)
{
    .aboutList a
    {
        display: block;
        position: relative
    }
}
@media only screen and (min-width: 499px)
{
    .aboutTh
    {
        width: 44.69%
    }
}
@media only screen and (max-width: 500px)
{
    .aboutTh
    {
        width: 100%;
        position: relative;
        z-index: 1
    }
}
@media only screen and (min-width: 499px)
{
    .aboutTxt
    {
        width: 51.8%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
}
@media only screen and (max-width: 500px)
{
    .aboutTxt
    {
        text-align: center;
        color: #fff;
        width: 100%;
        position: absolute;
        top: 50%;
        left: 0;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        z-index: 5
    }
}
.aboutNameEn
{
    font-weight: bold;
    letter-spacing: .08em
}
@media only screen and (min-width: 499px)
{
    .aboutNameEn
    {
        color: #aaa08c;
        font-size: 18px;
        line-height: 1.444;
        margin-bottom: 5px
    }
    .aboutNameEn span
    {
        font-size: 15px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .aboutNameEn
    {
        font-size: 15px
    }
    .aboutNameEn span
    {
        font-size: 12px
    }
}
@media only screen and (max-width: 500px)
{
    .aboutNameEn
    {
        font-size: 3vw;
        line-height: 1.363;
        margin-bottom: 2.0833vw;
        letter-spacing: normal
    }
}
.aboutNameJp
{
    font-weight: bold
}
@media only screen and (min-width: 499px)
{
    .aboutNameJp
    {
        font-size: 13px;
        letter-spacing: .08em
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .aboutNameJp
    {
        font-size: 11px
    }
}
@media only screen and (max-width: 500px)
{
    .aboutNameJp
    {
        font-size: 2.2vw;
        line-height: 1.5;
        letter-spacing: normal
    }
}
@media only screen and (min-width: 499px)
{
    #footer
    {
        background: #282f37;
        padding: 17px 0
    }
}
@media only screen and (max-width: 500px)
{
    #footer
    {
        padding-bottom: 11.8055vw
    }
}
@media only screen and (min-width: 499px)
{
    .fooerInner
    {
        width: 980px;
        margin: 0 auto;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
}
.footerNav
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}
@media only screen and (max-width: 500px)
{
    .footerNav
    {
        width: 100%;
        background: #282f37;
        padding: 5.5555vw;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center
    }
}
@media only screen and (min-width: 499px)
{
    .footerNav li
    {
        margin-right: 3.5em
    }
}
@media only screen and (max-width: 500px)
{
    .footerNav li
    {
        text-align: center;
        border-right: 1px solid #fff;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
    .footerNav li a
    {
        font-size: 2.7777vw;
        line-height: 1.35;
        padding: 0 4.5vw
    }
    .footerNav li:first-child a
    {
        padding: 0 4.5vw 0 0
    }
    .footerNav li:last-child
    {
        border-right: none
    }
    .footerNav li:last-child a
    {
        padding: 0 0 0 4.5vw
    }
}
@media screen and (max-width: 320px)
{
    .footerNav li a
    {
        font-size: 2.5vw;
        line-height: 1.35;
        padding: 0 3vw
    }
}
.footerNav a
{
    color: #fff
}
@media only screen and (min-width: 499px)
{
    .footerNav a
    {
        font-size: 12px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    .footerNav a
    {
        font-size: 11px
    }
}
#copyright
{
    font-family: petersburg-web,serif;
    font-weight: 400,700;
    font-style: normal,italic
}
@media only screen and (min-width: 499px)
{
    #copyright
    {
        color: #fff;
        font-size: 12px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    #copyright
    {
        font-size: 11px
    }
}
@media only screen and (max-width: 500px)
{
    #copyright
    {
        font-size: 3.0555vw;
        text-align: center;
        padding: 2.7777vw;
        font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,serif;
        font-weight: bold;
        background: #fff
    }
}
#toTop
{
    position: fixed;
    z-index: 50;
    display: block;
    opacity: 0;
    -webkit-transition: opacity .2s;
    transition: opacity .2s
}
@media only screen and (min-width: 499px)
{
    #toTop
    {
        width: 60px;
        bottom: 57px;
        right: 13px
    }
}
@media only screen and (min-width: 500px) and (max-width: 1366px)
{
    #toTop
    {
        width: 50px
    }
}
@media only screen and (max-width: 500px)
{
    #toTop
    {
        width: 11.1111vw;
        bottom: 13.8888vw;
        right: 2.0833vw
    }
}
#toTop.active
{
    opacity: 1
}
#toTop:hover
{
    opacity: .6
}
.spFooterBtnWrap
{
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 450;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-transition: .4s;
    transition: .4s;
    -webkit-transform: translateY(100%);
    transform: translateY(100%)
}
.spFooterBtnWrap.active
{
    -webkit-transform: none;
    transform: none
}
.spFooterBtn
{
    width: 50%;
    background: #821437;
    color: #fff;
    font-weight: bold;
    font-size: 3.4vw;
    text-align: center;
    line-height: 11.8055vw;
    letter-spacing: .14em
}
.spFooterBtn:before
{
    content: " ";
    display: inline-block;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    background-image: url(assets/images/common/icn_fair.svg);
    width: 4.1098vw;
    height: 4.18375vw;
    vertical-align: middle;
    margin-right: .5em
}
.spFooterBtn:first-child
{
    border-right: 1px solid #fff;
    background: #aaa08c;
    font-size: 3.6vw;
    letter-spacing: .06em
}
.spFooterBtn:first-child:before
{
    background-image: url(assets/images/common/icn_tel.svg);
    width: 3.3705vw;
    height: 4.308vw
}
.spFooterBtn span
{
    vertical-align: middle;
    display: inline-block
}
.spFooterBtn:last-child span
{
    padding-top: .3em
}
.slick-slider
{
    position: relative;
    display: block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -ms-touch-action: pan-y;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent
}
.slick-list
{
    position: relative;
    overflow: hidden;
    display: block;
    margin: 0;
    padding: 0
}
.slick-list:focus
{
    outline: none
}
.slick-list.dragging
{
    cursor: pointer;
    cursor: hand
}
.slick-slider .slick-track, .slick-slider .slick-list
{
    -webkit-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0)
}
.slick-track
{
    position: relative;
    left: 0;
    top: 0;
    display: block;
    margin-left: auto;
    margin-right: auto
}
.slick-track:before, .slick-track:after
{
    content: "";
    display: table
}
.slick-track:after
{
    clear: both
}
.slick-loading .slick-track
{
    visibility: hidden
}
.slick-slide
{
    float: left;
    height: 100%;
    min-height: 1px;
    display: none
}
[dir="rtl"] .slick-slide
{
    float: right
}
.slick-slide img
{
    display: block
}
.slick-slide.slick-loading img
{
    display: none
}
.slick-slide.dragging img
{
    pointer-events: none
}
.slick-initialized .slick-slide
{
    display: block
}
.slick-loading .slick-slide
{
    visibility: hidden
}
.slick-vertical .slick-slide
{
    display: block;
    height: auto;
    border: 1px solid transparent
}
.slick-arrow.slick-hidden
{
    display: none
}
.slick-loading .slick-list
{
    background: #fff url("assets/slick/ajax-loader.gif") center center no-repeat
}
@font-face
{
    font-family: "slick";
    src: url("assets/js/slick/fonts/slick.eot");
    src: url("assets/js/slick/fonts/slick.eot?#iefix") format("embedded-opentype"),url("assets/js/slick/fonts/slick.woff") format("woff"),url("assets/js/slick/fonts/slick.ttf") format("truetype"),url("assets/js/slick/fonts/slick.svg#slick") format("svg");
    font-weight: normal;
    font-style: normal
}
.slick-prev, .slick-next
{
    position: absolute;
    z-index: 100;
    display: block;
    line-height: 0;
    font-size: 0;
    cursor: pointer;
    background: transparent;
    color: transparent;
    top: 50%;
    -webkit-transform: translate(0,-50%);
    transform: translate(0,-50%);
    padding: 0;
    border: none;
    outline: none
}
@media screen and (min-width: 751px)
{
    .slick-prev, .slick-next
    {
        height: 32px;
        width: 16px
    }
}
@media screen and (min-width: 0) and (max-width: 750px)
{
    .slick-prev, .slick-next
    {
        height: 12px;
        width: 8px
    }
}
.slick-prev:hover, .slick-prev:focus, .slick-next:hover, .slick-next:focus
{
    opacity: .6
}
.slick-prev:hover:before, .slick-prev:focus:before, .slick-next:hover:before, .slick-next:focus:before
{
    opacity: .6
}
.slick-prev.slick-disabled:before, .slick-next.slick-disabled:before
{
    opacity: .25
}
.slick-prev:before, .slick-next:before
{
    font-family: "slick";
    font-size: 20px;
    line-height: 1;
    color: #fff;
    opacity: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}
.slick-prev
{
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center
}
@media screen and (min-width: 751px)
{
    .slick-prev
    {
        background-image: url(assets/images/arrow_prev.png);
        left: 20px
    }
}
@media screen and (min-width: 0) and (max-width: 750px)
{
    .slick-prev
    {
        background-image: url(assets/images/arrow_prev_sp.png);
        left: 10px
    }
}
[dir="rtl"] .slick-prev
{
    left: auto
}
@media screen and (min-width: 751px)
{
    [dir="rtl"] .slick-prev
    {
        background: url(assets/images/arrow_prev.png);
        right: 20px
    }
}
@media screen and (min-width: 0) and (max-width: 750px)
{
    [dir="rtl"] .slick-prev
    {
        background: url(assets/images/arrow_prev_sp.png);
        right: 10px
    }
}
.slick-prev:before
{
    content: "　"
}
[dir="rtl"] .slick-prev:before
{
    content: "　"
}
.slick-next
{
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center
}
@media screen and (min-width: 751px)
{
    .slick-next
    {
        background-image: url(assets/images/arrow_next.png);
        right: 20px
    }
}
@media screen and (min-width: 0) and (max-width: 750px)
{
    .slick-next
    {
        background-image: url(assets/images/arrow_next_sp.png);
        right: 10px
    }
}
[dir="rtl"] .slick-next
{
    right: auto
}
@media screen and (min-width: 751px)
{
    [dir="rtl"] .slick-next
    {
        left: 20px
    }
}
@media screen and (min-width: 0) and (max-width: 750px)
{
    [dir="rtl"] .slick-next
    {
        left: 10px
    }
}
.slick-next:before
{
    content: "　"
}
[dir="rtl"] .slick-next:before
{
    content: "　"
}
.slick-dotted.slick-slider
{
    margin-bottom: 0
}
.slick-dots
{
    position: absolute;
    list-style: none;
    display: block;
    text-align: center;
    padding: 0;
    margin: 0;
    width: 100%;
    bottom: 30px
}
.slick-dots li
{
    position: relative;
    display: inline-block;
    padding: 0;
    cursor: pointer;
    height: 8px;
    width: 8px;
    margin: 0 11px
}
.slick-dots li button
{
    border: 0;
    background: transparent;
    display: block;
    outline: none;
    line-height: 0;
    font-size: 0;
    color: transparent;
    padding: 5px;
    cursor: pointer;
    height: 8px;
    width: 8px
}
.slick-dots li button:hover, .slick-dots li button:focus
{
    outline: none
}
.slick-dots li button:hover:before, .slick-dots li button:focus:before
{
    opacity: .6
}
.slick-dots li button:before
{
    position: absolute;
    top: 0;
    left: 0;
    background: #fff;
    border-radius: 50%;
    content: "";
    font-family: "slick";
    height: 8px;
    width: 8px;
    font-size: 8px;
    line-height: 20px;
    text-align: center;
    color: #000;
    opacity: .25;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}
.slick-dots li.slick-active button:before
{
    color: #000;
    opacity: 1;
}

/*----- ベストレート保証 -------------*/
#bestrate h3 {
   font-weight: bold;
   margin-bottom: 20px;
   line-height: 1.6;
}
#bestrate .txtRed {
    color: #821437;
}
#bestrate .condition {
    background-image: url(assets/images/common/bg_noise1.jpg);
    background-size: 200px 200px;
}
#bestrate ul.list {
    margin: 10px auto 0;
}
#bestrate ul.list li {
    position: relative;
    text-align: left;
    margin-bottom: 7px;
    padding-left: 10px;
}
#bestrate ul.list li::after {
    display: block;
    content: '';
    position: absolute;
    top: .6em;
    left: 0;
    width: 5px;
    height: 5px;
    background-color: #3c5064;
    border-radius: 100%;
}

#bestrate .column2 li p,
#bestrate .secLead {
    text-align: center;
    line-height: 1.6;
}

#bestrate .secUnder3Content .secTtl {
    color: #aaa08c;
}

/*スマホ*/
@media only screen and (max-width: 500px) {
    #bestrate {
        font-size: 3.3vw;
    }
    #bestrate .underSectionContent {
        text-align: center;
        padding-bottom: 20px;
        margin-bottom: 10px;
    }
    #bestrate .fadeinWrap {
        margin-bottom: 45px;
    }
    #bestrate .fadeinWrap:last-of-type {
        margin-bottom: 0px;
    }
    #bestrate .secTtl {
        margin-bottom: 15px;
    }
    #bestrate .secTtl .jp
    {
        font-size: 4.5vw;
        margin-bottom: 10px;
    }
     #bestrate .secTtl .en {
        font-size: 2.5vw;
        margin-bottom: 0px;
    }
    #bestrate h3 {
       font-size: 4.5vw;
    }
    #bestrate p,
    #bestrate ul.list li {
        text-align: left;
        font-size: 3.6vw;
        line-height: 1.8;
    }
    #bestrate p.secComment {
        margin-bottom: 15px;
    }
    #bestrate .secLead {
        font-size: 4vw;
    }
    #bestrate img {
        width: auto;
        margin: 10px 0;
    }
    #bestrate .logo {
        width: 50vw;
    }
    #bestrate .condition {
        padding: 25px 20px 10px;
    }
    #bestrate ul.list li {
        margin-bottom: 5px;
    }
    #bestrate .secUnder3Content {
        padding-bottom: 3vw;
    }
    #bestrate .column2 {
        margin: 30px 0 0;
    }
    #bestrate .column2 li {
        margin-bottom: 25px;
    }
    #bestrate .column2 li .btn a {
        width: 70vw;
        margin-top: 10px;
        font-size: 3.6vw;
    }
}

/*PC*/
@media only screen and (min-width: 499px) {
    #bestrate .underSectionContent {
        text-align: center;
        padding-bottom: 10px;
        margin-bottom: 80px;
    }
    #bestrate .fadeinWrap {
        margin-bottom: 80px;
    }
    #bestrate .secTtl {
        margin-bottom: 25px;
    }
    #bestrate .secTtl .jp {
        font-size: 30px;
        margin-bottom: 15px;
    }
    #bestrate .secTtl .en {
        font-size: 100%;
        margin-bottom: 0px;
    }
    #bestrate h3 {
        font-size: 26px;
    }
    #bestrate p,
    #bestrate ul.list li {
        font-size: 16px;
        line-height: 1.8;
    }
    #bestrate .secLead {
        font-size: 20px;
    }
    #bestrate p.secComment {
        margin-bottom: 15px;
    }
    #bestrate img {
        width: auto;
        margin: 35px 0;
    }
    #bestrate .logo {
        width: 300px;
    }
    #bestrate .img01 {
        width: 950px;
    }
    #bestrate .img02 {
        width: 850px;
    }
    #bestrate .condition {
        padding: 40px 25px;
    }
    #bestrate ul.list {
        width: 665px;
    }
    #bestrate .secUnder3Content {
        padding-top: 50px;
    }
    #bestrate .column2 {
        margin: 40px 0 0;
    }
    #bestrate .column2 li {
        display: inline-block;
        width: 49.5%;
    }
    #bestrate .column2 li .btn a {
        width: 94%;
        margin-top: 20px;
        font-size: 16px;
    }
}

/*--20240826 変更 見出しタグh1の設定--*/
.ttlH1{
    line-height: 1.8;
    text-align: center;
    margin-bottom: 40px;
}
.ttlH1 br{
    display: none;
}

@media only screen and (max-width: 500px) {
    .ttlH1 br{
        display: block;
    }
}