@charset "utf-8";
/* CSS Document */


/************************************************

top
 
************************************************/
.bxslider-wrap {
    position: relative;
    margin: 0 -15px;
}

.bxslider>div {
    height: 200px;
    background-size: cover;
}

.slider-text {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    /* Safari用 */
    transform: translateY(-50%);
    width: 100%;
    padding: 0 31px;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-size: 1.4em;
    font-weight: bold;
    line-height: 1.6em;
    color: #fff;
    text-shadow: 0 0 5px #000;
    text-align: center;
    box-sizing: border-box;
}

/* DIRECTION CONTROLS (NEXT / PREV) */

.bx-wrapper .bx-prev {
    left: 5px;
    background: url(../images/controls.png) no-repeat 0 -26px;
}

.bx-wrapper .bx-next {
    right: 5px;
    background: url(../images/controls.png) no-repeat 0 0;
}

.bx-wrapper .bx-prev:hover {
    background-position: 0 -77px;
}

.bx-wrapper .bx-next:hover {
    background-position: 0 -52px;
}

.bx-wrapper .bx-controls-direction a {
    position: absolute;
    top: 50%;
    background-size: 26px;
    margin-top: -13px;
    outline: 0;
    width: 26px;
    height: 26px;
    text-indent: -9999px;
    z-index: 9999;
}

.bx-wrapper .bx-controls-direction a.disabled {
    display: none;
}


/* h */
.content-title01 {
    margin-bottom: 15px;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-size: 2.2em;
    line-height: 1.4em;
    text-align: center;
}

.content-title01>span {
    display: block;
    margin-bottom: 5px;
}

.content-title02 {
    position: relative;
    margin-bottom: 30px;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-size: 2em;
    text-align: center;

}

.content-title02 span {
    position: relative;
    display: inline-block;
    max-width: 200px;
    background-color: #fff;
}

.content-title02 span:before {
    position: absolute;
    left: -45px;
    top: 50%;
    width: 30px;
    height: 1px;
    background-color: #999;
    content: "";
}

.content-title02 span:after {
    position: absolute;
    right: -45px;
    top: 50%;
    width: 30px;
    height: 1px;
    background-color: #999;
    content: "";
}

.content-title03 {
    margin: 0 0 5px 0;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-size: 1.8em;
    line-height: 2em;
    font-weight: bold;
}

.page-title-wrap {
    display: table;
    position: relative;
    width: 100%;
    height: 150px;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover;
}

.page-title-wrap:before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    content: "";
    z-index: 1;
}

.page-title {
    position: relative;
    display: table-cell;
    text-align: center;
    vertical-align: middle;
    z-index: 2;
}

.page-title h1 {
    font-size: 3.2em;
    color: #fff;
    line-height: 1.4em;
}

.page-title span {
    display: block;
    font-size: 1.6rem;
    line-height: 1.4em;
}

/* text */
.lead-text {
    margin-bottom: 30px;
    font-size: 1.4em;
    line-height: 1.6em;
}

.content-text {
    font-size: 1.4em;
    line-height: 1.6em;
}

.content-md-text {
    margin-bottom: 20px;
    font-size: 1.6em;
    line-height: 1.8em;
}

.caption {
    font-size: 1.2em;
    line-height: 1.4em;
}

/* button */
.button-type01 {
    display: table;
    width: 100%;
}

.button-type01>a {
    display: table-cell;
    height: 60px;
    background-color: #39a869;
    padding: 10px;
    font-size: 1.6em;
    font-weight: bold;
    line-height: 1.2em;
    color: #fff;
    text-align: center;
    vertical-align: middle;
    border-radius: 5px;
    box-sizing: border-box;
}

.button-type01>a:hover {
    opacity: 0.7;
}

.button-type01>a>span {
    display: block;
    font-size: 1.2rem;
}

.button-list li {
    margin-bottom: 20px;
}

.button-list li:last-child {
    margin-bottom: 0;
}

/* fluid-wrap */
.fluid-bg-wrap.forest {
    position: relative;
    background-image: url(../images/bg-forest.jpg);
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover;
    padding: 30px 0;
    color: #fff;
}

.fluid-bg-wrap.forest:before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    content: "";
}

/* google map */
.ggmap {
    position: relative;
    margin-bottom: 15px;
    padding-bottom: 56.25%;
    padding-top: 30px;
    height: 0;
    overflow: hidden;
}

.ggmap iframe,
.ggmap object,
.ggmap embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/* box */
.content-box {
    padding-top: 60px;
}

.content-box02 {
    padding-top: 40px;
}

.content-box-last {
    padding: 60px 0;
}


/* list */
.image-list {
    margin: 0 -5px;
}

.image-list li {
    float: left;
    width: 50%;
    vertical-align: top;
    padding: 5px;
    box-sizing: border-box;
}

.image-list li a.contain {
    background-size: contain;
}

.image-list li a {
    display: block;
    background-size: cover;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    /*background-color: rgba(0,0,0,0.9);*/
}

/* margin */
.mgb-type01 {
    margin-bottom: 20px !important;
}

.mgb-type02 {
    margin-bottom: 20px !important;
}

.mgb-type03 {
    margin-bottom: 20px !important;
}

.mgb-type04 {
    margin-bottom: 10px !important;
}

.mgb-type05 {
    margin-bottom: 30px !important;
}

/* price */
.price-list {
    margin-bottom: -5px;
}

.price-list li {
    margin-bottom: 5px;
    font-size: 1.4em;
    line-height: 1.6em;
    text-align: right;
}

/* border */
.border-type01 {
    border-bottom: 1px solid #999;
    padding-bottom: 20px;
    margin-bottom: 30px;
}

/* a */
a.link-underline {
    text-decoration: underline;
}

a.link-underline:hover {
    text-decoration: none;
}

/* dl */
.table-type01 th {
    padding-right: 10px;
    white-space: nowrap;
}

.table-type01 th,
.table-type01 td {
    padding-top: 5px;
    vertical-align: top;
    font-size: 1.4em;
    line-height: 1.6em;
}

.table-type01 tr:first-child th,
.table-type01 tr:first-child td {
    padding-top: 0;
}

/* cursor */
.no-cursor {
    cursor: default;
}

/* notice */
.notice {
    color: red;
    margin: 0 0 30px 0;
    text-align: center;
    font-size: 1.4em;
    font-weight: bold;
    line-height: 1.6em;
}

.notice-box {
    border: 2px solid #333;
    padding: 10px 20px;
    display: inline-block;
}

.notice-box p {
    font-size: 1.6em;
    font-weight: bold;
    line-height: 1.8em;
    text-align: center;
}

.marker {
    background: linear-gradient(transparent 60%, #ff6 60%);
}


@media (min-width: 768px) {
    .page-title-wrap {
        display: table;
        position: relative;
        width: 100%;
        height: 250px;
        font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
        background-repeat: no-repeat;
        background-position: 50% 42%;
        background-size: cover;
    }

    /* text */
    .lead-text {
        margin-bottom: 40px;
        font-size: 1.6em;
        line-height: 1.8em;
        text-align: center;
    }

    /* list */
    .image-list {
        margin: -30px 0 0 -30px;
        text-align: center;
    }

    .image-list li {
        width: 210px;
        height: 210px;
        float: none;
        display: inline-block;
        margin: 30px 0 0 30px;
        padding: 0;
        text-align: center !important;
    }

    .image-list li img {
        max-width: 210px;
    }

    /* button */
    .button-type01 {
        width: 300px;
    }

    .button-type01>a {
        font-size: 1.8em;
    }

    .button-type01>a>span {
        font-size: 1.4rem;
    }

    .button-list {
        display: inline-block;
        width: 100%;
        text-align: center;
    }

    .button-list li {
        display: inline-block;
        margin-right: 50px;
        vertical-align: top;
    }

    .button-list li:last-child {
        margin-right: 0;
        margin-bottom: 0;
    }

    /* notice */
    .notice {
        margin: 0 0 40px 0;
        font-size: 1.6em;
        line-height: 1.8em;
    }

    .notice-box {
        padding: 20px 40px;
    }

    .notice-box p {
        font-size: 1.8em;
        line-height: 2em;
    }

}


@media (min-width: 960px) {
    .bxslider>div {
        height: 500px;
        background-size: cover;
    }

    .slider-text {
        text-shadow: 0 0 5px #000;
        font-size: 2.2em;
        line-height: 2em;
    }

    /* DIRECTION CONTROLS (NEXT / PREV) */

    .bx-wrapper .bx-prev {
        left: 0;
        background: url(../images/controls.png) no-repeat 0 -40px;
    }

    .bx-wrapper .bx-next {
        right: 0;
    }

    .bx-wrapper .bx-controls-direction a {
        background-size: 40px;
        margin-top: -20px;
        width: 40px;
        height: 40px;
    }

    .bx-wrapper .bx-prev:hover {
        background-position: 0 -120px;
    }

    .bx-wrapper .bx-next:hover {
        background-position: 0 -80px;
    }


    /* h */
    .content-title01 {
        margin-bottom: 30px;
        font-size: 3em;
        line-height: 1.4em;
    }

    .content-title01>span {
        margin-bottom: 20px;
    }

    .content-title02 span {
        max-width: none;
    }

    .content-title02 span:before {
        left: -65px;
        width: 50px;
    }

    .content-title02 span:after {
        right: -65px;
        width: 50px;
    }

    .arsoajoy .page-title-wrap {
        background-size: auto;
    }

    .page-title-wrap:before {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: rgba(0, 0, 0, 0.5);
        content: "";
        z-index: 1;
    }

    .page-title {
        position: relative;
        display: table-cell;
        text-align: center;
        vertical-align: middle;
        z-index: 2;
    }

    .page-title h1 {
        font-size: 4.4em;
        color: #fff;
    }

    .page-title span {
        display: block;
        font-size: 2rem;
        line-height: 1em;
    }

    /* fluid-wrap */
    .fluid-bg-wrap.forest {
        padding: 60px 0;
    }

    /* google map */
    .ggmap-wrap {
        height: 400px;
        margin-bottom: 20px;
        overflow: hidden;
    }

    .shopinfo>div {
        text-align: left;
        border-left: 1px solid #236640;
    }

    .shopinfo>div:first-child {
        border-left: none;
    }

    /* box */
    .content-box {
        padding-top: 100px;
    }

    .content-box02 {
        padding-top: 60px;
    }

    .content-box-last {
        padding: 100px 0;
    }

    /* margin */
    .mgb-type02 {
        margin-bottom: 0;
    }

    .mgb-type03 {
        margin-bottom: 30px !important;
    }

}

@media (min-width: 960px) {}


/* luce */
.lead-box .lead-text,
.lead-box .content-title03 {
    margin-bottom: 20px;
}