@charset "utf-8";

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

Base

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


main {
    display: block;
}


.wrapper {
    opacity: 0;
    height: 100%;
    overflow: hidden;
    -webkit-transition: opacity .5s;
    transition: opacity .5s;
}
.lteIE9 .wrapper {
    visibility: hidden;
}

.wrapper.ready {
    min-height: 100%;
    /*firefoxで高さが100%以上ないとスクロール要素が取得できないため*/
    border-bottom: 1px solid #262626;
    height: auto;
}
.wrapper.start {
    opacity: 1;
    border: none;
}
.lteIE9 .wrapper.start {
    visibility: visible;
}

.c-body,
.c-body-inner {
    width: 100%;
    height: 100%;
}
.c-body {
    padding-top: 80px;
    overflow: hidden;
}
.c-header.bottom + .c-body {
    padding-top: 0;
}

.c-body.noscroll > .c-body-inner {
    position: fixed;
}

.c-contents {
    padding-bottom: 1px;
    margin-bottom: -1px;
}


/* c-container
--------------------------- */

.c-container {
    margin-top: 110px;
    margin-bottom: 110px;
}

.c-container.space-xs {
    margin-top: 20px;
    margin-bottom: 20px;
}
.c-container.space-s {
    margin-top: 80px;
    margin-bottom: 80px;
}
.c-container.space-m {
    margin-top: 150px;
    margin-bottom: 150px;
}
.c-container.space-l {
    margin-top: 180px;
    margin-bottom: 180px;
}

.c-container.narrow {
    padding-left: 9%;
    padding-right: 9%;
}

.c-container.narrow-s {
    padding-left: 7%;
    padding-right: 7%;
}

.c-container.inner {
    margin-top: 0;
    margin-bottom: 0;
    padding-top: 00px;
    padding-bottom: 70px;
}
.c-container.space-xs.inner {
    padding-top: 60px;
    padding-bottom: 60px;
}
.c-container.space-s.inner {
    padding-top: 80px;
    padding-bottom: 80px;
}
.c-container.space-m.inner {
    padding-top: 150px;
    padding-bottom: 150px;
}
.c-container.space-l.inner {
    padding-top: 180px;
    padding-bottom: 180px;
}


.meister-article img{width:100%;}


/* grid
--------------------------- */

.c-grids:before,
.c-grids:after {
    content: "";
    display: table;
}
.c-grids:after {
    clear: both;
}
.c-grids {
    *zoom: 1;
}
.c-grids-bg1 {
    /* background:url(); */
    background: url(../images/order_bg.jpg) no-repeat center top;
    background-size: cover;
}


.c-grids.gap {
    margin-left: -2%;
    margin-right: -2%;
}
.c-grids.gap-l {
    margin-left: 5.5%;
    margin-right: 5.5%;
}

.c-grid-1of1,
.c-grid-1of2,
.c-grid-1of3,
.c-grid-2of3,
.c-grid-1of4,
.c-grid-2of4,
.c-grid-3of4,
.c-grid-1of5,
.c-grid-2of5,
.c-grid-3of5,
.c-grid-4of5 {
    float: left;
    min-height: 1px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.c-grids.gap .c-grid-1of1,
.c-grids.gap .c-grid-1of2,
.c-grids.gap .c-grid-1of3,
.c-grids.gap .c-grid-2of3,
.c-grids.gap .c-grid-1of4,
.c-grids.gap .c-grid-2of4,
.c-grids.gap .c-grid-3of4,
.c-grids.gap .c-grid-1of5,
.c-grids.gap .c-grid-2of5,
.c-grids.gap .c-grid-3of5,
.c-grids.gap .c-grid-4of5 {
    padding-left: 2%;
    padding-right: 2%;
}

.c-grids.gap-l .c-grid-1of1,
.c-grids.gap-l .c-grid-1of2,
.c-grids.gap-l .c-grid-1of3,
.c-grids.gap-l .c-grid-2of3,
.c-grids.gap-l .c-grid-1of4,
.c-grids.gap-l .c-grid-2of4,
.c-grids.gap-l .c-grid-3of4,
.c-grids.gap-l .c-grid-1of5,
.c-grids.gap-l .c-grid-2of5,
.c-grids.gap-l .c-grid-3of5,
.c-grids.gap-l .c-grid-4of5 {
    padding-left: 3.5%;
    padding-right: 3.5%;
}


.c-grid-1of1 {
    width: 100%;
}
.c-grid-1of2,
.c-grid-2of4 {
    width: 50%;
}
.c-grid-1of3 {
    width: 33.333%;
}

.c-grid-2of3 {
    width: 66.666%;
}
.c-grid-1of4 {
    width: 25%;
}
.c-grid-3of4 {
    width: 75%;
}
.c-grid-1of5 {
    width: 20%;
}
.c-grid-2of5 {
    width: 40%;
}
.c-grid-3of5 {
    width: 60%;
}
.c-grid-4of5 {
    width: 80%;
}








.c-grid_line{
    border-bottom: 0px solid #ccc;
    margin: 50px;
}


.menu_p-img{
    padding: 2%;

}


.menu_a_txtT{
    text-align: left;
    font-size: 1.5rem;
    border-bottom: 1px solid #fff;
}
.menu_a_txtT span{
    font-size: 1rem;
    /* padding-left: 60px; */
    line-height: 1.5;
    background: #fff;
    color: #000;
    padding: 5px;
    margin-left: 50px;
    border-radius: 5px;
}



.menu_a_txt{
    text-align: right;

}


.banquet_box{
    margin-top: 20px;
    border: 1px solid #fff;
    border-radius: 5px;
    padding: 5px;
}

.sub_title{
    font-size: 18px;
}

.sub_title2{
    font-size: 16px;
    /* display:inline-block; */
}

.padding_top_10{
    padding-top: 10px;
}


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

    .c-grid-1of4 {
        width: 33%;
    }


    .c-grids.gap-l {
        margin-left: 1%;
        margin-right: 1%;
    }




    .c-container.narrow {
        padding-left: 5%;
        padding-right: 5%;
    }

    .c-container.narrow-s {
        padding-left: 5%;
        padding-right: 5%;
    }




    .c-grids.gap-l .c-grid-1of1,
    .c-grids.gap-l .c-grid-1of2,
    .c-grids.gap-l .c-grid-1of3,
    .c-grids.gap-l .c-grid-2of3,
    .c-grids.gap-l .c-grid-1of4,
    .c-grids.gap-l .c-grid-2of4,
    .c-grids.gap-l .c-grid-3of4,
    .c-grids.gap-l .c-grid-1of5,
    .c-grids.gap-l .c-grid-2of5,
    .c-grids.gap-l .c-grid-3of5,
    .c-grids.gap-l .c-grid-4of5 {
        padding-left: 2%;
        padding-right: 2%;
    }




}

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

    .c-grid-1of3 {
        width: 100%;
    }

    .c-grid-2of3 {
        width: 100%;
    }


    .c-grid-1of4 {
        width: 100%;
    }

    .c-grid-1of2,
    .c-grid-2of4 {
        width: 100%;
    }

    .m-bottom_20{
        margin-bottom:20px;

    }


    .menu_a_txtT span{
        display:inline-block;
        padding: 2px;
        margin-left:0px;
    }

    .c-grids.gap-l .c-grid-1of1,
    .c-grids.gap-l .c-grid-1of2,
    .c-grids.gap-l .c-grid-1of3,
    .c-grids.gap-l .c-grid-2of3,
    .c-grids.gap-l .c-grid-1of4,
    .c-grids.gap-l .c-grid-2of4,
    .c-grids.gap-l .c-grid-3of4,
    .c-grids.gap-l .c-grid-1of5,
    .c-grids.gap-l .c-grid-2of5,
    .c-grids.gap-l .c-grid-3of5,
    .c-grids.gap-l .c-grid-4of5 {
        padding-left: 6%;
        padding-right: 6%;
    }

    .c-grids.gap-l .c-grid-1of1 img,
    .c-grids.gap-l .c-grid-1of2 img,
    .c-grids.gap-l .c-grid-1of3 img,
    .c-grids.gap-l .c-grid-2of3 img,
    .c-grids.gap-l .c-grid-1of4 img,
    .c-grids.gap-l .c-grid-2of4 img,
    .c-grids.gap-l .c-grid-3of4 img,
    .c-grids.gap-l .c-grid-1of5 img,
    .c-grids.gap-l .c-grid-2of5 img,
    .c-grids.gap-l .c-grid-3of5 img,
    .c-grids.gap-l .c-grid-4of5 img {
        padding-left: 0%;
        padding-right: 0%;
        width: 80%;
        margin: 0 10%;
        padding-top: 2%;
        padding-bottom: 2%;
    }








}



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

    .c-grid-1of3 {
        width: 100%;
    }

    .c-grid-2of3 {
        width: 100%;
    }


    .c-grid-1of4 {
        width: 100%;
    }

    .c-grid-1of2,
    .c-grid-2of4 {
        width: 100%;
    }

    .m-bottom_20{
        margin-bottom:20px;

    }

    .menu_a_txt{
        text-align: left;
    }

    .c-grids.gap-l .c-grid-1of1 img,
    .c-grids.gap-l .c-grid-1of2 img img,
    .c-grids.gap-l .c-grid-1of3 img,
    .c-grids.gap-l .c-grid-2of3 img,
    .c-grids.gap-l .c-grid-1of4 img,
    .c-grids.gap-l .c-grid-2of4 img,
    .c-grids.gap-l .c-grid-3of4 img,
    .c-grids.gap-l .c-grid-1of5 img,
    .c-grids.gap-l .c-grid-2of5 img,
    .c-grids.gap-l .c-grid-3of5 img,
    .c-grids.gap-l .c-grid-4of5 img {
        padding-left: 2%;
        padding-right: 2%;
        width: 80%;
        margin: 0 10%;
    }

    .c-grids.gap-l .c-grid-1of1,
    .c-grids.gap-l .c-grid-1of2,
    .c-grids.gap-l .c-grid-1of3,
    .c-grids.gap-l .c-grid-2of3,
    .c-grids.gap-l .c-grid-1of4,
    .c-grids.gap-l .c-grid-2of4,
    .c-grids.gap-l .c-grid-3of4,
    .c-grids.gap-l .c-grid-1of5,
    .c-grids.gap-l .c-grid-2of5,
    .c-grids.gap-l .c-grid-3of5,
    .c-grids.gap-l .c-grid-4of5 {
        padding-left: 2%;
        padding-right: 2%;
    }





}


.c-grids.inline .c-grid-1of2,
.c-grids.inline .c-grid-1of3,
.c-grids.inline .c-grid-2of3,
.c-grids.inline .c-grid-1of4,
.c-grids.inline .c-grid-2of4,
.c-grids.inline .c-grid-3of4,
.c-grids.inline .c-grid-1of5,
.c-grids.inline .c-grid-2of5,
.c-grids.inline .c-grid-3of5,
.c-grids.inline .c-grid-4of5 {
    float: none;
    display: inline-block;
    vertical-align: top;
}

.c-grids.vcenter .c-grid-1of2,
.c-grids.vcenter .c-grid-1of3,
.c-grids.vcenter .c-grid-2of3,
.c-grids.vcenter .c-grid-1of4,
.c-grids.vcenter .c-grid-2of4,
.c-grids.vcenter .c-grid-3of4,
.c-grids.vcenter .c-grid-1of5,
.c-grids.vcenter .c-grid-2of5,
.c-grids.vcenter .c-grid-3of5,
.c-grids.vcenter .c-grid-4of5 {
    vertical-align: middle;
}



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

Typography

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

.c-txt-left { text-align: left !important; }
.c-txt-right { text-align: right !important; }
.c-txt-center { text-align: center !important; }

.c-txt-lh16 { line-height: 1.6 !important; }
.c-txt-lh18 { line-height: 1.8 !important; }
.c-txt-lh20 { line-height: 2.0 !important; }
.c-txt-lh22 { line-height: 2.2 !important; }

.c-txt-ls1 { letter-spacing: .1em !important; }
.c-txt-ls2 { letter-spacing: .2em !important; }
.c-txt-ls3 { letter-spacing: .3em !important; }

.c-fs-s { font-size: 0.8125rem !important; }
.IE8 .c-fs-s { font-size: 13px !important; }

.c-fs-it { font-style: italic !important; }

strong, em, .c-fw-b { font-weight: 600 !important; }


.ifSp {
    display: none;
}

.ifPc {
    display: block;
}




/* heading
--------------------------- */

.c-title-A {
    font-size: 1.5em; /* 24px */
    letter-spacing: .15em;
    line-height: 1.6;
    text-align: center;
    display: block;
    margin-bottom: 10px;
    /* font-family: "A1明朝"; */
    /* font-family: A1MinchoStd-Bold, serif; */ */
    font-family: A1MinchoStd-Bold, serif;
    font-family: A1MinchoStd-Bold, serif;
    font-family: '游ゴシック','YuGothic','メイリオ','Meiryo','ＭＳ Ｐゴシック',sans-serif;
}
.c-title-A.xsmall {
    font-size: 1.429em; /* 20px */
}
.c-title-A.small {
    font-size: 1.571em; /* 22px */
}
.c-title-A.medium {
    font-size: 2em; /* 28px */
}
.c-title-A.large {
    font-size: 2.286em; /* 32px */
}
.c-title-A.xlarge {
    font-size: 2.714em; /* 38px */
}

.c-title-A.xxlarge {
    font-size: 2.857em; /* 42px */
}

.c-title-A.huge {
    font-size: 3.429em; /* 48px */
}

.c-title-A.xhuge {
    font-size: 3.714em; /* 52px */
}

.c-title-A.left {
    text-align: left;
}

.c-title-A > img {
    width: 128px;
}




.c-line-A:after{
    content: "";
    display: block;
    height: 1px;
    /*background: -moz-linear-gradient(to right, rgb(230, 90, 90), transparent);
    background: -webkit-linear-gradient(to right, rgb(230, 90, 90), transparent);
    background: linear-gradient(to right, rgb(230, 90, 90), transparent);
    */
    background: -moz-linear-gradient(to right, rgb(129, 35, 35), transparent);
    background: -webkit-linear-gradient(to right, rgb(139, 44, 44), transparent);
    background: linear-gradient(to right, rgb(143, 59, 59), transparent);



}

.c-title-A > span {
    color: #999;
    font-size: 0.875rem; /* 14px */
    letter-spacing: .1em;
    /* display: block; */
    margin: 10px 0 30px;
}
.IE8 .c-title-A > span {
    font-size: 14px;
}
.c-title-A.space > span {
    margin-top: 30px;
}

.c-title-A.horizontal > span {
    display: inline-block;
    padding: 0 0 .5em 2em;
    margin-bottom: 0;
    vertical-align: bottom;
}

.c-title-A.diamond,
.c-title-A.diamond-gray {
    position: relative;
    padding-top: 60px;
}

.c-title-A.diamond:before,
.c-title-A.diamond-gray:before {
    content: "";
    width: 12px;
    height: 12px;
    display: block;
    background-color: #EBEBED;
    -webkit-transform-origin: center center;
    -ms-transform-origin: center center;
    transform-origin: center center;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-left: -6px;
    position: absolute;
    left: 50%;
    top: 0;
}

.c-title-A.diamond-gray:before {
    background-color: #d8d8d8;
}

.c-title-en-large {
    color: #D8D8D8;
    font-size: 7.143em;
    line-height: 1;
    letter-spacing: .1em;
    text-align: center;
    margin-bottom: 60px;
}

.c_txt_line-B {
    margin-top: 5px;
    border-bottom: 1px #ccc dashed;
}


.c-color-red{
    color: #6a1900;
}

.c-color-gray{
    color: #999;
}

.c-font-A{
    font-family: A1MinchoStd-Bold, serif; */
}


.c-txt-A {
    font-size: 1.143em;
    text-align: center;
    line-height: 2.2;
}

.c-txt-B {
    font-size: 1.28em;
    line-height: 1.5;
}


.c-txt-A > * + *,
.c-txt-B > * + * {
    margin-top: 2em;
}
.c-txt-A > * + br,
.c-txt-B > * + br,
.c-txt-A > br + *,
.c-txt-B > br + * {
    margin-top: 0;
}



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

Links

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

a {
    color: #404040;
    text-decoration: none;
}

.c-link a,
a.c-link,
.text-set a {
    text-decoration: underline;
}


/* c-button
--------------------------- */

.c-button {
    color: #fff;
    font-size: 0.857em;
    line-height: 1.6;
    text-align: center;
    display: inline-block;
    background-color: #3f3f3f;
    padding: 15px;
    min-width: 150px;
    position: relative;
    overflow: hidden;
}
.c-button.large {
    font-size: 0.929em;
    padding: 20px 30px;
    min-width: 180px;
}

.c-button > span {
    position: relative;
    z-index: 1;
}

.c-button:before {
    content: "";
    width: 100%;
    height: 100%;
    background-color: #262626;
    position: absolute;
    left: 0;
    top: 100%;
    -webkit-transition: -webkit-transform .12s ease-out;
    transition: transform .12s ease-out;
}
.c-button:hover:before {
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%);
}
.IE8 .c-button:hover {
    background-color: #262626;
}

.c-button:after {
    content: "";
    width: 8px;
    height: 14px;
    background: url(../images/sprite1.png) no-repeat -250px 0;
    position: absolute;
    right: 15px;
    top: 50%;
    margin-top: -7px;
    opacity: 0;
    -webkit-transform: translateY(30px);
    -ms-transform: translateY(30px);
    transform: translateY(30px);
    -webkit-transition: all .15s ease-in;
    transition: all .15s ease-in;
}
.c-button:hover:after {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
    -webkit-transition-delay: .1s;
    transition-delay: .1s;
}
.IE8 .c-button:after {
    content: none;
}
.IE8 .c-button:hover:after {
    content: "";
}



/* b-button
--------------------------- */

.b-button {
    color: #fff;
    font-size: 0.857em;
    line-height: 1.6;
    text-align: center;
    display: inline-block;
    background-color: rgba(93, 31, 31, 0.7);
    /* border: 1px solid rgba(93, 31, 31, 0.14); */
    border-radius: 40px;
    padding: 8px 10px;
    min-width: 150px;
    position: relative;
    overflow: hidden;
}
.b-button.large {
    font-size: 0.929em;
    padding: 20px 30px;
    min-width: 180px;
}

.b-button > span {
    position: relative;
    z-index: 1;
    font-size: 15px;
}

.b-button:before {
    content: "";
    width: 100%;
    height: 100%;
    background-color: #810404;
    position: absolute;
    left: 0;
    top: 100%;
    -webkit-transition: -webkit-transform .12s ease-out;
    transition: transform .12s ease-out;
}
.b-button:hover:before {
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%);
}
.IE8 .b-button:hover {
    background-color: #262626;
}

.b-button:after {
    content: "";
    width: 8px;
    height: 14px;
    background: url(../images/sprite1.png) no-repeat -203px 0;
    position: absolute;
    right: 15px;
    top: 50%;
    margin-top: -7px;
    opacity: 0;
    -webkit-transform: translateY(30px);
    -ms-transform: translateY(30px);
    transform: translateY(30px);
    -webkit-transition: all .15s ease-in;
    transition: all .15s ease-in;
}
.b-button:hover:after {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
    -webkit-transition-delay: .1s;
    transition-delay: .1s;
}
.IE8 .b-button:after {
    content: none;
}
.IE8 .b-button:hover:after {
    content: "";
}







/* pagenation
--------------------------- */

.c-pagenation {
    font-style: normal;
    text-align: center;
}

.c-pagenation > a,
.c-pagenation > strong,
.c-pagenation i {
    line-height: 35px;
    display: inline-block;
    vertical-align: middle;
    padding: 10px 25px;
}

.c-pagenation i {
    padding: 7px 0;
}

.c-pagenation > .prev {
    margin-right: -10px;
}
.c-pagenation > .next {
    margin-left: -10px;
}

.c-pagenation > .num + .num {
    border-left: 1px solid #e5e5e5;
}


.c-pagenation strong {
    background-color: #e5e5e5;
}



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

Forms

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

textarea, input, select {
    font-family: "游ゴシック体", "Yu Gothic", YuGothic, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
    font-size: 100%; /* 14px base */
    color: #333;
    letter-spacing: 1px;
}

input[type="text"],
textarea {
    display: block;
    width: 100%;
    height: 3.6em;
    margin: 0;
    padding: 0 10px;
    background-color: rgba(255,255,255,.1);
    border: none;
    border-radius: 2px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-appearance:none;
}
html.IE8 input[type="text"] {
    line-height: 3.6em;
}

textarea {
    padding: 10px;
    max-width: none;
    transition: height .3s;
}

input[type="text"]:focus,
textarea:focus {
    background-color: #f2f2f2;
}
textarea:focus {
    height: 18em;
}

input[type="submit"] {
    background: none;
    border: none;
    -webkit-appearance:none;
}

/*
.c-submitset input[type="submit"]:hover {
background-color: #262626;
}
*/


.c-submit {
    text-align: center;
    display: inline-block;
    background-color: #3f3f3f;
    position: relative;
    overflow: hidden;
}

.c-submit > input {
    color: #fff;
    font-size: 0.929em;
    line-height: 1.6;
    display: inline-block;
    background-color: transparent;
    padding: 20px 30px;
    min-width: 240px;
    cursor: pointer;
    -webkit-transition: background-color .15s;
    transition: background-color .15s;
    position: relative;
    z-index: 1;
}

.c-submit:before {
    content: "";
    width: 100%;
    height: 100%;
    background-color: #262626;
    position: absolute;
    left: 0;
    top: 100%;
    -webkit-transition: -webkit-transform .12s ease-out;
    transition: transform .12s ease-out;
}
.c-submit:hover:before {
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%);
}
.IE8 .c-submit:hover {
    background-color: #262626;
}

.c-submit:after {
    content: "";
    width: 8px;
    height: 14px;
    background: url(../images/sprite1.png) no-repeat -250px 0;
    position: absolute;
    right: 15px;
    top: 50%;
    margin-top: -7px;
    opacity: 0;
    -webkit-transform: translateY(30px);
    -ms-transform: translateY(30px);
    transform: translateY(30px);
    -webkit-transition: all .15s ease-in;
    transition: all .15s ease-in;
}
.c-submit:hover:after {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
    -webkit-transition-delay: .1s;
    transition-delay: .1s;
}
.IE8 .c-submit:after {
    content: none;
}
.IE8 .c-submit:hover:after {
    content: "";
}

.c-submitset {
    text-align: center;
}

.c-submitset > li {
    display: inline-block;
    margin: 0 5px;
}


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

Images

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

img {
    vertical-align: middle;
    /* 	width: 100%; */
    height: auto;
}
img span{
    text-align: center;

}



img.aligncenter,
img.alignnone {
    display: block;
    margin: 0 auto;
}

img.alignleft {
    display: block;
    margin: 0 auto 0 0 !important;
}

img.alignright {
    display: block;
    margin: 0 0 0 auto !important;
}

.c-img-3x4 {
    max-height: 600px;

}
/*
.c-img-3x4 > img {
width: 100% !important;
height: auto !important;
}
*/


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

Common

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

.mt-0 { margin-top: 0 !important; }
.mt-10 { margin-top: 10px !important; }

.mb-0 { margin-bottom: 0 !important; }
.mb-10 { margin-bottom: 10px !important; }
.mb-20 { margin-bottom: 20px !important; }
.mb-30 { margin-bottom: 30px !important; }
.mb-40 { margin-bottom: 40px !important; }
.mb-50 { margin-bottom: 50px !important; }
.mb-60 { margin-bottom: 60px !important; }
.mb-70 { margin-bottom: 70px !important; }
.mb-80 { margin-bottom: 80px !important; }
.mb-90 { margin-bottom: 90px !important; }
.mb-100 { margin-bottom: 100px !important; }
.mb-120 { margin-bottom: 120px !important; }

.pt-0 { padding-top: 0 !important; }

.pb-0 { padding-bottom: 0 !important; }
.pb-10 { padding-bottom: 10px !important; }
.pb-20 { padding-bottom: 20px !important; }
.pb-30 { padding-bottom: 30px !important; }
.pb-40 { padding-bottom: 40px !important; }
.pb-50 { padding-bottom: 50px !important; }
.pb-60 { padding-bottom: 60px !important; }
.pb-70 { padding-bottom: 70px !important; }
.pb-80 { padding-bottom: 80px !important; }
.pb-90 { padding-bottom: 90px !important; }
.pb-100 { padding-bottom: 100px !important; }
.pb-120 { padding-bottom: 120px !important; }


.c-bcg-gray {
    background-color: #f9faf5;
    /* background-color: #262626; */
}

article.c-container.inner.narrow.c-bcg-gray {}

article.c-container.inner.narrow.c-bcg-gray {}

.c-badge {
    position: relative;
    z-index: 1;
    height: 155px;
}
.c-badge1 {
    position: relative;
    z-index: 1;
    /* height: 155px; */
    font-size: 1.5em;
    background: #eee;
    padding: 5px;
    padding-left: 10px;
    border-radius: 5px;
}


.c-badge.large {
    height: 200px;
}
.c-badge.black {
    color: #f2f2f2;
}

.c-badge:before {
    content: "";
    width: 130px;
    height: 130px;
    border-radius: 50%;
    display: block;
    background-color: #fff;
    /*
    -webkit-transform-origin: center center;
    -ms-transform-origin: center center;
    transform-origin: center center;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    */
    margin-left: -55px;
    position: absolute;
    left: 5%;
    top: 10px;
    z-index: -1;
}
.c-badge.large:before {
    width: 150px;
    height: 150px;
    margin-left: -65px;
    top: 30px;
}
.c-badge.gray:before {
    background-color: #EBEBED;
}
.c-badge.black:before {
    background-color: #262626;
    background-color: #333;
}

.c-badge > i {
    color: #999;
    font-size: 0.857em;
    text-align: center;
    width: 10em;
    position: absolute;
    top: 25px;
    left: 50%;
    margin-left: -4em;
}
.c-badge.large > i {
    top: 40px;
}

.c-badge > span {
    /*writing-mode: tb-rl;
    -o-writing-mode: vertical-rl;
    -moz-writing-mode: vertical-rl;
    -webkit-writing-mode: vertical-rl;
    writing-mode: vertical-rl;*/
    /* color: #3f3f3f; */
    font-size: 1.5em;
    text-align: center;
    width: 10em;
    position: absolute;
    top: 60px;
    /* left: 45.5%; */
    margin-left: -4.5em;
}


.c-badge1 > span {
    /*writing-mode: tb-rl;
    -o-writing-mode: vertical-rl;
    -moz-writing-mode: vertical-rl;
    -webkit-writing-mode: vertical-rl;
    writing-mode: vertical-rl;*/
    /* color: #3f3f3f; */
    font-size: 1.5em;
    text-align: center;
    width: 10em;
    position: absolute;
    top: 60px;
    /* left: 45.5%; */
    margin-left: -4.5em;
}



.c-badge.three > span {
    letter-spacing: .1em;
    height: 4em;
    top: 52px;
}
.c-badge.large > span {
    font-size: 1.8em;
    top: 72px;
}

/* writing-modeが使えない場合（firefox）*/
.no-writing-mode .c-badge > span {
    width: 1em;
    line-height: 1.4;
}
.no-writing-mode .c-badge.three > span {
    line-height: 1.1;
}

.c-hero {
    position: relative;
    overflow: hidden;
}

.c-hero_title-A {
    color: #fff;
    letter-spacing: .1em;
    text-align: center;
    border: 2px solid #fff;
    position: absolute;
    z-index: 10;
    top: 50%;
    left: 50%;
    width: 11em;
    padding: 30px 0 10px;
    margin-left: -5.5em;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}
.IE8 #js-page-denshiro .c-hero_title-A {
    margin-top: -120px;
}
.IE8 #js-page-kaba .c-hero_title-A {
    margin-top: -110px;
}

.c-hero_title-A > span {
    writing-mode: tb-rl; /* IE独自仕様 */
    -o-writing-mode: vertical-rl;
    -moz-writing-mode: vertical-rl;
    -webkit-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
    font-size: 3.429em;
    line-height: 1.3;
    letter-spacing: .1em;
    text-align: left;
    display: inline-block;
}

.c-hero_title-A > i {
    display: block;
}

/* writing-modeが使えない場合（firefox）*/
.no-writing-mode .c-hero_title-A {
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 16em;
    margin-left: -8em;
}

.no-writing-mode .c-hero_title-A > span {
    text-align: center;
    letter-spacing: .2em;
    display: block;
    margin: 0 auto 10px;
    height: auto;
    width: 4em;
}


.c-grid-innerbox {
    padding: 5%;
}

.c-dlist > dt {
    width: 13em;
    position: absolute;
    padding: 20px 0 20px 1.5em;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 17px;
}

.c-dlist > dd {
    padding: 20px 1em 20px 14em;
    border-top: 1px solid #e5e5e5;
    font-size: 17px;
}

.c-dlist > dt:first-child + dd {
    border-top: none;
}


.c-link-diamond-np {
    display: block;
    position: relative;
}


.c-dlist_m > dt {
    width: 20em;
    position: absolute;
    padding: 5px 0 5px 0.1em;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 17px;
}

.c-dlist_m > dd {
    padding: 5px 0.1em 5px 19em;
    text-align: right;
    border-top: 1px solid #ddd;
    font-size: 17px;
}

.c-dlist_m > dt:first-child + dd {
    border-top: none;
}




.c-dlist_my > dt {
    width: 29em;
    position: absolute;
    padding: 5px 0 5px 0.1em;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 17px;
}

.c-dlist_my > dd {
    padding: 5px 0.1em 5px 26em;
    text-align: right;
    border-top: 1px solid #e5e5e5;
    font-size: 17px;
}

.c-dlist_my > dt:first-child + dd {
    border-top: none;
}




.c-dlist_banq > dt {
    width: 17em;
    position: absolute;
    padding: 5px 0 5px .5em;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 16px;
}

.c-dlist_banq > dd {
    padding: 5px 1em 5px 5em;
    text-align: left;
    border-top: 1px solid #e5e5e5;
    font-size: 15px;
}

.c-dlist_banq > dt:first-child + dd {
    border-top: none;
}






/* ◇メニュー　ひし形のメニュー アイコン
.c-link-diamond-np:before {
content: "";
width: 36px;
height: 36px;
display: block;
background-color: #fff;
-webkit-transform-origin: center center;
-ms-transform-origin: center center;
transform-origin: center center;
-webkit-transform: rotate(45deg);
-ms-transform: rotate(45deg);
transform: rotate(45deg);
margin-left: -18px;
position: absolute;
z-index: 10;
left: 50%;
top: -18px;
}
.c-link-diamond-np.gray:before {
background-color: #EBEBED;
}

.c-link-diamond-np:after {
content: attr(data-title);
color: #999;
font-size: 0.929em;
line-height: 1;
text-align: center;
width: 3em;
position: absolute;
top: -.5em;
left: 50%;
margin-left: -1.5em;
z-index: 11;
}*/


.IE8 .c-link-diamond-np:before {
    height: 2em;
    top: -2em;
}
.IE8 .c-link-diamond-np:after {
    top: -1.6em;
}


.c-2col {
    position: relative;
}

.c-2col-sub {
    position: fixed;
    width: 25%;
    height: 100%;
    z-index: 1;
    top: 160px;
    left: 9%;
}

.noPosFix .c-2col-sub {
    position: absolute;
    top: 0;
}
.noPosFix .c-header.open + .c-body .c-2col-sub {
    -webkit-transform: translate(0,0);
    -ms-transform: translate(0,0);
    transform: translate(0,0);
}









/* お問合わせ・プライバシー*/



.cp_side {
    /* background: #fcc; */
    margin-bottom: 10px;
}
.cp_main p{
    /* background: #fea; */
    font-size: 1.2em
}


.cp_side,
.cp_main {
    padding: 2%;
    border-radius: 10px
}

.cp_side img{
    width: 30%;
    margin: 0 35%;

}
@media ( min-width : 600px ){
    .cp_contents {
        display: -webkit-flex;
        display: flex;
    }
    .cp_side {
        margin: 0 10px 0 0;
    }

    .cp_side img{
        width: 100%;
        margin: 0;

    }
}










.c-2col-main {
    padding: 4.5em 0 0 31%;
}

.c-shop-txt > dt,
.c-shop-txt > b {
    font-size: 1.071em;
    font-weight: bold;
    line-height: 1.6;
    display: block;
    margin-bottom: 10px;
}

.c-shop-txt > a {
    font-size: 0.857em;
}

.c-page-wrapper {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    padding-top: 80px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    overflow: hidden;
    min-width: 960px;
}
.normalScroll .c-page-wrapper {
    position: relative;
    padding-top: 0;
}

.c-page {
    position: absolute;
    width: 100%;
    height: 100%;
    overflow: hidden;
    -webkit-box-shadow: 0 1px 3px rgba(0,0,0,.2);
    box-shadow: 0 1px 3px rgba(0,0,0,.2);
}
.normalScroll .c-page {
    position: relative;
}

.c-page-inner {
    min-height: 100%;
    background-color: #fff;
}
.c-page-inner.no-minheight {
    min-height: auto;
}

.c-page-cover {
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,.7);
}
.normalScroll .c-page-cover {
    display: none;
}


/* layer
--------------------------- */

.c-layer {
    position: absolute;
    top: 50px;
    left: 0;
    z-index: 200;
    width: 100%;
    min-height: 100%;
    min-width: 960px;
    background-color: #fff;
    opacity: 0;
    -webkit-transition-duration: .15s;
    transition-duration: .15s;
    transitoin-property: top opacity;
}

.c-layer.active {
    top: 0;
    opacity: 1;
    -webkit-transition-duration: .2s;
    transition-duration: .2s;
}

.c-layer-inner {
    position: relative;
    padding: 50px 0 60px;
    height: 100%;
    overflow: hidden;
}

.c-layer_nav > li {
    text-indent: -9999px;
    width: 16px;
    height: 27px;
    background: url(../images/sprite1.png) no-repeat;
    cursor: pointer;
    padding: 20px;
    position: fixed;
    top: 50%;
    margin-top: -18px;
    -webkit-transform: translate3d(0,0,0); /* safariでのチラつきを防ぐ */
}

.c-layer_nav > li.next {
    background-position: -330px 20px;
    right: 40px;
}
.c-layer_nav > li.prev {
    background-position: -280px 20px;
    left: 40px;
}

.c-layer_close {
    text-indent: -9999px;
    width: 60px;
    height: 60px;
    cursor: pointer;
    position: fixed;
    top: 10px;
    right: 10px;
}

.c-layer_close:before,
.c-layer_close:after {
    content: "";
    width: 38px;
    height: 3px;
    background-color: #403F41;
    display: block;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -19px;
}
.c-layer_close:before {
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}
.c-layer_close:after {
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.IE8 .c-layer_close:before,
.IE8 .c-layer_close:after {
    content: none;
}
.IE8 .c-layer_close {
    background: url(../images/sprite1_ie8.png) no-repeat -185px -235px;
}


.c-lang-nav {text-align: center;}

.c-lang-nav > li {
    display: inline-block;
    position: relative;
    z-index: 1;
    padding: 5px;
    font-size: 1.15rem;
    color: #fff;
}

.c-lang-nav > li:first-child:after {
    /*	content: "";
    width: 1px;
    height: 80%;
    background-color: #999;
    position: absolute;
    top: 15%;
    right: 0;
    */
}

.c-lang-nav > li > a {
    font-size: 2.1em;
    font-weight: 600;
    letter-spacing: .1em;
    line-height: 1;
    display: block;
    padding: 3px 10px;
}

.c-lang-nav > li > a.active {
    color: #fff;
}

.c-lang-nav > li > a.active:before {
    /* 　◇　ひし形マーク
    content: "";
    width: 20px;
    height: 20px;
    display: block;
    background-color: #d9d9d9;
    -webkit-transform-origin: center center;
    -ms-transform-origin: center center;
    transform-origin: center center;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-left: -10px;
    position: absolute;
    left: 50%;
    top: 0;
    z-index: -1;
    */
}


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

c-header

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

.c-header {
    width: 100%;
    height: 80px;
    position: fixed;
    z-index: 100;
    /* min-width: 100%; */
    overflow: hidden;
    -webkit-transition: height 0;
    transition: height 0;
    /* overflow: hiddenの関係でdelayする; */
    -webkit-transition-delay: .3s;
    transition-delay: .3s;
    -webkit-transform: translate3d(0,0,0); /* safariでのチラつきを防ぐ */
}
.c-header.open {
    height: 100%;
    -webkit-transition: none;
    transition: none;
}
.noPosFix .c-header {
    position: absolute;
}
.IE8 .c-header.open {
    filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#55000000,endColorstr=#55000000);
}

.c-header.bottom {
    position: absolute;
    bottom: 0;
}
.c-header.bottom.open {
    position: fixed;
}

.c-header.bottom.fix {
    position: fixed;
    bottom: auto;
}

.c-header-cover {
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .4);
    opacity: 0;
    -webkit-transition: opacity .3s;
    transition: opacity .3s;
}
.c-header.open > .c-header-cover {
    opacity: 1;
}

.c-header-inner {
    background-color: #fff;
    width: 100%;
    height: 80px;
    position: absolute;
    -webkit-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
    right: 0;
}

.c-header.bottom > .c-header-inner {
    bottom: 0;
}
.c-header.open > .c-header-inner {
    height: 100px;
    -webkit-transform: translateX(-25%);
    -ms-transform: translateX(-25%);
    transform: translateX(-25%);
}


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

    .c-header.open > .c-header-inner {
        height: 100px;
        -webkit-transform: translateX(-40%);
        -ms-transform: translateX(-40%);
        transform: translateX(-40%);
    }
}



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

    .c-header.open > .c-header-inner {
        height: 100px;
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        transform: translateX(-50%);
    }
}

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

    .c-header.open > .c-header-inner {
        height: 100px;
        -webkit-transform: translateX(-100%);
        -ms-transform: translateX(-100%);
        transform: translateX(-100%);
    }


    .c-badge1 {
        position: relative;
        z-index: 1;
        /* height: 155px; */
        font-size: 1.5em;
        text-align: center;
        margin-bottom: 10px;
    }


}





.IE8 .c-header.open > .c-header-inner {
    margin-left: -25%;
}

.c-header.bottom.fix > .c-header-inner {
    bottom: auto;
}


/* c-header_logo
--------------------------- */

.c-header_logo {
    width: 185px;
    height: 20px;
    display: block;
    position: absolute;
    left: 35px;
    top: 50%;
    margin-top: -15px;
}

.c-header_logo > svg {
    width: 100%;
    height: 100%;
    fill: #1a1a1a;
}

.IE8 .c-header_logo > span {
    text-indent: -9999px;
    display: block;
    width: 185px;
    height: 20px;
    background: url(../images/sprite1_ie8.png) no-repeat 0 -250px;
}


/* c-nav
--------------------------- */

.c-nav {
    position: absolute;
    top: 50%;
    right: 90px;
    -webkit-transition: -webkit-transform .3s;
    transition: transform .3s;
    /* safariでのチラつきを防ぐ */
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
}

.c-header.open .c-nav {
    -webkit-transform: translateX(70px);
    -ms-transform: translateX(70px);
    transform: translateX(70px);
}




.c-nav > li {
    float: left;
}

.c-nav > li > a {
    font-size: 1.071em; /* 15px */
    line-height: 1.6;
    display: block;
    letter-spacing: .3em;
    padding: 10px 15px;
    margin: -1.3em 10px 0;
    position: relative;
}
.c-header.open .c-nav > li > a {
    font-size: 1.143em; /* 16px */
}
/* 
.c-nav > li > a:after {
content: "";
width: 75%;
height: 0;
border-bottom: 1px solid #666;
position: absolute;
bottom: -5px;
left: 11%;
opacity: 0;
-webkit-transition: all .12s ease-out;
transition: all .12s ease-out;
}
.IE8 .c-nav > li > a:after {
content: none;
}
.c-nav > li > a:hover:after,
.c-nav > li > a.active:after {
opacity: 1;
bottom: 5px;
}
.IE8 .c-nav > li > a:hover:after,
.IE8 .c-nav > li > a.active:after {
content: '';
}*/


/*パターン2*/

.c-nav > li {
    float: left;
}

.c-nav > li > a {
    font-size: 1.12em; /* 15px */
    line-height: 1.6;
    display: block;
    letter-spacing: .3em;
    padding: 10px 15px;
    margin: -1.3em 10px 0;
    position: relative;
    font-weight: 800;
    background: #f2f2f2;
    border-radius: 50px;
    font-family: A1MinchoStd-Bold, serif; */
}
.c-header.open .c-nav > li > a {
    font-size: 1.143em; /* 16px */
}

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

    .noPosFix .c-header {
        position: fixed;
    }



    .c-nav > li > a {
        font-size: 0.9em; /* 15px */
        line-height: 1.6;
        display: block;
        letter-spacing: .3em;
        padding: 10px 8px;
        margin: -1.3em 10px 0;
        position: relative;
    }
    .c-header.open .c-nav > li > a {
        font-size: 0.9em; /* 16px */
    }



    .c-lang-nav > li > a {
        font-size: 1.5em;
        font-weight: 600;
    }



}






.c-nav > li > a:after {
    border-bottom: solid 1px #666;
    bottom: 0;
    content: "";
    display: block;
    position: absolute;
    right: 0;
    transition: all .3s ease;
    -webkit-transition: all .3s ease;
    width: 0;
}

.c-nav > li > a:hover::after {
    width: 80%;
    margin: 0 10%;
}




.IE8 .c-nav > li > a:after {
    content: none;
}
.c-nav > li > a:hover:after,
.c-nav > li > a.active:after {
    opacity: 1;
    bottom: 5px;
}
.IE8 .c-nav > li > a:hover:after,
.IE8 .c-nav > li > a.active:after {
    content: '';
}






/* c-nav_sub
--------------------------- */

.c-nav_sub {
    width: 25%;
    height: 100vh;
    position: absolute;
    right: -25%;
    border-left: 1px solid #550000;
    padding: 35px 2%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background-color: #550000;
}


@media only screen and (max-width: 1024px) {
    .c-nav_sub {
        width: 40%;
        height: 100vh;
        right: -40%;
    }

}



@media only screen and (max-width: 800px) {
    .c-nav_sub {
        width: 50%;
        height: 100vh;
        right: -50%;
    }

}
@media only screen and (max-width: 500px) {
    .c-nav_sub {
        width: 100%;
        height: 100vh;
        right: -100%;
    }

}




.c-header.bottom .c-nav_sub {
    bottom: 0;
}
.c-header.bottom.fix .c-nav_sub {
    bottom: auto;
}


.c-nav_others {
    opacity: 0;
    -webkit-transform: translate(100px,0);
    -ms-transform: translate(100px,0);
    transform: translate(100px,0);
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: -webkit-transform opacity;
    transition-property: transform opacity;
    -webkit-transition-delay: .2s;
    transition-delay: .2s;
}

.c-header.open .c-nav_others {
    opacity: 1;
    -webkit-transform: translate(0,0);
    -ms-transform: translate(0,0);
    transform: translate(0,0);
}


.c-nav_tel  {
    color: #fff;
    font-size: 1.6em;
    padding: 3px 10px;
}



.c-nav_others a {
    font-size: 1.1em;
    color: #fff;
    letter-spacing: .15em;
    display: inline-block;
    padding: 3px 10px;
    margin-bottom: 5px;
    -webkit-transition: color .15s;
    transition: color .15s;
    font-weight: 600;
}

.c-nav_others a:hover {
    color: #999;
}

.c-nav_sub .c-nav_facebook {
    color: #ccc;
    font-size: 0.857em; /* 12px */
    font-weight: 600;
    letter-spacing: .15em;
    position: absolute;
    bottom: 70px;
    margin-left: 10px;
}

.c-nav_sub .c-lang-nav {
    position: absolute;
    /* bottom: 35px; */
    text-align: left;
}
.c-nav_sub .c-lang-nav > li > a {
    color: #ccc;
}
.c-nav_sub .c-lang-nav > li > a.active {
    color: #fff;
}
.c-nav_sub .c-lang-nav > li > a.active:before {
    background-color: #666;
}



/* c-nav_trigger
--------------------------- */

.c-nav_trigger {
    text-indent: -9999px;
    width: 60px;
    height: 60px;
    position: absolute;
    right: 10px;
    top: 10px;
    cursor: pointer;
}
.c-nav_trigger:before {
    content: "";
    width: 1px;
    height: 50px;
    background-color: #d8d8d8;
    position: absolute;
    left: -10px;
    top: 5px;
}
.c-header.open .c-nav_trigger {
    background-color: transparent;
}
.c-header.open .c-nav_trigger:before {
    content: none;
}
.c-header.bottom .c-nav_trigger {
    top: auto;
    bottom: 10px;
}

.c-header.bottom.fix .c-nav_trigger {
    top: 10px;
    bottom: auto;
}

.c-nav_trigger > span {
    display: block;
    width: 28px;
    height: 3px;
    background-color: #404040;
    position: absolute;
    top: 50%;
    left: 50%;
    margin: -1px 0 0 -14px;
}
.c-nav_trigger > span:before,
.c-nav_trigger > span:after {
    content: "";
    width: 28px;
    height: 3px;
    background-color: #404040;
    display: block;
    position: absolute;
    left: 50%;
    margin-left: -14px;
    -webkit-transition: background-color .3s, -webkit-transform .3s, top .2s, bottom .2s;
    transition: background-color .3s, transform .3s, top .2s, bottom .2s;
}
.c-nav_trigger > span:before {
    bottom: 11px;
}
.c-nav_trigger > span:after {
    top: 11px;
}

.IE8 .c-nav_trigger > span:before,
.IE8 .c-nav_trigger > span:after {
    display: none;
}

.c-header.open .c-nav_trigger > span {
    background-color: transparent;
}

.c-header.open .c-nav_trigger > span:before {
    background-color: #ccc;
    width: 38px;
    margin-left: -19px;
    bottom: 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}
.c-header.open .c-nav_trigger > span:after {
    background-color: #ccc;
    width: 38px;
    margin-left: -19px;
    top: 0;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.c-nav_trigger:hover > span:before {
    bottom: 7px;
}
.c-nav_trigger:hover > span:after {
    top: 7px;
}

.IE8 .c-nav_trigger > span {
    width: 60px;
    height: 60px;
    background: url(../images/sprite1_ie8.png) no-repeat 16px 22px;
    top: 0;
    left: 0;
    margin-left: 0;
}
.IE8 .c-header.open .c-nav_trigger > span {
    background-position: -35px 15px;
}



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

c-footer

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

.c-footer {
    background-color: #540800;
    padding: 60px 8%;
    position: relative;
    z-index: 90;
    -webkit-transform: translate3d(0,0,0); /* safariでのチラつきを防ぐ */
}




.c-footer_logo > img {
    width: 252px;
    height: auto;
}


.c-footer_logo > svg {
    width: 190px;
    height: 37px;
    fill: #e5e5e5;
}

.IE8 .c-footer_logo > span {
    text-indent: -9999px;
    display: block;
    width: 190px;
    height: 37px;
    background: url(../images/sprite1_ie8.png) no-repeat -100px 0;
}

.c-footer_copyright {
    color: #fff;
    font-size: 1em; /* 11px */
    display: block;
    margin-top: 10px;
}

.c-footer_nav {
    position: relative;
}

.c-footer_nav_item {
    letter-spacing: 2px;
    line-height: 1.4;
    margin-bottom: -1em;
}

.c-footer_nav_item > li {
    margin-bottom: 2em;
}

.c-footer_nav_item > li > a {
    color: #fefefe;
    font-size: 0.929em; /* 13px */
    display: inline-block;
    padding: .25em 10px .25em 18px;
    position: relative;
    -webkit-transition: color .15s;
    transition: color .15s;
}
.c-footer_nav_item > li > a:hover {
    color: #ccc;
}

.c-footer_nav_item > li > a:before {
    content: "◆";
    width: 6px;
    height: 6px;
    border-radius: 50%;
    position: absolute;
    left: 0;
    top: 25%;
    margin-top: -3px;
    /* background-color: #666; */
}

.c-footer_phone {
    color: #fff;
    font-size: 1.6em; /* 12px */
    letter-spacing: .1em;
    /* position: absolute; */
    /* right: 0; */
    /* margin-top: -5px; */
    -webkit-transition: color .15s;
    transition: color .15s;
}
.c-footer_phone:hover {
    color: #e6e6e6;
}
.c-footer_phone:after {
    content: "";
    width: 106%;
    height: 1px;
    background-color: #fff;
    position: absolute;
    bottom: -3px;
    left: -3%;
}


.c-footer_totop {
    /* position: absolute; */
    bottom: 20px;
    right: 1em;
    position: fixed;
    z-index:1;
}

.c-footer_totop > span {
    text-indent: -9999px;
    display: block;
    width: 20px;
    height: 10px;
    margin: 10px;
    background: url(../images/sprite1.png) no-repeat 0 0;
}

.c-footer_sns {
    color:#fff;
    position: absolute;
    right: 110px;
    top: 10px;
}

.c-footer_sns ul li{ 	
    display: inline;
}

.c-footer_sns li{ 	
    padding: 5px; 
}

.c-footer_sns a{
    color:#fff;
    font-size: 22px;
}

.c-footer_sns li > a:hover {
    color: #ccc;
}




#page-top {
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index:1;
    line-height: 0.8em;
}
#page-top a {
    text-decoration: none;
    width: 100px;
    text-align:center;
    display: block;
    font-size: 1.2em;
    color: #ccc;
}
#page-top a:hover {
    text-decoration: none;
    opacity: 0.6; 

}

#page-top span {
    font-size: 0.6em;
    line-height: 0.6em;
}




/* ----- .infoBox ----- */ 
/* ----- .infoBox ----- */ 
#yoyaku .infoBox { display:inline-block; margin:0 20%; width:60%; padding:5px 2.5%;}
#yoyaku .infoBox:after { position:absolute; top:0; right:0; bottom:0; width:0; content:""; border-right:#ededed 1px solid; z-index:0; }
#yoyaku .infoBox:last-child:after { display:none;}

/* .txtArea */ 
#yoyaku .aboutBox .txtArea { margin-top:20px; }
#yoyaku .aboutBox h1 { width:100%; height:85px; background:url(../images/logoFooter_sp.png) center center no-repeat; background-size:95px 85px; margin-top:-20px; }
#yoyaku .aboutBox p { font-size:12px; text-indent:-0.5em;margin-top:-0.5em; }

/* .contactBox */ 
#yoyaku .contactBox .imgArea { float:left; width:30%; display:none; }
#yoyaku .contactBox .txtArea { float:right; width:62.5%; width:100%; }
#yoyaku .contactBox h4 {font-size: 20px;font-weight:normal;line-height:2.2;letter-spacing: 1px;margin-top:-0.5em;text-align:center;}
#yoyaku .contactBox h3 {font-size: 20px;font-weight:normal;line-height:2.2;letter-spacing: 1px;margin-top:-0.5em;text-align:center;}
/* .contactBox ul */ 
#yoyaku .contactBox ul { }
#yoyaku .contactBox ul li {display:block;margin: 5px 0 20px;text-align:center;position:relative;z-index:1;}
#yoyaku .contactBox ul li a,
#yoyaku .contactBox ul li span { display:block; line-height:50px; position:relative; z-index:2;}
#yoyaku .contactBox ul li .tel {color: #fff;border: #fefefe 1px solid;font-size: 26px;font-weight:600;letter-spacing:2px;}
#yoyaku .contactBox ul li .tel:before {position:absolute;top:0;left: 0px;bottom:0;width: 0px;content:"";/* background:url(../images/telIcon.png) left center no-repeat; */}

/* .mail */ 
#yoyaku .contactBox ul li .mail {color: #fff;border: #fff 1px solid;font-size: 18px;font-weight:500;letter-spacing:1px;}
#yoyaku .contactBox ul li .mail:before { /*position:absolute; top:0; left:21px; bottom:0; width:25px; font-size:20px; text-align:left; font-family: 'themify'; content: "\e75a"; font-weight:normal;*/  }
#yoyaku .contactBox ul li .mail:hover { color:#fefefe; background:#999; border:#999 1px solid;}
#yoyaku .contactBox ul li .mail:after { position:absolute; top:0; bottom:0; right:15px; font-size:10px; font-family: 'themify'; content: "\e649"; font-weight:normal; opacity:0; -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all 0.3s ease;}
#yoyaku .contactBox ul li .mail:hover:after { opacity:1;-webkit-transform: translate(5px, 0px);-moz-transform: translate(5px, 0px);-o-transform: translate(5px, 0px);-ms-transform: translate(5px, 0px);transform: translate(5px, 0px); }





text-align: right;





@media screen and (max-width: 479px) {
    #page-top {
        position: fixed;
        bottom: 20px;
        right: -15px;
        z-index: 1;
        line-height: 0.8em;
    }
}





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

    .c-footer_nav {
        padding-left: 3%;
    }

    .c-footer {
        padding: 60px 3%;
    }

}


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



    .ifPc {
        display: none;
    }
}






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

    .c-nav {
        display:none;
    }

    .c-footer_nav {
        padding-left: 10%;
    }


    .@charset "utf-8";

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

    Base

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

    body {
        font-family: 'Open Sans', Arial, Roboto, "Droid Sans", "游ゴシック体", "Yu Gothic", YuGothic, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
        font-family: A1MinchoStd-Bold, serif;
        font-size: 87.5%; /* 14px base */
        line-height: 2;
        letter-spacing: 1px;
        text-align: justify;
        text-justify: inter-ideograph;
        color: #404040;
        background-color: #fff;
        /* safari5.1系で一部文字が（transform 3Dの影響で）かすれるのを防ぐため　*/
        -webkit-font-smoothing: subpixel-antialiased;
        -webkit-tap-highlight: rgba(0,0,0,0);
    }
    html.IE8 body {
        font-family: 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
        font-family: A1MinchoStd-Bold, serif;
    }


    /* 日本語 A1明朝（ウェブフォント） */
    .c-title-A,
    .c-lead-A,
    .c-badge > span,
    .c-hero_title-A > span,
    .collection-lineup a,
    .c-wfont {
        font-family: "A1明朝";
        font-family: A1MinchoStd-Bold, serif;
        /* font-style: normal; */
    }
    .lteIE9 .c-hero_title-A > span {
        font-family: "Times New Roman", '游明朝', 'Yu Mincho', YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    }

    /* 日本語 秀英角ゴシック銀 L（ウェブフォント） */
    .c-nav,
    .c-nav_others,
    .c-footer_nav,
    .shop-header_nav {
        font-family: "秀英角ゴシック銀 L";
        font-family: A1MinchoStd-Bold, serif;
        /*font-family: ShueiGoGinStd-L, serif;*/
    }

    /* 欧文 Times（ローカルフォント） */
    .c-title-A > span,
    .c-title-en-large,
    .c-badge > i,
    .c-hero_title-A,
    .c-link-diamond-np:after,
    /* .c-footer_copyright, */
    .c-pagenation,
    .top-news_list a > span,
    .denshiro-concept_point .c-title-A:after,
    .collection-nav_link:after,
    .contact-form > dt,
    .c-serif {
        font-family: "Times New Roman", '游明朝', 'Yu Mincho', YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        /* 	font-style: italic;*/
    }

    /* Micro clearfix */
    .cf:before,
    .cf:after {
        content: "";
        display: table;
    }
    .cf:after {
        clear: both;
    }
    .cf {
        *zoom: 1;
    }


    .c-white{
        /* color: #fff; */
    }



    main {
        display: block;
    }

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

    Layouts

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

    html, body {
        height: 100%;
    }
    body {
        //	overflow-x: hidden;
        overflow-y: scroll !important;
    }

    .wrapper {
        opacity: 0;
        height: 100%;
        overflow: hidden;
        -webkit-transition: opacity .5s;
        transition: opacity .5s;
    }
    .lteIE9 .wrapper {
        visibility: hidden;
    }

    .wrapper.ready {
        min-height: 100%;
        /*firefoxで高さが100%以上ないとスクロール要素が取得できないため*/
        border-bottom: 1px solid #262626;
        height: auto;
    }
    .wrapper.start {
        opacity: 1;
        border: none;
    }
    .lteIE9 .wrapper.start {
        visibility: visible;
    }

    .c-body,
    .c-body-inner {
        width: 100%;
        height: 100%;
    }
    .c-body {
        padding-top: 80px;
        overflow: hidden;
    }
    .c-header.bottom + .c-body {
        padding-top: 0;
    }

    .c-body.noscroll > .c-body-inner {
        position: fixed;
    }

    .c-contents {
        padding-bottom: 1px;
        margin-bottom: -1px;
    }


    /* c-container
    --------------------------- */

    .c-container {
        margin-top: 110px;
        margin-bottom: 110px;
    }

    .c-container.space-xs {
        margin-top: 20px;
        margin-bottom: 20px;
    }
    .c-container.space-s {
        margin-top: 80px;
        margin-bottom: 80px;
    }
    .c-container.space-m {
        margin-top: 150px;
        margin-bottom: 150px;
    }
    .c-container.space-l {
        margin-top: 180px;
        margin-bottom: 180px;
    }

    .c-container.narrow {
        padding-left: 9%;
        padding-right: 9%;
    }

    .c-container.narrow-s {
        padding-left: 7%;
        padding-right: 7%;
    }

    .c-container.inner {
        margin-top: 0;
        margin-bottom: 0;
        padding-top: 70px;
        padding-bottom: 70px;
    }
    .c-container.space-xs.inner {
        padding-top: 60px;
        padding-bottom: 60px;
    }
    .c-container.space-s.inner {
        padding-top: 80px;
        padding-bottom: 80px;
    }
    .c-container.space-m.inner {
        padding-top: 150px;
        padding-bottom: 150px;
    }
    .c-container.space-l.inner {
        padding-top: 180px;
        padding-bottom: 180px;
    }


    /* grid
    --------------------------- */

    .c-grids:before,
    .c-grids:after {
        content: "";
        display: table;
    }
    .c-grids:after {
        clear: both;
    }
    .c-grids {
        *zoom: 1;
    }
    .c-grids-bg1 {
        /* background:url(); */
        background: url(../images/order_bg.jpg) no-repeat center top;
        background-size: cover;
    }


    .c-grids.gap {
        margin-left: -2%;
        margin-right: -2%;
    }
    .c-grids.gap-l {
        margin-left: 5.5%;
        margin-right: 5.5%;
    }

    .c-grid-1of1,
    .c-grid-1of2,
    .c-grid-1of3,
    .c-grid-2of3,
    .c-grid-1of4,
    .c-grid-2of4,
    .c-grid-3of4,
    .c-grid-1of5,
    .c-grid-2of5,
    .c-grid-3of5,
    .c-grid-4of5 {
        float: left;
        min-height: 1px;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
    }

    .c-grids.gap .c-grid-1of1,
    .c-grids.gap .c-grid-1of2,
    .c-grids.gap .c-grid-1of3,
    .c-grids.gap .c-grid-2of3,
    .c-grids.gap .c-grid-1of4,
    .c-grids.gap .c-grid-2of4,
    .c-grids.gap .c-grid-3of4,
    .c-grids.gap .c-grid-1of5,
    .c-grids.gap .c-grid-2of5,
    .c-grids.gap .c-grid-3of5,
    .c-grids.gap .c-grid-4of5 {
        padding-left: 2%;
        padding-right: 2%;
    }

    .c-grids.gap-l .c-grid-1of1,
    .c-grids.gap-l .c-grid-1of2,
    .c-grids.gap-l .c-grid-1of3,
    .c-grids.gap-l .c-grid-2of3,
    .c-grids.gap-l .c-grid-1of4,
    .c-grids.gap-l .c-grid-2of4,
    .c-grids.gap-l .c-grid-3of4,
    .c-grids.gap-l .c-grid-1of5,
    .c-grids.gap-l .c-grid-2of5,
    .c-grids.gap-l .c-grid-3of5,
    .c-grids.gap-l .c-grid-4of5 {
        padding-left: 3.5%;
        padding-right: 3.5%;
    }


    .c-grid-1of1 {
        width: 100%;
    }
    .c-grid-1of2,
    .c-grid-2of4 {
        width: 50%;
    }
    .c-grid-1of3 {
        width: 33.333%;
    }

    .c-grid-2of3 {
        width: 66.666%;
    }
    .c-grid-1of4 {
        width: 25%;
    }
    .c-grid-3of4 {
        width: 75%;
    }
    .c-grid-1of5 {
        width: 20%;
    }
    .c-grid-2of5 {
        width: 40%;
    }
    .c-grid-3of5 {
        width: 60%;
    }
    .c-grid-4of5 {
        width: 80%;
    }


    .c-grid_line{
        border-bottom: 0px solid #ccc;
        margin: 50px;
    }


    .menu_p-img{
        padding: 2%;

    }


    .menu_a_txtT{
        text-align: left;
        font-size: 1.5rem;
        border-bottom: 1px solid #fff;
    }
    .menu_a_txtT span{
        font-size: 1rem;
        /* padding-left: 60px; */
        line-height: 1.5;
        background: #fff;
        color: #000;
        padding: 5px;
        margin-left: 50px;
        border-radius: 5px;
    }



    .menu_a_txt{
        text-align: right;

    }


    .banquet_box{
        margin-top: 20px;
        border: 1px solid #fff;
        border-radius: 5px;
        padding: 5px;
    }

    .sub_title{
        font-size: 18px;
    }

    .sub_title2{
        font-size: 16px;
        /* display:inline-block; */
    }

    .padding_top_10{
        padding-top: 10px;
    }


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

        .c-grid-1of4 {
            width: 33%;
        }


        .c-grids.gap-l {
            margin-left: 1%;
            margin-right: 1%;
        }




        .c-container.narrow {
            padding-left: 5%;
            padding-right: 5%;
        }

        .c-container.narrow-s {
            padding-left: 5%;
            padding-right: 5%;
        }




        .c-grids.gap-l .c-grid-1of1,
        .c-grids.gap-l .c-grid-1of2,
        .c-grids.gap-l .c-grid-1of3,
        .c-grids.gap-l .c-grid-2of3,
        .c-grids.gap-l .c-grid-1of4,
        .c-grids.gap-l .c-grid-2of4,
        .c-grids.gap-l .c-grid-3of4,
        .c-grids.gap-l .c-grid-1of5,
        .c-grids.gap-l .c-grid-2of5,
        .c-grids.gap-l .c-grid-3of5,
        .c-grids.gap-l .c-grid-4of5 {
            padding-left: 2%;
            padding-right: 2%;
        }




    }

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

        .c-grid-1of3 {
            width: 100%;
        }

        .c-grid-2of3 {
            width: 100%;
        }


        .c-grid-1of4 {
            width: 100%;
        }

        .c-grid-1of2,
        .c-grid-2of4 {
            width: 100%;
        }

        .m-bottom_20{
            margin-bottom:20px;

        }


        .menu_a_txtT span{
            display:inline-block;
            padding: 2px;
            margin-left:0px;
        }

        .c-grids.gap-l .c-grid-1of1,
        .c-grids.gap-l .c-grid-1of2,
        .c-grids.gap-l .c-grid-1of3,
        .c-grids.gap-l .c-grid-2of3,
        .c-grids.gap-l .c-grid-1of4,
        .c-grids.gap-l .c-grid-2of4,
        .c-grids.gap-l .c-grid-3of4,
        .c-grids.gap-l .c-grid-1of5,
        .c-grids.gap-l .c-grid-2of5,
        .c-grids.gap-l .c-grid-3of5,
        .c-grids.gap-l .c-grid-4of5 {
            padding-left: 6%;
            padding-right: 6%;
        }

        .c-grids.gap-l .c-grid-1of1 img,
        .c-grids.gap-l .c-grid-1of2 img,
        .c-grids.gap-l .c-grid-1of3 img,
        .c-grids.gap-l .c-grid-2of3 img,
        .c-grids.gap-l .c-grid-1of4 img,
        .c-grids.gap-l .c-grid-2of4 img,
        .c-grids.gap-l .c-grid-3of4 img,
        .c-grids.gap-l .c-grid-1of5 img,
        .c-grids.gap-l .c-grid-2of5 img,
        .c-grids.gap-l .c-grid-3of5 img,
        .c-grids.gap-l .c-grid-4of5 img {
            padding-left: 0%;
            padding-right: 0%;
            width: 80%;
            margin: 0 10%;
            padding-top: 2%;
            padding-bottom: 2%;
        }








    }



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

        .c-grid-1of3 {
            width: 100%;
        }

        .c-grid-2of3 {
            width: 100%;
        }


        .c-grid-1of4 {
            width: 100%;
        }

        .c-grid-1of2,
        .c-grid-2of4 {
            width: 100%;
        }

        .m-bottom_20{
            margin-bottom:20px;

        }

        .menu_a_txt{
            text-align: left;
        }

        .c-grids.gap-l .c-grid-1of1 img,
        .c-grids.gap-l .c-grid-1of2 img img,
        .c-grids.gap-l .c-grid-1of3 img,
        .c-grids.gap-l .c-grid-2of3 img,
        .c-grids.gap-l .c-grid-1of4 img,
        .c-grids.gap-l .c-grid-2of4 img,
        .c-grids.gap-l .c-grid-3of4 img,
        .c-grids.gap-l .c-grid-1of5 img,
        .c-grids.gap-l .c-grid-2of5 img,
        .c-grids.gap-l .c-grid-3of5 img,
        .c-grids.gap-l .c-grid-4of5 img {
            padding-left: 2%;
            padding-right: 2%;
            width: 80%;
            margin: 0 10%;
        }

        .c-grids.gap-l .c-grid-1of1,
        .c-grids.gap-l .c-grid-1of2,
        .c-grids.gap-l .c-grid-1of3,
        .c-grids.gap-l .c-grid-2of3,
        .c-grids.gap-l .c-grid-1of4,
        .c-grids.gap-l .c-grid-2of4,
        .c-grids.gap-l .c-grid-3of4,
        .c-grids.gap-l .c-grid-1of5,
        .c-grids.gap-l .c-grid-2of5,
        .c-grids.gap-l .c-grid-3of5,
        .c-grids.gap-l .c-grid-4of5 {
            padding-left: 2%;
            padding-right: 2%;
        }





    }


    .c-grids.inline .c-grid-1of2,
    .c-grids.inline .c-grid-1of3,
    .c-grids.inline .c-grid-2of3,
    .c-grids.inline .c-grid-1of4,
    .c-grids.inline .c-grid-2of4,
    .c-grids.inline .c-grid-3of4,
    .c-grids.inline .c-grid-1of5,
    .c-grids.inline .c-grid-2of5,
    .c-grids.inline .c-grid-3of5,
    .c-grids.inline .c-grid-4of5 {
        float: none;
        display: inline-block;
        vertical-align: top;
    }

    .c-grids.vcenter .c-grid-1of2,
    .c-grids.vcenter .c-grid-1of3,
    .c-grids.vcenter .c-grid-2of3,
    .c-grids.vcenter .c-grid-1of4,
    .c-grids.vcenter .c-grid-2of4,
    .c-grids.vcenter .c-grid-3of4,
    .c-grids.vcenter .c-grid-1of5,
    .c-grids.vcenter .c-grid-2of5,
    .c-grids.vcenter .c-grid-3of5,
    .c-grids.vcenter .c-grid-4of5 {
        vertical-align: middle;
    }



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

    Typography

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

    .c-txt-left { text-align: left !important; }
    .c-txt-right { text-align: right !important; }
    .c-txt-center { text-align: center !important; }

    .c-txt-lh16 { line-height: 1.6 !important; }
    .c-txt-lh18 { line-height: 1.8 !important; }
    .c-txt-lh20 { line-height: 2.0 !important; }
    .c-txt-lh22 { line-height: 2.2 !important; }

    .c-txt-ls1 { letter-spacing: .1em !important; }
    .c-txt-ls2 { letter-spacing: .2em !important; }
    .c-txt-ls3 { letter-spacing: .3em !important; }

    .c-fs-s { font-size: 0.8125rem !important; }
    .IE8 .c-fs-s { font-size: 13px !important; }

    .c-fs-it { font-style: italic !important; }

    strong, em, .c-fw-b { font-weight: 600 !important; }


    .ifSp {
        display: none;
    }

    .ifPc {
        display: block;
    }




    /* heading
    --------------------------- */

    .c-title-A {
        font-size: 1.5em; /* 24px */
        letter-spacing: .15em;
        line-height: 1.6;
        text-align: center;
        display: block;
        margin-bottom: 10px;
        /* font-family: "A1明朝"; */
        /* font-family: A1MinchoStd-Bold, serif; */ */
        font-family: A1MinchoStd-Bold, serif;
        font-family: A1MinchoStd-Bold, serif;
    }
    .c-title-A.xsmall {
        font-size: 1.429em; /* 20px */
    }
    .c-title-A.small {
        font-size: 1.571em; /* 22px */
    }
    .c-title-A.medium {
        font-size: 2em; /* 28px */
    }
    .c-title-A.large {
        font-size: 2.286em; /* 32px */
    }
    .c-title-A.xlarge {
        font-size: 2.714em; /* 38px */
    }

    .c-title-A.xxlarge {
        font-size: 2.857em; /* 42px */
    }

    .c-title-A.huge {
        font-size: 3.429em; /* 48px */
    }

    .c-title-A.xhuge {
        font-size: 3.714em; /* 52px */
    }

    .c-title-A.left {
        text-align: left;
    }

    .c-title-A > img {
        width: 128px;
    }




    .c-line-A:after{
        content: "";
        display: block;
        height: 1px;
        /*background: -moz-linear-gradient(to right, rgb(230, 90, 90), transparent);
        background: -webkit-linear-gradient(to right, rgb(230, 90, 90), transparent);
        background: linear-gradient(to right, rgb(230, 90, 90), transparent);
        */
        background: -moz-linear-gradient(to right, rgb(129, 35, 35), transparent);
        background: -webkit-linear-gradient(to right, rgb(139, 44, 44), transparent);
        background: linear-gradient(to right, rgb(143, 59, 59), transparent);



    }

    .c-title-A > span {
        color: #999;
        font-size: 0.875rem; /* 14px */
        letter-spacing: .1em;
        /* display: block; */
        margin: 10px 0 30px;
    }
    .IE8 .c-title-A > span {
        font-size: 14px;
    }
    .c-title-A.space > span {
        margin-top: 30px;
    }

    .c-title-A.horizontal > span {
        display: inline-block;
        padding: 0 0 .5em 2em;
        margin-bottom: 0;
        vertical-align: bottom;
    }

    .c-title-A.diamond,
    .c-title-A.diamond-gray {
        position: relative;
        padding-top: 60px;
    }

    .c-title-A.diamond:before,
    .c-title-A.diamond-gray:before {
        content: "";
        width: 12px;
        height: 12px;
        display: block;
        background-color: #EBEBED;
        -webkit-transform-origin: center center;
        -ms-transform-origin: center center;
        transform-origin: center center;
        -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        transform: rotate(45deg);
        margin-left: -6px;
        position: absolute;
        left: 50%;
        top: 0;
    }

    .c-title-A.diamond-gray:before {
        background-color: #d8d8d8;
    }

    .c-title-en-large {
        color: #D8D8D8;
        font-size: 7.143em;
        line-height: 1;
        letter-spacing: .1em;
        text-align: center;
        margin-bottom: 60px;
    }

    .c_txt_line-B {
        margin-top: 5px;
        border-bottom: 1px #ccc dashed;
    }


    .c-color-red{
        color: #6a1900;
    }

    .c-color-gray{
        color: #999;
    }

    .c-font-A{
        font-family: A1MinchoStd-Bold, serif; */
    }


    .c-txt-A {
        font-size: 1.143em;
        text-align: center;
        line-height: 2.2;
    }

    .c-txt-B {
        font-size: 1.28em;
        line-height: 1.5;
    }


    .c-txt-A > * + *,
    .c-txt-B > * + * {
        margin-top: 2em;
    }
    .c-txt-A > * + br,
    .c-txt-B > * + br,
    .c-txt-A > br + *,
    .c-txt-B > br + * {
        margin-top: 0;
    }



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

    Links

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

    a {
        color: #404040;
        text-decoration: none;
    }

    .c-link a,
    a.c-link,
    .text-set a {
        text-decoration: underline;
    }


    /* c-button
    --------------------------- */

    .c-button {
        color: #fff;
        font-size: 0.857em;
        line-height: 1.6;
        text-align: center;
        display: inline-block;
        background-color: #3f3f3f;
        padding: 15px;
        min-width: 150px;
        position: relative;
        overflow: hidden;
    }
    .c-button.large {
        font-size: 0.929em;
        padding: 20px 30px;
        min-width: 180px;
    }

    .c-button > span {
        position: relative;
        z-index: 1;
    }

    .c-button:before {
        content: "";
        width: 100%;
        height: 100%;
        background-color: #262626;
        position: absolute;
        left: 0;
        top: 100%;
        -webkit-transition: -webkit-transform .12s ease-out;
        transition: transform .12s ease-out;
    }
    .c-button:hover:before {
        -webkit-transform: translateY(-100%);
        -ms-transform: translateY(-100%);
        transform: translateY(-100%);
    }
    .IE8 .c-button:hover {
        background-color: #262626;
    }

    .c-button:after {
        content: "";
        width: 8px;
        height: 14px;
        background: url(../images/sprite1.png) no-repeat -250px 0;
        position: absolute;
        right: 15px;
        top: 50%;
        margin-top: -7px;
        opacity: 0;
        -webkit-transform: translateY(30px);
        -ms-transform: translateY(30px);
        transform: translateY(30px);
        -webkit-transition: all .15s ease-in;
        transition: all .15s ease-in;
    }
    .c-button:hover:after {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
        -webkit-transition-delay: .1s;
        transition-delay: .1s;
    }
    .IE8 .c-button:after {
        content: none;
    }
    .IE8 .c-button:hover:after {
        content: "";
    }



    /* b-button
    --------------------------- */

    .b-button {
        color: #fff;
        font-size: 0.857em;
        line-height: 1.6;
        text-align: center;
        display: inline-block;
        background-color: rgba(93, 31, 31, 0.7);
        /* border: 1px solid rgba(93, 31, 31, 0.14); */
        border-radius: 40px;
        padding: 8px 10px;
        min-width: 150px;
        position: relative;
        overflow: hidden;
    }
    .b-button.large {
        font-size: 0.929em;
        padding: 20px 30px;
        min-width: 180px;
    }

    .b-button > span {
        position: relative;
        z-index: 1;
        font-size: 15px;
    }

    .b-button:before {
        content: "";
        width: 100%;
        height: 100%;
        background-color: #810404;
        position: absolute;
        left: 0;
        top: 100%;
        -webkit-transition: -webkit-transform .12s ease-out;
        transition: transform .12s ease-out;
    }
    .b-button:hover:before {
        -webkit-transform: translateY(-100%);
        -ms-transform: translateY(-100%);
        transform: translateY(-100%);
    }
    .IE8 .b-button:hover {
        background-color: #262626;
    }

    .b-button:after {
        content: "";
        width: 8px;
        height: 14px;
        background: url(../images/sprite1.png) no-repeat -203px 0;
        position: absolute;
        right: 15px;
        top: 50%;
        margin-top: -7px;
        opacity: 0;
        -webkit-transform: translateY(30px);
        -ms-transform: translateY(30px);
        transform: translateY(30px);
        -webkit-transition: all .15s ease-in;
        transition: all .15s ease-in;
    }
    .b-button:hover:after {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
        -webkit-transition-delay: .1s;
        transition-delay: .1s;
    }
    .IE8 .b-button:after {
        content: none;
    }
    .IE8 .b-button:hover:after {
        content: "";
    }







    /* pagenation
    --------------------------- */

    .c-pagenation {
        font-style: normal;
        text-align: center;
    }

    .c-pagenation > a,
    .c-pagenation > strong,
    .c-pagenation i {
        line-height: 35px;
        display: inline-block;
        vertical-align: middle;
        padding: 10px 25px;
    }

    .c-pagenation i {
        padding: 7px 0;
    }

    .c-pagenation > .prev {
        margin-right: -10px;
    }
    .c-pagenation > .next {
        margin-left: -10px;
    }

    .c-pagenation > .num + .num {
        border-left: 1px solid #e5e5e5;
    }


    .c-pagenation strong {
        background-color: #e5e5e5;
    }



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

    Forms

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

    textarea, input, select {
        font-family: "游ゴシック体", "Yu Gothic", YuGothic, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
        font-size: 100%; /* 14px base */
        color: #333;
        letter-spacing: 1px;
    }

    input[type="text"],
    textarea {
        display: block;
        width: 100%;
        height: 3.6em;
        margin: 0;
        padding: 0 10px;
        background-color: rgba(255,255,255,.1);
        border: none;
        border-radius: 2px;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        -webkit-appearance:none;
    }
    html.IE8 input[type="text"] {
        line-height: 3.6em;
    }

    textarea {
        padding: 10px;
        max-width: none;
        transition: height .3s;
    }

    input[type="text"]:focus,
    textarea:focus {
        background-color: #f2f2f2;
    }
    textarea:focus {
        height: 18em;
    }

    input[type="submit"] {
        background: none;
        border: none;
        -webkit-appearance:none;
    }

    /*
    .c-submitset input[type="submit"]:hover {
    background-color: #262626;
}
    */


    .c-submit {
        text-align: center;
        display: inline-block;
        background-color: #3f3f3f;
        position: relative;
        overflow: hidden;
    }

    .c-submit > input {
        color: #fff;
        font-size: 0.929em;
        line-height: 1.6;
        display: inline-block;
        background-color: transparent;
        padding: 20px 30px;
        min-width: 240px;
        cursor: pointer;
        -webkit-transition: background-color .15s;
        transition: background-color .15s;
        position: relative;
        z-index: 1;
    }

    .c-submit:before {
        content: "";
        width: 100%;
        height: 100%;
        background-color: #262626;
        position: absolute;
        left: 0;
        top: 100%;
        -webkit-transition: -webkit-transform .12s ease-out;
        transition: transform .12s ease-out;
    }
    .c-submit:hover:before {
        -webkit-transform: translateY(-100%);
        -ms-transform: translateY(-100%);
        transform: translateY(-100%);
    }
    .IE8 .c-submit:hover {
        background-color: #262626;
    }

    .c-submit:after {
        content: "";
        width: 8px;
        height: 14px;
        background: url(../images/sprite1.png) no-repeat -250px 0;
        position: absolute;
        right: 15px;
        top: 50%;
        margin-top: -7px;
        opacity: 0;
        -webkit-transform: translateY(30px);
        -ms-transform: translateY(30px);
        transform: translateY(30px);
        -webkit-transition: all .15s ease-in;
        transition: all .15s ease-in;
    }
    .c-submit:hover:after {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
        -webkit-transition-delay: .1s;
        transition-delay: .1s;
    }
    .IE8 .c-submit:after {
        content: none;
    }
    .IE8 .c-submit:hover:after {
        content: "";
    }

    .c-submitset {
        text-align: center;
    }

    .c-submitset > li {
        display: inline-block;
        margin: 0 5px;
    }


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

    Images

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

    img {
        vertical-align: middle;
        width: 100%;
        height: auto;
    }
    img span{
        text-align: center;

    }



    img.aligncenter,
    img.alignnone {
        display: block;
        margin: 0 auto;
    }

    img.alignleft {
        display: block;
        margin: 0 auto 0 0 !important;
    }

    img.alignright {
        display: block;
        margin: 0 0 0 auto !important;
    }

    .c-img-3x4 {
        max-height: 600px;

    }
    /*
    .c-img-3x4 > img {
    width: 100% !important;
    height: auto !important;
}
    */


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

    Common

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

    .mt-0 { margin-top: 0 !important; }
    .mt-10 { margin-top: 10px !important; }

    .mb-0 { margin-bottom: 0 !important; }
    .mb-10 { margin-bottom: 10px !important; }
    .mb-20 { margin-bottom: 20px !important; }
    .mb-30 { margin-bottom: 30px !important; }
    .mb-40 { margin-bottom: 40px !important; }
    .mb-50 { margin-bottom: 50px !important; }
    .mb-60 { margin-bottom: 60px !important; }
    .mb-70 { margin-bottom: 70px !important; }
    .mb-80 { margin-bottom: 80px !important; }
    .mb-90 { margin-bottom: 90px !important; }
    .mb-100 { margin-bottom: 100px !important; }
    .mb-120 { margin-bottom: 120px !important; }

    .pt-0 { padding-top: 0 !important; }

    .pb-0 { padding-bottom: 0 !important; }
    .pb-10 { padding-bottom: 10px !important; }
    .pb-20 { padding-bottom: 20px !important; }
    .pb-30 { padding-bottom: 30px !important; }
    .pb-40 { padding-bottom: 40px !important; }
    .pb-50 { padding-bottom: 50px !important; }
    .pb-60 { padding-bottom: 60px !important; }
    .pb-70 { padding-bottom: 70px !important; }
    .pb-80 { padding-bottom: 80px !important; }
    .pb-90 { padding-bottom: 90px !important; }
    .pb-100 { padding-bottom: 100px !important; }
    .pb-120 { padding-bottom: 120px !important; }


    .c-bcg-gray {
        background-color: #f9faf5;
        /* background-color: #262626; */
    }

    article.c-container.inner.narrow.c-bcg-gray {}

    article.c-container.inner.narrow.c-bcg-gray {}

    .c-badge {
        position: relative;
        z-index: 1;
        height: 155px;
    }
    .c-badge1 {
        position: relative;
        z-index: 1;
        /* height: 155px; */
        font-size: 1.5em;
        background: #eee;
        padding: 5px;
        padding-left: 10px;
        border-radius: 5px;
    }


    .c-badge.large {
        height: 200px;
    }
    .c-badge.black {
        color: #f2f2f2;
    }

    .c-badge:before {
        content: "";
        width: 130px;
        height: 130px;
        border-radius: 50%;
        display: block;
        background-color: #fff;
        /*
        -webkit-transform-origin: center center;
        -ms-transform-origin: center center;
        transform-origin: center center;
        -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        transform: rotate(45deg);
        */
        margin-left: -55px;
        position: absolute;
        left: 5%;
        top: 10px;
        z-index: -1;
    }
    .c-badge.large:before {
        width: 150px;
        height: 150px;
        margin-left: -65px;
        top: 30px;
    }
    .c-badge.gray:before {
        background-color: #EBEBED;
    }
    .c-badge.black:before {
        background-color: #262626;
        background-color: #333;
    }

    .c-badge > i {
        color: #999;
        font-size: 0.857em;
        text-align: center;
        width: 10em;
        position: absolute;
        top: 25px;
        left: 50%;
        margin-left: -4em;
    }
    .c-badge.large > i {
        top: 40px;
    }

    .c-badge > span {
        /*writing-mode: tb-rl;
        -o-writing-mode: vertical-rl;
        -moz-writing-mode: vertical-rl;
        -webkit-writing-mode: vertical-rl;
        writing-mode: vertical-rl;*/
        /* color: #3f3f3f; */
        font-size: 1.5em;
        text-align: center;
        width: 10em;
        position: absolute;
        top: 60px;
        /* left: 45.5%; */
        margin-left: -4.5em;
    }


    .c-badge1 > span {
        /*writing-mode: tb-rl;
        -o-writing-mode: vertical-rl;
        -moz-writing-mode: vertical-rl;
        -webkit-writing-mode: vertical-rl;
        writing-mode: vertical-rl;*/
        /* color: #3f3f3f; */
        font-size: 1.5em;
        text-align: center;
        width: 10em;
        position: absolute;
        top: 60px;
        /* left: 45.5%; */
        margin-left: -4.5em;
    }



    .c-badge.three > span {
        letter-spacing: .1em;
        height: 4em;
        top: 52px;
    }
    .c-badge.large > span {
        font-size: 1.8em;
        top: 72px;
    }

    /* writing-modeが使えない場合（firefox）*/
    .no-writing-mode .c-badge > span {
        width: 1em;
        line-height: 1.4;
    }
    .no-writing-mode .c-badge.three > span {
        line-height: 1.1;
    }

    .c-hero {
        position: relative;
        overflow: hidden;
    }

    .c-hero_title-A {
        color: #fff;
        letter-spacing: .1em;
        text-align: center;
        border: 2px solid #fff;
        position: absolute;
        z-index: 10;
        top: 50%;
        left: 50%;
        width: 11em;
        padding: 30px 0 10px;
        margin-left: -5.5em;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
    }
    .IE8 #js-page-denshiro .c-hero_title-A {
        margin-top: -120px;
    }
    .IE8 #js-page-kaba .c-hero_title-A {
        margin-top: -110px;
    }

    .c-hero_title-A > span {
        writing-mode: tb-rl; /* IE独自仕様 */
        -o-writing-mode: vertical-rl;
        -moz-writing-mode: vertical-rl;
        -webkit-writing-mode: vertical-rl;
        writing-mode: vertical-rl;
        font-size: 3.429em;
        line-height: 1.3;
        letter-spacing: .1em;
        text-align: left;
        display: inline-block;
    }

    .c-hero_title-A > i {
        display: block;
    }

    /* writing-modeが使えない場合（firefox）*/
    .no-writing-mode .c-hero_title-A {
        top: 50%;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
        width: 16em;
        margin-left: -8em;
    }

    .no-writing-mode .c-hero_title-A > span {
        text-align: center;
        letter-spacing: .2em;
        display: block;
        margin: 0 auto 10px;
        height: auto;
        width: 4em;
    }


    .c-grid-innerbox {
        padding: 5%;
    }

    .c-dlist > dt {
        width: 13em;
        position: absolute;
        padding: 20px 0 20px 1.5em;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        font-size: 17px;
    }

    .c-dlist > dd {
        padding: 20px 1em 20px 14em;
        border-top: 1px solid #e5e5e5;
        font-size: 17px;
    }

    .c-dlist > dt:first-child + dd {
        border-top: none;
    }


    .c-link-diamond-np {
        display: block;
        position: relative;
    }


    .c-dlist_m > dt {
        width: 20em;
        position: absolute;
        padding: 5px 0 5px 0.1em;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        font-size: 16px;
    }

    .c-dlist_m > dd {
        padding: 5px 0.1em 5px 19em;
        text-align: right;
        border-top: 1px solid #e5e5e5;
        font-size: 15px;
    }

    .c-dlist_m > dt:first-child + dd {
        border-top: none;
    }




    .c-dlist_my > dt {
        width: 29em;
        position: absolute;
        padding: 5px 0 5px 0.1em;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        font-size: 17px;
    }

    .c-dlist_my > dd {
        padding: 5px 0.1em 5px 26em;
        text-align: right;
        border-top: 1px solid #e5e5e5;
        font-size: 17px;
    }

    .c-dlist_my > dt:first-child + dd {
        border-top: none;
    }




    .c-dlist_banq > dt {
        width: 17em;
        position: absolute;
        padding: 5px 0 5px .5em;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        font-size: 16px;
    }

    .c-dlist_banq > dd {
        padding: 5px 1em 5px 5em;
        text-align: left;
        border-top: 1px solid #e5e5e5;
        font-size: 15px;
    }

    .c-dlist_banq > dt:first-child + dd {
        border-top: none;
    }






    /* ◇メニュー　ひし形のメニュー アイコン
    .c-link-diamond-np:before {
    content: "";
    width: 36px;
    height: 36px;
    display: block;
    background-color: #fff;
    -webkit-transform-origin: center center;
    -ms-transform-origin: center center;
    transform-origin: center center;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-left: -18px;
    position: absolute;
    z-index: 10;
    left: 50%;
    top: -18px;
}
    .c-link-diamond-np.gray:before {
    background-color: #EBEBED;
}

    .c-link-diamond-np:after {
    content: attr(data-title);
    color: #999;
    font-size: 0.929em;
    line-height: 1;
    text-align: center;
    width: 3em;
    position: absolute;
    top: -.5em;
    left: 50%;
    margin-left: -1.5em;
    z-index: 11;
}*/


    .IE8 .c-link-diamond-np:before {
        height: 2em;
        top: -2em;
    }
    .IE8 .c-link-diamond-np:after {
        top: -1.6em;
    }


    .c-2col {
        position: relative;
    }

    .c-2col-sub {
        position: fixed;
        width: 25%;
        height: 100%;
        z-index: 1;
        top: 160px;
        left: 9%;
    }

    .noPosFix .c-2col-sub {
        position: absolute;
        top: 0;
    }
    .noPosFix .c-header.open + .c-body .c-2col-sub {
        -webkit-transform: translate(0,0);
        -ms-transform: translate(0,0);
        transform: translate(0,0);
    }









    /* お問合わせ・プライバシー*/



    .cp_side {
        /* background: #fcc; */
        margin-bottom: 10px;
    }
    .cp_main p{
        /* background: #fea; */
        font-size: 1.2em
    }


    .cp_side,
    .cp_main {
        padding: 2%;
        border-radius: 10px
    }

    .cp_side img{
        width: 30%;
        margin: 0 35%;

    }
    @media ( min-width : 600px ){
        .cp_contents {
            display: -webkit-flex;
            display: flex;
        }
        .cp_side {
            margin: 0 10px 0 0;
        }

        .cp_side img{
            width: 100%;
            margin: 0;

        }
    }










    .c-2col-main {
        padding: 4.5em 0 0 31%;
    }

    .c-shop-txt > dt,
    .c-shop-txt > b {
        font-size: 1.071em;
        font-weight: bold;
        line-height: 1.6;
        display: block;
        margin-bottom: 10px;
    }

    .c-shop-txt > a {
        font-size: 0.857em;
    }

    .c-page-wrapper {
        position: fixed;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        padding-top: 80px;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        overflow: hidden;
        min-width: 960px;
    }
    .normalScroll .c-page-wrapper {
        position: relative;
        padding-top: 0;
    }

    .c-page {
        position: absolute;
        width: 100%;
        height: 100%;
        overflow: hidden;
        -webkit-box-shadow: 0 1px 3px rgba(0,0,0,.2);
        box-shadow: 0 1px 3px rgba(0,0,0,.2);
    }
    .normalScroll .c-page {
        position: relative;
    }

    .c-page-inner {
        min-height: 100%;
        background-color: #fff;
    }
    .c-page-inner.no-minheight {
        min-height: auto;
    }

    .c-page-cover {
        position: absolute;
        width: 100%;
        height: 100%;
        background-color: rgba(0,0,0,.7);
    }
    .normalScroll .c-page-cover {
        display: none;
    }


    /* layer
    --------------------------- */

    .c-layer {
        position: absolute;
        top: 50px;
        left: 0;
        z-index: 200;
        width: 100%;
        min-height: 100%;
        min-width: 960px;
        background-color: #fff;
        opacity: 0;
        -webkit-transition-duration: .15s;
        transition-duration: .15s;
        transitoin-property: top opacity;
    }

    .c-layer.active {
        top: 0;
        opacity: 1;
        -webkit-transition-duration: .2s;
        transition-duration: .2s;
    }

    .c-layer-inner {
        position: relative;
        padding: 50px 0 60px;
        height: 100%;
        overflow: hidden;
    }

    .c-layer_nav > li {
        text-indent: -9999px;
        width: 16px;
        height: 27px;
        background: url(../images/sprite1.png) no-repeat;
        cursor: pointer;
        padding: 20px;
        position: fixed;
        top: 50%;
        margin-top: -18px;
        -webkit-transform: translate3d(0,0,0); /* safariでのチラつきを防ぐ */
    }

    .c-layer_nav > li.next {
        background-position: -330px 20px;
        right: 40px;
    }
    .c-layer_nav > li.prev {
        background-position: -280px 20px;
        left: 40px;
    }

    .c-layer_close {
        text-indent: -9999px;
        width: 60px;
        height: 60px;
        cursor: pointer;
        position: fixed;
        top: 10px;
        right: 10px;
    }

    .c-layer_close:before,
    .c-layer_close:after {
        content: "";
        width: 38px;
        height: 3px;
        background-color: #403F41;
        display: block;
        position: absolute;
        left: 50%;
        top: 50%;
        margin-left: -19px;
    }
    .c-layer_close:before {
        -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        transform: rotate(45deg);
    }
    .c-layer_close:after {
        -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }

    .IE8 .c-layer_close:before,
    .IE8 .c-layer_close:after {
        content: none;
    }
    .IE8 .c-layer_close {
        background: url(../images/sprite1_ie8.png) no-repeat -185px -235px;
    }


    .c-lang-nav {text-align: center;}

    .c-lang-nav > li {
        display: inline-block;
        position: relative;
        z-index: 1;
        padding: 5px;
        font-size: 1.15rem;
        color: #fff;
    }

    .c-lang-nav > li:first-child:after {
        /*	content: "";
        width: 1px;
        height: 80%;
        background-color: #999;
        position: absolute;
        top: 15%;
        right: 0;
        */
    }

    .c-lang-nav > li > a {
        font-size: 2.1em;
        font-weight: 600;
        letter-spacing: .1em;
        line-height: 1;
        display: block;
        padding: 3px 10px;
    }

    .c-lang-nav > li > a.active {
        color: #fff;
    }

    .c-lang-nav > li > a.active:before {
        /* 　◇　ひし形マーク
        content: "";
        width: 20px;
        height: 20px;
        display: block;
        background-color: #d9d9d9;
        -webkit-transform-origin: center center;
        -ms-transform-origin: center center;
        transform-origin: center center;
        -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        transform: rotate(45deg);
        margin-left: -10px;
        position: absolute;
        left: 50%;
        top: 0;
        z-index: -1;
        */
    }


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

    c-header

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

    .c-header {
        width: 100%;
        height: 80px;
        position: fixed;
        z-index: 100;
        /* min-width: 100%; */
        overflow: hidden;
        -webkit-transition: height 0;
        transition: height 0;
        /* overflow: hiddenの関係でdelayする; */
        -webkit-transition-delay: .3s;
        transition-delay: .3s;
        -webkit-transform: translate3d(0,0,0); /* safariでのチラつきを防ぐ */
    }
    .c-header.open {
        height: 100%;
        -webkit-transition: none;
        transition: none;
    }
    .noPosFix .c-header {
        position: absolute;
    }
    .IE8 .c-header.open {
        filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#55000000,endColorstr=#55000000);
    }

    .c-header.bottom {
        position: absolute;
        bottom: 0;
    }
    .c-header.bottom.open {
        position: fixed;
    }

    .c-header.bottom.fix {
        position: fixed;
        bottom: auto;
    }

    .c-header-cover {
        position: absolute;
        width: 100%;
        height: 100%;
        background-color: rgba(0, 0, 0, .4);
        opacity: 0;
        -webkit-transition: opacity .3s;
        transition: opacity .3s;
    }
    .c-header.open > .c-header-cover {
        opacity: 1;
    }

    .c-header-inner {
        background-color: #fff;
        width: 100%;
        height: 80px;
        position: absolute;
        -webkit-transition: all .3s ease-in-out;
        transition: all .3s ease-in-out;
        right: 0;
    }

    .c-header.bottom > .c-header-inner {
        bottom: 0;
    }
    .c-header.open > .c-header-inner {
        height: 100px;
        -webkit-transform: translateX(-25%);
        -ms-transform: translateX(-25%);
        transform: translateX(-25%);
    }


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

        .c-header.open > .c-header-inner {
            height: 100px;
            -webkit-transform: translateX(-40%);
            -ms-transform: translateX(-40%);
            transform: translateX(-40%);
        }
    }



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

        .c-header.open > .c-header-inner {
            height: 100px;
            -webkit-transform: translateX(-50%);
            -ms-transform: translateX(-50%);
            transform: translateX(-50%);
        }
    }

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

        .c-header.open > .c-header-inner {
            height: 100px;
            -webkit-transform: translateX(-100%);
            -ms-transform: translateX(-100%);
            transform: translateX(-100%);
        }


        .c-badge1 {
            position: relative;
            z-index: 1;
            /* height: 155px; */
            font-size: 1.5em;
            text-align: center;
            margin-bottom: 10px;
        }


    }





    .IE8 .c-header.open > .c-header-inner {
        margin-left: -25%;
    }

    .c-header.bottom.fix > .c-header-inner {
        bottom: auto;
    }


    /* c-header_logo
    --------------------------- */

    .c-header_logo {
        width: 185px;
        height: 20px;
        display: block;
        position: absolute;
        left: 35px;
        top: 50%;
        margin-top: -15px;
    }

    .c-header_logo > svg {
        width: 100%;
        height: 100%;
        fill: #1a1a1a;
    }

    .IE8 .c-header_logo > span {
        text-indent: -9999px;
        display: block;
        width: 185px;
        height: 20px;
        background: url(../images/sprite1_ie8.png) no-repeat 0 -250px;
    }


    /* c-nav
    --------------------------- */

    .c-nav {
        position: absolute;
        top: 50%;
        right: 90px;
        -webkit-transition: -webkit-transform .3s;
        transition: transform .3s;
        /* safariでのチラつきを防ぐ */
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
    }

    .c-header.open .c-nav {
        -webkit-transform: translateX(70px);
        -ms-transform: translateX(70px);
        transform: translateX(70px);
    }




    .c-nav > li {
        float: left;
    }

    .c-nav > li > a {
        font-size: 1.071em; /* 15px */
        line-height: 1.6;
        display: block;
        letter-spacing: .3em;
        padding: 10px 15px;
        margin: -1.3em 10px 0;
        position: relative;
    }
    .c-header.open .c-nav > li > a {
        font-size: 1.143em; /* 16px */
    }
    /* 
    .c-nav > li > a:after {
    content: "";
    width: 75%;
    height: 0;
    border-bottom: 1px solid #666;
    position: absolute;
    bottom: -5px;
    left: 11%;
    opacity: 0;
    -webkit-transition: all .12s ease-out;
    transition: all .12s ease-out;
}
    .IE8 .c-nav > li > a:after {
    content: none;
}
    .c-nav > li > a:hover:after,
    .c-nav > li > a.active:after {
    opacity: 1;
    bottom: 5px;
}
    .IE8 .c-nav > li > a:hover:after,
    .IE8 .c-nav > li > a.active:after {
    content: '';
}*/


    /*パターン2*/

    .c-nav > li {
        float: left;
    }

    .c-nav > li > a {
        font-size: 1.12em; /* 15px */
        line-height: 1.6;
        display: block;
        letter-spacing: .3em;
        padding: 10px 15px;
        margin: -1.3em 10px 0;
        position: relative;
        font-weight: 800;
        background: #f2f2f2;
        border-radius: 50px;
        font-family: A1MinchoStd-Bold, serif; */
    }
    .c-header.open .c-nav > li > a {
        font-size: 1.143em; /* 16px */
    }

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

        .noPosFix .c-header {
            position: fixed;
        }



        .c-nav > li > a {
            font-size: 0.9em; /* 15px */
            line-height: 1.6;
            display: block;
            letter-spacing: .3em;
            padding: 10px 8px;
            margin: -1.3em 10px 0;
            position: relative;
        }
        .c-header.open .c-nav > li > a {
            font-size: 0.9em; /* 16px */
        }



        .c-lang-nav > li > a {
            font-size: 1.5em;
            font-weight: 600;
        }



    }






    .c-nav > li > a:after {
        border-bottom: solid 1px #666;
        bottom: 0;
        content: "";
        display: block;
        position: absolute;
        right: 0;
        transition: all .3s ease;
        -webkit-transition: all .3s ease;
        width: 0;
    }

    .c-nav > li > a:hover::after {
        width: 80%;
        margin: 0 10%;
    }




    .IE8 .c-nav > li > a:after {
        content: none;
    }
    .c-nav > li > a:hover:after,
    .c-nav > li > a.active:after {
        opacity: 1;
        bottom: 5px;
    }
    .IE8 .c-nav > li > a:hover:after,
    .IE8 .c-nav > li > a.active:after {
        content: '';
    }






    /* c-nav_sub
    --------------------------- */

    .c-nav_sub {
        width: 25%;
        height: 100vh;
        position: absolute;
        right: -25%;
        border-left: 1px solid #550000;
        padding: 35px 2%;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        background-color: #550000;
    }


    @media only screen and (max-width: 1024px) {
        .c-nav_sub {
            width: 40%;
            height: 100vh;
            right: -40%;
        }

    }



    @media only screen and (max-width: 800px) {
        .c-nav_sub {
            width: 50%;
            height: 100vh;
            right: -50%;
        }

    }
    @media only screen and (max-width: 500px) {
        .c-nav_sub {
            width: 100%;
            height: 100vh;
            right: -100%;
        }

    }




    .c-header.bottom .c-nav_sub {
        bottom: 0;
    }
    .c-header.bottom.fix .c-nav_sub {
        bottom: auto;
    }


    .c-nav_others {
        opacity: 0;
        -webkit-transform: translate(100px,0);
        -ms-transform: translate(100px,0);
        transform: translate(100px,0);
        -webkit-transition-duration: .3s;
        transition-duration: .3s;
        -webkit-transition-property: -webkit-transform opacity;
        transition-property: transform opacity;
        -webkit-transition-delay: .2s;
        transition-delay: .2s;
    }

    .c-header.open .c-nav_others {
        opacity: 1;
        -webkit-transform: translate(0,0);
        -ms-transform: translate(0,0);
        transform: translate(0,0);
    }


    .c-nav_tel  {
        color: #fff;
        font-size: 1.6em;
        padding: 3px 10px;
    }



    .c-nav_others a {
        font-size: 1.1em;
        color: #fff;
        letter-spacing: .15em;
        display: inline-block;
        padding: 3px 10px;
        margin-bottom: 5px;
        -webkit-transition: color .15s;
        transition: color .15s;
        font-weight: 600;
    }

    .c-nav_others a:hover {
        color: #999;
    }

    .c-nav_sub .c-nav_facebook {
        color: #ccc;
        font-size: 0.857em; /* 12px */
        font-weight: 600;
        letter-spacing: .15em;
        position: absolute;
        bottom: 70px;
        margin-left: 10px;
    }

    .c-nav_sub .c-lang-nav {
        position: absolute;
        /* bottom: 35px; */
        text-align: left;
    }
    .c-nav_sub .c-lang-nav > li > a {
        color: #ccc;
    }
    .c-nav_sub .c-lang-nav > li > a.active {
        color: #fff;
    }
    .c-nav_sub .c-lang-nav > li > a.active:before {
        background-color: #666;
    }



    /* c-nav_trigger
    --------------------------- */

    .c-nav_trigger {
        text-indent: -9999px;
        width: 60px;
        height: 60px;
        position: absolute;
        right: 10px;
        top: 10px;
        cursor: pointer;
    }
    .c-nav_trigger:before {
        content: "";
        width: 1px;
        height: 50px;
        background-color: #d8d8d8;
        position: absolute;
        left: -10px;
        top: 5px;
    }
    .c-header.open .c-nav_trigger {
        background-color: transparent;
    }
    .c-header.open .c-nav_trigger:before {
        content: none;
    }
    .c-header.bottom .c-nav_trigger {
        top: auto;
        bottom: 10px;
    }

    .c-header.bottom.fix .c-nav_trigger {
        top: 10px;
        bottom: auto;
    }

    .c-nav_trigger > span {
        display: block;
        width: 28px;
        height: 3px;
        background-color: #404040;
        position: absolute;
        top: 50%;
        left: 50%;
        margin: -1px 0 0 -14px;
    }
    .c-nav_trigger > span:before,
    .c-nav_trigger > span:after {
        content: "";
        width: 28px;
        height: 3px;
        background-color: #404040;
        display: block;
        position: absolute;
        left: 50%;
        margin-left: -14px;
        -webkit-transition: background-color .3s, -webkit-transform .3s, top .2s, bottom .2s;
        transition: background-color .3s, transform .3s, top .2s, bottom .2s;
    }
    .c-nav_trigger > span:before {
        bottom: 11px;
    }
    .c-nav_trigger > span:after {
        top: 11px;
    }

    .IE8 .c-nav_trigger > span:before,
    .IE8 .c-nav_trigger > span:after {
        display: none;
    }

    .c-header.open .c-nav_trigger > span {
        background-color: transparent;
    }

    .c-header.open .c-nav_trigger > span:before {
        background-color: #ccc;
        width: 38px;
        margin-left: -19px;
        bottom: 0;
        -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        transform: rotate(45deg);
    }
    .c-header.open .c-nav_trigger > span:after {
        background-color: #ccc;
        width: 38px;
        margin-left: -19px;
        top: 0;
        -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }

    .c-nav_trigger:hover > span:before {
        bottom: 7px;
    }
    .c-nav_trigger:hover > span:after {
        top: 7px;
    }

    .IE8 .c-nav_trigger > span {
        width: 60px;
        height: 60px;
        background: url(../images/sprite1_ie8.png) no-repeat 16px 22px;
        top: 0;
        left: 0;
        margin-left: 0;
    }
    .IE8 .c-header.open .c-nav_trigger > span {
        background-position: -35px 15px;
    }



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

    c-footer

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

    .c-footer {
        background-color: #540800;
        padding: 60px 8%;
        position: relative;
        z-index: 90;
        -webkit-transform: translate3d(0,0,0); /* safariでのチラつきを防ぐ */
    }




    .c-footer_logo > img {
        width: 252px;
        height: auto;
    }


    .c-footer_logo > svg {
        width: 190px;
        height: 37px;
        fill: #e5e5e5;
    }

    .IE8 .c-footer_logo > span {
        text-indent: -9999px;
        display: block;
        width: 190px;
        height: 37px;
        background: url(../images/sprite1_ie8.png) no-repeat -100px 0;
    }

    .c-footer_copyright {
        color: #fff;
        font-size: 1em; /* 11px */
        display: block;
        margin-top: 10px;
    }

    .c-footer_nav {
        position: relative;
    }

    .c-footer_nav_item {
        letter-spacing: 2px;
        line-height: 1.4;
        margin-bottom: -1em;
    }

    .c-footer_nav_item > li {
        margin-bottom: 2em;
    }

    .c-footer_nav_item > li > a {
        color: #fefefe;
        font-size: 0.929em; /* 13px */
        display: inline-block;
        padding: .25em 10px .25em 18px;
        position: relative;
        -webkit-transition: color .15s;
        transition: color .15s;
    }
    .c-footer_nav_item > li > a:hover {
        color: #ccc;
    }

    .c-footer_nav_item > li > a:before {
        content: "◆";
        width: 6px;
        height: 6px;
        border-radius: 50%;
        position: absolute;
        left: 0;
        top: 25%;
        margin-top: -3px;
        /* background-color: #666; */
    }

    .c-footer_phone {
        color: #fff;
        font-size: 1.6em; /* 12px */
        letter-spacing: .1em;
        /* position: absolute; */
        /* right: 0; */
        /* margin-top: -5px; */
        -webkit-transition: color .15s;
        transition: color .15s;
    }
    .c-footer_phone:hover {
        color: #e6e6e6;
    }
    .c-footer_phone:after {
        content: "";
        width: 106%;
        height: 1px;
        background-color: #fff;
        position: absolute;
        bottom: -3px;
        left: -3%;
    }


    .c-footer_totop {
        /* position: absolute; */
        bottom: 20px;
        right: 1em;
        position: fixed;
        z-index:1;
    }

    .c-footer_totop > span {
        text-indent: -9999px;
        display: block;
        width: 20px;
        height: 10px;
        margin: 10px;
        background: url(../images/sprite1.png) no-repeat 0 0;
    }

    .c-footer_facebook {
        color:#fff;
        font-size: 18px;
        position: absolute;
        right: 110px;
        top: 10px;
    }

    .c-footer_facebook a{
        color:#fff;
        font-size: 18px;
    }

    .c-footer_facebook > a:hover {
        color: #ccc;
        font-size: 20px;
    }

    .c-footer_instagram {
        color:#fff;
        font-size: 18px;
        position: absolute;
        right: 70px;
        top: 10px;
    }
    .c-footer_instagram a{
        color:#fff;
        font-size: 18px;
    }

    .c-footer_instagram > a:hover {
        color: #ccc;
        font-size: 20px;
    }



    #page-top {
        position: fixed;
        bottom: 20px;
        right: 20px;
        z-index:1;
        line-height: 0.8em;
    }
    #page-top a {
        text-decoration: none;
        width: 100px;
        text-align:center;
        display: block;
        font-size: 1.2em;
        color: #ccc;
    }
    #page-top a:hover {
        text-decoration: none;
        opacity: 0.6; 

    }

    #page-top span {
        font-size: 0.6em;
        line-height: 0.6em;
    }




    /* ----- .infoBox ----- */ 
    /* ----- .infoBox ----- */ 
    #yoyaku .infoBox { display:inline-block; margin:0 20%; width:60%; padding:5px 2.5%;}
    #yoyaku .infoBox:after { position:absolute; top:0; right:0; bottom:0; width:0; content:""; border-right:#ededed 1px solid; z-index:0; }
    #yoyaku .infoBox:last-child:after { display:none;}

    /* .txtArea */ 
    #yoyaku .aboutBox .txtArea { margin-top:20px; }
    #yoyaku .aboutBox h1 { width:100%; height:85px; background:url(../images/logoFooter_sp.png) center center no-repeat; background-size:95px 85px; margin-top:-20px; }
    #yoyaku .aboutBox p { font-size:12px; text-indent:-0.5em;margin-top:-0.5em; }

    /* .contactBox */ 
    #yoyaku .contactBox .imgArea { float:left; width:30%; display:none; }
    #yoyaku .contactBox .txtArea { float:right; width:62.5%; width:100%; }
    #yoyaku .contactBox h4 {font-size: 20px;font-weight:normal;line-height:2.2;letter-spacing: 1px;margin-top:-0.5em;text-align:center;}
    #yoyaku .contactBox h3 {font-size: 20px;font-weight:normal;line-height:2.2;letter-spacing: 1px;margin-top:-0.5em;text-align:center;}
    /* .contactBox ul */ 
    #yoyaku .contactBox ul { }
    #yoyaku .contactBox ul li {display:block;margin: 5px 0 20px;text-align:center;position:relative;z-index:1;}
    #yoyaku .contactBox ul li a,
    #yoyaku .contactBox ul li span { display:block; line-height:50px; position:relative; z-index:2;}
    #yoyaku .contactBox ul li .tel {color: #fff;border: #fefefe 1px solid;font-size: 26px;font-weight:600;letter-spacing:2px;}
    #yoyaku .contactBox ul li .tel:before {position:absolute;top:0;left: 0px;bottom:0;width: 0px;content:"";/* background:url(../images/telIcon.png) left center no-repeat; */}

    /* .mail */ 
    #yoyaku .contactBox ul li .mail {color: #fff;border: #fff 1px solid;font-size: 18px;font-weight:500;letter-spacing:1px;}
    #yoyaku .contactBox ul li .mail:before { /*position:absolute; top:0; left:21px; bottom:0; width:25px; font-size:20px; text-align:left; font-family: 'themify'; content: "\e75a"; font-weight:normal;*/  }
    #yoyaku .contactBox ul li .mail:hover { color:#fefefe; background:#999; border:#999 1px solid;}
    #yoyaku .contactBox ul li .mail:after { position:absolute; top:0; bottom:0; right:15px; font-size:10px; font-family: 'themify'; content: "\e649"; font-weight:normal; opacity:0; -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all 0.3s ease;}
    #yoyaku .contactBox ul li .mail:hover:after { opacity:1;-webkit-transform: translate(5px, 0px);-moz-transform: translate(5px, 0px);-o-transform: translate(5px, 0px);-ms-transform: translate(5px, 0px);transform: translate(5px, 0px); }





    text-align: right;





    @media screen and (max-width: 479px) {
        #page-top {
            position: fixed;
            bottom: 20px;
            right: -15px;
            z-index: 1;
            line-height: 0.8em;
        }
    }





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

        .c-footer_nav {
            padding-left: 3%;
        }

        .c-footer {
            padding: 60px 3%;
        }

    }


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



        .ifPc {
            display: none;
        }
    }






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

        .c-nav {
            display:none;
        }

        .c-footer_nav {
            padding-left: 10%;
        }


        .c-footer_logo > img {
            width: 100%;
            max-width:252px;
        }


        .c-footer_phone a{
            color: #fff;
        }

        .c-grid_line{
            border-bottom: 1px solid #ccc;
            margin: 50px;
        }

        .c-footer_nav {
            display:none;
        }


    }


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

        .ifSp {
            display: block;
        }




        .c-title-A {
            font-size: 1.35em;
            text-align: left;
        }





        .c-footer_nav {
            padding-left: 0%;
            border-top: 1px solid #fff;
            padding: 10px;
        }


        .c-footer_nav_item {
            letter-spacing: 2px;
            line-height: 1.1;
            margin-bottom: 0em;
            text-align: center;
        }
        .c-footer_nav_item > li {
            margin-bottom: 1em;

        }

        .c-footer_copyright {
            color: #fff;
            display: block;
            margin-top: 10px;
            margin-bottom: 20px;
        }

        .c-footer_nav {
            display:none;
        }

        .c-footer {
            padding: 30px 8%;

        }



        .c-dlist > dt {
            width: 90%;
            position: initial;
            padding: 5px 5%;
            -webkit-box-sizing: border-box;
            /* box-sizing: border-box; */
            line-height: 1;
        }


        .c-dlist > dd {
            padding: 5px 5% 20px 8%;
            border-top: 1px solid #e5e5e5;
            width: 90%;
        }


        .c-dlist > dt:first-child + dd {
            border-top: 1px solid #e5e5e5;
        }



        .c-grids.gap-l {
            margin-left: 3.5%;
            margin-right: 3.5%;
        }

        .c-container.inner {
            margin-top: 0;
            margin-bottom: 0;
            padding-top: 10px;
            padding-bottom: 10px;
        }

        .c-container.narrow {
            padding-left: 3%;
            padding-right: 3%;
        }

        .c-dlist_m > dt {
            width: 100%;
            position: inherit;
            padding: 8px 0 0px 0em;
            -webkit-box-sizing: border-box;
            box-sizing: border-box;
        }

        .c-dlist_m > dd {
            padding: 0px 1em 8px 0em;
            text-align: right;
            border-top: none;
            border-bottom: 1px solid #e5e5e5;
        }

        .c-dlist_m > dt:first-child + dd {
            border-top: none;
        }

        .c-dlist_m > dd:last-child {
            border-bottom: none;
        }

        .c-dlist_my > dt {
            width: 100%;
            position: inherit;
            padding: 8px 0 0px 0em;
            -webkit-box-sizing: border-box;
            box-sizing: border-box;
        }

        .c-dlist_my > dd {
            padding: 0px 1em 8px 0em;
            text-align: right;
            border-top: none;
            border-bottom: 1px solid #e5e5e5;
        }

        .c-dlist_my > dt:first-child + dd {
            border-top: none;
        }





        .c-2col-main {
            padding: 0;
            padding-top: 150px;
        }


        .c-2col-sub {
            position: relative;
            width: 100%;
            height: 20%;
            z-index: 1;
            top: 10px;
            left: 0%;
        }

        .c-title-A.left {
            text-align: center;
        }




        #yoyaku .infoBox {display:inline-block;margin: 0 0;width: 100%;padding: 5px;}







    }



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

    high resolution

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

    @media only screen and (-webkit-min-device-pixel-ratio: 1.3),(-webkit-min-device-pixel-ratio: 1.3),(min-resolution: 1.3dppx) {

        .c-button:after,
        .c-submit:after,
        .c-layer_nav > li,
        .c-footer_totop > span,
        .top-links a:after,
        .collection-list_switch,
        .collection-list_link > .c-title-A:after,
        .collection-nav_link > .c-title-A:after,
        .meister-list_img:after {
            background-image: url(../images/sprite1x2.png);
            background-size: 400px 50px;
        }

    }


    > img {
        width: 100%;
    }


    .c-footer_phone a{
        color: #fff;
    }

    .c-grid_line{
        border-bottom: 1px solid #ccc;
        margin: 50px;
    }

    .c-footer_nav {
        display:none;
    }


}


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

    .ifSp {
        display: block;
    }




    .c-title-A {
        font-size: 1.35em;
        text-align: left;
    }





    .c-footer_nav {
        padding-left: 0%;
        border-top: 1px solid #fff;
        padding: 10px;
    }


    .c-footer_nav_item {
        letter-spacing: 2px;
        line-height: 1.1;
        margin-bottom: 0em;
        text-align: center;
    }
    .c-footer_nav_item > li {
        margin-bottom: 1em;

    }

    .c-footer_copyright {
        color: #fff;
        display: block;
        margin-top: 10px;
        margin-bottom: 20px;
    }

    .c-footer_nav {
        display:none;
    }

    .c-footer {
        padding: 60px 8% 30px;
    }



    .c-dlist > dt {
        width: 90%;
        position: initial;
        padding: 5px 5%;
        -webkit-box-sizing: border-box;
        /* box-sizing: border-box; */
        line-height: 1;
    }


    .c-dlist > dd {
        padding: 5px 5% 20px 8%;
        border-top: 1px solid #e5e5e5;
        width: 90%;
    }


    .c-dlist > dt:first-child + dd {
        border-top: 1px solid #e5e5e5;
    }



    .c-grids.gap-l {
        margin-left: 3.5%;
        margin-right: 3.5%;
    }

    .c-container.inner {
        margin-top: 0;
        margin-bottom: 0;
        padding-top: 10px;
        padding-bottom: 10px;
    }

    .c-container.narrow {
        padding-left: 3%;
        padding-right: 3%;
    }

    .c-dlist_m > dt {
        width: 100%;
        position: inherit;
        padding: 8px 0 0px 0em;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
    }

    .c-dlist_m > dd {
        padding: 0px 1em 8px 0em;
        text-align: right;
        border-top: none;
        border-bottom: 1px solid #e5e5e5;
    }

    .c-dlist_m > dt:first-child + dd {
        border-top: none;
    }

    .c-dlist_m > dd:last-child {
        border-bottom: none;
    }

    .c-dlist_my > dt {
        width: 100%;
        position: inherit;
        padding: 8px 0 0px 0em;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
    }

    .c-dlist_my > dd {
        padding: 0px 1em 8px 0em;
        text-align: right;
        border-top: none;
        border-bottom: 1px solid #e5e5e5;
    }

    .c-dlist_my > dt:first-child + dd {
        border-top: none;
    }





    .c-2col-main {
        padding: 0;
        padding-top: 150px;
    }


    .c-2col-sub {
        position: relative;
        width: 100%;
        height: 20%;
        z-index: 1;
        top: 10px;
        left: 0%;
    }

    .c-title-A.left {
        text-align: center;
    }




    #yoyaku .infoBox {display:inline-block;margin: 0 0;width: 100%;padding: 5px;}



    .c-footer_sns {
        color: #fff;
        position: absolute;
        right: 15px;
        top: 1px;
    }


}



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

high resolution

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

@media only screen and (-webkit-min-device-pixel-ratio: 1.3),(-webkit-min-device-pixel-ratio: 1.3),(min-resolution: 1.3dppx) {

    .c-button:after,
    .c-submit:after,
    .c-layer_nav > li,
    .c-footer_totop > span,
    .top-links a:after,
    .collection-list_switch,
    .collection-list_link > .c-title-A:after,
    .collection-nav_link > .c-title-A:after,
    .meister-list_img:after {
        background-image: url(../images/sprite1x2.png);
        background-size: 400px 50px;
    }

}

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


#w_sub_style

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

#w_sub_style {padding: 50px 5%;position: relative;z-index: 0;font-family: dnp-shuei-mgothic-std, sans-serif;}
@media only screen and (max-width: 800px) {
    #w_sub_style { padding: 80px 5%; }
}
@media only screen and (max-width: 738px) { 
    #w_sub_style{ padding: 70px 5%; }
}
@media only screen and (max-width: 414px) { 
    #w_sub_style {padding: 0 5%;}
}



/* .imgArea */
#w_sub_style .imgArea {float:left;width: 45%;}
#w_sub_style .imgArea img{padding:2%;}
#w_sub_style .imgArea .inner { position:relative; z-index:2; }
#w_sub_style .imgArea .inner:before {position: absolute;top: 0px;left: 0;bottom: 0px;right:0;content: "";/* border: #1f1b19 1px dotted; */background:#fefefe;z-index: -2;}
#w_sub_style .imgArea .inner:after {position: absolute;top: 15px;right: 15px;left: 15px;bottom: 15px;content: "";/* border: #ffffff 1px dotted; */z-index: 1;}
#w_sub_style .imgArea .inner img{width:96% }

/* .txtArea */
#w_sub_style .txtArea {float:right;width: 50%;padding: 2%;}
/* ======== table.tableOther ======== */
table.company {border-collapse: collapse;text-align: left;font-size:14px;letter-spacing:1px;line-height:2; width:100%;}
table.company tr {display:block; }
table.company th {display:block;width:100%;padding:5px;vertical-align: 0;}
table.company td {display:block;width:100%;padding: 5px;padding-left: 20px;vertical-align: 0;border-bottom: #ddd 1px solid;}
table.company td .linkArea {display:blockmargin-top:10px;text-align:left;}
table.company td .linkArea a.btn {margin:0;}

/* --- #map_canvas --- */
#map_canvas { width:100%; margin-top:70px; height:400px;position: relative; z-index: 1; border: #ededed 1px solid;}


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

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

}
@media only screen and (max-width: 500px) { 
    #w_sub_style .imgArea {display:block;width: 100%;}
    #w_sub_style .txtArea {width: 100%; padding: 2%;margin-top:10px;}


}




.access_way h2 {
    position: relative;
    line-height: 1.4;
    padding:0.25em 1em;
    display: inline-block;
    top:0;
}

.access_way h2:before,h2:after{ 
    position: absolute;
    top: 0;
    content:'';
    width: 8px;
    height: 100%;
    display: inline-block;
}
.access_way h2:before{
    border-left: solid 1px black;
    border-top: solid 1px black;
    border-bottom: solid 1px black;
    left: 0;
}
.access_way h2:after{
    content: '';
    border-top: solid 1px black;
    border-right: solid 1px black;
    border-bottom: solid 1px black;
    right: 0;
}




.access_way {/*	width: 90%;*//*	margin:20px;*/text-align: center;padding: 30px 0;/* float:left; */}

.access_way h2{
    font-size: 25px;
    font-weight:400;
    text-align: center;
    padding-left:30px;
    margin-bottom: 30px;
}


.access_way h3{
    position: relative;
    /* color: #00406c; */
    text-align:left;
    font-size:18px;
    line-height: 2.5;
    padding-left: 40px;
    border-bottom:solid 1px;
}

.access_way h3.car:before {/*疑似要素*/
    font-family: 'FontAwesome';
    content: "\f1b9";
    position: absolute;
    left : 0.6em; /*左端からのアイコンまでの距離*/
    font-size: 16px;
    top: 2px;
    font-weight:500;
}


.access_way h3.train:before {/*疑似要素*/
    font-family: 'FontAwesome';
    content: "\f238";
    position: absolute;
    left : 0.6em; /*左端からのアイコンまでの距離*/
    font-size: 16px;
    top: 2px;
    font-weight:500;
}


.access_way p{
    margin-top:40px;
    line-height: 2;
    font-size: 18px;
    font-weight:400;
    /*     text-align:right; */
}
.access_way p.title{
    font-size: 1.5rem;
}
.access_way p a{
    font-size: 1.5rem;
    border-bottom: 2px dotted #78c187;
    color: #78c187;
}

