/*
Theme Name: STINGER8 Child
Template: stinger8
Version: 20170614
*/

/*
Spec:

Primary Color:

* #ff6699

Media Queries (spec):

* タブレットサイズ (max-width: 959px)
* タブレットサイズ (min-width: 600px)
* PC サイズ（min-width: 960px)
*/

/* ############################################################ */
/* region 要素 */
/* ############################################################ */
html,
body
{
    box-sizing: border-box;
}

html #wpadminbar
{
    position: fixed;
    text-overflow: ellipsis;
    white-space: nowrap;
    word-wrap: normal;
}

body
{
    background: #fff;
    color: #333;
    font-family: 'Noto Sans Japanese', 'ヒラギノ角ゴ Pro', 'Hiragino Kaku Gothic Pro', '游ゴシック体', 'Yu Gothic', YuGothic, 'メイリオ', 'Meiryo', sans-serif;
}

a:hover
{
    color: #f69;
}

.l
{
    display: inline-block;
}

@media only screen and (min-width: 960px)
{
    .l-lg
    {
        display: inline-block;
    }
}

.only-md,
.only-lg,
.hidden-sm,
.hidden-md
{
    display: none;
}

.only-sm
{
    display: block;
}

@media only screen and (min-width: 600px)
{
    .hidden-sm
    {
        display: block;
    }

    .only-sm,
    .only-lg,
    .hidden-md
    {
        display: none;
    }
}

@media only screen and (min-width: 960px)
{
    .hidden-md
    {
        display: block;
    }

    .only-sm,
    .only-md,
    .hidden-lg
    {
        display: none;
    }
}

@media only screen and (min-width: 960px)
{
    p, .yellowbox, .graybox, .redbox, .post ul li, .post ol li
    {
        font-size: 17px;
    }
}

/* endregion */

/* ############################################################ */
/* region 見出し */
/* ############################################################ */
h1,
h2,
h3,
h4,
h5,
h6,
.post h1,
.post h2,
.post h3,
.post h4,
.post h5,
.post h6,
.post h1 span,
.post h2 span,
.post h3 span,
.post h4 span,
.post h5 span,
.post h6 span
{
    color: #333;
    font-weight: normal;
    font-family: 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro', YuMincho, '游明朝', 'ＭＳ Ｐ明朝', 'MS PMincho', serif;
}

/* endregion */

/* ############################################################ */
/* region ボタン */
/* ############################################################ */
.button
{
    display: block;
    margin: 0 auto 20px;
    padding: 15px 10px;
    border-radius: 4px;
    color: #fff;
    text-align: center;
    text-decoration: none;
    text-shadow: 0 0 4px rgba(0, 0, 0, .25);
    font-weight: normal;
    font-size: 1.35em;
    font-family: 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro', YuMincho, '游明朝', 'ＭＳ Ｐ明朝', 'MS PMincho', serif;
}

@media only screen and (min-width: 600px)
{
    .button
    {
        max-width: 80%;
    }
}

@media only screen and (min-width: 960px)
{
    .button
    {
        max-width: 50%;
    }
}

.button:hover
{
    color: #fff;
    opacity: .75;
}

.button::after
{
    display: inline-block;
    box-sizing: border-box;
    margin-left: .25em;
    width: 1em;
    height: 1em;
    border-radius: 1em;
    color: #fff;
    content: '\00f0a9';
    font: normal normal normal 14px/1 FontAwesome;
    font-size: inherit;
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0);
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.button,
.button:hover
{
    border: 1px solid #f69;
    background: #f69;
    background: linear-gradient(to bottom, #f8b 0%, #f7a 15%, #f69 50%);
    box-shadow: inset 0 0 1px 1px rgba(255, 255, 255, .7), 0 0 0 1px rgba(245, 245, 245, .25), 0 0 2px 1px rgba(0, 0, 0, .2), 0 0 8px 1px rgba(0, 0, 0, .1);
}

.post .button
{
    margin-top: 20px;
}

/* グループ */
.post .button-group
{
    margin-top: 20px;
}

.post .button-group .button
{
    margin-top: 0;
}

.button-group-text
{
    text-align: center;
}

.button-group-text a
{
    color: #333;
    text-decoration: none;
}

@media only screen and (min-width: 960px)
{
    .button-group-text a
    {
        text-decoration: underline;
    }
}

.button-group-text a:hover
{
    color: #f69;
}

.button-group-cta
{
    text-align: center;
}

.button-group-cta .button
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}

.button-group-cta .button::after
{
    content: normal;
}

.button-group-cta .button-line
{
	text-align:center;
    height: 36px;
}

/* シンプル */
.button-simple
{
    display: inline-block;
    padding: .35em .85em;
    border-radius: 10px;
    border: 1px solid #f69;
    background: #f69;
    background: linear-gradient(to bottom, #f8b 0%, #f7a 15%, #f69 50%);
    box-shadow: inset 0 0 1px 1px rgba(255, 255, 255, .7), 0 0 0 1px rgba(245, 245, 245, .25), 0 0 2px 1px rgba(0, 0, 0, .2), 0 0 8px 1px rgba(0, 0, 0, .1);
    color: #fff;
    text-decoration: none;
    font-family: 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro', YuMincho, '游明朝', 'ＭＳ Ｐ明朝', 'MS PMincho', serif;
    opacity: 1;
}

.button-simple::after
{
    display: inline-block;
    box-sizing: border-box;
    margin-left: .25em;
    width: 1em;
    height: 1em;
    border-radius: 1em;
    color: #fff;
    content: '\00f105';
    text-align: center;
    font: normal normal normal 14px/1 FontAwesome;
    font-size: inherit;
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0);
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.button-simple:hover
{
    color: #fff;
    opacity: .75;
}

/* endregion */

/* ############################################################ */
/* region レイアウト */
/* ############################################################ */
@media only screen and (min-width: 960px)
{
    body.home #content-w,
    body.search #content-w,
    body.error404 #content-w
    {
        margin-top: 20px;
    }

    body.site-main.home #content-w
    {
        margin-top: 8px;
    }
}

/* パンくず */
#breadcrumb
{
    margin-right: 10px;
    margin-left: 10px;
    padding: 10px 0;
}

@media only screen and (min-width: 600px)
{
    #breadcrumb
    {
        margin-right: 20px;
        margin-left: 20px;
    }
}

#breadcrumb ol
{
    padding: 0;
}

#breadcrumb ol li
{
    color: #999;
}

#breadcrumb ol li a:hover
{
    color: #f69;
}

/* メイン */
.st-main
{
    padding: 20px 10px;
}

body.page-template-page-empty .st-main,
body.page-template-page-lp .st-main,
body.page-template-page-lp-with-content .st-main
{
    padding-top: 30px;
}

@media only screen and (min-width: 600px)
{
    .st-main
    {
        padding: 20px;
    }

    body.page-template-page-empty .st-main,
    body.page-template-page-lp .st-main,
    body.page-template-page-lp-with-content .st-main
    {
        padding-top: 30px;
    }
}

@media only screen and (min-width: 960px)
{
    .st-main
    {
        margin-right: 0;
        padding: 30px 20px;
    }

    body.page-template-page-empty .st-main,
    body.page-template-page-lp .st-main,
    body.page-template-page-lp-with-content .st-main
    {
        padding-top: 40px;
    }
}

@media only screen and (min-width: 1060px)
{
    body.single .st-main,
    body.page .st-main
    {
        padding: 30px 170px;
    }

    body.home .st-main
    {
        padding: 30px 20px;
    }

    body.page-template-page-empty .st-main,
    body.page-template-page-lp .st-main,
    body.page-template-page-lp-with-content .st-main
    {
        padding-top: 40px;
    }
}

/* endregion */

/* ############################################################ */
/* region ヘッダー */
/* ############################################################ */
#header
{
    box-sizing: border-box;
    padding: 0;
    width: 100%;
    border-bottom: 1px solid #efefef;
    background: #fff;
}

#header .header-content
{
    box-sizing: border-box;
    margin: 0 auto;
}

#header .header-main
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin: auto;
    padding: 10px 0;
    max-width: 1060px;
    max-height: 119px;
    height: 100%;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

#header .header-masthead
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
}

#header #logo
{
    margin: 0;
    -webkit-box-flex: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-grow: 0;
}

#header #logo a
{
    display: block;
    height: 99px;
}

#header #logo img
{
    display: block;
    max-width: none;
    max-height: 100%;
    width: auto;
}

.header-search
{
    width: 310px;
}

#searchform
{
    overflow: hidden;
    padding-bottom: 0;
    border: 1px solid #e5e5e5;
    border-radius: 2px;
    background: #fff;
}

#searchform ::-webkit-input-placeholder
{
    color: #aaa;
}

#searchform :-moz-placeholder
{
    color: #aaa;
}

#searchform ::-moz-placeholder
{
    color: #aaa;
}

#searchform :-ms-input-placeholder
{
    color: #aaa;
}

#searchform :placeholder-shown
{
    color: #aaa;
}

#searchform div
{
    position: relative;
    padding-right: 40px;
}

#searchform input[type='text']
{
    float: left;
    box-sizing: border-box;
    padding: 8px 13px;
    max-width: 100%;
    width: 100%;
    height: auto;
    outline: none;
    border: none;
    border-radius: 3px;
    color: #ccc;
    font-size: 1em;
    line-height: 18px;
}

#searchform button
{
    position: absolute;
    top: 0;
    right: 0;
    float: right;
    padding: 8px 5px;
    width: 40px;
    border: none;
    border-radius: 3px;
    background: transparent;
    color: #808080;
    vertical-align: top;
    font-size: 21px;
    font-family: 'FontAwesome';
    line-height: 18px;
    transition: background .3s ease-in-out;
}

.header-toggles
{
    display: none;
}

/* イフォメーション */
.header-info
{
    display: flex;
    flex-direction: column;
    margin-left: 15px;
    max-height: 129px;
    align-items: center;
    flex-grow: 0;
    flex-shrink: 0;
}

.header-info-text
{
    margin: 0;
    color: #f69;
    font-weight: bold;
    font-size: 1.4em;
    flex-grow: 1;
}

.header-info-image
{
    margin: auto;
    width: auto;
    height: 99px;
}

.header-info-image img
{
    margin: 0;
    max-height: 100%;
    width: auto;
}

/* Instagram */
.header-instagram {
    position: relative;
    width: 100%;
    max-height: 99px;
    margin-left: 15px;
    margin-right: 24px;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    flex-grow: 0;
}

.header-instagram a {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}

.header-instagram img {
    width: auto;
    max-width: 100%;
    max-height: 100%;
}

@media only screen and (max-width: 959px) {
    .header-instagram {
        margin-right: 15px;
        flex-grow: 1;
    }

    .header-instagram a {
        position: static;
        width: 38px;
        height: 38px;
        background: url(/images/instagram-mobile.jpg) no-repeat 50% 50%;
        background-size: contain;
    }

    .header-instagram a img {
        display: none;
    }
}

@media only screen and (max-width: 599px) {
    .header-instagram {
        margin-right: 6px;
        margin-left: 6px;
    }
}

/* 連作先 */
.header-contact
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    align-items: flex-end;
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    flex-shrink: 0;
}

@media only screen and (max-width: 959px) {
    .header-contact {
        flex-grow: 0;
    }
}

/* CTA */
.header-cta
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}

.header-cta-image
{
    margin: 0 10px 0 0;
    height: 42px;
}

.header-cta-image img
{
    margin: 0;
    max-width: none;
    max-height: 100%;
    width: auto;
}

.header-cta-list,
.header-cta-list-item
{
    margin: 0;
    padding: 0;
    list-style: none;
}

.header-cta-list
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}

.header-cta-list-item
{
    height: 42px;
    text-align: center;
}

.header-cta-list-item + .header-cta-list-item
{
    margin-left: 15px;
}

.header-cta-list-item a
{
    display: block;
    height: 100%;
}

.header-cta-list-item img
{
    max-height: 100%;
    width: auto;
}

/* 連作先情報 */
.header-address
{
    font-weight: bold;
    font-size: 1.25em;
    line-height: 1.2;
}

.header-address-list,
.header-address-list-item
{
    margin: 0;
    padding: 0;
    list-style: none;
}

.header-address-list-item a
{
    color: #333;
    text-decoration: none;
}

@media only screen and (max-width: 959px)
{
    body
    {
        padding-top: 70px;
    }

    body.page-template-page-empty
    {
        padding-top: 0;
    }

    body.home,
    body.search,
    body.error404
    {
        padding-top: 90px;
    }

    body.site-main.home
    {
        padding-top: 70px;
    }

    #header
    {
        position: fixed;
        top: 0;
        left: 0;
        z-index: 999;
        padding-top: 0;
        padding-bottom: 0;
        height: 70px;
    }

    body.admin-bar #header
    {
        top: 46px;
    }

    #header .header-content
    {
        box-sizing: border-box;
        margin-right: 10px;
        margin-left: 10px;
        padding: 6px 0;
        height: 100%;
    }

    #header .header-main
    {
        display: block;
        padding: 0;
        width: 100%;
    }

    #header .header-masthead
    {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        margin: auto;
        height: 100%;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: justify;
        -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }

    #header #logo
    {
        margin-left: 5px;
        -webkit-align-self: center;
        -ms-flex-item-align: center;
        align-self: center;
    }

    #header #logo a
    {
        height: 44px;
    }

    #header #logo img
    {
        max-width: none;
        max-height: 100%;
        width: auto;
    }

    .header-search-toggle,
    .header-nav-toggle
    {
        min-height: 38px;
    }

    .header-search-toggle-icon
    {
        margin-top: 0;
        font-size: 22px;
    }

    .header-nav-toggle-icon
    {
        font-size: 26px;
    }

    html.is-nav-opened .header-nav-toggle-icon
    {
        font-size: 22px;
    }

    .header-search-toggle-label,
    .header-nav-toggle-label
    {
        font-size: 10px;
    }

    .header-search
    {
        position: absolute;
        top: 74px;
        right: 0;
        z-index: 2;
        display: none;
        box-sizing: border-box;
        margin: 0 10px;
        padding: 12px;
        width: calc(100% - 20px);
        border: 1px solid #ccc;
        background: #fff;
    }

    .header-search::before,
    .header-search::after
    {
        position: absolute;
        right: 12px;
        width: 0;
        height: 0;
        border: solid transparent;
        content: ' ';
        pointer-events: none;
    }

    .header-search::before
    {
        top: -9px;
        right: 16px;
        margin-right: -5px;
        border-width: 0 7px 9px 7px;
        border-color: rgba(204, 204, 204, 0);
        border-bottom-color: #ccc;
    }

    .header-search::after
    {
        top: -8px;
        right: 16px;
        margin-right: -4px;
        border-width: 0 6px 8px 6px;
        border-color: rgba(255, 255, 255, 0);
        border-bottom-color: #fff;
    }

    /* ボタン */
    .header-toggles
    {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        margin-left: 15px;
        -webkit-box-pack: end;
        -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
        justify-content: flex-end;
        -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
        flex-shrink: 0;
    }

    .header-toggles-item
    {
        -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
        flex-shrink: 0;
    }

    .header-search-toggle,
    .header-nav-toggle
    {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        padding: 0;
        height: 100%;
        -webkit-box-pack: justify;
        -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
    }

    .header-search-toggle-trigger,
    .header-nav-toggle-trigger
    {
        position: absolute;
        overflow: hidden;
        clip: rect(0 0 0 0);
        margin: -1px;
        padding: 0;
        width: 1px;
        height: 1px;
        border: 0;
    }

    .header-search-toggle-icon,
    .header-nav-toggle-icon
    {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        height: 100%;
        color: #f69;
        line-height: 1;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-flex: 1;
        -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
    }

    .header-search-toggle-label,
    .header-nav-toggle-label
    {
        color: #383838;
        text-align: justify;
        font-size: 11px;
        font-family: '游ゴシック体', 'Yu Gothic', YuGothic, 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
        line-height: 1;
    }

    .header-search-toggle,
    .header-nav-toggle
    {
        min-width: 38px;
        min-height: 43px;
        cursor: pointer;
    }

    .header-search-toggle
    {
        outline: 0;
        border: 0;
        background: none;
    }

    .header-search-toggle-icon
    {
        margin-top: -2px;
        margin-left: -2px;
        font-size: 26px;
    }

    .header-search-toggle-icon::before
    {
        content: '\f002';
        font-family: FontAwesome;
    }

    .header-search-toggle-label
    {
        letter-spacing: 2px;
    }

    .header-nav-toggle-icon
    {
        font-size: 32px;
    }

    .header-nav-toggle-label
    {
        letter-spacing: -2px;
    }

    .header-nav-toggle-icon::before
    {
        content: '\f0c9';
        font-family: FontAwesome;
    }

    html.is-nav-opened .header-nav-toggle-icon
    {
        font-size: 26px;
    }

    html.is-nav-opened .header-nav-toggle-label
    {
        letter-spacing: 0;
    }

    html.is-nav-opened .header-nav-toggle-icon::before
    {
        content: '\f061';
    }

    html.is-search-opened .header-search
    {
        display: block;
    }

    #header #logo a
    {
        max-height: 44px;
    }

    .header-info
    {
        margin-left: 10px;
    }

    .header-info-image
    {
        height: auto;
        background-position: 100% 50%;
        background-size: contain;
        background-repeat: no-repeat;
    }

    .header-info-image img
    {
        display: none;
    }

    .header-info-text
    {
        display: none;
    }

    .header-cta-image
    {
        background-position: 100% 50%;
        background-size: contain;
        background-repeat: no-repeat;
    }

    .header-cta-image img
    {
        display: none;
    }

    .header-cta-list-item
    {
        min-width: 38px;
        height: 38px;
    }

    .header-address-list
    {
        display: none;
    }

    body.site-main.home #content-w
    {
        padding-top: 5px;
    }
}

@media only screen and (min-width: 783px)
{
    body.admin-bar #header
    {
        top: 32px;
    }
}

@media only screen and (max-width: 599px)
{
    body
    {
        padding-top: 52px;
    }

    body.page-template-page-empty
    {
        padding-top: 0;
    }

    body.home,
    body.search,
    body.error404
    {
        padding-top: 72px;
    }

    body.site-main.home
    {
        padding-top: 52px;
    }

    #header
    {
        height: 52px;
    }

    #header #logo a
    {
        max-height: 38px;
        height: 38px;
    }

    #header .header-content
    {
        margin-right: 5px;
        margin-left: 5px;
        padding: 5px 0;
    }

    .header-info
    {
        display: none;
        margin-left: 5px;
    }

    .header-search
    {
        top: 56px;
        width: calc(100% - 20px);
    }

    .header-search::before,
    .header-search::after
    {
        right: 12px;
    }

    .header-toggles
    {
        margin-left: 6px;
    }

    .header-search-toggle,
    .header-nav-toggle
    {
        min-height: 38px;
    }

    .header-search-toggle-icon
    {
        margin-top: 0;
        font-size: 22px;
    }

    .header-nav-toggle-icon
    {
        font-size: 26px;
    }

    .header-search-toggle-label,
    .header-nav-toggle-label
    {
        font-size: 10px;
    }

    .header-cta-image
    {
        margin-right: 5px;
    }

    .header-cta-list-item
    {
        min-width: 33px;
        height: 33px;
    }

    .header-cta-list-item + .header-cta-list-item
    {
        margin-left: 6px;
    }
}

@media only screen and (max-width: 320px) {
    .header-instagram {
        display: none;
    }

    .header-contact {
        flex-grow: 1;
    }

    .header-cta-list-item + .header-cta-list-item {
        margin-left: 5px;
    }
}

/* endregion */

/* ############################################################ */
/* region ナビゲーション */
/* ############################################################ */
#gnav,
.navbar
{
    box-sizing: border-box;
    margin-top: -1px;
    padding: 0 20px;
    border-top: 1px #efefef solid;
    border-bottom: 1px #efefef solid;
    background: #fff;
    font-size: 14px;
}

body.admin-bar #gnav
{
    top: 116px;
}

#gnav .wrap,
.navbar-content
{
    margin: auto;
    max-width: 1060px;
}

#gnav .wrap::before,
#gnav .wrap::after,
.navbar-content::before,
.navbar-content::after
{
    display: table;
    content: ' ';
}

#gnav .wrap::after,
.navbar-content::after
{
    clear: both;
}

#gnav .sp-show
{
    display: none;
}

#gnav ul,
.navbar ul
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
}

#gnav li,
.navbar li
{
    position: relative;
    margin: 0;
    padding: 0 20px;
    list-style: none;
    font-family: 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro', YuMincho, '游明朝', 'ＭＳ Ｐ明朝', 'MS PMincho', serif;
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
}

#gnav li:last-child{
	background: #00B900;
}

#gnav li:last-child a {
	background: #00B900;
}
#gnav li:last-child a {
	color:#FFF;
}

#gnav li::before,
.navbar li::before
{
    position: absolute;
    top: 16px;
    left: 0;
    width: 1px;
    height: calc(100% - 32px);
    background: #efefef;
    content: '';
}

#gnav li:first-child,
.navbar li:first-child
{
    padding-left: 0;
}

#gnav li:first-child::before,
.navbar li:first-child::before
{
    content: normal;
}

#gnav li a,
.navbar li a
{
    display: block;
    margin-top: -1px;
    padding: 19px 0;
    border-top: 1px #efefef solid;
    background: #fff;
    color: #333;
    text-align: center;
    text-decoration: none;
    font-size: 1.25em;
    transition: background .3s ease-in-out;
}

#gnav li a:hover,
.navbar li a:hover
{
    border-top: 1px #f69 solid;
}

#gnav li .sub-menu,
.navbar li .sub-menu
{
    display: none;
}

@media only screen and (max-width: 959px)
{
    #gnav
    {
        position: fixed;
        top: 70px;
        right: -220px;
        bottom: 0;
        z-index: 0;
        display: block !important;
        overflow-y: auto;
        margin: 0;
        padding: 6px;
        width: 220px;
        height: calc(100% - 70px);
        border-color: #ccc;
        background: #ddd;
        transition: right .25s;
    }

    #gnav
    {
        top: 70px;
        height: calc(100% - 70px);
    }

    .navbar
    {
        padding: 0;
        border-top: 1px #f69 solid;
        border-bottom: 1px #f69 solid;
    }

    html.is-nav-opened #gnav
    {
        right: 0;
    }

    #gnav ul
    {
        display: block;
    }

    .navbar ul
    {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        padding: 0;
    }

    #gnav li
    {
        position: relative;
        float: none;
        margin-right: 0;
        margin-bottom: 1px;
        padding: 0;
    }

    .navbar li,
    .navbar li:first-child
    {
        padding: 0 10px;
    }

    #gnav li::before,
    .navbar li::before
    {

        content: normal;
    }

    #gnav ul li a
    {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        padding: 12px 8px;
        border-top: none;
        border-bottom: 1px #e5e5e5 solid;
        background: #fff;
        color: #333;
        text-decoration: none;
        font-size: 1em;
        transition: background .3s ease-in-out;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: justify;
        -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }

    #gnav ul li a:hover
    {
        border-top: 0;
    }

    .navbar li:first-child a,
    .navbar li:first-child a:hover
    {
        border-top: 1px #f69 solid;
    }

    .navbar li a:hover
    {
        border-top: 1px #efefef solid;
    }

    #gnav ul li a::after
    {
        display: block;
        margin-left: 8px;
        content: '\f105';
        font-family: 'FontAwesome';
    }

    #gnav ul li .sub-menu
    {
        display: none !important;
        opacity: 1 !important;
    }
}

@media only screen and (min-width: 783px)
{
    body.admin-bar #gnav
    {
        top: 102px;
    }
	
#gnav, .navbar {
    font-size: 12px !important;
}

@media only screen and (max-width: 599px)
{
    #gnav
    {
        top: 52px;
        height: calc(100% - 52px);
    }

    body.admin-bar #gnav
    {
        top: 52px;
    }

    body.admin-bar #gnav
    {
        top: 98px;
    }
	
}
	
	
}

/* endregion */

/* ############################################################ */
/* region フッター */
/* ############################################################ */
#page-top
{
    right: 20px;
}

#page-top a
{
    background: #f69;
}

#footer
{
    padding: 0;
    background: #fff;
    text-align: left;
}

#footer .footer-navbar
{
    margin-top: 0;
    margin-bottom: 40px;
}

#footer a
{
    color: #333;
}

#footer a:hover
{
    color: #f69;
}

#footer .footermenust
{
    margin: 20px 0 0 0;
}

#footer .footermenust li
{
    display: block;
    border: 0;
}

#footer .footermenust li + li
{
    margin-top: 25px;
}

#footer .footermenust a
{
    color: #4682b4;
    font-size: 14px;
}

#footer .footermenust a:hover
{
    text-decoration: underline;
}

#footer .footer-info p
{
    margin-bottom: 5px;
    font-size: 12px;
}

#footer .copy
{
    margin: 20px 0 0;
    padding-top: 20px;
    padding-bottom: 20px;
    background: #f69;
    color: #fff;
    text-align: center;
}

@media only screen and (min-width: 960px)
{
    #footer .footer-info
    {
        margin-top: 60px;
        padding: 25px 30px;
        border-top: 1px #efefef solid;
        background: #fff;
    }

    body.home #footer .footer-info
    {
        margin-top: 10px;
    }

    #footer-in
    {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
    }

    #footer .footermenust
    {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        margin: 0;
        padding: 0;
        -webkit-box-pack: start;
        -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    #footer .footermenust li:first-child
    {
        border-left: 1px solid #ccc;
    }

    #footer .footermenust li
    {
        margin: 5px 0;
        border-right: 1px solid #ccc;
    }

    #footer .footermenust li + li
    {
        margin: 5px 0;
    }

    #footer .footermenust a
    {
        font-size: 12px;
    }

    #footer .copy
    {
        margin: 0 0 0 40px;
        padding: 0;
        background: transparent;
        color: #333;
        -webkit-box-flex: 0;
        -webkit-flex-grow: 0;
        -ms-flex-positive: 0;
        flex-grow: 0;
        -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
        flex-shrink: 0;
    }

    .footer-text
    {
        padding: 25px 0;
        text-align: center;

    }
}

/* 店舗一覧 */
#footer .footer-branches
{
    margin: auto;
    padding: 0 20px;
    line-height: 1.6;
}

@media only screen and (min-width: 960px)
{
    #footer .footer-branches
    {
        margin-bottom: 25px;
        padding: 0;
        max-width: 1060px;
    }
}

#footer .footer-branches-h1
{
    margin: 0 0 .25em;
    padding: 0;
    text-align: center;
    font-weight: bold;
    line-height: 1.6;
}

@media only screen and (min-width: 600px)
{
    #footer .footer-branches-h1
    {
        text-align: left;
    }
}

#footer .footer-branches-body
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin: 0 0 -.5em;
    padding: 0;
    list-style: none;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
}

@media only screen and (min-width: 600px)
{
    #footer .footer-branches-body
    {
        -webkit-box-pack: justify;
        -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }
}

#footer .footer-branches-branch
{
    display: block;
    margin: 0 0 .5em;
    padding: 0;
    list-style: none;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
}

@media only screen and (min-width: 600px)
{
    #footer .footer-branches-branch
    {
        width: calc(50% - 15px);
        -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
        flex-shrink: 0;
    }

    #footer .footer-branches-branch:nth-child(2n + 1)
    {
        margin-right: 15px;
    }
}

#footer .footer-branches-branch-name
{
    margin: 0;
    padding: 0;
    font-weight: bold;
}

#footer .footer-branches-branch-detail > *
{
    line-height: 1.6;
}

#footer .footer-branches-branch-detail > *:last-child
{
    margin-bottom: 0;
}

/* endregion */

/* ############################################################ */
/* region フォーム */
/* ############################################################ */
.wpcf7 input[type='text'],
.wpcf7 input[type='email'],
.wpcf7 input[type='url'],
.wpcf7 input[type='tel'],
.wpcf7 input[type='number'],
.wpcf7 input[type='date'],
.wpcf7 select,
.wpcf7 textarea,
.wpcf7 input:not([type=checkbox]):not([type=radio]):not([type=submit])
{
    padding: 12px;
    max-width: 100%;
    width: 100%;
    outline: none;
    border: 1px #ccc solid;
    border-radius: 0;
    background-color: #f7f7f7;
    font-size: 16px;
}

.wpcf7 input[type='text']:focus,
.wpcf7 input[type='email']:focus,
.wpcf7 input[type='url']:focus,
.wpcf7 input[type='tel']:focus,
.wpcf7 input[type='number']:focus,
.wpcf7 input[type='date']:focus,
.wpcf7 select:focus,
.wpcf7 textarea:focus,
.wpcf7 input:not([type=checkbox]):not([type=radio]):not([type=submit]):focus
{
    border-left: 1px solid #f69;
    background-color: #fff;
    transition: all ease-in-out .3s;
}

.wpcf7 input[type='radio']
{
    margin-right: .25em;
    -webkit-transform: scale(1.5, 1.5);
    -ms-transform: scale(1.5, 1.5);
    transform: scale(1.5, 1.5);
}

.wpcf7 .wpcf7-select-wrap select
{
    position: relative;
    padding-right: calc(4px + 16px + 12px) !important;
    -webkit-appearance: none;
    appearance: none;
}

.wpcf7 .wpcf7-select-wrap .wpcf7-form-control-wrap::after
{
    position: absolute;
    top: 50%;
    right: 12px;
    width: 16px;
    height: 16px;
    content: '\f107';
    font-weight: 700;
    font-family: FontAwesome;
    transform: translate(0, -50%);
    pointer-events: none;
    line-height: 1;
}

.wpcf7-radio
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.wpcf7-radio .wpcf7-list-item
{
    margin: .5em 2.5em .5em .5em;
}

@media only screen and (min-width: 600px)
{
    .wpcf7-submit
    {
        width: 80%;
    }
}

@media only screen and (min-width: 960px)
{
    .wpcf7-submit
    {
        width: 35%;
    }
}

.wpcf7 input[type='submit']
{
    display: inline-block;
    padding: 16px;
    border-color: #f69;
    border-radius: 8px;
    background-color: #f69;
    color: #fff;
    font-size: 16px;
}

.wpcf7 textarea
{
    height: 30em;
}

.wpcf7 .wpcf7-spinner
{
    display: none !important;
    margin: 16px 0 0 !important;
    width: auto !important;
    height: auto !important;
    background: none !important;
    text-align: center !important;
    opacity: 1 !important;
}

.wpcf7 .wpcf7-form.submitting .wpcf7-spinner
{
    display: flex !important;
    align-items: center;
    justify-content: ceneter;
}

.wpcf7 .wpcf7-spinner::after
{
    margin: 0px 0 0 8px;
    content: '送信中…';
}

.wpcf7 .wpcf7-spinner::before
{
    position: static !important;
    top: auto !important;
    left: auto !important;
    width: 16px !important;
    height: 16px !important;
    border-radius: 0 !important;
    background: url(data:image/gif;base64,R0lGODlhEAAQAPIAAP///wAAAMLCwkJCQgAAAGJiYoKCgpKSkiH/C05FVFNDQVBFMi4wAwEAAAAh/hpDcmVhdGVkIHdpdGggYWpheGxvYWQuaW5mbwAh+QQJCgAAACwAAAAAEAAQAAADMwi63P4wyklrE2MIOggZnAdOmGYJRbExwroUmcG2LmDEwnHQLVsYOd2mBzkYDAdKa+dIAAAh+QQJCgAAACwAAAAAEAAQAAADNAi63P5OjCEgG4QMu7DmikRxQlFUYDEZIGBMRVsaqHwctXXf7WEYB4Ag1xjihkMZsiUkKhIAIfkECQoAAAAsAAAAABAAEAAAAzYIujIjK8pByJDMlFYvBoVjHA70GU7xSUJhmKtwHPAKzLO9HMaoKwJZ7Rf8AYPDDzKpZBqfvwQAIfkECQoAAAAsAAAAABAAEAAAAzMIumIlK8oyhpHsnFZfhYumCYUhDAQxRIdhHBGqRoKw0R8DYlJd8z0fMDgsGo/IpHI5TAAAIfkECQoAAAAsAAAAABAAEAAAAzIIunInK0rnZBTwGPNMgQwmdsNgXGJUlIWEuR5oWUIpz8pAEAMe6TwfwyYsGo/IpFKSAAAh+QQJCgAAACwAAAAAEAAQAAADMwi6IMKQORfjdOe82p4wGccc4CEuQradylesojEMBgsUc2G7sDX3lQGBMLAJibufbSlKAAAh+QQJCgAAACwAAAAAEAAQAAADMgi63P7wCRHZnFVdmgHu2nFwlWCI3WGc3TSWhUFGxTAUkGCbtgENBMJAEJsxgMLWzpEAACH5BAkKAAAALAAAAAAQABAAAAMyCLrc/jDKSatlQtScKdceCAjDII7HcQ4EMTCpyrCuUBjCYRgHVtqlAiB1YhiCnlsRkAAAOwAAAAAAAAAAAA==) no-repeat 50% 50%;
    content: '';
    transform: none !important;
    animation: none !important;
}

.wpcf7 .wpcf7-form .wpcf7-response-output
{
    margin: 2em 0;
    padding: .75em 1em;
    border: 2px solid #00a0d2;
}

.wpcf7 .wpcf7-form.sent .wpcf7-response-output
{
    border-color: #46b450
}

.wpcf7 .wpcf7-form.failed .wpcf7-response-output,
.wpcf7 .wpcf7-form.aborted .wpcf7-response-output
{
    border-color: #dc3232
}

.wpcf7 .wpcf7-form.spam .wpcf7-response-output
{
    border-color: #f56e28
}

.wpcf7 .wpcf7-form.invalid .wpcf7-response-output,
.wpcf7 .wpcf7-form.unaccepted .wpcf7-response-output
{
    border-color: #ffb900
}

.wpcf7
{
    padding-top: 30px !important;
}

.wpcf7 .form-field
{
    margin-bottom: 0;
}

.wpcf7 .form-field::before,
.wpcf7 .form-field::after
{
    display: table;
    content: ' ';
}

.wpcf7 .form-field::after
{
    clear: both;
}

.wpcf7 .form-field-hidden
{
    display: none;
}

.wpcf7 .form-label
{
    margin-bottom: 10px;
    width: 100%;
    line-height: 1.9;
}

.wpcf7 .form-label .fa
{
    margin-right: 6px;
    color: #ccc;
    font-size: 16px;
}

.wpcf7 .form-label-text
{
    margin-right: 8px;
}

.wpcf7 .form-control
{
    margin-bottom: 10px;
    width: 100%;
    line-height: 1.9;
}

.wpcf7 .form-required
{
    display: inline-block;
    padding: 3px 6px;
    border-radius: 3px;
    background-color: #f69;
    color: #fff;
    vertical-align: middle;
    font-size: 12px;
    line-height: 1;
}

.wpcf7 .form-button
{
    margin: 2em 0;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
}

@media (min-width: 960px)
{
    .form--horizontal .form-field
    {
        display: flex;
        justify-content: space-between;
    }

    .form--horizontal .form-label
    {
        flex-grow: 0;
        flex-shrink: 0;
        width: 33.3333%;
    }

    .form--horizontal .form-control
    {
        flex-grow: 1;
        width: auto;
    }
}

/* endregion */

/* ############################################################ */
/* region CTA (未使用 / 未調整) */
/* ############################################################ */
/*
.post-cta
{
    margin: 20px -20px 0;
    padding: 0 20px;
}

.post-cta + .post-cta
{
    margin-top: 0;
}

.post-cta p
{
    margin-bottom: 1em;
}

.post-cta .cta-post-title
{
    display: flex;
    box-sizing: border-box;
    margin-top: 0;
    margin-bottom: 14px;
    padding: 10px 5px;
    border: 0;
    background: #f69 no-repeat 8px 100%;
    background-size: auto calc(100% - 5px);
    color: #fff;
    font-size: 1.5em;
    line-height: 1.4;
    justify-content: center;
    align-items: center;
}

.post-cta .cta-post-title::before
{
    display: block;
    box-sizing: border-box;
    min-height: calc(2em + 40px - 20px);
    background-size: auto calc(100% - 5px);
    content: '';
}

.post-cta-1 .cta-post-title
{
    padding-left: calc((2em + 30px) * (128 / (144 - 5)) + 40px);
    background-image: url(images/c_cta1.png);
}

.post-cta-2 .cta-post-title
{
    padding-left: calc((2em + 30px) * (128 / (144 - 5)) + 40px);
    background-image: url(images/c_cta2.png);
    background-size: auto calc(100% - 15px);
}

// CTA 1: 各店舗
body.site-sub .post-cta-1 .cta-post-title
{
    padding-left: calc((2em + 30px) * (128 / (144 - 5)) + 40px);
    background-image: url(images/sub/c_cta1.png);
}

// CTA 2: 各店舗
body.site-sub .post-cta-2 .cta-post-title
{
    padding-left: calc((2em + 30px) * (128 / (144 - 5)) + 40px);
    background-image: url(images/sub/c_cta2.png);
}

.post-cta .cta-post-title a,
.post-cta .cta-post-title a:hover
{
    color: #fff;
}

.post-cta .cta-post-title a:hover
{
    text-decoration: underline;
}

.post-cta-cont::before,
.post-cta-cont::after
{
    display: table;
    content: " ";
}

.post-cta-cont::after
{
    clear: both;
}

.post-cta-cont .center
{
    padding-bottom: 0;
}

.post-cta .post-cta-img
{
    margin: auto;
    width: 100%;
    text-align: center;
}

.post-cta .post-cta-btn
{
    margin: 1em 0 0;
    font-size: 1.2em;
}

.post-cta .post-cta-btn a
{
    display: block;
    margin: 0 auto 20px;
    padding: 15px 10px;
    border-radius: 4px;
    color: #fff;
    text-align: center;
    text-decoration: none;
    text-shadow: 0 0 4px rgba(0, 0, 0, .25);
    font-weight: bold;
}

.post-cta .post-cta-btn a:hover
{
    color: #fff;
    opacity: .75;
}

.post-cta .post-cta-btn a::after
{
    display: inline-block;
    box-sizing: border-box;
    margin-left: .25em;
    width: 1em;
    height: 1em;
    border-radius: 1em;
    color: #fff;
    content: "\00f0a9";
    font: normal normal normal 14px/1 FontAwesome;
    font-size: inherit;
    transform: translate(0, 0);
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.post-cta-1 .post-cta-btn a,
.post-cta-1 .post-cta-btn a:hover,
.post-cta-2 .post-cta-btn a,
.post-cta-2 .post-cta-btn a:hover
{
    border: 1px solid #f69;
    background: #f69;
    background: linear-gradient(to bottom, #f8b 0%, #f7a 15%, #f69 50%);
    box-shadow: inset 0 0 1px 1px rgba(255, 255, 255, .7), 0 0 0 1px rgba(245, 245, 245, .25), 0 0 2px 1px rgba(0, 0, 0, .2), 0 0 8px 1px rgba(0, 0, 0, .1);
}

article:last-child .post-cta:last-child .post-cta-inner
{
    padding-bottom: 0;
}

article:last-child .post-cta:last-child .post-cta-btn a
{
    margin-bottom: 0;
}

@media only screen and (min-width: 600px)
{
    .post-cta
    {
        padding: 0 20px;
    }

    .post-cta .cta-post-title
    {
        font-size: 27px;
    }

    .post-cta-1 .cta-post-title
    {
        padding-right: calc(10px + 1em);
        padding-left: calc((2em + 30px) * (128 / (143 - 5)) + 19px);
    }

    .post-cta-2 .cta-post-title
    {
        padding-right: calc(10px + 1em);
        padding-left: calc((2em + 30px) * (128 / (143 - 5)) + 19px);
    }

    .post-cta .post-cta-inner
    {
        padding: 20px;
    }

    .post-cta .post-cta-img
    {
        margin: 0 0 1.5em;
    }

    .post-cta .post-cta-btn
    {
        margin: 2em 0 0;
    }

    .post-cta .post-cta-btn a
    {
        width: 60%;
    }

    .post-cta .post-cta-btn a::after
    {
        margin-left: .5em;
    }
}

@media only screen and (min-width: 960px)
{
    .post-cta
    {
        margin: 30px -50px 0;
        padding: 0;
    }

    .post-cta .cta-post-title
    {
        font-size: 30px;
    }

    .post-cta .post-cta-inner
    {
        padding: 30px 45px;
    }

    .post-cta .post-cta-btn a
    {
        padding: 15px 10px 15px;
        font-size: 100%;
    }
}
*/

/* endregion */

/* ############################################################ */
/* region 投稿 */
/* ############################################################ */
body.page-template-page-empty .post
{
    padding-bottom: 0;
    max-width: 1000px;
    margin: auto;
    text-align: center;
}

body.page-template-page-empty .post > :first-child
{
    margin-top: 0;
}

body.page-template-page-empty .post > :last-child
{
    margin-bottom: 0;
}

.entry-thumbnail,
.image-full
{
    margin: 0 -20px 20px;
}

@media only screen and (min-width: 960px)
{
    .entry-thumbnail,
    .image-full
    {
        margin-right: 0;
        margin-left: 0;
    }
}

.entry-thumbnail img,
.image-full img
{
    display: block;
    margin: auto;
    width: 100%;
    height: auto;
}

.image-full img
{
    float: none;
}

body.page-template-page-empty figure,
body.page-template-page-lp figure,
body.page-template-page-lp-with-content figure
{
    margin-right: 0;
    margin-left: 0;
}

.entry-title,
.post .entry-title,
.entry-content > h1,
.st-main > article > h1
{
    box-sizing: border-box;
    margin: -20px 0 15px;
    padding: 10px 0;
    text-align: center;
    font-weight: normal;
    font-size: 1.5em;
    font-family: 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro', YuMincho, '游明朝', 'ＭＳ Ｐ明朝', 'MS PMincho', serif;
    line-height: 1.55;
}

/* 各店舗 */
body.site-sub .entry-title,
body.site-sub .post .entry-title,
body.site-sub .entry-content > h1,
body.site-sub .st-main > article > h1
{
}

.blogbox p
{
    font-size: 14px;
    color: #999;
}

.post .blogbox
{
    margin: 0 0 15px;
    text-align: right;
}

.post .blogbox .entry-date,
.post .blogbox .entry-author
{
    display: inline-block;
}

.post .blogbox .entry-published,
.post .blogbox .entry-updated,
.post .blogbox .entry-author
{
    margin-left: .5em;
}

.site-sub .post .blogbox .entry-published,
.site-sub .post .blogbox .entry-updated,
.site-sub .post .blogbox .entry-author
{
    margin-right: .5em;
    margin-left: 0;
}

.post .blogbox .entry-author-photo
{
    height: 1.25em;
    margin-left: .25em;
    vertical-align: middle;
}

/* 各店舗 */
body.site-sub .post .blogbox
{
}

.sns
{
    margin: 40px auto;
    padding: 0;
}

.post .sns ul
{
    margin: 0;
}

.entry-content h2
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    box-sizing: border-box;
    padding: 5px;
    border-color: #f69;
    border-top-width: 3px;
    border-bottom-width: 3px;
    background-color: #fff;
    background-repeat: no-repeat;
    font-weight: bold;
    font-size: 1.3em;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}

.entry-content h3
{
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    box-sizing: border-box;
    padding: 5px;
    border-color: #f69;
    background-repeat: no-repeat;
    font-weight: bold;
    font-size: 1.2em;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}

.entry-content h2 span,
.entry-content h3 span
{
    font-weight: bold;
}

.entry-content h2::after,
.entry-content h3::after
{
    display: block;
    box-sizing: border-box;
    min-height: calc(2em + 30px - 10px);
    content: '';
}

.entry-content > h2
{
    margin-top: 20px;
}

.entry-content h3
{
    padding-left: calc(2px + .75em + 10px);
}

.entry-content h3::before
{

}

@media only screen and (min-width: 960px)
{
    .entry-content h3
    {
        padding-left: 0;
    }

    .entry-content h3::before
    {
        content: normal;
    }
}

.post .st-catgroup
{
    padding-top: 0;
    padding-bottom: 10px;
}

@media only screen and (min-width: 600px)
{
    .entry-title,
    .post .entry-title,
    .entry-content > h1,
    .st-main > article > h1
    {
        margin-bottom: 40px;
        font-size: 32px;
    }

    #st-page .entry-title
    {
        margin-bottom: 40px;
    }

    .post .blogbox
    {
        margin: -20px 0 15px;
    }

    .post .st-catgroup
    {
        margin-top: -20px;
    }

    .entry-content h2
    {
        font-size: 24px;
    }

    .entry-content > h2
    {
        margin-top: 40px;
    }

    .entry-content h3
    {
        padding-right: 15px;
        font-size: 22px;
    }
}

@media only screen and (min-width: 960px)
{
    .entry-title,
    .post .entry-title,
    .entry-content > h1,
    .st-main > article > h1
    {
        margin-top: -30px;
        font-size: 40px;
    }

    .entry-content h2
    {
        font-size: 22px;
    }

    .entry-content h3
    {
        font-size: 21px;
    }
}


@media only screen and (min-width: 1060px)
{
    body.single .st-main > .post > article > h1,
    body.page .st-main > .post > article > h1
    {
        margin-left: -170px;
        margin-right: -170px;
    }

    body.home .st-main > .post > article > h1
    {
        margin-left: 0;
        margin-right: 0;
    }
}

/* テーブル */
.entry-content table,
.entry-content table tr th,
.entry-content table tr td
{
    border-color: #ddd;
}

.entry-content table tr th,
.entry-content table tr td
{
    padding: 8px 10px;
    color: #363636;
    vertical-align: middle;
    font-weight: normal;
    font-size: 16px;
    line-height: 26px;
}

.entry-content table thead tr th
{
    background-color: #f6f6f6;
}

.entry-content table tbody tr th
{
    background: #ffc;
}

.entry-content tr td ul,
.entry-content tr td ol
{
    margin-bottom: 0;
    padding: 0 0 0 20px;
    text-align: left;
}

@media only screen and (max-width: 959px)
{
    .entry-content table tr th,
    .entry-content table tr td
    {
        font-size: 19px;
        line-height: 30px;
    }
}

@media screen and (max-width: 599px)
{
    .entry-content .scrollable::before
    {
        display: block;
        box-sizing: border-box;
        width: 99px;
        height: 43px;
        background: url(images/tap-yubi.png) no-repeat 0 0;
        background-size: 100%;
        color: #fff;
        content: '';
        line-height: 1;
    }

    .entry-content .scrollable-container
    {
        position: relative;
        margin-bottom: 20px;
        padding: 0;
    }

    .entry-content .scrollable-content
    {
        position: relative;
        z-index: 1;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        max-width: 100%;
        border-bottom: 1px #ddd solid;
    }

    .entry-content .scrollable-container::before
    {
        position: absolute;
        bottom: 0;
        left: 0;
        z-index: 2;
        display: block;
        width: 1px;
        height: 100%;
        border-left: 1px solid #ddd;
        content: '';
        line-height: 1;
    }

    .entry-content .scrollable-container::after
    {
        position: absolute;
        right: 0;
        bottom: 0;
        z-index: 2;
        display: block;
        width: 1px;
        height: 100%;
        border-right: 1px solid #ddd;
        content: '';
        line-height: 1;
    }

    .entry-content table
    {
        display: table;
        overflow-x: visible;
        white-space: normal;
        word-break: break-all;
        word-break: break-word;
        -webkit-hyphens: auto;
        -ms-hyphens: auto;
        hyphens: auto;
    }

    .entry-content table tr th,
    .entry-content table tr td
    {
        font-size: 15px;
        line-height: 27px;
    }

    .entry-content table.is-scrollable
    {
        position: relative;
        margin-bottom: 0;
        border: 0;
        border-top: 1px solid #ddd;
        background: #fff;
    }

    .entry-content table.is-scrollable > :first-child > tr:first-child th,
    .entry-content table.is-scrollable > :first-child > tr:first-child td
    {
        border-top: 0;
    }

    .entry-content table.is-scrollable > :last-child > tr:last-child th,
    .entry-content table.is-scrollable > :last-child > tr:last-child td
    {
        border-bottom: 0;
    }

    .entry-content table.is-scrollable tr th:first-child,
    .entry-content table.is-scrollable tr td:first-child
    {
        border-left: 0;
    }

    .entry-content table.is-scrollable tr th:last-child,
    .entry-content table.is-scrollable tr td:last-child
    {
        border-right: 0;
    }
}

/* 関連記事等 */
.post p .point-in
{
    color: #333;
}

.post p.point,
p.point
{
    font-family: 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro', YuMincho, '游明朝', 'ＭＳ Ｐ明朝', 'MS PMincho', serif;
}

/* 関連記事 */
.kanren dl
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}

body.page .kanren dl:last-child
{
    margin-bottom: 0;
    padding-bottom: 0;
}

.kanren dt
{
    float: none;
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -webkit-box-flex: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-grow: 0;
}

.kanren dt,
.kanren dt img
{
    width: 100px;
}

.kanren dt a,
.kanren dt img
{
    display: block;
}

.kanren dd
{
    padding-left: 15px;
}

.kanren .clearfix dd .kanren-t a
{
    font-weight: normal;
    font-size: 18px;
    font-family: 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro', YuMincho, '游明朝', 'ＭＳ Ｐ明朝', 'MS PMincho', serif;
}

body.home .kanren .clearfix dd .kanren-d
{
    margin-bottom: .5em;
}

body.home .kanren .clearfix dd .kanren-t
{
    margin-bottom: 0;
    padding-bottom: 0;
}

.kanren .clearfix dd p
{
    line-height: 1.8;
}

.kanren .smanone2
{
    display: none;
}

.st-main .st-aside .kanren
{
    padding-top: 10px;
}

.st-main .st-aside .kanren dl
{
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: 1px dotted #ccc;
}

.st-main .st-aside .kanren dl:last-child
{
    margin-bottom: 0;
    padding-bottom: 0;
    border: 0;
}

@media only screen and (min-width: 600px)
{
    .kanren dt,
    .kanren dt img
    {
        width: 122px;
    }

    .kanren .smanone2
    {
        display: block;
    }
}

/* 一覧 */
@media only screen and (min-width: 600px)
{
    body.home .st-main article .kanren dt,
    body.home .st-main article .kanren dt img,
    body.archive .kanren dt,
    body.archive .kanren dt img,
    body.seaarch .kanren dt,
    body.seaarch .kanren dt img
    {
        width: 150px;
    }
}

/* ページナビゲーション */
.st-pagelink
{
    margin: 20px 0;
    padding: 0;
}

.st-pagelink a:hover
{
    opacity: 1;
}

.p-navi
{
    margin-top: 20px;
    margin-bottom: 20px;
}

.p-navi dl dt
{
    margin-right: 1em;
    width: auto;
}

.p-navi dl dd
{
    padding: 0;
}

.p-navi dl dd + dt,
.p-navi dl dd + dt + dd
{
    margin-top: .25em;
}

/* endregion */

/* ############################################################ */
/* region サイドバー */
/* ############################################################ */
#side .st-aside .menu_underh2
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    box-sizing: border-box;
    margin-bottom: 0;
    padding: 10px;
    background: #f69 no-repeat 8px 100%;
    background-size: auto calc(2em + 20px - 5px);
    color: #fff;
    font-weight: bold;
    line-height: 1.4;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}

#side .st-aside .menu_underh2::before
{
    display: block;
    box-sizing: border-box;
    min-height: calc(2em + 20px - 20px);
    content: '';
}

#side .st-aside .menu_underh2 .fa
{
    margin-right: 8px;
}

#side .st-aside .wpp-no-data
{
    margin: 0;
    padding: 10px;
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    border-left: 1px solid #ccc;
    font-size: 15px;
}

#side .st-aside .widget > ul,
#side .st-aside .widget > ol,
#side .st-aside [class^='menu-'] > .menu,
#side .st-aside .kanren
{
    padding: 0;
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    border-left: 1px solid #ccc;
    background: #fff;
}

#side .st-aside .widget > ul li,
#side .st-aside .widget > ol li,
#side .st-aside [class^='menu-'] > .menu .menu-item
{
    font-size: 13px;
}

#side .st-aside .widget > ul li + li,
#side .st-aside .widget > ol li + li,
#side .st-aside [class^='menu-'] > .menu .menu-item + li
{
    border-top: 1px solid #ccc;
}

#side .st-aside .kanren dl
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 0;
    padding: 10px;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}

#side .st-aside .kanren dt,
#side .st-aside .kanren dd
{
    float: none;
}

#side .st-aside .kanren dt
{
    width: 100px;
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

#side .st-aside .kanren dd
{
    margin-left: 10px;
    padding-left: 0;
}

#side .st-aside .kanren dd .kanren-t
{
    padding-bottom: 0;
}

#side .st-aside .widget > ul li a,
#side .st-aside .widget > ol li a,
#side .st-aside [class^='menu-'] > .menu .menu-item a,
#side .st-aside .kanren dd .kanren-t a
{
    font-size: 1.2em;
}

#side .st-aside .widget > ul li a,
#side .st-aside .widget > ol li a,
#side .st-aside [class^='menu-'] > .menu .menu-item a
{
    position: relative;
    display: block;
    padding: 10px;
    padding-left: calc(10px + .5em + 10px);
    color: #333;
    text-decoration: none;
    font-weight: bold;
}

#side .st-aside .widget > ul li a::before,
#side .st-aside .widget > ol li a::before,
#side .st-aside [class^='menu-'] > .menu .menu-item a::before
{
    position: absolute;
    top: 50%;
    left: 10px;
    display: block;
    width: .5em;
    height: .5em;
    border-radius: 100%;
    background: #f69;
    content: '';
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
}

.kanren .clearfix dd .kanren-t a:hover,
#side .st-aside .widget > ul li a:hover,
#side .st-aside .widget > ol li a:hover,
#side .st-aside [class^='menu-'] > .menu .menu-item a:hover
{
    color: #f69;
    /*color: #38bd3e;*/
}

#side .st-aside .widget > ul ul li a,
#side .st-aside .widget > ol ol li a,
#side .st-aside [class^='menu-'] > .menu .menu .menu-item a
{
    padding-left: calc(10px + 1em + .5em + 10px);
}

#side .st-aside .widget > ul ul li a::before,
#side .st-aside .widget > ol ol li a::before,
#side .st-aside [class^='menu-'] > .menu .menu .menu-item a::before
{
    left: calc(10px + 1em);
}

#side .st-aside .widget > ul li li,
#side .st-aside .widget > ol li li,
#side .st-aside [class^='menu-'] > .menu .menu-item .menu-item
{
    font-size: 1em;
}

#side .st-aside .ad
{
    padding: 0;
}

@media only screen and (min-width: 600px)
{
    #side .st-aside .menu_underh2
    {
        font-size: 1.15em;
    }

    #side .st-aside .kanren dt
    {
        width: 122px;
    }

    #side .st-aside .widget > ul li,
    #side .st-aside .widget > ol li,
    #side .st-aside [class^='menu-'] > .menu .menu-item,
    #side .st-aside .widget > ul ul li,
    #side .st-aside .widget > ol ol li,
    #side .st-aside [class^='menu-'] > .menu .menu .menu-item
    {
        font-size: 16px !important;
    }
}

@media only screen and (min-width: 960px)
{
    #side .st-aside .widget > ul li,
    #side .st-aside .widget > ol li,
    #side .st-aside [class^='menu-'] > .menu .menu-item,
    #side .st-aside .widget > ul ul li,
    #side .st-aside .widget > ol ol li,
    #side .st-aside [class^='menu-'] > .menu .menu .menu-item
    {
        font-size: 13px !important;
    }
}

/* endregion */

/* ############################################################ */
/* region 特徴 */
/* ############################################################ */

/* メイン */
@media only screen and (min-width: 960px)
{
    .main-feature
    {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }
}

.main-feature-image
{
    margin: 0 -20px 20px;
}

.main-feature-image img
{
    width: 100%;
}

@media only screen and (min-width: 960px)
{
    .main-feature-image
    {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        margin: 0 32px 0 0;
        max-width: 382px;
        -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
        flex-shrink: 0;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
    }
}

.main-feature-main
{
    width: 100%;
}

@media only screen and (min-width: 960px)
{
    .main-feature-main
    {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: start;
        -webkit-align-items: flex-start;
        -ms-flex-align: start;
        align-items: flex-start;
        -webkit-box-pack: justify;
        -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }
}

.main-feature-h1
{
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    -webkit-box-flex: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-grow: 0;
    width: 100%;
}

.main-feature-sub-title,
.main-feature-title
{
    display: block;
}

.main-feature-sub-title
{
    margin-bottom: .25em;
    font-size: 1em;
}

.main-feature-title
{
    color: #f69;
    font-weight: bolder;
    font-size: 1.3em;
    line-height: 1.25;
}

@media only screen and (min-width: 960px)
{
    .main-feature-sub-title
    {
        font-size: 19px;
    }

    .main-feature-title
    {
        font-size: 1.5em;
    }
}

.main-feature-body
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-top: 1.25em;
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    width: 100%;
}

.main-feature-text
{
    margin-bottom: 1.25em;
    width: 100%;
}

@media only screen and (min-width: 960px)
{
    .main-feature-text p,
    .main-feature-text .yellowbox,
    .main-feature-text .graybox,
    .main-feature-text .redbox,
    .main-feature-text .ul li,
    .main-feature-text .ol li
    {
        font-size: 16px;
    }
}

.main-feature-text > :last-child
{
    margin-bottom: 0;
}

/* サブ */
.sub-feature-h1
{
    margin: 0;
    padding: 0;
    border: 0;
    border-bottom: 1px solid #ccc;
    background: transparent;
}

.sub-feature-h1 a
{
    display: block;
    padding: 19px 0;
    color: #333;
    text-decoration: none;
}

.sub-feature-h1:last-child
{
    border-bottom: 0;
}

@media only screen and (min-width: 960px)
{
    .sub-feature-h1
    {
        margin-bottom: .5em;
        border-bottom: 0;
        text-align: center;
    }

    .sub-feature-h1 a
    {
        display: inline;
        padding: 0;
    }
}

.sub-feature-h1 a:hover
{
    color: #f69;
}

.sub-feature-body
{
    display: none;
}

.sub-feature-text-small
{
    margin-bottom: 0;
    font-size: 100%;
    line-height: 2;
}

.sub-feature-text-small small
{
    font-size: 1em;
}

.sub-feature-price .sub-feature-h1 a,
.sub-feature-facility .sub-feature-h1 a
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}

.sub-feature-price .sub-feature-h1 a::after,
.sub-feature-facility .sub-feature-h1 a::after
{
    display: inline-block;
    box-sizing: border-box;
    margin-left: .25em;
    width: 1em;
    height: 1em;
    border-radius: 1em;
    color: #333;
    content: '\00f105';
    text-align: center;
    font: normal normal normal 14px/1 FontAwesome;
    font-size: inherit;
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0);
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-grow: 0;
}

.sub-feature-price .price-table
{
    height: 192px;
}

.sub-feature-price .price-table th,
.sub-feature-price .price-table td
{
    margin: 0 0 .5em;
    padding: 5px 6px;
    border: 1px solid #ddd;
    font-size: 12px;
    line-height: 1.2;
}

.sub-feature-price .price-table th
{
    text-align: center;
}

.sub-feature-price .price-table thead tr th
{
    background-color: #f6f6f6;
}

.sub-feature-price .price-table tbody tr th
{
    background: #ffc;
}

.sub-feature-access .sub-feature-main,
.sub-feature-hours .sub-feature-main
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.sub-feature-access .sub-feature-main,
.sub-feature-hours .sub-feature-main
{
    padding-top: 19px;
}

.sub-feature-access .sub-feature-h1,
.sub-feature-hours .sub-feature-h1
{
    margin: 0 32px 0 0;
    font-size: 16px;
    line-height: 2;
    border-bottom: 0;
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

.sub-feature-access .sub-feature-h1 a,
.sub-feature-hours .sub-feature-h1 a
{
    padding: 0;
}

.sub-feature-access .sub-feature-body,
.sub-feature-hours .sub-feature-body
{
    display: block;
}

.sub-feature-access .sub-feature-image img
{
    display: inline-block;
}

.sub-feature-access .sub-feature-text,
.sub-feature-hours .sub-feature-text
{
    margin-bottom: 10px;
    line-height: 2;
}

.sub-feature-access .sub-feature-h1 a
{
    pointer-events: none;
}

@media only screen and (min-width: 960px)
{
    .sub-feature
    {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
    }

    .sub-feature-main
    {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        width: 100%;
    }

    .sub-feature-h1
    {
        -webkit-box-flex: 0;
        -webkit-flex-grow: 0;
        -ms-flex-positive: 0;
        flex-grow: 0;
    }

    .sub-feature-body
    {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        width: 100%;
        text-align: center;
        -webkit-box-flex: 1;
        -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center;
    }

    .sub-feature-image,
    .sub-feature-text
    {
        width: 100%;
    }

    .sub-feature-image
    {
        margin-bottom: .5em;
    }

    .sub-feature-image img
    {
        margin-bottom: 0;
    }

    .sub-feature-text
    {
        text-align: left;
    }

    .sub-feature-text > :last-child
    {
        margin-bottom: 0;
    }

    .sub-feature-text-small
    {
        text-align: center;
        font-size: .75em;
        line-height: 1.6;
    }

    .sub-feature-button
    {
        margin-top: 1em;
        font-size: .9em;
        -webkit-align-self: flex-end;
        -ms-flex-item-align: end;
        align-self: flex-end;
    }

    .sub-feature-price .sub-feature-h1 a,
    .sub-feature-facility .sub-feature-h1 a
    {
        display: block;
    }

    .sub-feature-price .sub-feature-h1 a::after,
    .sub-feature-facility .sub-feature-h1 a::after
    {
        content: normal;
    }

    .sub-feature-access .sub-feature-main,
    .sub-feature-hours .sub-feature-main
    {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: stretch;
        -webkit-align-items: stretch;
        -ms-flex-align: stretch;
        align-items: stretch;
    }

    .sub-feature-access .sub-feature-main,
    .sub-feature-hours .sub-feature-main
    {
        padding-top: 0;
    }

    .sub-feature-access .sub-feature-h1,
    .sub-feature-hours .sub-feature-h1
    {
        margin-right: 0;
        margin-bottom: .5em;
        font-size: 22px;
        line-height: 32px;
    }

    .sub-feature-access .sub-feature-h1 a
    {
        pointer-events: auto;
    }

    .sub-feature-access .sub-feature-text,
    .sub-feature-hours .sub-feature-text
    {
        margin-bottom: 0;
    }

    .sub-feature-hours .sub-feature-body
    {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        min-height: 192px;
        background: #fafafa;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-flex: 0;
        -webkit-flex-grow: 0;
        -ms-flex-positive: 0;
        flex-grow: 0;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center;
    }

    .sub-feature-hours .sub-feature-text
    {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        width: auto;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
    }

    .sub-feature-access .sub-feature-image,
    .sub-feature-access .sub-feature-image img
    {
        display: block;
    }

    .sub-feature-access .sub-feature-button
    {
        display: inline-block;
    }
}

/* サブ一覧 */
.sub-features .sub-feature
{
    margin: 0;
}

@media only screen and (min-width: 960px)
{
    .sub-features
    {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-box-align: stretch;
        -webkit-align-items: stretch;
        -ms-flex-align: stretch;
        align-items: stretch;
    }

    .sub-features .sub-feature
    {
        margin-right: 16px;
        margin-bottom: 3em;
        width: calc(25% - 16px);
        -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
        flex-shrink: 0;
    }
}

/* セクション */
.features-section
{
    margin-bottom: 3.5em;
}

@media only screen and (max-width: 959px)
{
    .features-section-h1
    {
        margin-bottom: 0 !important;
        padding-top: 0 !important;
    }
}

.features-section-main-features
{
    margin-bottom: calc(4em - 19px);
}

@media only screen and (min-width: 960px)
{
    .features-section-main-features
    {
        margin-bottom: 4em;
    }
}

.features-section-sub-features
{
    margin-bottom: 4em;
}

@media only screen and (min-width: 960px)
{
    .features-section-sub-features
    {
        margin-bottom: 1.5em;
    }
}

/* ############################################################ */
/* region ブログ一覧 */
/* ############################################################ */
.popular-posts-h1,
.post .popular-posts-h1
{
    margin: 0 0 1em;
    padding: 0;
    border: 0;
    background: 0;
    text-align: center;
    font-size: 32px;
}

.popular-posts-h1 a,
.post .popular-posts-h1 a
{
    color: #333;
    text-decoration: underline;
}

.popular-posts .point
{
    position: relative;
    margin-bottom: 40px;
    padding: 20px 15px 10px;
    border-bottom: solid 1px #f3f3f3;
    background-color: transparent;
    color: #333;
}

.popular-posts .point-in
{
    position: absolute;
    top: 15px;
    left: 0;
    margin: 0;
    padding: 3px 20px;
    background: #f3f3f3;
    color: #333;
    font-weight: bold;
    font-size: 15px;
}

.popular-posts-h1 a:hover,
.post .popular-posts-h1 a:hover
{
    color: #f69;
}

.popular-posts .wpp-no-data,
.post .popular-posts .wpp-no-data
{
    text-align: center;
}

body.home .popular-posts
{
    padding-bottom: 60px;
}

body.page .footer-popular-posts
{
    margin: 0 auto 40px;
    padding: 0 20px 60px;
    border-bottom: 1px solid #ccc;
}

@media only screen and (min-width: 960px)
{
    body.home .popular-posts,
    body.page .footer-popular-posts
    {
        padding-bottom: 0;
        border-bottom: 0;
    }

    body.page .footer-popular-posts .popular-posts-h1 a
    {
        text-decoration: underline !important;
    }
}

@media only screen and (min-width: 1060px)
{
    body.page .footer-popular-posts
    {
        width: 1020px;
    }
}

/* ############################################################ */
/* region トレーナー */
/* ############################################################ */
.trainer
{
    margin: auto;
    padding: 10px;
    border: 1px solid #ccc;
    background: #fff;
}

.trainer-content
{
    margin: auto;
}

.trainer-image
{
    margin: 0;
}

.trainer-image img
{
    display: block;
    margin: auto;
}

.trainer-title
{
    margin: .5em 0 0;
    text-align: center;
    font-weight: bold;
    font-size: 1em;
}

.trainer-sub-title
{
    margin: 0;
    text-align: center;
    font-weight: bold;
    font-size: 1em;
}

.trainer-note
{
    font-size: .8125em;
}

.trainer-text
{
    margin-top: .5em;
}

.trainer-text > *
{
    margin: 0;
    font-size: .8125em;
    line-height: 1.6;
}

.trainer-text > * + *
{
    margin-top: 1em;
}

.trainer-button
{
    margin: .75em 0 0;
}

.trainer-button::after
{
    margin-left: .5em;
}

@media only screen and (min-width: 600px)
{
    .trainer-content
    {
        max-width: 50%;
    }

    .trainer-title,
    .trainer-button
    {
        font-size: 1.15em;
    }

    .trainer-text > *
    {
        font-size: 1em;
    }
}

@media only screen and (min-width: 960px)
{
    .trainer-content
    {
        max-width: none;
    }

    .trainer-title,
    .trainer-button
    {
        font-size: 1em;
    }

    .trainer-text > *
    {
        font-size: .8125em;
    }
}

/* endregion */

/* ############################################################ */
/* region サイトマップ */
/* ############################################################ */
.entry-content .st-sitemap-cat-header,
.entry-content .st-sitemap-child-cat-header
{
    text-align: left;
}

.entry-content .st-sitemap-cat-h1
{
    margin-top: 20px;
    margin-bottom: 30px;
}

.entry-content .st-sitemap-child-cat
{
    margin-bottom: 20px;
}

.entry-content .st-sitemap-child-cat-h1
{
    margin-bottom: 30px;
}

.entry-content .st-sitemap-post-list
{
    margin: 0;
    padding: 0 0 0 20px;
}

.entry-content .st-sitemap-post-list-item
{
    margin: 0 0 .75em 4%;
    padding: 0 5px 0 .25em;
    width: 100%;
    list-style-position: outside;
    text-indent: 0;
}

@media only screen and (min-width: 600px)
{
    .entry-content .st-sitemap-cat-h1
    {
        margin-top: 40px;
    }

    .entry-content .st-sitemap-post-list::before,
    .entry-content .st-sitemap-post-list::after
    {
        display: table;
        content: ' ';
    }

    .entry-content .st-sitemap-post-list::after
    {
        clear: both;
    }

    .entry-content .st-sitemap-post-list-item
    {
        float: left;
        width: calc(50% - 10px - 4%);
    }
}

/* endregion */

/* ############################################################ */
/* region その他 */
/* ############################################################ */
.tyuuou-center-middle
{
    vertical-align: middle !important;
    text-align: center !important;
}

/* ----------基本のリストデザイン---------------- */
.basic-list ul
{
    margin: 0 0 20px 0;
    margin-top: 0;
    margin-right: 0 !important;
    margin-left: 0 !important;
    padding: 15px 15px 10px 15px !important;
    width: auto;
    border: 2px #f69 dotted;
    background-color: #fffdee;
}

.basic-list ol
{
    margin-top: 0;
    margin-right: 0 !important;
    margin-left: 0 !important;
    width: auto;
}

.basic-list li
{
    margin-bottom: 10px;
    padding-bottom: 3px;
    width: auto;
    height: 50%;
    border-bottom: 1px dotted #e9e9e9;
    color: #333;
    list-style: none;
    list-style-position: inside;
    font-size: 1.1em;
}

.basic-list li::before
{
    margin-right: 8px; /* アイコンと文字の間 */
    color: #f69;
    content: '\f138';
    font-family: FontAwesome; /* アイコンフォント指定 */
}

.basic-list li a
{
    color: #333;
}

.basic-list li a:hover
{
    margin-left: 8px;
    /*color: #f30;*/
}

.basic-list ul ul
{
    margin: 0;
    border: none;
    font-size: 1.0em;
}

.basic-list ul ul li
{
    border-bottom: none;
}

.basic-list ul ul li::before
{
    margin-right: 8px; /* アイコンと文字の間 */
    color: #333;
    content: '\f0da';
    font-family: FontAwesome; /* アイコンフォント指定 */
}

#map_canvas
{
    position: relative;
    overflow: hidden;
    margin-bottom: 20px;
    padding: 0 0 80%;
    height: 0;
}

#map_canvas iframe
{
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
}

/* ランキングページの表部分の飛ぶアイコン */

.tobu a:after
{
    margin-left: 2px;
    content: '\f08e';
    font-family: FontAwesome;
}

/* ----------------------------------------
　プロフィール写真の枠
---------------------------------------- */

.prof-waku
{
    display: table;
    margin: 0 auto;
    margin-bottom: 15px;
    padding: 7px;
    width: auto;
    height: auto;
    border: 1px solid #ccc;
    border: 1px solid #ccc;
    background: #fff;
    background-position: center center;
    background-size: contain;
    background-repeat: no-repeat;
    box-shadow: 1px 1px 5px rgba(20, 20, 20, 0.2); /* ドロップシャドウ 【横位置 縦位置 ぼかし幅 色】の順に記述 */
    text-align: center;
}

/* ----------------------------------------
　署名欄
---------------------------------------- */
.syomei
{
    margin: 0 0 15px;
    padding: 10px;
    background: #f6f6f6;
    color: #470c0c;
}

.syomei .syomei-photo
{
    display: table-cell;
}

.syomei .syomei-photo img
{
    max-width: 100%;
    height: auto;
    border: 1px solid #d8d8d8;
}

.syomei .syomei-area
{
    display: table-cell;
    vertical-align: top;
}

.syomei .syomei-area ul
{
    margin: 0;
    margin-top: 0;
    margin-left: 10px;
    padding: 0;
}

.syomei .syomei-area li
{
    margin: 0 !important;
    padding: 0;
    list-style: none;
    font-size: 0.8em;
    line-height: 1.3;
}

.syomei .syomei-area li span
{
    margin: 0;
    padding: 1px 2px 1px 2px;
    background-color: #f69;
    color: #fff;
}

.syomei .syomei-area li.ao
{
    margin: 0;
    margin-bottom: 6px !important;
    padding: 0;
}

.syomei .syomei-email
{
    display: inline-block;
    padding: 2px 6px 4px 6px;
    border-radius: 15px;
    background-color: #f69;
    color: #fff;
    vertical-align: middle;
    font-size: 1.2em;
}

.syomei .syomei-email .fa
{
    padding: 0;
    background: transparent;
    color: inherit;
    vertical-align: middle;
}

.red
{
    color:#FF3366;
	font-weight: bold;
}

strong
{
    color:#FF3366;
	font-weight: bold;
}

.point17
{
    font-size: 17pt;
}

.point16
{
    font-size: 16pt;
}

.point15
{
    font-size: 15pt !important;
}

.point14
{
    font-size: 14pt;
}

.point13
{
    font-size: 13pt;
}

.point12
{
    font-size: 12pt;
}

.point11
{
    font-size: 11pt;
}

.point10
{
    font-size: 10pt;
}

h4
{
    margin: 30px 10px;
    padding-top: 5px !important;
    padding-bottom: 3px !important;
    padding-left: 15px;
    border-left: 3px solid #f69;
    background-color: #fff !important;
    font-weight: bold;
    font-size: 1.0em !important;
}

.margin-bottom
{
    margin-bottom: 20px;
}

/* -----TOPページの３つの特徴リスト--------- */
ol.tokutyou
{
    padding: 5px 15px 5px 15px;
    border: 4px solid #f69;
    border-radius: 15px;
    background: #fff;
    list-style-type: none;
    counter-reset: list;
    font: 14px/1.6 'arial narrow', sans-serif;
}

ol.tokutyou li
{
    position: relative;
    margin: 15px 0 15px 0px;
    padding: 0 0 0px 30px;
    border: dashed 1px transparent;
    border-bottom-color: #f69;
    font-weight: bold;
    font-size: 1.4em;
    line-height: 29px;
    transition: 0.3s;
}

ol.tokutyou li:before
{
    position: absolute;
    top: 50%;
    left: -10px;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: #f69;
    color: #fff;
    content: counter(list);
    counter-increment: list;
    text-align: center;
    line-height: 30px;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}

/* ---------- */
.right
{
    text-align: right;
}

.futoji
{
    font-weight: bold;
}

/* -----目次--------- */
#toc_container
{
    display: block !important;
    margin: 0;
    padding: 1em 0;
    border: 0;
    background: transparent;
    text-align: center;
}

#toc_container.contracted
{
    margin: auto;
}

@media only screen and (min-width: 960px)
{
    #toc_container
    {
        padding: 1em;
    }
}

#toc_container .toc_title
{
    display: inline-block;
    margin: 0;
    padding: 0 .5em .15em;
    border-bottom: 2px solid #f69;
    text-align: center;
    font-weight: bold;
    font-size: 1em; /* タイトルの文字サイズ */
    font-family: 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro', YuMincho, '游明朝', 'ＭＳ Ｐ明朝', 'MS PMincho', serif;
}

#toc_container .toc_title:before
{
    margin-right: .5em;
    content: '\f0f6';
    font-weight: normal;
    font-family: FontAwesome;
}

#toc_container .toc_list
{
    margin: 1em 0;
    padding: 0;
    list-style: none;
}

#toc_container .toc_toggle
{
    font-size: 1em; /* 開閉の文字サイズ */
    font-family: 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro', YuMincho, '游明朝', 'ＭＳ Ｐ明朝', 'MS PMincho', serif;
}

/* 見出し: h2 */
#toc_container .toc_list li
{
    margin: .25em 0 0;
    padding: .75em 0 0 1em;
    list-style: none;
    text-align: left;
    text-indent: -.8em;
    font-weight: bold;
    font-size: 1em; /* 見出し (h2) の文字サイズ */
}

#toc_container .toc_list li:first-child
{
    margin-top: 0;
}

#toc_container .toc_list li a
{
    display: block;
    padding-bottom: .25em;
    border-bottom: 1px dotted #ccc;
    color: #000;
    text-decoration: none;
}

#toc_container .toc_list li a:hover
{
    color: #f69;
}

#toc_container .toc_list > li a::before
{
    margin-right: .65em;
    color: #f69;
    content: '\f0da';
    font-family: FontAwesome;
}

#toc_container .toc_list > li > a
{
    border-bottom: none;
}

/* 見出し: h3 */
#toc_container .toc_list ul
{
    margin: 0;
    padding: .25em 0;
}

#toc_container .toc_list ul li
{
    margin-left: 0;
    padding: .5em 0;
    list-style: none;
    text-indent: 0;
    font-weight: normal;
}

#toc_container .toc_list > li > ul > li
{
    font-size: .95em; /* 見出し (h3) の文字サイズ */
}

#toc_container .toc_list ul li a::before
{
    content: normal;
}

#toc_container .toc_list ul li a
{
    position: relative;
    display: block;
    padding-left: 1.85em;
}

#toc_container .toc_list ul li a::before
{
    position: absolute;
    top: 50%;
    left: 10px;
    display: block;
    margin-top: -.25em;
    width: .5em;
    height: .5em;
    border-radius: 100%;
    background: #f69;
    content: '';
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
}

#toc_container .toc_list ul ul
{
    margin-left: 1.35em;
    padding-bottom: 0;
}

#toc_container .toc_list ul ul li:last-child
{
    padding-bottom: 0;
}

/* ---------- */

.footer-text
{
    padding: 5px;

}

/* endregion */

/*************************
トレーナー紹介ページのul横並び
**************************/
.trainer_list::before,
.trainer_list::after {
    content: '';
    display: table;
}

.trainer_list::after {
    clear: both;
}

ul.trainer_list {
    margin: auto !important;
    padding: 0 !important;
    width: calc((180px + .5% * 2) * 3);    /* (画像幅 + margin-right/left * 2) x 列数 */
    max-width: 100%;
}

ul.trainer_list li {
    float: left;
    list-style: none;
    margin: 0 .5% 1%;
    padding: 0;
    max-width: 32.33332%;
    text-align: center;
}

ul.trainer_list li:nth-child(3n+1) {
    clear: both;
}

ul.trainer_list li a {
    color: #000;
    text-decoration: none;
}

ul.trainer_list li a:hover {
    color: #f00;
    text-decoration: underline;
}

ul.trainer_list img {
    margin: 0;
}

@media only screen and (max-width: 767px) {
    ul.trainer_list {
        width: calc((180px + .5% * 2) * 2);    /* (画像幅 + margin-right/left * 2) x 列数 */
    }

    ul.trainer_list li {
        max-width: 49%;
    }

    ul.trainer_list li:nth-child(2n+1) {
        clear: both;
    }

    ul.trainer_list li:nth-child(3n+1) {
        clear: none;
    }
}

/*************************
幅
**************************/
[data-width='0%'] {width: 0;}
[data-width='1%'] {width: 1%;}
[data-width='2%'] {width: 2%;}
[data-width='3%'] {width: 3%;}
[data-width='4%'] {width: 4%;}
[data-width='5%'] {width: 5%;}
[data-width='6%'] {width: 6%;}
[data-width='7%'] {width: 7%;}
[data-width='8%'] {width: 8%;}
[data-width='9%'] {width: 9%;}
[data-width='10%'] {width: 10%;}
[data-width='11%'] {width: 11%;}
[data-width='12%'] {width: 12%;}
[data-width='13%'] {width: 13%;}
[data-width='14%'] {width: 14%;}
[data-width='15%'] {width: 15%;}
[data-width='16%'] {width: 16%;}
[data-width='17%'] {width: 17%;}
[data-width='18%'] {width: 18%;}
[data-width='19%'] {width: 19%;}
[data-width='20%'] {width: 20%;}
[data-width='21%'] {width: 21%;}
[data-width='22%'] {width: 22%;}
[data-width='23%'] {width: 23%;}
[data-width='24%'] {width: 24%;}
[data-width='25%'] {width: 25%;}
[data-width='26%'] {width: 26%;}
[data-width='27%'] {width: 27%;}
[data-width='28%'] {width: 28%;}
[data-width='29%'] {width: 29%;}
[data-width='30%'] {width: 30%;}
[data-width='31%'] {width: 31%;}
[data-width='32%'] {width: 32%;}
[data-width='33%'] {width: 33%;}
[data-width='34%'] {width: 34%;}
[data-width='35%'] {width: 35%;}
[data-width='36%'] {width: 36%;}
[data-width='37%'] {width: 37%;}
[data-width='38%'] {width: 38%;}
[data-width='39%'] {width: 39%;}
[data-width='40%'] {width: 40%;}
[data-width='41%'] {width: 41%;}
[data-width='42%'] {width: 42%;}
[data-width='43%'] {width: 43%;}
[data-width='44%'] {width: 44%;}
[data-width='45%'] {width: 45%;}
[data-width='46%'] {width: 46%;}
[data-width='47%'] {width: 47%;}
[data-width='48%'] {width: 48%;}
[data-width='49%'] {width: 49%;}
[data-width='50%'] {width: 50%;}
[data-width='51%'] {width: 51%;}
[data-width='52%'] {width: 52%;}
[data-width='53%'] {width: 53%;}
[data-width='54%'] {width: 54%;}
[data-width='55%'] {width: 55%;}
[data-width='56%'] {width: 56%;}
[data-width='57%'] {width: 57%;}
[data-width='58%'] {width: 58%;}
[data-width='59%'] {width: 59%;}
[data-width='60%'] {width: 60%;}
[data-width='61%'] {width: 61%;}
[data-width='62%'] {width: 62%;}
[data-width='63%'] {width: 63%;}
[data-width='64%'] {width: 64%;}
[data-width='65%'] {width: 65%;}
[data-width='66%'] {width: 66%;}
[data-width='67%'] {width: 67%;}
[data-width='68%'] {width: 68%;}
[data-width='69%'] {width: 69%;}
[data-width='70%'] {width: 70%;}
[data-width='71%'] {width: 71%;}
[data-width='72%'] {width: 72%;}
[data-width='73%'] {width: 73%;}
[data-width='74%'] {width: 74%;}
[data-width='75%'] {width: 75%;}
[data-width='76%'] {width: 76%;}
[data-width='77%'] {width: 77%;}
[data-width='78%'] {width: 78%;}
[data-width='79%'] {width: 79%;}
[data-width='80%'] {width: 80%;}
[data-width='81%'] {width: 81%;}
[data-width='82%'] {width: 82%;}
[data-width='83%'] {width: 83%;}
[data-width='84%'] {width: 84%;}
[data-width='85%'] {width: 85%;}
[data-width='86%'] {width: 86%;}
[data-width='87%'] {width: 87%;}
[data-width='88%'] {width: 88%;}
[data-width='89%'] {width: 89%;}
[data-width='90%'] {width: 90%;}
[data-width='91%'] {width: 91%;}
[data-width='92%'] {width: 92%;}
[data-width='93%'] {width: 93%;}
[data-width='94%'] {width: 94%;}
[data-width='95%'] {width: 95%;}
[data-width='96%'] {width: 96%;}
[data-width='97%'] {width: 97%;}
[data-width='98%'] {width: 98%;}
[data-width='99%'] {width: 99%;}
[data-width='100%'] {width: 100%;}

/* 画像横スクロールのスライダ */

.scroll_list{
	text-align:left;
  padding: 0;
  width: 100%;  /* コンテンツが見切れて見えるようにする */
  overflow-x: auto;  /* 横スクロールの指定 */
  white-space: nowrap;  /* 横スクロールの指定 */
  overflow-scrolling: touch;  /* スクロールを滑らかにする */
  -webkit-overflow-scrolling: touch;  /* スクロールを滑らかにする */
	margin-bottom:0px;
}
.scroll_list li{
  display: inline-block;  /* 横並びにする指定 */
  list-style: none;
  height: 200px;  /* 横スクロールする範囲の高さを指定 */
}
.list1{
  margin-left: 0;
}
.list2, .list3, .list4, .list5, .list6, .list7, .list8, .list9, .list10{
  margin-left: 10px;
}
.midashi p{
	text-align:center;
	background-color:#FF3366;
	color:#fff;
	font-size:1.2em;
}
.midashi {
		margin-bottom:10px;
}

/*************************
 LINEから予約するボタン
**************************/
.line_reserve {
  background: #FF3366;
  padding: 10px;
  width: 100%;
  box-sizing: border-box;
}

.line_reserve .line_reserve_box {
  background: #FFFF;
  padding: 20px 20px 0 20px;
  width: 100%;
  box-sizing: border-box;
}
.line_reserve .line_reserve_box p {
  font-weight: bold;
	text-align:center;
}
.line_reserve .line_reserve_box ul {
  margin: 0;
  padding: 0;
  list-style: none;
  overflow: hidden;
}
.line_reserve .line_reserve_box ul li {
  width: 100%;
  line-height: 60px;
  padding-bottom: 0;
}

.line_reserve .line_reserve_box ul li .line_reserve_btn {
  border: none;
  background: #00b900;
  background: -webkit-gradient(
    linear,
    left top,
    left bottom,
    from(#84e548),
    to(#00b900)
  );
  background: -moz-linear-gradient(top, #84e548, #00b900);
  box-shadow: 0 4px 0 #008700;
  width: 100%;
  padding: 0;
  box-sizing: border-box;
  -webkit-border-radius: 30px;
  -moz-border-radius: 30px;
  border-radius: 30px;
  font-weight: normal;
  display: block;
  color: #fff;
  text-align: center;
  text-decoration: none;
  margin: 0 auto 20px !important;
  position: relative;
}
.line_reserve .line_reserve_box ul li .line_reserve_btn:hover {
  opacity: 0.75;
}
.line_reserve .line_reserve_box ul li .line_reserve_btn:active {
  top: 3px;
  box-shadow: 0 1px 0 #008700;
}
.line_reserve .line_reserve_box ul li .line_reserve_btn span {
  font-size: 20px;
  display: inline-block;
  width: 70%;
  padding-left: 20px;
  position: relative;
  box-sizing: border-box;
}
.line_reserve .line_reserve_box ul li .line_reserve_btn span:before,
.line_reserve .line_reserve_box ul li .line_reserve_btn span:after {
  position: absolute;
  top: 50%;
  left: 0;
  content: '';
  -webkit-transform: translate(0, -50%);
  -moz-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  -o-transform: translate(0, -50%);
  transform: translate(0, -50%);
}
.line_reserve .line_reserve_box ul li .line_reserve_btn span:before {
  width: 20px;
  height: 20px;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  border: solid 2px #fff;
}
.line_reserve .line_reserve_box ul li .line_reserve_btn span:after {
  top: 42%;
  left: 6px;
  width: 6px;
  height: 6px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}


@media only screen and (max-width: 767px) {
  .line_reserve .line_reserve_box p {
    font-size: 15px;
    line-height: 150%;
    margin-bottom: 20px;
  }
}

@media only screen and (max-width: 420px) {

  .line_reserve .line_reserve_box {
    padding: 15px 10px 0 10px;
  }
  .line_reserve .line_reserve_box ul li {
    line-height: 50px;
  }
  .line_reserve .line_reserve_box ul li .line_reserve_btn span {
    width: 100%;
    font-size: 16px;
    padding-left: 16px;
  }
.line_reserve .line_reserve_box ul li .line_reserve_btn span:before {
  left: 25px;
}
.line_reserve .line_reserve_box ul li .line_reserve_btn span:after {
  left: 32px;
}

}

@media only screen and (max-width: 320px) {

  .line_reserve .line_reserve_box p {
    font-size: 14px;
  }
  .line_reserve .line_reserve_box ul li .line_reserve_btn span {
    line-height: 40px;
    font-size: 14px;
    padding-left: 18px;
  }

}
.ma-ku {
background: linear-gradient(transparent 60%, #ffff66 60%);
}
.sukosidai{
	font-size:1.3em;
}

/* スマホ表示でコンテンツ部のimg横幅いっぱいにする */
@media (max-width: 640px) {
	
.st-main img{
     position: relative;
     left: 50%;
     right: 50%;
     margin-left: -50vw;
     margin-right: -50vw;
		max-width:106%;
}
	
/* 投稿記事の縦長画像だけなぜか右によるので下記css設定 */
	

	.entry-content h2 , .entry-content h3 {
     position: relative;
     left: 50%;
     right: 50%;
     margin-left: -50vw;
     margin-right: -50vw;
		max-width:107%;
		padding:3px;
}

    body.page-template-page-empty .entry-content h2,
    body.page-template-page-empty .entry-content h3,
    body.page-template-page-lp .entry-content h2,
    body.page-template-page-lp .entry-content h3,
    body.page-template-page-lp-with-content .entry-content h2,
    body.page-template-page-lp-with-content .entry-content h3
    {
        position: static;
        right: auto;
        left: auto;
        margin-right: -20px;
        margin-left: -20px;
        max-width: none;
    }

.vcard img{
     left: 0%;
     right: 0%;
     margin-left: 0vw;
     margin-right: 0vw;
		max-width:100%;
}
	
.post-cta-btn img{
     left: 0%;
     right: 0%;
     margin-left: 0vw;
     margin-right: 0vw;
		max-width:100%;
}
	
	.blogbox img{
     left: 0%;
     right: 0%;
     margin-left: 0vw;
     margin-right: 0vw;
		max-width:100%;
}
	
h3.cta-post-title{
     position: relative;
     left: 50%;
     right: 50%;
     margin-left: -50vw;
     margin-right: -50vw;
		max-width:107%;
		padding:3px;
}
	
		
	.kanren img , .line-button img{
     left: 0%;
     right: 0%;
     margin-left: 0vw;
     margin-right: 0vw;
		max-width:100%;
}
.icon-area p img{
     left: 0%;
     right: 0%;
     margin-left: 0vw;
     margin-right: 0vw;
		max-width:100%;
}	
	
@media only screen and (max-width: 767px) {
  ul.trainer_list {
    width: calc(
      (180px + 0.5% * 2) * 2
    ) ; /* (画像幅 + margin-right/left * 2) x 列数 */
	  
  }	
	
.t-waku{
     position: relative;
     left: 50%;
     right: 50%;
     margin-left: -50vw;
     margin-right: -50vw;
		max-width:105%;
  }
  ul.trainer_list li {
    max-width: 49%;
  }

  ul.trainer_list li:nth-child(2n + 1) {
    clear: both;
  }

  ul.trainer_list li:nth-child(3n + 1) {
    clear: none;
  }
}
	
  ul.trainer_list li {
	left: 0 !important;
	    }

  ul.trainer_list li img{
     left: 0%;
  }
	
.midashi {
     position: relative;
     left: 50%;
     right: 50%;
     margin-left: -50vw;
     margin-right: -50vw;
		max-width:106%;
}	

	.scroll_list li{
	max-width:90%;

}
.scroll_list img{
     left: 0%;
     right: 0px;
     margin-left: 0vw;
     margin-right: 1px;
	max-width:100%;

}
	
.map_canvas
{
     position: relative;
			top: 00px;
			left:50px;
}	
	
	
}	

@media (max-width: 599px)
{
    body.page-template-page-empty .entry-content h2,
    body.page-template-page-empty .entry-content h3,
    body.page-template-page-lp .entry-content h2,
    body.page-template-page-lp .entry-content h3,
    body.page-template-page-lp-with-content .entry-content h2,
    body.page-template-page-lp-with-content .entry-content h3
    {
        margin-right: -10px;
        margin-left: -10px;
    }
}

.muryou-naru{
	margin-bottom:10px !important;
}

/* ############################################################ */
/* region LP */
/* ############################################################ */
.lp-form-header
{
    margin-bottom: 10px;
    padding-bottom: 70px;
    background-size: 105% auto;
}

.lp-form-header
{
    margin-bottom: 50px;
    /* 27.03125% = 173px / 640px */
    padding: 20px 20px 27.03125%;
    background-image: url(https://fis-ladys.com/wp-content/uploads/2021/06/lpform-header.png);
    background-position: right bottom;
    background-repeat: no-repeat;
}

.lp-form-header strong
{
    color: inherit;
}

.lp-form-header p
{
    font-size: 18px;
}

@media (min-width: 600px)
{
    .lp-form-header p
    {
        font-size: 21px;
        line-height: 1.5;
    }
}

.form--lp,
.form--lp input[type='text'],
.form--lp input[type='email'],
.form--lp input[type='url'],
.form--lp input[type='tel'],
.form--lp input[type='number'],
.form--lp input[type='date'],
.form--lp select,
.form--lp textarea,
.form--lp input:not([type=checkbox]):not([type=radio]):not([type=submit]),
.form--lp input[type='submit']
{
    font-size: 18px;
}

@media (min-width: 600px)
{
    .form--lp,
    .form--lp input[type='text'],
    .form--lp input[type='email'],
    .form--lp input[type='url'],
    .form--lp input[type='tel'],
    .form--lp input[type='number'],
    .form--lp input[type='date'],
    .form--lp select,
    .form--lp textarea,
    .form--lp input:not([type=checkbox]):not([type=radio]):not([type=submit]),
    .form--lp input[type='submit']
    {
        font-size: 21px;
    }
}

.form--lp .form-control
{
    margin-bottom: 20px;
}

.form--lp .form-required
{
    position: relative;
    top: -3px;
    font-size: calc(1em - 6px);
}

.form--lp .wpcf7-radio
{
    display: block;
}

.form--lp .wpcf7-radio .wpcf7-list-item
{
    margin-top: 12px;
    margin-bottom: 12px;
}

.form--lp .wpcf7-radio .wpcf7-list-item + .wpcf7-list-item
{
    margin-top: 0;
}

@media (min-width: 960px)
{
    .form--lp .form-label,
    .form--lp .form-control
    {
        margin-bottom: 40px;
    }

    .form--lp .form-label
    {
        padding-top: 12px;
        width: 14em;
    }
}

/* endregion LP */

/*************************
LINEボタン見出し文頭ボタン
**************************/

.line_botan {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    box-sizing: border-box;
    padding: 5px;
    border-color: #f69;
    border-top-width: 3px;
    border-bottom-width: 3px;
    background-color: #fff;
    background-repeat: no-repeat;
    font-weight: bold;
    font-size: 1.3em;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}
.line_botan:before {
  top: 7px;
  margin: 0 0px 0 0;
  content: url(https://freeb-fis.co.jp/wp-content/uploads/2021/12/line-app.png;)
}


/*************************
お問い合わせ部分のulの調整
**************************/

.cta-ul ul {
	padding-left:40px !important;
	padding-bottom:5px;
    }

/*************************
会員予約ページのSNSアイコンのところ
**************************/

.sns-box .sns-box__item {
                        display: flex;
                        margin-bottom: 20px;
                      }

                      .sns-box .sns-icons a {
                        margin-right: 10px;
                      }

                      .sns-box .sns-icons img {
                        width: 30px;
                      }
                      .sns-box .sns-box__img {
                        margin-right: 10px;
                      }
                      .sns-box .sns-box__img img {
                        width: 90px;
                      }

                      .sns-box .sns-box__content p {
                        font-size: 14px;
                        line-height: 1.5;
                        margin-bottom: 10px;
                      }

                      .sns-box img {
                        width: 50px;
                        left: 0;
                        right: 0;
                        margin: 0;
                        max-width: inherit;
                      }
                      .sns-box .sns-box__item {
                        display: flex;
                      }


/*************************
 googlemapをレスポンシブさせる
**************************/
.gmap {
height: 0;
overflow: hidden;
padding-bottom: 56.25%;
position: relative;
	margin-bottom:15px;
}
.gmap iframe {
position: absolute;
left: 0;
top: 0;
height: 100%;
width: 100%;
}

/*************************
店舗アクセスの目次部分のCSS
**************************/


.toc-005 {
    margin-bottom: 30px;
    border-radius: 3px;
    background-culor: #f2f2f2;
}

.toc-005 div {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0;
    padding: 10px 0;
    background-culor: #f45ebc;
    culor: #fff;
    font-weight: 600;
    font-size: 1.1em;
}

.toc-005 ul {
    list-style-type: disc;
    margin: 0;
    overflow: hidden;
}

.toc-005 > ul {
    padding: 1em 1em 1em 3em;
}

.toc-005 ul ul {
    margin-top: 5px;
    padding-left: 1.1em;
}

.toc-005 li {
    padding: 5px 0;
    font-weight: 600;
}

.toc-005 ul ul li {
    font-weight: 500;
    font-size: .9em;
}

.toc-005 a {
    culor: #333;
    text-decoration: none;
}

/*************************
ご利用料金ページ
**************************/
/* 既存見出し非表示 */
.page-id-38 .entry-title {
	display: none;
}
/* ここから */
.l-price{
  padding-bottom:10.6666666667vw;
  margin-left:-10px;
  margin-right:-10px;
}
.l-price ul{
  list-style:none;
}
.l-price img{
  width:100%;
  height:auto;
  left:auto;
  right:auto;
  margin-left:0;
  margin-right:0;
  max-width:none;
}
.l-price__lead{
  margin-top:16vw;
}
.l-price__serv{
  margin-top:5vw;
}
.l-price__plan{
  margin-top:10.6666666667vw;
}
.l-price__course{
  margin-top:10.6666666667vw;
}
.l-price__btn{
  margin-top:10.6666666667vw;
}

.price-contents{
}
.price-contents .text-center{
  text-align:center !important;
}
.price-contents .text{
  text-align:justify;
  word-break:break-all;
  text-justify:inter-ideograph;
  text-justify:inter-character;
  word-wrap:break-word;
  overflow-wrap:break-word;
  line-height:1.8;
  letter-spacing:0;
  font-size:4.2666666667vw;
}
.price-contents .text + .text{
  margin-top:1em;
}
.price-contents .text .__color-main{
  color:#ff6e6e;
}
.__color-main{
  color:#ff6e6e;
}
.price-contents .text .__color-primary{
  color:var(--primary);
}
.price-contents .text .__color-yellow{
  color:var(--yellow);
}
.price-contents .text-resp-top{
  line-height:2.4;
  font-size:min(20px, 3.7333333333vw);
}
.price-contents .material-icons,
.price-contents .material-icons-outlined,
.price-contents .material-icons-round,
.price-contents .material-icons-sharp{
  font-family:"Material Icons";
  font-weight:normal;
  font-style:normal;
  font-size:24px;
  display:inline-block;
  line-height:1;
  text-transform:none;
  letter-spacing:normal;
  word-wrap:normal;
  white-space:nowrap;
  direction:ltr;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  -moz-osx-font-smoothing:grayscale;
  -webkit-font-feature-settings:"liga";
          font-feature-settings:"liga";
}
.price-contents .material-icons-outlined{
  font-family:"Material Icons Outlined";
}
.price-contents .material-icons-round{
  font-family:"Material Icons Round";
}
.price-contents .material-icons-sharp{
  font-family:"Material Icons Sharp";
}
.price-contents .material-symbols-outlined{
  font-variation-settings:"FILL" 0, "wght" 400, "GRAD" 0, "opsz" 48;
}
.price-contents .btn{
  position:relative;
  font-weight:600;
  padding:1.3em 0.5em 1.3em;
  line-height:1;
  display:inline-block;
  text-align:center;
  border-radius:10em;
  text-decoration:none;
  box-shadow:0 0 6px 4px rgba(0, 0, 0, 0.1);
  font-size:5.3333333333vw;
}
.price-contents .btn::after{
  position:absolute;
  display:block;
  content:"";
  position:absolute;
  top:50%;
  -webkit-transform:translateY(-50%);
  transform:translateY(-50%);
  background-image:url("/wp-content/uploads/2023/11/btn_arrow_bottom.png");
  background-repeat:no-repeat;
  background-size:contain;
  background-position:center center;
  right:8vw;
  width:15px;
  height:10px;
}
.price-contents .btn.--default{
  background-color:#ff6e6e;
  color:#fff;
}
.price-contents .btn.--block{
  display:block;
  width:100%;
}
.price-contents .page-ttl{
  font-family:"Noto Sans Japanese", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "游ゴシック体", "Yu Gothic", YuGothic, "メイリオ", "Meiryo", sans-serif;
  display:flex;
  flex-direction:column;
  align-items:center;
}
.price-contents .page-ttl > *{
  font-family:inherit;
}
.price-contents .page-ttl__en{
  position:relative;
  color:#B6A331;
  font-size:3.7333333333vw;
}
.price-contents .page-ttl__en::before{
  position:absolute;
  display:block;
  content:"";
  position:absolute;
  left:50%;
  -webkit-transform:translateX(-50%);
  transform:translateX(-50%);
  background-color:#B6A331;
  border-radius:10em;
  bottom:-1.3333333333vw;
  width:8.5333333333vw;
  height:3px;
}
.price-contents .page-ttl__ja{
  font-size:9.0666666667vw;
  margin-top:2.6666666667vw;
}
.price-contents .price-serv{
  background-image:url("/wp-content/uploads/2023/11/price_bg_service_sp.png");
  background-position:bottom center;
  background-size:contain;
  background-repeat:no-repeat;
  padding:0 8vw 8vw;
}
.price-contents .price-serv__fukidashi{
  margin-bottom:8vw;
  width:100%;
  margin-left:auto;
  margin-right:auto;
}
.price-contents .price-serv__list{
  display:flex;
  flex-wrap:wrap;
  gap:8vw;
  padding:0;
  margin-bottom:0;
}
.price-contents .price-serv__list-item{
  position:relative;
  width:calc((100% - 8vw) / 2);
}
.price-contents .price-serv__list-item img{
  overflow:hidden;
  border-radius:2.6666666667vw;
}
.price-contents .price-serv__list-item::after{
  position:absolute;
  display:block;
  content:"";
  background-image:url("/wp-content/uploads/2023/11/price_service_label.png");
  background-repeat:no-repeat;
  background-size:contain;
  background-position:center center;
  width:11.7333333333vw;
  height:11.7333333333vw;
  top:-1.3333333333vw;
  left:-1.3333333333vw;
}
.price-contents .price-serv__list-item .__name{
  line-height:1.3em;
  text-align:center;
  font-weight:600;
  color:#ff6e6e;
  font-size:3.7333333333vw;
  margin-top:1.6vw;
}
.price-contents .price-serv__box{
  margin-top:8vw;
}
.price-contents .sum-box{
  position:relative;
  background-color:#ff6e6e;
  color:#fff;
  display:flex;
  flex-direction:column;
  align-items:center;
  font-weight:600;
  line-height:1.4;
  border-radius:2.6666666667vw;
  padding:6.6666666667vw 1.3333333333vw 8vw;
}
.price-contents .sum-box > * + *{
  margin-top:1.3333333333vw;
}
.price-contents .sum-box .__main{
  z-index:1;
  font-size:5.3333333333vw;
}
.price-contents .sum-box .__main .__strong{
  color:#FFFA7C;
  font-size:6.9333333333vw;
}
.price-contents .sum-box .__main.--lg{
  font-size:6.4vw;
}
.price-contents .sum-box .__main.--lg .__strong{
  font-size:10.6666666667vw;
}
.price-contents .sum-box .__sub{
  z-index:1;
  font-size:3.2vw;
}
.price-contents .sum-box .__sub .__strong{
  color:#FFFA7C;
}
.price-contents .sum-box .__sub.--lg{
  font-size:4.2666666667vw;
}
.price-contents .sum-box::before{
  z-index:0;
  position:absolute;
  display:block;
  content:"";
  left:0;
  bottom:0;
  width:100%;
  background-color:rgba(51, 51, 51, 0.05);
  height:43%;
}
.price-contents .price-plan__table{
  margin-top:10.6666666667vw;
}
.price-contents .price-arrow{
  text-align:center;
  font-weight:600;
  background-position:bottom center;
  background-size:cover;
  background-repeat:no-repeat;
  background-image:url("/wp-content/uploads/2023/11/price_bg_arrow_sp.png");
  font-size:5.3333333333vw;
  padding-top:8vw;
  padding-bottom:10.6666666667vw;
  line-height:1.4;
}
.price-contents .price-arrow .__strong{
  color:#ff6e6e;
  font-size:6.9333333333vw;
}
.price-contents .price-arrow .__inline-num{
  width:8.5333333333vw;
}
.price-contents .price-course{
  background-position:bottom center;
  background-size:contain;
  background-repeat:no-repeat;
  background-image:url("/wp-content/uploads/2023/11/price_bg_course_sp.png");
}
.price-contents .price-course__contents{
  padding:0 8vw 8vw;
}
.price-contents .price-course__ranks{
  margin-top:10.6666666667vw;
}
.price-contents .price-course__box{
  margin-top:8vw;
}
.price-contents .price-course-btn{
  margin-left:auto;
  margin-right:auto;
  width:calc(100% - 8vw);
}
.price-contents .price-course-btn > .btn{
  display:block;
  width:auto;
}
@media screen and (min-width: 750px){
  .l-price{
    padding-bottom:50px;
  }
  .l-price__lead{
    margin-top:50px;
  }
  .l-price__serv{
    margin-top:30px;
  }
  .l-price__plan{
    margin-top:30px;
  }
  .l-price__course{
    margin-top:30px;
  }
  .l-price__btn{
    margin-top:50px;
  }
  .price-contents .sp-s-only{
    display:none !important;
  }
  .price-contents .sp-l-only{
    display:none !important;
  }
  .price-contents .sp-only{
    display:none !important;
  }
  .price-contents .text{
    font-size:17px;
  }
  .price-contents .btn{
    font-size:22px;
  }
  .price-contents .btn::after{
    right:35px;
  }
  .price-contents .page-ttl__en{
    font-size:18px;
  }
  .price-contents .page-ttl__en::before{
    bottom:-5px;
    width:42px;
    height:3px;
  }
  .price-contents .page-ttl__ja{
    font-size:46px;
    margin-top:20px;
  }
  .price-contents .price-serv{
    background-image:url("/wp-content/uploads/2023/11/price_bg_service_pc.png");
    padding:0 20px 30px;
  }
  .price-contents .price-serv__fukidashi{
    margin-bottom:30px;
    width:65%;
  }
  .price-contents .price-serv__list{
    gap:15px;
  }
  .price-contents .price-serv__list-item{
    width:calc((100% - 60px) / 5);
  }
  .price-contents .price-serv__list-item img{
    border-radius:10px;
  }
  .price-contents .price-serv__list-item::after{
    width:44px;
    height:44px;
    top:-5px;
    left:-5px;
  }
  .price-contents .price-serv__list-item .__name{
    font-size:14px;
    margin-top:6px;
  }
  .price-contents .price-serv__box{
    margin-top:30px;
  }
  .price-contents .sum-box{
    line-height:1;
    border-radius:10px;
    padding:25px 20px;
  }
  .price-contents .sum-box > * + *{
    margin-top:15px;
  }
  .price-contents .sum-box .__main{
    font-size:16px;
  }
  .price-contents .sum-box .__main .__strong{
    font-size:20px;
  }
  .price-contents .sum-box .__main.--lg{
    font-size:30px;
  }
  .price-contents .sum-box .__main.--lg .__strong{
    font-size:40px;
  }
  .price-contents .sum-box .__sub{
    font-size:13px;
  }
  .price-contents .sum-box .__sub.--lg{
    font-size:16px;
  }
  .price-contents .sum-box::before{
    height:30%;
  }
  .price-contents .price-plan__table{
    margin-top:50px;
  }
  .price-contents .price-arrow{
    background-image:url("/wp-content/uploads/2023/11/price_bg_arrow_pc.png");
    font-size:22px;
    padding-top:40px;
    padding-bottom:30px;
  }
  .price-contents .price-arrow .__strong{
    font-size:30px;
  }
  .price-contents .price-arrow .__inline-num{
    width:35px;
    padding-bottom:2px;
  }
  .price-contents .price-course{
    background-image:url("/wp-content/uploads/2023/11/price_bg_course_pc.png");
  }
  .price-contents .price-course__contents{
    padding:0 20px 30px;
  }
  .price-contents .price-course__ranks{
    margin-top:50px;
  }
  .price-contents .price-course__box{
    margin-top:20px;
  }
  .price-contents .price-course-btn{
    width:400px;
  }
}
@media screen and (min-width: 750px) and (max-width: -1){
  .price-contents .sp-s-only{
    display:none !important;
  }
}
@media screen and (min-width: 750px) and (max-width: 1059px){
  .price-contents .text-resp-top{
    font-size:2.6666666667vw;
  }
}
@media screen and (min-width: 1060px){
  .price-contents .mobile-only{
    display:none !important;
  }
  .price-contents .tb-only{
    display:none !important;
  }
  .price-contents .text-resp-top{
    font-size:min(2.6rem, 1.8867924528vw);
  }
}
@media screen and (max-width: 1059px){
  .price-contents .pc-only{
    display:none !important;
  }
}
@media screen and (max-width: 749px){
  .price-contents .tb-only{
    display:none !important;
  }
  .price-contents .wide-only{
    display:none !important;
  }
  .price-contents .sum-box{
    text-align:center;
  }
  .price-contents .sum-box .__main.--lg{
    letter-spacing:-0.03em;
  }
}
@media screen and (max-width: 539px){
  .price-contents .sp-l-only{
    display:none !important;
  }
  .price-contents .sp-l-and-wide-only{
    display:none !important;
  }
}
.l-price__plan{
  margin-top:10.6666666667vw;
}
.l-price__course{
  margin-top:10.6666666667vw;
}
.l-price__btn{
  margin-top:10.6666666667vw;
}

.price-contents{
}
.price-contents .text-center{
  text-align:center !important;
}
.price-contents .text{
  text-align:justify;
  word-break:break-all;
  text-justify:inter-ideograph;
  text-justify:inter-character;
  word-wrap:break-word;
  overflow-wrap:break-word;
  line-height:1.8;
  letter-spacing:0;
  font-size:4.2666666667vw;
}
.price-contents .text + .text{
  margin-top:1em;
}
.price-contents .text .__color-main{
  color:#ff6e6e;
}
.price-contents .text .__color-primary{
  color:var(--primary);
}
.price-contents .text .__color-yellow{
  color:var(--yellow);
}
.price-contents .text-resp-top{
  line-height:2.4;
  font-size:min(20px, 3.7333333333vw);
}
.price-contents .material-icons,
.price-contents .material-icons-outlined,
.price-contents .material-icons-round,
.price-contents .material-icons-sharp{
  font-family:"Material Icons";
  font-weight:normal;
  font-style:normal;
  font-size:24px;
  display:inline-block;
  line-height:1;
  text-transform:none;
  letter-spacing:normal;
  word-wrap:normal;
  white-space:nowrap;
  direction:ltr;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  -moz-osx-font-smoothing:grayscale;
  -webkit-font-feature-settings:"liga";
          font-feature-settings:"liga";
}
.price-contents .material-icons-outlined{
  font-family:"Material Icons Outlined";
}
.price-contents .material-icons-round{
  font-family:"Material Icons Round";
}
.price-contents .material-icons-sharp{
  font-family:"Material Icons Sharp";
}
.price-contents .material-symbols-outlined{
  font-variation-settings:"FILL" 0, "wght" 400, "GRAD" 0, "opsz" 48;
}
.price-contents .btn{
  position:relative;
  font-weight:600;
  padding:1.2em 0.5em 1.3em;
  line-height:1;
  display:inline-block;
  text-align:center;
  border-radius:10em;
  text-decoration:none;
  box-shadow:0 0 6px 4px rgba(0, 0, 0, 0.1);
  font-size:5.3333333333vw;
}
.price-contents .btn::after{
  position:absolute;
  display:block;
  content:"";
  position:absolute;
  top:50%;
  -webkit-transform:translateY(-50%);
  transform:translateY(-50%);
  background-image:url("/wp-content/uploads/2023/11/btn_arrow_bottom.png");
  background-repeat:no-repeat;
  background-size:contain;
  background-position:center center;
  right:8vw;
  width:15px;
  height:10px;
}
.price-contents .btn.--default{
  background-color:#ff6e6e;
  color:#fff;
}
.price-contents .btn.--block{
  display:block;
  width:100%;
}
.price-contents .page-ttl{
  font-family:"Noto Sans Japanese", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "游ゴシック体", "Yu Gothic", YuGothic, "メイリオ", "Meiryo", sans-serif;
  display:flex;
  flex-direction:column;
  align-items:center;
}
.price-contents .page-ttl > *{
  font-family:inherit;
}
.price-contents .page-ttl__en{
  position:relative;
  color:#B6A331;
  font-size:3.7333333333vw;
}
.price-contents .page-ttl__en::before{
  position:absolute;
  display:block;
  content:"";
  position:absolute;
  left:50%;
  -webkit-transform:translateX(-50%);
  transform:translateX(-50%);
  background-color:#B6A331;
  border-radius:10em;
  bottom:-1.3333333333vw;
  width:8.5333333333vw;
  height:3px;
}
.price-contents .page-ttl__ja{
  font-size:9.0666666667vw;
  margin-top:2.6666666667vw;
}
.price-contents .price-serv{
  background-image:url("/wp-content/uploads/2023/11/price_bg_service_sp.png");
  background-position:bottom center;
  background-size:contain;
  background-repeat:no-repeat;
  padding:0 8vw 8vw;
}
.price-contents .price-serv__fukidashi{
  margin-bottom:8vw;
  width:100%;
  margin-left:auto;
  margin-right:auto;
}
.price-contents .price-serv__list{
  display:flex;
  flex-wrap:wrap;
  gap:8vw;
  padding:0;
  margin-bottom:0;
}
.price-contents .price-serv__list-item{
  position:relative;
  width:calc((100% - 8vw) / 2);
}
.price-contents .price-serv__list-item img{
  overflow:hidden;
  border-radius:2.6666666667vw;
}
.price-contents .price-serv__list-item::after{
  position:absolute;
  display:block;
  content:"";
  background-image:url("/wp-content/uploads/2023/11/price_service_label.png");
  background-repeat:no-repeat;
  background-size:contain;
  background-position:center center;
  width:11.7333333333vw;
  height:11.7333333333vw;
  top:-1.3333333333vw;
  left:-1.3333333333vw;
}
.price-contents .price-serv__list-item .__name{
  line-height:1.3em;
  text-align:center;
  font-weight:600;
  color:#ff6e6e;
  font-size:3.7333333333vw;
  margin-top:1.6vw;
}
.price-contents .price-serv__box{
  margin-top:8vw;
}
.price-contents .sum-box{
  position:relative;
  background-color:#ff6e6e;
  color:#fff;
  display:flex;
  flex-direction:column;
  align-items:center;
  font-weight:600;
  line-height:1.4;
  border-radius:2.6666666667vw;
  padding:6.6666666667vw 1.3333333333vw 8vw;
}
.price-contents .sum-box > * + *{
  margin-top:1.3333333333vw;
}
.price-contents .sum-box .__main{
  z-index:1;
  font-size:5.3333333333vw;
}
.price-contents .sum-box .__main .__strong{
  color:#FFFA7C;
  font-size:6.9333333333vw;
}
.price-contents .sum-box .__main.--lg{
  font-size:6.4vw;
}
.price-contents .sum-box .__main.--lg .__strong{
  font-size:10.6666666667vw;
}
.price-contents .sum-box .__sub{
  z-index:1;
  font-size:3.2vw;
}
.price-contents .sum-box .__sub .__strong{
  color:#FFFA7C;
}
.price-contents .sum-box .__sub.--lg{
  font-size:4.2666666667vw;
}
.price-contents .sum-box::before{
  z-index:0;
  position:absolute;
  display:block;
  content:"";
  left:0;
  bottom:0;
  width:100%;
  background-color:rgba(51, 51, 51, 0.05);
  height:43%;
}
.price-contents .price-plan__table{
  margin-top:10.6666666667vw;
}
.price-contents .price-arrow{
  text-align:center;
  font-weight:600;
  background-position:bottom center;
  background-size:cover;
  background-repeat:no-repeat;
  background-image:url("/wp-content/uploads/2023/11/price_bg_arrow_sp.png");
  font-size:5.3333333333vw;
  padding-top:8vw;
  padding-bottom:10.6666666667vw;
  line-height:1.4;
}
.price-contents .price-arrow .__strong{
  color:#ff6e6e;
  font-size:6.9333333333vw;
}
.price-contents .price-arrow .__inline-num{
  width:8.5333333333vw;
}
.price-contents .price-course{
  background-position:bottom center;
  background-size:contain;
  background-repeat:no-repeat;
  background-image:url("/wp-content/uploads/2023/11/price_bg_course_sp.png");
}
.price-contents .price-course__contents{
  padding:0 8vw 8vw;
}
.price-contents .price-course__ranks{
  margin-top:10.6666666667vw;
}
.price-contents .price-course__box{
  margin-top:8vw;
}
.price-contents .price-course-btn{
  margin-left:auto;
  margin-right:auto;
  width:calc(100% - 8vw);
}
.price-contents .price-course-btn > .btn{
  display:block;
  width:auto;
}
@media screen and (min-width: 750px){
  .l-price{
    padding-bottom:50px;
  }
  .l-price__lead{
    margin-top:50px;
  }
  .l-price__serv{
    margin-top:30px;
  }
  .l-price__plan{
    margin-top:30px;
  }
  .l-price__course{
    margin-top:30px;
  }
  .l-price__btn{
    margin-top:50px;
  }
  .price-contents .sp-s-only{
    display:none !important;
  }
  .price-contents .sp-l-only{
    display:none !important;
  }
  .price-contents .sp-only{
    display:none !important;
  }
  .price-contents .text{
    font-size:17px;
  }
  .price-contents .btn{
    font-size:22px;
  }
  .price-contents .btn::after{
    right:35px;
  }
  .price-contents .page-ttl__en{
    font-size:18px;
  }
  .price-contents .page-ttl__en::before{
    bottom:-5px;
    width:42px;
    height:3px;
  }
  .price-contents .page-ttl__ja{
    font-size:46px;
    margin-top:20px;
  }
  .price-contents .price-serv{
    background-image:url("/wp-content/uploads/2023/11/price_bg_service_pc.png");
    padding:0 20px 30px;
  }
  .price-contents .price-serv__fukidashi{
    margin-bottom:30px;
    width:65%;
  }
  .price-contents .price-serv__list{
    gap:15px;
  }
  .price-contents .price-serv__list-item{
    width:calc((100% - 60px) / 5);
  }
  .price-contents .price-serv__list-item img{
    border-radius:10px;
  }
  .price-contents .price-serv__list-item::after{
    width:44px;
    height:44px;
    top:-5px;
    left:-5px;
  }
  .price-contents .price-serv__list-item .__name{
    font-size:14px;
    margin-top:6px;
  }
  .price-contents .price-serv__box{
    margin-top:30px;
  }
  .price-contents .sum-box{
    line-height:1;
    border-radius:10px;
    padding:25px 20px;
  }
  .price-contents .sum-box > * + *{
    margin-top:15px;
  }
  .price-contents .sum-box .__main{
    font-size:16px;
  }
  .price-contents .sum-box .__main .__strong{
    font-size:20px;
  }
  .price-contents .sum-box .__main.--lg{
    font-size:30px;
  }
  .price-contents .sum-box .__main.--lg .__strong{
    font-size:40px;
  }
  .price-contents .sum-box .__sub{
    font-size:13px;
  }
  .price-contents .sum-box .__sub.--lg{
    font-size:16px;
  }
  .price-contents .sum-box::before{
    height:30%;
  }
  .price-contents .price-plan__table{
    margin-top:50px;
  }
  .price-contents .price-arrow{
    background-image:url("/wp-content/uploads/2023/11/price_bg_arrow_pc.png");
    font-size:22px;
    padding-top:40px;
    padding-bottom:30px;
  }
  .price-contents .price-arrow .__strong{
    font-size:30px;
  }
  .price-contents .price-arrow .__inline-num{
    width:35px;
    padding-bottom:2px;
  }
  .price-contents .price-course{
    background-image:url("/wp-content/uploads/2023/11/price_bg_course_pc.png");
  }
  .price-contents .price-course__contents{
    padding:0 20px 30px;
  }
  .price-contents .price-course__ranks{
    margin-top:50px;
  }
  .price-contents .price-course__box{
    margin-top:20px;
  }
  .price-contents .price-course-btn{
    width:400px;
  }
}
@media screen and (min-width: 750px) and (max-width: -1){
  .price-contents .sp-s-only{
    display:none !important;
  }
}
@media screen and (min-width: 750px) and (max-width: 1059px){
  .price-contents .text-resp-top{
    font-size:2.6666666667vw;
  }
}
@media screen and (min-width: 1060px){
  .price-contents .mobile-only{
    display:none !important;
  }
  .price-contents .tb-only{
    display:none !important;
  }
  .price-contents .text-resp-top{
    font-size:min(2.6rem, 1.8867924528vw);
  }
}
@media screen and (max-width: 1059px){
  .price-contents .pc-only{
    display:none !important;
  }
}
@media screen and (max-width: 749px){
  .price-contents .tb-only{
    display:none !important;
  }
  .price-contents .wide-only{
    display:none !important;
  }
  .price-contents .sum-box{
    text-align:center;
  }
  .price-contents .sum-box .__main.--lg{
    letter-spacing:-0.03em;
  }
}
@media screen and (max-width: 539px){
  .price-contents .sp-l-only{
    display:none !important;
  }
  .price-contents .sp-l-and-wide-only{
    display:none !important;
  }
}

/*下三角矢印を追加*/

.price-serv__box{
    position:relative;
    background:#ff6e6e;
    padding:10px;
    text-align:left;
    color:#FFFFFF;
    font-size:15px;
}
.price-serv__box:after{
    border: solid transparent;
    content:'';
    height:0;
    width:0;
    pointer-events:none;
    position:absolute;
    border-color: rgba(106, 90, 205, 0);
    border-top-width:10px;
    border-bottom-width:10px;
    border-left-width:10px;
    border-right-width:10px;
    margin-left: -10px;
    border-top-color:#ff6e6e;
    top:100%;
    left:50%;
}


/*************************
　料金ページの料金表画像用
**************************/

 .ryoukin-hyou{
	 margin:0 auto;
	 text-align:center;
}

@media only screen and (min-width: 767px) {
	
 .ryoukin-hyou-top{
	 width:750px !important;
	 margin:0 auto;
}
	
	}

@media only screen and (max-width: 767px) {
	
 .ryoukin-hyou{
	 width:95% !important;
	 margin:0 auto;
}
	
	 .ryoukin-hyou-top{
	 width:95% !important;
	 margin:0 auto;
}
	}


/*料金の詳細はこちら上部余白狭く*/

section.price {
    padding: min(10px,10.6666666667vw) 0 !important;
}