@charset "utf-8";

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

Base

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

/* 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;
}


.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: 20px; /* 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: 15px;
        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;}
@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: 60px 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: 45%;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: inline; */}
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;}


}



/*
----------------------------------------------------------
Page: Common
---------------------------------------------------------- */

.single-page {
    /*margin:0 45px;*/
}

.page-section {
    margin: 60px auto;
    /* width: 100%; */
    max-width: 1200px;
    padding: 70px 3% 0;
    background: #fefefe;
    border: #f5f5f5 1px solid;
    /* border-left: none; */
    -webkit-border-radius: 0px 15px 0 0px;
    border-radius: 0px 15px 0 0px;
    font-family: dnp-shuei-mgothic-std, sans-serif;
}
}

.page-section:first-child {
    margin-top: 50px;
}


/*
.page-section-sub:not(:first-child){border-top:1px solid #d9e3e5;padding-top:60px;margin-top:60px;}*/

@media (max-width:900px) {
    .page-section {
        margin: 50px 2.5%;
        padding: 60px 5%;
    }
}

@media (max-width:738px) {
    .page-section {
        margin: 40px 10px 0;
        padding: 50px 5%;
        border: #f0f0f0 1px solid;
    }
}

@media (max-width:414px) {
    .page-section {
        padding: 40px 4%;
        margin: 40px 0;
    }
}

.page-section.dashed {
    border: #111 1px dashed;
}

.page-section .lead-image {
    display: block;
    width: 100%;
    -webkit-border-radius: 10px;
    border-radius: 10px;
}

.page-section-header {
    text-align: left;
    font-size: 28px;
    margin-bottom: 10px;
}

.page-section-header:before {
    content:'●'
}



.page-section-header .lead {
    font-size: 30px;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    letter-spacing: 2px;
}

.page-section-header .caption {
    margin-top: 30px;
}

.section-body-lead {
    margin-top: -15px;
    text-align: center;
}

.section-body-lead p {
    font-size: 14px;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    line-height: 2;
    letter-spacing: 1px;
}

.section-body-lead p br.mobile {
    display: none
}

;
@media only screen and (max-width: 738px) {
    .section-body-lead {
        text-align: center;
    }
    .section-body-lead p {
        display: inline-block;
        font-size: 13px;
        line-height: 1.9;
        font-weight: 400;
        /* ? text-align: left;*/
    }
}

.archive-menu-items {}

.archive-menu-items .item {
    padding: 60px 0;
    border-top: #d9e3e5 1px solid;
    overflow: hidden;
    position: relative;
    z-index: 0;
}

.archive-menu-items .item:first-child {
    padding-top: 0;
    border: none;
}

.archive-menu-items .item:last-child {
    padding-bottom: 0;
}

@media only screen and (max-width: 900px) {
    .archive-menu-items .item {
        padding: 50px 0;
    }
}

@media only screen and (max-width: 738px) {
    .archive-menu-items .item {
        padding: 45px 0;
    }
}

.archive-menu-items .item>.image {
    width: 30%;
    float: left;
    position: relative;
    /* -webkit-border-radius: 100%; */
    border-radius: 100%;
}

.archive-menu-items .item>.image img {
    width: 100%;
    float: left;
    position: relative;
    /* -webkit-border-radius: 100%; */
    /* border-radius: 100%; */
    border-radius: 0.4em;
}


.archive-menu-items .item>.text {
    float: right;
    width: 65%;
}


.archive-menu-items .item>.text .oyasumi {
    display: block;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 0.125em;
    line-height: 1.4;
    margin-bottom: 0;
    text-transform: uppercase;
    color: #a32b2e;
}

.archive-menu-items .item>.text .oyasumi:before {
    font-family: 'themify';
    content: "\e617";
}




.archive-menu-items .item>.text .role {
    display: inline-block;
    font-size: 15px;
    /* font-family: 'Overpass', sans-serif; */
    font-weight: 400;
    letter-spacing: 0.125em;
    line-height: 1.4;
    text-transform: uppercase;
    position: relative;
    z-index: 0;
}

.archive-menu-items .item>.text .role:after {
    position: absolute;
    right: 0;
    left: 0;
    bottom: 0;
    height: 50%;
    content: "";
    background: #ffb3b3;
    z-index: -1;
}

.archive-menu-items .item>.text .name {
    margin: 5px 0 12px;
}

.archive-menu-items .item>.text .name .jp {
    margin-top: 10px;
    padding-left: 20px;
    font-size: 20px;
    /* font-family: 'Noto Sans JP', sans-serif; */
    font-weight: 400;
    letter-spacing: 4px;
    display: block;
    line-height: 1;
    position: relative;
    z-index: 0;
}

.jp span {
    font-size: 23px;
}

.archive-menu-items .item>.text .name .jp:before {
    position: absolute;
    top: 50%;
    left: 0;
    width: 10px;
    height: 0;
    content: "";
    border-top: #0d0d0d 1px solid;
    z-index: -1;
}

.archive-menu-items .item>.text .name .en {
    font-size: 26px;
    /* font-family: 'Overpass', sans-serif; */
    font-family: dnp-shuei-mgothic-std, sans-serif;
    font-weight: 400;
    letter-spacing: 1px;
    line-height: 1.2;
    display: block;
    margin-bottom: 0.5em;
}

.archive-menu-items .item>.text .comment {
    padding: 25px 25px 25px 0;
    margin-top: 25px;
    font-size: 17px;
    line-height: 1.9;
    position: relative;
    z-index: 0;
}

.archive-menu-items .item>.text .comment:after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: -30px;
    content: "";
    background: #fff2f2;
    z-index: -1;
    -webkit-border-radius: 0px 0px 15px 15px;
    border-radius: 0px 0px 15px 15px;
}







.archive-menu-items .item>.text_a {
    float: left;
    width: 48%;
    margin: 1%;
}

.archive-menu-items .item>.text_a .role {
    display: inline-block;
    font-size: 14px;
    /* font-family: 'Overpass', sans-serif; */
    font-weight: 400;
    letter-spacing: 0.125em;
    line-height: 1.4;
    text-transform: uppercase;
    position: relative;
    z-index: 0;
}

.archive-menu-items .item>.text_a .role:after {
    position: absolute;
    right: 0;
    left: 0;
    bottom: 0;
    height: 50%;
    content: "";
    background: #ddd;
    z-index: -1;
}

.archive-menu-items .item>.text .career span {
    background: #e5e5e5;
    padding: 0.2em 0.3em;
    /* border-radius: 1em; */
    font-size: 15px;
    /* color: #fff; */
    margin: 0 0.2em;
}

@media only screen and (max-width: 500px) {
    .archive-menu-items .item>.text .career span {
        display:block;
        margin-bottom:5px;   
    }

}


@media only screen and (max-width: 900px) {
    .archive-menu-items .item>.text .name .en {
        font-size: 25px;
    }
    .archive-menu-items .item>.text .comment {
        margin-top: 20px;
        padding: 20px 25px 20px 0;
        font-size: 16px;
    }
    .archive-menu-items .item>.text .comment:after {
        left: -25px;
    }
}

@media only screen and (max-width: 738px) {
    .archive-menu-items .item>.image {
        margin: 0 auto;
        width: 100%;
        max-width: 250px;
        float: none;
        display: block;
    }
    .archive-menu-items .item>.text {
        /* float: none; */
        width: 100%;
        margin: 25px 0 0;
        text-align: center;
        display: block;
    }
    .archive-menu-items .item>.text .name {
        margin-bottom: 20px;
        text-align: center;
    }
    .archive-menu-items .item>.text .role {
        font-size: 13px;
        letter-spacing: 0.1em;
    }
    .archive-menu-items .item>.text .name {
        margin: 5px 0 20px;
    }
    .archive-menu-items .item>.text .name .jp {
        margin-top: 10px;
        padding-left: 0;
    }
    .archive-menu-items .item>.text .name .jp:before {
        display: none;
    }
    .archive-menu-items .item>.text .name .en {
        font-size: 22px;
    }
    .archive-menu-items .item>.text .career {
        margin: 0 auto;
        text-align: left;
        max-width: 450px;
    }

    .archive-menu-items .item>.text .comment {
        max-width: 450px;
        padding: 20px 5%;
        margin: 20px auto 10px;
        /* font-size: 13px; */
        text-align: left;
    }
    .archive-menu-items .item>.text .comment:after {
        left: 0;
    }
}

@media only screen and (max-width: 500px) {
    .archive-menu-items .item>.image {
        max-width: 300px;
    }

    .archive-menu-items .item>.image img{
        max-width: 100%;
    }

    .archive-menu-items .item>.text_a {
        float: left;
        width: 98%;
        margin: 1%;
    }

    .archive-menu-items .item>.text .role {
        font-size: 15px;
    }


}

.company {
    width: 100%;
    max-width: 1200px;
    margin: 50px auto 0px;
    height: 100%;
    padding-bottom: 150px;
    padding: 0 15px 15px;
}


.flexsidemenu{
    display:flex;
    flex-flow: column;
}

.flexsidemenu > div{
    flex:0 0 50%;
}




.menuTable {
    margin-top: 30px;
    /* margin-bottom: 100px; */
    width:100%;
}

.menuTable th,
.menuTable td {
    border: 1px dashed #d6d6d6;
    text-align: left;
    font-size:16px;
}

.menuTable th {
    width: 80%;
    border-left: 0;
    padding: 10px 1% 10px;
    font-weight: 400;
}

.menuTable td {
    border-right: 0;
    padding: 10px 15px 10px 10px;
    text-align: right;
}

.menuTable tr {
    border-bottom: dashed 1px #eee;
    /*   cursor: pointer; */
}


/*   .menuTable tr:hover{
background-color: #9E9E9E;
color:#fff;

} */

.menuTable th:before {
    font-family: 'themify';
    content: "\e724";
    /* color: #d00e00; */
    left: 0;
    padding-right: 10px;
    font-size: 14px;
}

@media only screen and (max-width: 500px) {
    .menuTable th {
        width: 75%;
        border-left: 0;
        padding: 18px 0 16px;
    }

    .menuTable td {
        border-right: 0;
        padding: 10px 10px 10px 10px;
        text-align: right;
    }
}


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

    .flexsidemenu > div{
        flex:0 0 100%;
    }

}



.companyScenery {
    margin: 120px -1000%;
    height: 255px;
    background: #ddd;
    background: url(css/../img/company/bg_company01.jpg);
    -webkit-animation: bgscroll 500s linear infinite;
    animation: bgscroll 500s linear infinite
}

@font-face {
    font-family: 'design_plus';
    src: url(https://demo.tcd-theme.com/tcd081/wp-content/themes/tree_tcd081/fonts/design_plus.eot?v=1.0);
    src: url(https://demo.tcd-theme.com/tcd081/wp-content/themes/tree_tcd081/fonts/design_plus.eot?v=1.0#iefix) format('embedded-opentype'), url(https://demo.tcd-theme.com/tcd081/wp-content/themes/tree_tcd081/fonts/design_plus.woff?v=1.0) format('woff'), url(https://demo.tcd-theme.com/tcd081/wp-content/themes/tree_tcd081/fonts/design_plus.ttf?v=1.0) format('truetype'), url(https://demo.tcd-theme.com/tcd081/wp-content/themes/tree_tcd081/fonts/design_plus.svg?v=1.0#design_plus) format('svg');
    font-weight: 400;
    font-style: normal
}

#container {
    position: relative;
    height: 100%
}
/* 
#main_contents {
width: 1160px;
margin: 0 auto;
position: relative;
-webkit-box-sizing: border-box;
box-sizing: border-box
}

body.home #main_contents {
padding-top: 50px
}

body.home.active_header #main_contents {
padding-top: 170px
}

body.single #main_contents {
padding-top: 70px
}

body.single-menu #main_contents {
padding-top: 0
}

#main_contents:before {
content: '';
height: 100%;
width: 1px;
position: absolute;
top: 0;
left: 149px;
z-index: 20
}

#main_contents:after {
content: '';
height: 100%;
width: 1px;
position: absolute;
top: 0;
right: 149px;
z-index: 20
}

#main_contents_line {
height: 100%;
width: 1px;
position: absolute;
top: 0;
left: 50%;
z-index: 20
}

#main_col {
width: 860px;
margin: 0 auto;
padding: 0 0 100px;
z-index: 100;
position: relative
}

body.hide_line #main_contents {
border: none !important
}

body.hide_line #main_contents:before,
body.hide_line #main_contents:after,
body.hide_line #main_contents_line {
display: none
}

#side_headline {
line-height: 1.5;
position: absolute;
top: 150px;
left: 0;
width: 150px;
writing-mode: vertical-rl;
display: inline-block;
text-align: left;
display: -webkit-box;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
-ms-flex-wrap: wrap;
-webkit-flex-wrap: wrap;
flex-wrap: wrap;
display: -webkit-box;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
align-items: center
}

#side_headline span {
display: block
}

#side_headline .main {
font-weight: 600;
font-size: 24px
}

#side_headline .sub {
font-weight: 500;
font-size: 16px
}

body.single #side_headline {
top: 70px
}

#page_content {
width: 860px;
margin: 0 auto;
padding: 150px 0 150px;
position: relative;
z-index: 100
}

.lp_top_headline {
font-size: 36px !important;
color: #ff4000;
text-align: center;
margin: -10px 0 15px !important
}

.lp_top_desc {
line-height: 2.6;
text-align: center;
margin: 0 0 95px
}

.lp_top_image {
margin: 0 0 90px
}

.lp_image_list {
margin: 90px 0 105px
}

.lp_image_list .item {
width: 50%;
float: left
}

.lp_image_list img {
display: block
}

.lp_image_list .desc {
line-height: 2.6;
padding: 0 50px 20px
}

.lp_list_headline {
text-align: center;
margin: 0 0 100px
}

.lp_list_headline h3 {
font-size: 36px !important;
margin: 0 !important;
line-height: 1.3;
position: relative;
font-weight: 500
}

.lp_list_headline p {
display: block;
font-size: 16px;
margin: 5px 0 0
}

.lp_list_area {
background: #f7f6f5;
padding: 50px;
text-align: center;
margin: 0 0 100px
}

.lp_list_area .item {
margin: 0 0 55px
}

.lp_list_area .item:last-of-type {
margin-bottom: 0
}

.lp_list_area h4 {
color: #ff3c00;
margin: 0 0 10px !important;
font-size: 18px !important;
font-weight: 600 !important
}

.lp_address {
text-align: center
}

.lp_address img {
display: block;
margin: 0 auto 40px
}

.lp_address .link_button {
margin: 40px 0 0
}

.lp_address .link_button a {
background: #000;
color: #fff;
display: inline-block;
min-width: 270px;
height: 60px;
line-height: 60px;
padding: 0 20px;
font-size: 16px;
-webkit-box-sizing: border-box;
box-sizing: border-box
}

.lp_address .link_button a:hover {
background: #ff3f00;
color: #fff
}

#lp_header #header_logo {
width: auto;
height: auto;
border: none;
top: 30px;
-ms-transform: none;
-webkit-transform: none;
transform: none
}

#lp_header #header_logo .logo {
left: auto;
top: auto;
position: relative;
-ms-transform: none;
-webkit-transform: none;
transform: none
}

body.display_only_logo.page_header_logo_position_type1 #header_logo {
left: 30px
}

body.display_only_logo.page_header_logo_position_type2 #header_logo {
left: 50%;
-ms-transform: translateX(-50%) !important;
-webkit-transform: translateX(-50%) !important;
transform: translateX(-50%) !important
}

body.display_only_logo.page_header_logo_position_type3 #header_logo {
left: auto;
right: 30px
}

#page_content .page_animate_item {
opacity: 0;
top: 70px;
position: relative;
-webkit-transition: all 1.3s cubic-bezier(.165, .84, .44, 1) .3s, opacity .8s cubic-bezier(.165, .84, .44, 1) .3s;
transition: all 1.3s cubic-bezier(.165, .84, .44, 1) .3s, opacity .8s cubic-bezier(.165, .84, .44, 1) .3s
}

#page_content .page_animate_item.active {
opacity: 1;
top: 0
}

#access_page {
width: 860px;
margin: 0 auto;
padding: 150px 0 100px;
position: relative;
z-index: 100
}

#access_page .page_animate_item {
-webkit-transition: all 1.3s cubic-bezier(.165, .84, .44, 1) .3s, opacity .8s cubic-bezier(.165, .84, .44, 1) .3s;
transition: all 1.3s cubic-bezier(.165, .84, .44, 1) .3s, opacity .8s cubic-bezier(.165, .84, .44, 1) .3s
}

.access_content1 {
position: relative;
margin: 0 0 90px
}

.access_content1 .image {
width: 100%;
height: 600px
}

.access_content1 .desc {
text-align: center;
margin-top: 90px
}

.access_content1 .cb_side_headline {
left: -150px
}

#access_page .cb_side_headline {
opacity: 0;
top: 70px !important
}

#access_page .cb_side_headline.active {
opacity: 1;
top: 0 !important
}

#access_page .access_content1 .image {
opacity: 0;
top: 70px;
position: relative
}

#access_page .access_content1 .image.active {
opacity: 1;
top: 0
}

#access_page .access_content1 .desc {
opacity: 0;
top: 70px;
position: relative
}

#access_page .access_content1 .desc.active {
opacity: 1;
top: 0
}

.access_content2 {
position: relative;
margin: 0 0 70px
}

.access_content2 .item {
width: 50%;
float: left
}

.access_content2 .item img {
width: 100%;
height: auto;
display: block
}

.access_content2 .desc {
line-height: 2.6;
font-size: 16px;
padding: 18px 50px
}

.access_content2.layout_type2 .item:nth-child(2) {
margin-top: 25%
}

.access_content2.layout_type3 .item:nth-child(1) {
margin-top: 25%
}

#access_page .access_content2 img,
#access_page .access_content2 .desc {
opacity: 0;
top: 70px;
position: relative
}

#access_page .access_content2 img.active,
#access_page .access_content2 .desc.active {
opacity: 1;
top: 0
}

.access_content3 {
position: relative;
margin: 0 0 70px
}

.access_content3 .headline {
font-size: 36px;
margin: 0 0 90px;
top: -5px;
text-align: center;
line-height: 1.3;
position: relative;
font-weight: 500
}

.access_content3 .headline .sub {
display: block;
font-size: 16px;
margin: 5px 0 0
}

.access_google_map {
width: 1054px;
margin: 0 0 0 -100px;
height: 600px;
border: 3px solid #ddd;
background: #ddd
}

.access_google_map .pb_googlemap_embed {
width: 100%;
height: 600px
}

.access_google_map .pb_googlemap_custom-overlay-inner {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
position: absolute;
top: -114px;
left: -50px;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
width: 100px !important;
height: 100px !important;
border-radius: 50%;
font-size: 18px;
text-align: center
}

.access_google_map .pb_googlemap_custom-overlay-inner:after {
display: block;
position: absolute;
right: 0;
bottom: -15px;
left: 0;
width: 0;
height: 0;
margin: auto;
border-width: 16px 5px 0;
border-style: solid;
content: ""
}

.access_content3 .link_button {
text-align: center;
margin: 50px 0 0
}

.access_content3 .link_button a {
background: #000;
color: #fff;
display: inline-block;
min-width: 270px;
height: 60px;
line-height: 60px;
padding: 0 20px;
font-size: 16px;
-webkit-box-sizing: border-box;
box-sizing: border-box
}

.access_content3 .logo_image {
margin: 100px 0 0
}

.access_content3 .logo_image img {
display: block;
margin: 0 auto
}

.access_content3 .desc {
text-align: center;
margin-top: 36px
}

.access_content3 .tel_area {
text-align: center;
margin-top: 38px
}

.access_content3 .number {
margin: 15px 0 0
}

#access_page .access_content3 .headline {
opacity: 0;
top: 70px
}

#access_page .access_content3 .headline.active {
opacity: 1;
top: 0
}

#access_page .access_content3 .access_google_map {
opacity: 0;
top: 70px;
position: relative
}

#access_page .access_content3 .access_google_map.active {
opacity: 1;
top: 0
}

#access_page .access_content3 .link_button {
opacity: 0;
top: 70px;
position: relative
}

#access_page .access_content3 .link_button.active {
opacity: 1;
top: 0
}

#access_page .access_content3 .logo_image {
opacity: 0;
top: 70px;
position: relative
}

#access_page .access_content3 .logo_image.active {
opacity: 1;
top: 0
}

#access_page .access_content3 .desc {
opacity: 0;
top: 70px;
position: relative
}

#access_page .access_content3 .desc.active {
opacity: 1;
top: 0
}

#access_page .access_content3 .tel_area {
opacity: 0;
top: 70px;
position: relative
}

#access_page .access_content3 .tel_area.active {
opacity: 1;
top: 0
}
*/

#design_content1 {
    width: 860px;
    margin: 0 auto;
    padding: 150px 0 100px;
    position: relative;
    z-index: 100
}

#design_content1 .page_animate_item {
    -webkit-transition: all 1.3s cubic-bezier(.165, .84, .44, 1) .3s, opacity .8s cubic-bezier(.165, .84, .44, 1) .3s;
    transition: all 1.3s cubic-bezier(.165, .84, .44, 1) .3s, opacity .8s cubic-bezier(.165, .84, .44, 1) .3s
}

.design1_content1 {
    position: relative;
    margin: 0 0 48px
}

.design1_content1 .cb_side_headline {
    left: -150px
}

.design1_content1 .image_area {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap
}

.design1_content1 .image {
    width: 430px;
    height: 430px;
    position: relative;
    display: block
}

.design1_content1 .image2 {
    margin-top: 25%;
    margin-bottom: -25%
}

.design1_content1 .catch_area {
    padding: 40px 50px;
    width: 50%;
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.design1_content1 .catch {
    line-height: 1.9;
    font-weight: 500;
    font-size: 20px
}

.design1_content1 .desc {
    margin-top: 30px;
    line-height: 2.6;
    font-size: 16px
}

.design1_content1.layout_type2 .cb_side_headline {
    left: auto;
    right: -150px
}

.design1_content1.layout_type2 .image1 {
    margin-top: 25%;
    margin-bottom: -25%
}

.design1_content1.layout_type2 .image2 {
    margin-top: 0
}

.design1_content1.layout_type2 .catch_area {
    float: right
}

.design1_content1:last-of-type {
    margin: 0
}

#design_content1 .cb_side_headline {
    opacity: 0;
    top: 70px !important
}

#design_content1 .cb_side_headline.active {
    opacity: 1;
    top: 0 !important
}

#design_content1 .design1_content1 .image {
    opacity: 0;
    top: 70px
}

#design_content1 .design1_content1 .image.active {
    opacity: 1;
    top: 0
}

#design_content1 .design1_content1 .catch_area {
    opacity: 0;
    top: 70px
}

#design_content1 .design1_content1 .catch_area.active {
    opacity: 1;
    top: 0
}

.design1_content2 {
    position: relative;
    z-index: 30
}

.design1_content2 {
    opacity: 0;
    top: 70px
}

.design1_content2.active {
    opacity: 1;
    top: 0
}

#design_content2 {
    width: 1200px;
    margin: 0 auto;
    padding: 0px 0 65px;
    position: relative;
    z-index: 100;
}

#design_content2 .page_animate_item {
    -webkit-transition: all 1.3s cubic-bezier(.165, .84, .44, 1) .3s, opacity .8s cubic-bezier(.165, .84, .44, 1) .3s;
    transition: all 1.3s cubic-bezier(.165, .84, .44, 1) .3s, opacity .8s cubic-bezier(.165, .84, .44, 1) .3s
}

#design_content2 .cb_side_headline {
    opacity: 0;
    top: 70px !important
}

#design_content2 .cb_side_headline.active {
    opacity: 1;
    top: 0 !important
}

.design2_content1 {
    position: relative;
    margin: 0 0 0px;
}

.design2_content1 .headline {
    font-size: 36px;
    margin: 0 0 95px;
    top: -5px;
    text-align: center;
    line-height: 1.3;
    position: relative;
    font-weight: 500
}

.design2_content1 .headline .sub {
    display: block;
    font-size: 16px;
    margin: 5px 0 0
}

.design2_content1 .main_content_area {
    position: relative
}

.design2_content1 .cb_side_headline {
    left: -150px;
    top: 167px
}

.design2_content1.layout_type2 .cb_side_headline {
    left: auto;
    right: -150px
}

.design2_content1.no_headline .cb_side_headline {
    top: 0
}

.design2_content1 .image_area img {
    width: 50%;
    float: left;
    display: block
}

.design2_content1 .desc {
    margin-top: 90px
}

.design2_content1 .tel_number {
    text-align: center;
    margin-top: 90px
}

.design2_content1 .tel_label {
    font-size: 14px;
    margin: 0;
    line-height: 1
}

.design2_content1 .number {
    font-size: 28px;
    margin: 0
}

#design_content2 .design2_content1 .headline {
    opacity: 0;
    top: 70px
}

#design_content2 .design2_content1 .headline.active {
    opacity: 1;
    top: 0
}

#design_content2 .design2_content1 .image_area {
    opacity: 0;
    top: 70px;
    position: relative
}

#design_content2 .design2_content1 .image_area.active {
    opacity: 1;
    top: 0
}

#design_content2 .design2_content1 .desc {
    opacity: 0;
    top: 70px;
    position: relative
}

#design_content2 .design2_content1 .desc.active {
    opacity: 1;
    top: 0;
    padding: 0;
}

.design2_content2 {
    position: relative;
    margin: 0 0 90px -20px;
    max-width: 1280px;
    height: 460px;
    width: 100%;
    margin: 0 auto;
}

.content-box h2{
    text-align: center;
    font-size: 1.5rem;
    margin-bottom: 10px;
}
.content-box p{
    text-align: center;
}

.design2_content2_inner {
    width: 1200px;
    height: 460px;
    /* position: relative; */
}

.design2_content2 .image {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0
}

.design2_content2 .overlay {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0
}

.design2_content2 .catch {
    position: absolute;
    left: 150px;
    z-index: 100;
    text-align: center;
    width: 100%;
    line-height: 1.9;
    font-weight: 500;
    top: 50%;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

#design_content2 .design2_content2 {
    opacity: 0;
    top: 70px
}

#design_content2 .design2_content2.active {
    opacity: 1;
    top: 0
}

.design2_content3 {
    position: relative;
    margin: 0 0 95px
}

.design2_content3 .headline {
    font-size: 36px;
    margin: 0;
    top: -5px;
    text-align: center;
    line-height: 1.3;
    position: relative;
    font-weight: 500
}

.design2_content3 .headline .sub {
    display: block;
    font-size: 16px;
    margin: 5px 0 0
}

.design2_content3 .desc {
    line-height: 2.6;
    text-align: center;
    margin: 80px 0 0
}

.design2_content3 .list_area {
    margin: 95px 10px 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}

.design2_content3 .list_area.list_num3 {
    margin: 95px 0 0 -100px;
    width: 1095px
}

.design2_content3 .list_headline {
    height: 60px;
    line-height: 60px;
    text-align: center
}

.design2_content3 .item {
    /* float: left */
}

.design2_content3 .item img{
    width:96%;
    margin:0 2% 2%;
}



.design2_content3 .list_num1 .item {
    width: 100%
}

.design2_content3 .list_num2 .item {
    /* width: calc(50% - 50px) */
    /* flex-wrap: wrap; */
    flex: 0 0 48%;
}

.design2_content3 .list_num3 .item {
    width: calc(100%/3 - 35px)
}

.design2_content3 .list_num2 .item:nth-child(1) {
    margin-right: 30px;
}

.design2_content3 .list_num3 .item:nth-child(1),
.design2_content3 .list_num3 .item:nth-child(2) {
    margin-right: 35px
}

.design2_content3 .content {
    padding: 10px 40px;
    text-align: center;
    line-height: 2.6;
    margin-bottom: 0;
}

#design_content2 .design2_content3 .headline {
    opacity: 0;
    top: 70px
}

#design_content2 .design2_content3 .headline.active {
    opacity: 1;
    top: 0
}

#design_content2 .design2_content3 .desc {
    opacity: 0;
    top: 70px;
    position: relative
}

#design_content2 .design2_content3 .desc.active {
    opacity: 1;
    top: 0
}

#design_content2 .design2_content3 .list_area {
    opacity: 0;
    top: 70px;
    /* position: relative */
}

#design_content2 .design2_content3 .list_area.active {
    opacity: 1;
    top: 0
}

.design2_content4 {
    position: relative;
    z-index: 30
}

.design2_content4 {
    opacity: 0;
    top: 70px
}

.design2_content4.active {
    opacity: 1;
    top: 0
}

#menu_archive_button {
    background: #000;
    width: 100%
}

#menu_archive_button ol {
    width: 1160px;
    margin: 0 auto;
    border-right: 1px solid red;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

#menu_archive_button ol.type2 {
    display: block
}

#menu_archive_button li {
    position: relative;
    -ms-flex: 1 1 0%;
    -webkit-flex: 1 1 0%;
    flex: 1 1 0%;
    margin-top: -1px;
    margin-right: -1px
}

#menu_archive_button ol.type2 li {
    flex: none;
    width: calc(25% + 1px);
    float: left
}

#menu_archive_button a {
    display: block;
    height: 70px;
    color: #fff;
    text-align: center;
    position: relative;
    border: 1px solid red
}

#menu_archive_button a div {
    position: relative;
    top: 50%;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

#menu_archive_button .main {
    font-size: 22px;
    display: block
}

#menu_archive_button .sub {
    font-size: 12px;
    display: block;
    margin: 7px 0 0
}

#menu_archive {
    width: 860px;
    margin: 0 auto;
    padding: 150px 0;
    position: relative;
    z-index: 100
}

#menu_list .item {
    position: relative;
    margin-bottom: 150px
}

#menu_list .item:last-of-type {
    margin-bottom: 0
}

#menu_list .title {
    font-size: 42px;
    margin: 0 0 35px;
    top: -10px;
    text-align: center;
    line-height: 1.3;
    position: relative;
    font-weight: 500
}

#menu_list .desc {
    text-align: center;
    line-height: 2.6;
    font-size: 16px;
    margin: -12px 0 87px
}

#menu_list .image_area {
    position: relative
}

#menu_list .cb_side_headline {
    left: -150px
}

#menu_list .large_image {
    width: 910px;
    height: 600px;
    left: 50px;
    position: relative
}

#menu_list .small_image {
    width: 530px;
    height: 400px;
    left: -100px;
    margin-top: -200px;
    position: relative
}

#menu_list .catch {
    width: 50%;
    line-height: 1.9;
    font-weight: 500;
    font-size: 20px;
    padding: 92px 50px 0;
    position: relative;
    margin-top: -200px;
    float: right;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

#menu_list .link_button {
    text-align: center;
    clear: both;
    margin-top: 100px
}

#menu_list .link_button a {
    background: #000;
    color: #fff;
    display: inline-block;
    min-width: 270px;
    height: 60px;
    line-height: 60px;
    padding: 0 20px;
    font-size: 16px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

#menu_list .item:nth-child(2n) .cb_side_headline {
    left: auto;
    right: -150px
}

#menu_list .item:nth-child(2n) .large_image {
    left: auto;
    right: 100px
}

#menu_list .item:nth-child(2n) .small_image {
    left: auto;
    right: -50%
}

#menu_list .item:nth-child(2n) .catch {
    float: none
}

#menu_list .menu_animate_item {
    opacity: 0;
    top: 70px;
    position: relative;
    -webkit-transition: all 1.3s cubic-bezier(.165, .84, .44, 1) .3s, opacity .8s cubic-bezier(.165, .84, .44, 1) .3s;
    transition: all 1.3s cubic-bezier(.165, .84, .44, 1) .3s, opacity .8s cubic-bezier(.165, .84, .44, 1) .3s
}

#menu_list .cb_side_headline.menu_animate_item {
    position: absolute
}

#menu_list .menu_animate_item.active {
    opacity: 1;
    top: 0
}

#menu_list .title.menu_animate_item.active {
    top: -10px
}

#menu_single {
    width: 860px;
    margin: 0 auto;
    padding: 150px 0;
    position: relative;
    z-index: 100
}

.menu_content1 {
    position: relative;
    margin: 0 0 150px
}

.menu_content1:last-of-type {
    margin-bottom: 0
}

#top_desc {
    text-align: center;
    line-height: 2.6;
    font-size: 16px;
    margin: -12px 0 137px
}

.menu_content1 .top_headline {
    font-size: 36px;
    margin: 0 0 85px;
    top: -10px;
    text-align: center;
    line-height: 1.3;
    position: relative;
    font-weight: 500
}

.menu_content1 .top_headline .sub {
    display: block;
    font-size: 16px;
    margin: 5px 0 0
}

.menu_content1 .main_content_area {
    position: relative
}

.menu_content1 .cb_side_headline {
    left: -150px
}

.menu_content1.side_headline_type2 .cb_side_headline {
    left: auto;
    right: -150px
}

.menu_content1 .image_area {
    font-size: 0;
    margin: 0
}

.menu_content1 .image_area .item {
    width: 50%;
    display: inline-block;
    vertical-align: top;
    position: relative;
}

.menu_content1 .image_area .item img {
    display: block;
    width: 100%;
    height: auto;
}

.menu_content1 .image_area .item2 {
    width: 25%;
    display: inline-block;
    vertical-align: top;
    position: relative;
}

.menu_content1 .image_area .item2 img {
    display: block;
    width: 100%;
    height: auto;
}


.menu_content1 .image_area .desc {
    font-size: 16px;
    line-height: 2;
    padding: 20px 0px;
}

.menu_content1.image_layout_type2 .item:nth-child(even) {
    margin-top: 140px
}

.menu_content1.image_layout_type3 .item:nth-child(odd) {
    margin-top: 140px
}

.menu_content1 .data_list {
    background: #f7f6f5;
    margin: 70px 50px 0;
    padding: 55px 60px 60px
}

.menu_content1 .data_list .headline {
    font-size: 24px;
    margin: 0 0 53px;
    text-align: center;
    line-height: 1.3;
    position: relative;
    font-weight: 500
}

.menu_content1 .data_list dl {
    border-bottom: 1px solid #ddd;
    font-size: 16px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-justify-content: space-between;
    -webkit-justify-content: space-between;
    justify-content: space-between
}

.menu_content1 .data_list dt {
    width: 500px;
    padding: 10px 0 8px;
    line-height: 2.6;
    margin: 0;
    border-top: 1px solid #ddd;
    text-align: left;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-align-items: center;
    -webkit-align-items: center;
    align-items: center
}

.menu_content1 .data_list dd {
    text-align: right;
    -webkit-width: calc(100% - 500px);
    width: calc(100% - 500px);
    padding: 10px 0 8px;
    margin: 0;
    border-top: 1px solid #ddd;
    line-height: 2.6;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.menu_content3 {
    width: 760px;
    margin: 0 auto 150px
}

.menu_content3 a {
    display: block;
    padding: 60px;
    width: 100%;
    height: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-align-items: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-transition: none;
    transition: none
}

.menu_content3 img {
    margin: 0 60px 0 0
}

.menu_content3 .catch_area {
    -ms-flex: 1 1 0%;
    -webkit-flex: 1 1 0%;
    flex: 1 1 0%
}

.menu_content3 .catch {
    font-size: 20px;
    line-height: 1.5;
    font-weight: 600;
    -webkit-transition: all .2s ease;
    transition: all .2s ease
}

.menu_content3 .desc {
    font-size: 16px;
    line-height: 1.8;
    margin: 10px 0 0;
    -webkit-transition: all .2s ease;
    transition: all .2s ease
}

#menu_single .menu_animate_item {
    opacity: 0;
    top: 70px;
    position: relative;
    -webkit-transition: all 1.3s cubic-bezier(.165, .84, .44, 1) .3s, opacity .8s cubic-bezier(.165, .84, .44, 1) .3s;
    transition: all 1.3s cubic-bezier(.165, .84, .44, 1) .3s, opacity .8s cubic-bezier(.165, .84, .44, 1) .3s
}

#menu_single .cb_side_headline.menu_animate_item {
    position: absolute
}

#menu_single .menu_animate_item.active {
    opacity: 1;
    top: 0
}

#menu_single .top_headline.menu_animate_item.active {
    top: -10px
}

.pc .megamenu_button+ul {
    display: none !important
}

.megamenu_menu_list {
    display: none;
    overflow: hidden;
    width: 100%;
    position: absolute;
    top: 120px;
    z-index: 200;
    left: 0;
    right: 0;
    margin: auto
}

.megamenu_menu_list_inner {
    width: 100%;
    height: 325px;
    position: relative
}

.megamenu_menu_list .item {
    width: calc(100%/3);
    height: 325px;
    float: left
}

.megamenu_menu_list .item a {
    display: block;
    position: relative;
    width: 100%;
    height: 100%
}

.megamenu_menu_list .image_wrap {
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
    z-index: 1;
    overflow: hidden
}

.megamenu_menu_list .image {
    width: 100%;
    height: 100% !important;
    display: block;
    overflow: hidden;
    position: relative;
    z-index: 2
}

.megamenu_menu_list .title_area {
    z-index: 3;
    width: 100%;
    padding: 50px 30px 30px;
    position: absolute;
    bottom: 0;
    color: #fff;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background: -moz-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 100%);
    background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 100%);
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, .6) 100%)
}

.megamenu_menu_list .title {
    font-size: 26px;
    font-weight: 500
}

.megamenu_menu_list .sub_title {
    font-size: 12px;
    margin: 10px 0 0
}

.megamenu_menu_list .prev_item {
    top: 140px;
    left: 0
}

.megamenu_menu_list .next_item {
    top: 140px;
    right: 0
}

.megamenu_menu_list .carousel_arrow:before {
    color: #fff
}

.megamenu_menu_list .carousel_arrow:hover:before {
    color: orange
}

.megamenu_blog_list {
    display: none;
    width: 100%;
    height: 325px;
    position: absolute;
    top: 120px;
    z-index: 500;
    left: 0;
    right: 0;
    margin: auto
}

.megamenu_blog_list_inner {
    width: 1160px;
    height: 260px;
    margin: 35px auto 0;
    position: relative
}

.megamenu_blog_slider_wrap {
    display: none;
    position: relative;
    width: 1160px;
    height: 260px;
    overflow: hidden
}

.megamenu_blog_slider_wrap:first-child {
    display: block
}

.megamenu_blog_slider {
    margin: 0 0 0 70px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    overflow: hidden;
    width: 1040px;
    height: 260px
}

.megamenu_blog_slider .item {
    width: 240px;
    height: 255px;
    float: left;
    margin: 0 20px 0 0
}

.megamenu_blog_slider .image_link {
    display: block;
    background: 0 0
}

.megamenu_blog_slider .image_wrap {
    display: block;
    width: 100%;
    height: 153px;
    position: relative;
    z-index: 1;
    overflow: hidden
}

.megamenu_blog_slider .image {
    width: 100%;
    height: 100% !important;
    display: block;
    overflow: hidden;
    position: relative;
    z-index: 2
}

.megamenu_blog_slider .title_area {
    padding: 10px 20px;
    background: #fff;
    height: 115px
}

.megamenu_blog_slider .title {
    font-weight: 500;
    font-size: 14px;
    line-height: 2;
    max-height: 4em;
    overflow: hidden;
    visibility: visible
}

.megamenu_blog_slider .title span {
    display: -webkit-inline-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2
}

.megamenu_blog_slider .category,
.megamenu_blog_slider .date {
    font-size: 12px;
    margin: 8px 0 0
}

.megamenu_blog_slider .category a,
.megamenu_blog_slider .date {
    color: #999
}

.megamenu_blog_slider_wrap .prev_item {
    top: 105px;
    left: 10px
}

.megamenu_blog_slider_wrap .next_item {
    top: 105px;
    right: 10px
}

.megamenu_blog_slider_wrap .carousel_arrow:before {
    color: #000
}

.carousel_arrow {
    width: 50px;
    height: 50px;
    line-height: 50px;
    text-align: center;
    position: absolute;
    cursor: pointer;
    z-index: 10;
    overflow: hidden
}

.carousel_arrow:before {
    font-family: 'design_plus';
    color: #000;
    font-size: 18px;
    display: block;
    height: 50px;
    line-height: 50px;
    width: 100%;
    text-align: center;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-transition: all .2s ease;
    transition: all .2s ease
}

.carousel_arrow.prev_item:before {
    content: '\e90f'
}

.carousel_arrow.next_item:before {
    content: '\e910';
    left: 0;
    right: 0
}

.carousel_arrow:hover:before {
    color: #ccc
}

#index_header_content {
    z-index: 1;
    position: relative
}

#index_slider_wrap {
    height: 100%;
    position: relative;
    background: #000
}

#index_slider {
    width: 100%;
    height: 100vh;
    overflow: hidden;
    position: relative
}

#index_slider .item {
    width: 100%;
    height: 100vh;
    position: relative
}

#index_slider .item .image {
    width: 100%;
    height: 100%;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    z-index: 2;
    position: absolute;
    top: 0;
    left: 0
}

#index_slider .item .image.mobile {
    display: none
}

#index_video {
    width: 100%;
    height: 815px;
    position: relative;
    overflow: hidden
}

#index_video_wrap {
    margin: 0 auto;
    width: 100%;
    position: absolute
}

#index_video_wrap.type1 {
    top: 50%;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

#index_video_wrap.type2 {
    top: 0;
    left: 50%;
    -ms-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

#index_video_inner {
    padding-top: 56.25%;
    position: relative;
    width: 100%
}

#index_video_mp4,
#youtube_video_player {
    height: 100% !important;
    position: absolute;
    left: 0;
    top: 0;
    width: 100% !important
}

#video_poster {
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 1
}

#index_slider .caption {
    padding: 0;
    width: 860px;
    margin: auto;
    position: absolute;
    text-align: center;
    z-index: 4;
    left: 0;
    right: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

#index_slider .direction_type1 .caption_inner {
    text-align: left
}

#index_slider .direction_type2 .caption_inner {
    text-align: center
}

#index_slider .direction_type3 .caption_inner {
    text-align: right
}

#index_slider .catch {
    line-height: 1.3;
    word-wrap: break-word;
    position: relative;
    font-weight: 500;
    margin: 0
}

#index_slider .catch_image img {
    display: inline-block;
    margin: 0;
    max-width: 100%;
    height: auto
}

#index_slider .catch_image img.mobile {
    display: none
}

#index_slider .catch_image.use_catch_bg {
    width: 200px;
    height: 200px;
    margin: 0 auto;
    position: relative;
    display: inline-block
}

#index_slider .catch_image.use_catch_bg img {
    position: absolute;
    left: 50%;
    top: 50%;
    -ms-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

#index_slider .direction_type1 .catch_image.use_catch_bg {
    margin: 0
}

#index_slider .direction_type3 .catch_image.use_catch_bg {
    margin: 0
}

#index_slider .desc {
    font-size: 16px;
    line-height: 2.6;
    margin: 25px 0 0;
    position: relative
}

#index_slider .button {
    border: 1px solid #fff;
    font-size: 16px;
    min-width: 260px;
    height: 60px;
    line-height: 60px;
    text-align: center;
    position: relative;
    padding: 0 60px;
    margin-top: 35px;
    display: inline-block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all .2s ease;
    transition: all .2s ease
}

#index_slider .caption.mobile {
    display: none
}

#index_slider .overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 3
}

#index_slider .item.animate .image {
    transform: scale(1.1)
}

#index_slider .item.animate .image {
    -webkit-animation: zoomIn2 1.7s cubic-bezier(.075, .82, .165, 1) forwards .1s;
    animation: zoomIn2 1.7s cubic-bezier(.075, .82, .165, 1) forwards .1s
}

#index_slider .item.first_animate .image {
    -webkit-animation: zoomIn2 1.7s cubic-bezier(.075, .82, .165, 1) forwards .6s !important;
    animation: zoomIn2 1.7s cubic-bezier(.075, .82, .165, 1) forwards .6s !important
}

#index_slider .caption .catch,
#index_slider .caption .catch_image,
#index_slider .caption .desc,
#index_slider .caption .button {
    opacity: 0;
    position: relative
}

#index_slider .item.first_animate .caption .animate1,
#index_slider.video .caption.first_animate .animate1 {
    -webkit-animation: slideUp 1s cubic-bezier(.165, .84, .44, 1) forwards 2s !important;
    animation: slideUp 1.3s cubic-bezier(.165, .84, .44, 1) forwards 2s !important
}

#index_slider .item.first_animate .caption .animate2,
#index_slider.video .caption.first_animate .animate2 {
    -webkit-animation: slideUp 1s cubic-bezier(.165, .84, .44, 1) forwards 2.5s !important;
    animation: slideUp 1.3s cubic-bezier(.165, .84, .44, 1) forwards 2.5s !important
}

#index_slider .item.first_animate .caption .animate3,
#index_slider.video .caption.first_animate .animate3 {
    -webkit-animation: slideUp 1s cubic-bezier(.165, .84, .44, 1) forwards 3s !important;
    animation: slideUp 1.3s cubic-bezier(.165, .84, .44, 1) forwards 3s !important
}

#index_slider .item.animate .caption .animate1,
#index_slider.video .caption.animate .animate1 {
    -webkit-animation: slideUp 1s cubic-bezier(.165, .84, .44, 1) forwards 1s;
    animation: slideUp 1.3s cubic-bezier(.165, .84, .44, 1) forwards 1s
}

#index_slider .item.animate .caption .animate2,
#index_slider.video .caption.animate .animate2 {
    -webkit-animation: slideUp 1s cubic-bezier(.165, .84, .44, 1) forwards 1.5s;
    animation: slideUp 1.3s cubic-bezier(.165, .84, .44, 1) forwards 1.5s
}

#index_slider .item.animate .caption .animate3,
#index_slider.video .caption.animate .animate3 {
    -webkit-animation: slideUp 1s cubic-bezier(.165, .84, .44, 1) forwards 2s;
    animation: slideUp 1.3s cubic-bezier(.165, .84, .44, 1) forwards 2s
}

.cb_contents_inner {
    width: 1160px;
    margin: 0 auto;
    position: relative;
    z-index: 30
}

.cb_side_headline {
    line-height: 1.55;
    position: absolute;
    top: 0;
    left: 0;
    width: 150px;
    writing-mode: vertical-rl;
    display: inline-block;
    text-align: left;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: center
}

.cb_side_headline span {
    display: block
}

.cb_side_headline .main {
    font-weight: 600
}

.cb_side_headline .sub {
    font-weight: 500
}

.cb_contents .link_button {
    text-align: center
}

.cb_contents .link_button a {
    display: inline-block;
    min-width: 270px;
    height: 60px;
    line-height: 60px;
    padding: 0 20px;
    font-size: 16px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

body.home .animate_item,
body.home .animate_item2 {
    -webkit-transition: all 1.3s cubic-bezier(.165, .84, .44, 1) .3s, opacity .8s cubic-bezier(.165, .84, .44, 1) .3s;
    transition: all 1.3s cubic-bezier(.165, .84, .44, 1) .3s, opacity .8s cubic-bezier(.165, .84, .44, 1) .3s
}

body.home .cb_side_headline {
    opacity: 0;
    top: 70px !important
}

body.home .cb_side_headline.active {
    opacity: 1;
    top: 0 !important
}

.index_design_content {
    padding: 100px 0
}

.index_design_content.cb_contents:nth-last-of-type(2) {
    padding-bottom: 150px
}

.index_design_content .content_area {
    width: 535px;
    padding: 71px 60px 67px;
    position: relative;
    left: 45px;
    top: -200px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.index_design_content .content_area .catch {
    line-height: 1.8;
    font-weight: 500
}

.index_design_content .content_area .desc {
    line-height: 2.6;
    margin: 40px 0 0
}

.index_design_content .image_wrap {
    width: 100%;
    height: 600px;
    position: relative
}

.index_design_content .image {
    width: -webkit-calc(50vw + 385px);
    width: calc(50vw + 385px);
    height: 100%;
    left: 195px;
    position: absolute
}

.index_design_content .link_button {
    margin-top: -100px
}

.index_design_content.layout_type1 .cb_side_headline {
    left: auto;
    right: 0
}

.index_design_content.layout_type1 .content_area {
    left: 580px
}

.index_design_content.layout_type1 .image {
    left: auto;
    right: 195px
}

.index_design_content .image_wrap {
    opacity: 0;
    top: 70px
}

.index_design_content .image_wrap.active {
    opacity: 1;
    top: 0
}

.index_design_content .link_button {
    opacity: 0;
    top: 70px;
    position: relative
}

.index_design_content .link_button.active {
    opacity: 1;
    top: 0
}

.index_message {
    position: relative
}

.index_message .cb_contents_inner {
    width: 860px
}

.index_message .catch {
    width: 50%;
    line-height: 1.7;
    font-weight: 500;
    font-size: 20px;
    padding: 0 50px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.index_message.layout_type2 .catch {
    float: right
}

.index_message {
    opacity: 0;
    top: 70px;
    position: relative
}

.index_message.active {
    opacity: 1;
    top: 0
}

.index_image_slider {
    padding: 100px 0
}

.cb_image_slider {
    width: 860px;
    height: 600px;
    margin: 0 auto;
    position: relative
}

.cb_image_slider .animate_background {
    display: block;
    width: 100%;
    height: 600px
}

.cb_image_slider .image_wrap {
    display: block;
    width: 100%;
    height: 600px;
    position: relative;
    z-index: 1;
    overflow: hidden
}

.cb_image_slider .image {
    width: 100%;
    height: 100% !important;
    display: block;
    overflow: hidden;
    position: relative;
    z-index: 2
}

.cb_image_slider .slick-dots {
    position: absolute;
    bottom: 20px;
    left: 0;
    width: 100%;
    z-index: 1;
    text-align: center
}

.cb_image_slider .slick-dots li {
    display: inline-block;
    width: 12px;
    height: 12px;
    margin: 0 4px;
    font-size: 12px
}

.cb_image_slider .slick-dots button {
    cursor: pointer;
    border: none;
    color: transparent;
    width: 12px;
    height: 12px;
    display: block;
    font-size: 0;
    background: 0 0;
    position: relative
}

.cb_image_slider .slick-dots button:before {
    content: '';
    display: block;
    width: 12px;
    height: 12px;
    line-height: 13px;
    border: 1px solid #000;
    background: #fff;
    border-radius: 20px;
    position: absolute;
    top: 0;
    left: 0
}

.cb_image_slider .slick-dots button:hover:before,
.cb_image_slider .slick-dots .slick-active button:before {
    background: #000
}

.index_image_slider .content_area {
    width: 860px;
    margin: 0 auto
}

.index_image_slider .content_area .catch {
    line-height: 1.7;
    font-weight: 500;
    float: left;
    width: 50%;
    padding: 50px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.index_image_slider .content_area .desc {
    line-height: 2.6;
    float: right;
    width: 50%;
    padding: 50px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.cb_image_slider {
    opacity: 0;
    top: 70px
}

.cb_image_slider.active {
    opacity: 1;
    top: 0
}

.index_image_slider .content_area {
    opacity: 0;
    top: 70px;
    position: relative
}

.index_image_slider .content_area.active {
    opacity: 1;
    top: 0
}

.index_image_slider .link_button {
    opacity: 0;
    top: 70px;
    position: relative
}

.index_image_slider .link_button.active {
    opacity: 1;
    top: 0
}

.index_post_list {
    padding: 100px 0;
    position: relative
}

.index_post_list:after {
    content: '';
    width: 100vw;
    height: 100%;
    background: #f7f6f5;
    position: absolute;
    top: 0;
    z-index: -1;
    left: 50%;
    -ms-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

.index_post_list .cb_side_headline {
    left: auto;
    right: 0
}

.index_post_list .headline {
    line-height: 1.7;
    font-weight: 500;
    margin: 0 0 80px;
    text-align: center
}

.index_post_list .post_list_area {
    width: 860px;
    margin: 0 auto;
    position: relative;
    padding: 0 0 110px
}

.index_post_list .post_list {
    width: 820px;
    margin: 0 auto
}

.index_post_list .post_list .item {
    width: 350px;
    position: relative;
    margin: 0 30px
}

.index_post_list .image_link {
    display: block;
    width: 100%;
    height: 230px
}

.index_post_list .image_wrap {
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
    z-index: 1;
    overflow: hidden
}

.index_post_list .image {
    width: 100%;
    height: 100% !important;
    display: block;
    overflow: hidden;
    position: relative;
    z-index: 2
}

.index_post_list .title_area {
    background: #fff;
    height: 135px;
    padding: 25px 30px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.index_post_list .title {
    font-weight: 600;
    line-height: 1.8;
    max-height: 3.6em;
    font-size: 16px;
    overflow: hidden;
    visibility: visible
}

.index_post_list .title span {
    display: -webkit-inline-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2
}

.index_post_list .category {
    margin-top: 10px;
    font-size: 12px
}

.index_post_list .category a {
    color: #666
}

.index_post_list .date_area {
    font-weight: 600;
    position: relative;
    margin: 0 0 25px
}

.index_post_list .date_area .month {
    float: left;
    font-size: 26px
}

.index_post_list .date_area .date {
    float: left;
    border-left: 1px solid #000;
    text-align: center;
    padding: 0 0 0 15px;
    margin: 0 0 0 15px
}

.index_post_list .date_area .date1 {
    display: block;
    font-size: 26px
}

.index_post_list .date_area .date2 {
    color: #999;
    margin: 5px 0 0;
    display: block;
    font-size: 12px;
    text-transform: uppercase
}

.index_post_list .slick-dots {
    position: absolute;
    bottom: -62px;
    left: 0;
    width: 100%;
    z-index: 1;
    text-align: center
}

.index_post_list .slick-dots li {
    display: inline-block;
    width: 12px;
    height: 12px;
    margin: 0 4px;
    font-size: 12px
}

.index_post_list .slick-dots button {
    cursor: pointer;
    border: none;
    color: transparent;
    width: 12px;
    height: 12px;
    display: block;
    font-size: 0;
    background: 0 0;
    position: relative
}

.index_post_list .slick-dots button:before {
    content: '';
    display: block;
    width: 12px;
    height: 12px;
    line-height: 13px;
    background: #fff;
    border: 1px solid #000;
    border-radius: 20px;
    position: absolute;
    top: 0;
    left: 0
}

.index_post_list .slick-dots button:hover:before,
.index_post_list .slick-dots .slick-active button:before {
    background: #000
}

.index_post_list .headline {
    opacity: 0;
    top: 70px;
    position: relative
}

.index_post_list .headline.active {
    opacity: 1;
    top: 0
}

.index_post_list .post_list_area {
    opacity: 0;
    top: 70px
}

.index_post_list .post_list_area.active {
    opacity: 1;
    top: 0
}

.index_post_list .link_button {
    opacity: 0;
    top: 70px;
    position: relative
}

.index_post_list .link_button.active {
    opacity: 1;
    top: 0
}

.index_free_space {
    position: relative;
    z-index: 30
}

.index_free_space.type2 {
    left: 50%;
    -ms-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

.index_free_space.type2 .cb_contents_inner {
    width: auto
}

.index_free_space {
    opacity: 0;
    top: 70px
}

.index_free_space.active {
    opacity: 1;
    top: 0
}

.error404 {
    padding: 0 !important
}

.error404 #header {
    display: none
}

#page_404_header {
    width: 100%;
    height: 100vh;
    position: relative
}

#page_404_header .catch_area {
    position: absolute;
    z-index: 2;
    text-align: center;
    left: 50%;
    top: 50%;
    -ms-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

#page_404_header .catch {
    font-size: 48px;
    font-weight: 500
}

#page_404_header .desc {
    font-size: 16px;
    font-weight: 500;
    margin: 20px 0 0
}

#page_404_header .overlay {
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 1
}

#page_404_header .catch,
#page_404_header .desc {
    opacity: 0
}

#page_404_header.animate .catch {
    -webkit-animation: opacityAnimation 1s ease forwards .5s;
    animation: opacityAnimation 1s ease forwards .5s
}

#page_404_header.animate .desc {
    -webkit-animation: opacityAnimation 1s ease forwards 1s;
    animation: opacityAnimation 1s ease forwards 1s
}

#page_404_button {
    opacity: 0;
    display: block;
    height: 60px;
    width: 60px;
    line-height: 60px;
    text-decoration: none;
    z-index: 100;
    position: absolute;
    bottom: 10px;
    right: 0;
    left: 0;
    margin: auto;
    z-index: 2
}

#page_404_button:before {
    color: #fff;
    font-family: 'design_plus';
    content: '\e90e';
    font-size: 31px;
    display: block;
    position: absolute;
    left: 14px;
    bottom: 0;
    margin: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-animation: slideUpDown 1.2s ease infinite 0s;
    animation: slideUpDown 1.2s ease infinite 0s
}

#page_404_header.animate #page_404_button {
    -webkit-animation: opacityAnimation 1s ease forwards 1.5s;
    animation: opacityAnimation 1s ease forwards 1.5s
}

@-webkit-keyframes slideUpDown {
    0% {
        bottom: 10px
    }

    50% {
        bottom: 0
    }

    100% {
        bottom: 10px
    }
}

@keyframes slideUpDown {
    0% {
        bottom: 10px
    }

    50% {
        bottom: 0
    }

    100% {
        bottom: 10px
    }
}

#page_header {
    width: 100%;
    height: 100vh;
    position: relative;
    overflow: hidden;
    z-index: 1
}

#page_header_inner {
    width: 1160px;
    height: 100%;
    position: relative;
    margin: 0 auto
}

#page_header .catch_area {
    z-index: 200;
    text-align: center;
    width: 100%;
    position: absolute;
    top: 50%;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

#page_header .headline {
    position: relative;
    margin: 0 auto;
    width: 200px;
    height: 200px;
    opacity: 0
}

#page_header .headline h2 {
    line-height: 1.4;
    font-weight: 500;
    width: 100%;
    padding: 0 20px;
    position: absolute;
    top: 50%;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

#page_header .headline span {
    display: block
}

#page_header .desc {
    font-weight: 500;
    line-height: 2.6;
    margin: 30px 0 0;
    opacity: 0;
    position: relative
}

#page_header .desc.mobile {
    display: none
}

#page_header .catch {
    line-height: 1.4;
    font-weight: 500;
    width: 100%;
    padding: 0 20px;
    margin-bottom: -11px;
    color: #fff;
    font-size: 38px;
    position: relative;
    opacity: 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

#page_header .image {
    width: 100%;
    height: 100%;
    z-index: 1;
    position: absolute;
    top: 0;
    left: 0;
    transform: scale(1.1)
}

#page_header .image.mobile {
    display: none
}

#page_header.animate .image {
    -webkit-animation: zoomIn2 1.7s cubic-bezier(.075, .82, .165, 1) forwards 0s;
    animation: zoomIn2 1.7s cubic-bezier(.075, .82, .165, 1) forwards 0s
}

#page_header.animate2 .image {
    -webkit-animation: zoomIn2 1.7s cubic-bezier(.075, .82, .165, 1) forwards .7s;
    animation: zoomIn2 1.7s cubic-bezier(.075, .82, .165, 1) forwards .7s
}

#page_header .overlay {
    width: 100%;
    height: 100%;
    z-index: 2;
    position: absolute;
    top: 0;
    left: 0
}

#page_header.animate .headline,
#page_header.animate .catch {
    -webkit-animation: slideUp 1.3s cubic-bezier(.165, .84, .44, 1) forwards 1s;
    animation: slideUp 1.3s cubic-bezier(.165, .84, .44, 1) forwards 1s
}

#page_header.animate .desc {
    -webkit-animation: slideUp 1.3s cubic-bezier(.165, .84, .44, 1) forwards 1.5s;
    animation: slideUp 1.3s cubic-bezier(.165, .84, .44, 1) forwards 1.5s
}

#page_header.animate2 .headline,
#page_header.animate2 .catch {
    -webkit-animation: slideUp 1.3s cubic-bezier(.165, .84, .44, 1) forwards 1.7s;
    animation: slideUp 1.3s cubic-bezier(.165, .84, .44, 1) forwards 1.7s
}

#page_header.animate2 .desc {
    -webkit-animation: slideUp 1.3s cubic-bezier(.165, .84, .44, 1) forwards 2.2s;
    animation: slideUp 1.3s cubic-bezier(.165, .84, .44, 1) forwards 2.2s
}

body.no_page_header_animation #page_header .image {
    transform: none
}

body.no_page_header_animation #page_header.animate .image {
    -webkit-animation: none;
    animation: none
}

.page #page_header .headline .title_area {
    line-height: 1.4;
    font-weight: 500;
    width: 100%;
    padding: 0 20px;
    position: absolute;
    top: 50%;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.page #page_header .headline .title_area h1 {
    font-weight: 500
}

#main_contents_link {
    opacity: 0;
    display: block;
    height: 50px;
    width: 50px;
    line-height: 50px;
    text-decoration: none;
    position: absolute;
    bottom: 10px;
    right: 0;
    left: 0;
    margin: auto;
    z-index: 200
}

#main_contents_link:before {
    color: #fff;
    font-family: 'design_plus';
    content: '\e90e';
    font-size: 24px;
    display: block;
    position: absolute;
    left: 14px;
    bottom: 0;
    margin: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-animation: slideUpDown 1.2s ease infinite 0s;
    animation: slideUpDown 1.2s ease infinite 0s
}

#main_contents_link.animate {
    -webkit-animation: opacityAnimation 1s ease forwards 2s;
    animation: opacityAnimation 1s ease forwards 2s
}

#main_contents_link.first_animate {
    -webkit-animation: opacityAnimation 1s ease forwards 3s !important;
    animation: opacityAnimation 1s ease forwards 3s !important
}

@-webkit-keyframes slideUpDown {
    0% {
        bottom: 10px
    }

    50% {
        bottom: 0
    }

    100% {
        bottom: 10px
    }
}

@keyframes slideUpDown {
    0% {
        bottom: 10px
    }

    50% {
        bottom: 0
    }

    100% {
        bottom: 10px
    }
}

#sub_page_header {
    width: 100%;
    height: 300px;
    position: relative;
    overflow: hidden;
    z-index: 1
}

#sub_page_header_inner {
    width: 1160px;
    height: 100%;
    position: relative;
    margin: 0 auto
}

#sub_page_header .catch_area {
    z-index: 200;
    text-align: center;
    width: 100%;
    position: absolute;
    top: 50%;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

#sub_page_header {
    color: #fff
}

#sub_page_header .headline {
    line-height: 1.4;
    margin-top: -4px
}

#sub_page_header .headline .sub_title {
    font-size: 14px;
    display: block
}

#sub_page_header .overlay {
    width: 100%;
    height: 100%;
    z-index: 2;
    position: absolute;
    top: 0;
    left: 0
}

#blog_archive {
    width: 760px;
    margin: 0 auto;
    padding: 150px 0 100px;
    z-index: 200;
    position: relative
}

.pc #side_headline.blog_archive_side_headline {
    top: 218px
}

#blog_list {
    position: relative
}

#blog_list .item {
    width: calc(50% - 30px);
    float: left;
    margin: 0 60px 50px 0
}

#blog_list .item:nth-child(2n) {
    margin-right: 0
}

#blog_list .image_link {
    display: block;
    width: 100%;
    height: 230px
}

#blog_list .image_wrap {
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
    z-index: 1;
    overflow: hidden
}

#blog_list .image {
    width: 100%;
    height: 100% !important;
    display: block;
    overflow: hidden;
    position: relative;
    z-index: 2
}

#blog_list .title_area {
    background: #fff;
    height: 135px;
    padding: 25px 30px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

#blog_list .title {
    font-weight: 600;
    line-height: 1.8;
    max-height: 3.6em;
    font-size: 16px;
    overflow: hidden;
    visibility: visible
}

#blog_list .title span {
    display: -webkit-inline-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2
}

#blog_list .category {
    margin-top: 10px;
    font-size: 12px
}

#blog_list .category a {
    color: #999
}

#blog_list .date_area {
    font-weight: 600;
    position: relative;
    margin: 0 0 25px
}

#blog_list .date_area .month {
    float: left;
    font-size: 26px
}

#blog_list .date_area .date {
    float: left;
    border-left: 1px solid #000;
    text-align: center;
    padding: 0 0 0 15px;
    margin: 0 0 0 15px
}

#blog_list .date_area .date1 {
    display: block;
    font-size: 26px
}

#blog_list .date_area .date2 {
    margin: 5px 0 0;
    color: #999;
    display: block;
    font-size: 12px
}

#blog_list .date_area .date3 {
    letter-spacing: 2px;
    text-transform: uppercase;
    left: 2px;
    position: relative
}

.page_navi {
    margin: 50px 0;
    z-index: 10;
    position: relative
}

body.post-type-archive-news .page_navi {
    margin-top: 100px
}

.page_navi ul {
    margin: 0;
    font-size: 0;
    text-align: center
}

.page_navi li {
    display: inline-block;
    margin: 0 -1px 0 0
}

.page_navi a,
.page_navi a:hover,
.page_navi span {
    color: #000;
    background: #fff;
    border: 1px solid #ddd;
    font-size: 14px;
    width: 45px;
    height: 45px;
    line-height: 45px;
    display: inline-block;
    text-align: center;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.page_navi a:hover {
    color: #fff
}

.page_navi span.dots {
    background: 0 0;
    color: #333
}

.page_navi span.current {
    color: #fff;
    background: #000;
    border-color: #000;
    position: relative
}

.page_navi .next span,
.page_navi .prev span {
    display: none
}

.page_navi .next:before,
.page_navi .prev:before {
    font-family: 'design_plus';
    font-size: 11px;
    top: 1px;
    position: relative;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.page_navi .prev:before {
    content: '\e90f'
}

.page_navi .next:before {
    content: '\e910'
}

.page_navi .prev:hover:before,
.page_navi .next:hover:before {
    color: #fff
}

#no_post {
    text-align: center;
    background: #fff;
    height: 50px;
    line-height: 50px;
    font-size: 14px
}

#news_archive {
    width: 760px;
    margin: 0 auto;
    padding: 150px 0 100px;
    z-index: 200;
    position: relative
}

#news_list .date_area {
    font-weight: 600;
    position: absolute;
    top: 0;
    left: 0
}

#news_list .date_area .month {
    float: left;
    font-size: 26px
}

#news_list .date_area .date {
    float: left;
    border-left: 1px solid #000;
    text-align: center;
    padding: 0 0 0 15px;
    margin: 0 0 0 15px
}

#news_list .date_area .date1 {
    display: block;
    font-size: 26px
}

#news_list .date_area .date2 {
    color: #999;
    margin: 5px 0 0;
    display: block;
    font-size: 12px
}

#news_list .date_area .date3 {
    letter-spacing: 2px;
    text-transform: uppercase;
    left: 2px;
    position: relative
}

#news_list {
    position: relative
}

#news_list .item {
    margin: 0 0 50px;
    position: relative;
    padding: 68px 0 0
}

#news_list .item:last-of-type {
    margin: 0
}

#news_list .image_link {
    display: block
}

#news_list .image_wrap {
    display: block;
    width: 350px;
    height: 230px;
    float: left;
    position: relative;
    z-index: 1;
    overflow: hidden
}

#news_list .image {
    width: 100%;
    height: 100% !important;
    display: block;
    overflow: hidden;
    position: relative;
    z-index: 2
}

#news_list .title_area {
    width: calc(100% - 350px);
    float: left;
    background: #fff;
    height: 230px;
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

#news_list .title {
    padding: 0 60px;
    font-weight: 600;
    line-height: 1.8;
    max-height: 5.4em;
    font-size: 16px;
    overflow: hidden;
    visibility: visible;
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: absolute;
    top: 50%;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

#news_list .title span {
    display: -webkit-inline-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3
}

#news_list .item:nth-child(2n) .image_wrap {
    float: right
}

#news_list .item:nth-child(2n) .title_area {
    float: left
}

#news_list .item:nth-child(2n) .date_area {
    left: auto;
    right: 0
}

#news_post_title_area {
    margin: 0 0 60px;
    width: 100%;
    position: relative;
    border: 1px solid #ddd;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

#news_post_title_area .image {
    margin: -1px -1px 0;
    width: calc(100% + 2px);
    height: 550px;
    z-index: 1
}

#news_post_title_area .title {
    font-size: 32px;
    line-height: 1.3;
    font-weight: 500;
    margin: 0;
    padding: 45px 50px
}

#news_post_title_area.no_image .title {
    padding: 80px 50px 50px
}

#news_post_title_area .date {
    margin: -32px 50px 49px;
    font-size: 14px;
    color: #999
}

#news_post_title_area .category {
    position: absolute;
    bottom: 510px;
    left: 50px;
    z-index: 2
}

#news_post_title_area.no_image .category {
    top: -1px
}

#news_post_title_area .category a {
    display: none;
    height: 40px;
    line-height: 40px;
    min-width: 120px;
    text-align: center;
    padding: 0 20px;
    background: #000;
    color: #fff;
    font-size: 12px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

#news_post_title_area .category a:first-of-type {
    display: inline-block
}

#recent_news {
    margin: 100px 0 1px;
    position: relative
}

#recent_news .headline {
    margin: 0 auto 60px;
    font-size: 18px;
    font-weight: 500;
    width: 130px;
    background: #000;
    color: #fff;
    height: 130px;
    line-height: 1.4;
    text-align: center;
    position: relative
}

#recent_news .headline span {
    display: block;
    position: relative;
    top: 50%;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

#recent_news .link_button {
    z-index: 10;
    position: relative;
    text-align: center;
    margin: 100px 0 0
}

#recent_news .link_button a {
    display: inline-block;
    font-size: 14px;
    padding: 0 25px;
    height: 60px;
    line-height: 60px;
    min-width: 270px;
    background: #000;
    color: #fff;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.post_content a:hover {
    text-decoration: none
}

#article {
    position: relative;
    width: 760px;
    margin: 0 auto;
    padding: 50px;
    background: #fff;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

#post_title_area {
    margin: 0 0 38px;
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

#post_title_area .date_area {
    font-weight: 600;
    position: relative;
    margin: 0 0 45px
}

#post_title_area .date_area .month {
    float: left;
    font-size: 26px
}

#post_title_area .date_area .date {
    float: left;
    border-left: 1px solid #000;
    text-align: center;
    padding: 0 0 0 15px;
    margin: 0 0 0 15px
}

#post_title_area .date_area .date1 {
    display: block;
    font-size: 26px
}

#post_title_area .date_area .date2 {
    color: #999;
    margin: 5px 0 0;
    display: block;
    font-size: 11px
}

#post_title_area .image {
    margin: 42px 0 0;
    width: 100%;
    height: 440px;
    z-index: 1
}

#post_title_area .title {
    font-size: 32px;
    line-height: 1.3;
    font-weight: 500
}

#post_title_area .category {
    font-size: 12px;
    padding: 12px 0 10px
}

#post_title_area .category a {
    color: #999
}

#single_share_top {
    margin: 0 0 45px;
    padding: 12px 0 0
}

#single_share_top .share-top {
    margin: 0
}

#single_share_bottom {
    margin: 50px 0 0
}

#single_share_bottom .share-btm {
    margin-bottom: 0 !important;
    padding: 0
}

#single_share_top .mt10,
#single_share_top .mt10 {
    margin: 0 !important
}

#single_share_bottom .mb45,
#single_share_bottom .mb45 {
    margin: 0 !important
}

.share-type1 ul {
    text-align: left
}

.share-type3 ul {
    text-align: left
}

.share-type2 ul.type2 {
    text-align: left
}

.share-type4 ul.type4 {
    text-align: left
}

.sns_default_top {
    text-align: left
}

.single_copy_title_url {
    text-align: center
}

.single_copy_title_url_btn {
    background: #fff;
    border: 3px solid #ccc;
    cursor: pointer;
    line-height: 54px;
    min-width: 300px;
    padding: 0 5px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition-property: background-color, color;
    -webkit-transition-duration: .3s;
    -webkit-transition-timing-function: ease;
    transition-property: background-color, color;
    transition-duration: .3s;
    transition-timing-function: ease
}

.single_copy_title_url_btn.copied {
    background: #ccc;
    color: #fff;
    pointer-events: none
}

#single_copy_title_url_top {
    margin: 0 0 38px
}

#single_copy_title_url_bottom {
    margin: 45px 0 0
}

#post_pagination {
    margin: 0;
    padding: 18px 0 0;
    clear: both;
    font-size: 0;
    text-align: center
}

#post_pagination a,
#post_pagination p {
    color: #000;
    background: #fff;
    border: 1px solid #ddd;
    font-size: 12px;
    display: inline-block;
    margin: 0 -1px 0 0;
    width: 45px;
    height: 45px;
    line-height: 45px;
    text-align: center;
    text-decoration: none;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

#post_pagination p {
    position: relative;
    background: #000;
    border-color: #000;
    color: #fff
}

#post_pagination a:hover {
    background: #000;
    border-color: #000;
    color: #fff
}

#p_readmore {
    text-align: center;
    padding: 0;
    margin-bottom: -14px
}

#p_readmore .button {
    background: #000;
    color: #fff;
    display: inline-block;
    height: 50px;
    line-height: 50px;
    min-width: 220px;
    padding: 0 40px;
    text-decoration: none;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

#p_readmore .button:hover {
    background: #333;
    color: #fff
}

#post_meta_bottom {
    margin: 45px 0 0;
    padding: 15px 30px;
    border: 1px solid #ddd;
    background: #fff
}

#post_meta_bottom li {
    display: inline;
    margin: 0 10px 0 0;
    padding: 0 15px 0 20px;
    border-right: 1px solid #ddd;
    font-size: 12px;
    line-height: 1.8;
    position: relative
}

#post_meta_bottom li:last-child {
    border: none;
    margin: 0
}

#post_meta_bottom li:before {
    display: block;
    width: 14px;
    height: 14px;
    line-height: 14px;
    font-family: 'design_plus';
    color: #aaa;
    font-size: 14px;
    position: absolute;
    top: 2px;
    left: 0;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

#post_meta_bottom li.post_author:before {
    content: '\e90d'
}

#post_meta_bottom li.post_category:before {
    content: '\e92f'
}

#post_meta_bottom li.post_tag:before {
    content: '\e935';
    top: 2px
}

#post_meta_bottom li.post_comment:before {
    content: '\e916';
    font-size: 18px;
    top: 3px
}

.author_profile {
    background: #fff;
    border: 1px solid #ddd;
    margin: 50px 0 0;
    height: 180px;
    position: relative
}

.author_profile a.avatar {
    display: block;
    width: 182px;
    height: 182px;
    float: left;
    position: relative;
    overflow: hidden;
    z-index: 2;
    margin: -1px
}

.author_profile img.avatar {
    display: block;
    width: 100%;
    height: auto
}

.author_profile .info {
    float: right;
    padding: 45px 50px;
    -webkit-width: calc(100% - 182px);
    width: calc(100% - 182px);
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.author_profile .name {
    font-size: 20px;
    margin: 0 0 20px;
    font-weight: 500
}

.author_profile .desc {
    margin: 0 0 20px;
    font-size: 14px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis
}

.author_profile .author_link {
    float: left;
    margin: 0 0 0 -5px;
    font-size: 0
}

.author_profile .author_link li {
    display: inline-block;
    margin: 0 10px 0 0;
    position: relative
}

.author_profile .author_link li a {
    display: block;
    overflow: hidden;
    width: 20px;
    height: 20px;
    line-height: 20px;
    text-align: center;
    position: relative
}

.author_profile .author_link li a span {
    display: none
}

.author_profile .author_link li a:before {
    font-family: 'design_plus';
    font-size: 14px;
    display: block;
    position: absolute;
    top: 1px;
    left: 0;
    right: 0;
    margin: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.author_profile .author_link li a:hover:before {
    color: #aaa
}

.author_profile .author_link li.twitter a:before {
    content: '\e904'
}

.author_profile .author_link li.facebook a:before {
    content: '\e902'
}

.author_profile .author_link li.insta a:before {
    content: '\ea92'
}

.author_profile .author_link li.pinterest a:before {
    content: '\e905'
}

.author_profile .author_link li.google a:before {
    content: '\e900'
}

.author_profile .author_link li.youtube a {
    width: 42px
}

.author_profile .author_link li.youtube a:before {
    content: '\ea9e'
}

.author_profile .author_link li.contact a:before {
    content: '\f003'
}

.author_profile .archive_link {
    float: right;
    padding: 0 20px 0 0;
    margin-top: 4px
}

.author_profile .archive_link span:after {
    font-size: 12px;
    font-family: 'design_plus';
    content: '\e910';
    display: block;
    position: absolute;
    right: 0;
    top: 5px;
    height: 14px;
    line-height: 14px;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

#related_post {
    margin: 100px 50px 0;
    position: relative
}

#related_post .cb_side_headline {
    position: absolute;
    top: 67px;
    left: auto;
    right: -200px !important
}

body.single-news #related_post {
    margin-bottom: 50px
}

#related_post .headline {
    margin: 0 auto 30px;
    font-size: 20px;
    font-weight: 600;
    text-align: center
}

#related_post .item {
    background: #fff;
    float: left;
    width: -webkit-calc(100%/3 - 15px);
    width: calc(100%/3 - 15px);
    height: 260px;
    margin: 20px 20px 0 0;
    position: relative
}

#related_post .item:nth-child(3n) {
    margin-right: 0
}

#related_post a.link {
    width: 100%;
    height: 100%;
    display: block;
    background: 0 0
}

#related_post .image_wrap {
    display: block;
    width: 100%;
    height: 153px;
    position: relative;
    z-index: 1;
    overflow: hidden
}

#related_post .image {
    width: 100%;
    height: 100% !important;
    display: block;
    overflow: hidden;
    position: relative;
    z-index: 2
}

#related_post .title_area {
    padding: 14px 20px
}

#related_post .title {
    font-weight: 500;
    font-size: 14px;
    line-height: 1.8;
    max-height: 3.6em;
    overflow: hidden;
    visibility: visible
}

#related_post .title span {
    display: -webkit-inline-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2
}

#related_post .date {
    font-size: 12px;
    color: #999;
    margin: 7px 0 0
}

#related_post .link_button {
    text-align: center;
    margin-top: 80px
}

#related_post .link_button a {
    background: #000;
    color: #fff;
    display: inline-block;
    min-width: 270px;
    height: 60px;
    line-height: 60px;
    padding: 0 20px;
    font-size: 16px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

#single_banner_top {
    margin: 0 auto;
    padding: 10px 0 45px
}

#single_banner_bottom {
    margin: 100px auto 0
}

#single_banner_shortcode {
    margin: 0 auto;
    padding: 15px 0 45px
}

img.single_banner_image {
    max-width: 100%;
    height: auto;
    display: block;
    margin: 0 auto
}

#next_prev_post {
    margin: 50px 0 0
}

#next_prev_post .item {
    float: left;
    height: 100px;
    width: 50%;
    position: relative
}

#next_prev_post a {
    display: block;
    position: relative;
    width: 100%;
    height: 100%;
    border: 1px solid #ddd;
    background: #fff;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

#next_prev_post a:before {
    content: '';
    font-family: 'design_plus';
    color: #111;
    font-size: 12px;
    display: block;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    content: '\e90f';
    position: absolute;
    left: 23px;
    margin-top: 2px;
    top: 50%;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

#next_prev_post .next_post a:before {
    content: '\e910';
    left: auto;
    right: 23px
}

#next_prev_post .title {
    font-size: 16px;
    line-height: 1.6;
    max-height: 3.2em;
    overflow: hidden;
    position: absolute;
    width: 100%;
    padding: 0 30px 0 57px;
    visibility: visible;
    top: 50%;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

#next_prev_post .title span {
    display: -webkit-inline-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2
}

#next_prev_post .nav {
    display: none
}

#next_prev_post .next_post {
    float: right;
    left: -1px;
    position: relative
}

#next_prev_post .next_post .title {
    padding: 0 57px 0 30px
}

#menu_button {
    position: relative;
    border-left: 1px solid rgba(255, 255, 255, .3);
    display: block !important;
    font-size: 11px;
    width: 69px;
    height: 59px;
    line-height: 59px;
    text-decoration: none;
    text-align: center
}

#menu_button span {
    width: 22px;
    height: 2px;
    background: #000;
    display: block;
    position: absolute;
    -webkit-transition-property: background-color;
    -webkit-transition-duration: .2s;
    -webkit-transition-timing-function: ease;
    transition-property: background-color;
    transition-duration: .2s;
    transition-timing-function: ease
}

#menu_button span:nth-child(1) {
    top: 24px;
    left: 24px
}

#menu_button span:nth-child(2) {
    top: 30px;
    left: 24px
}

#menu_button span:nth-child(3) {
    top: 36px;
    left: 24px
}

#menu_button:hover span {
    background: orange
}

#header_sns {
    z-index: 20;
    text-align: center;
    position: relative;
    border-left: 1px solid rgba(255, 255, 255, .3);
    padding: 0 10px;
    font-size: 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -ms-flex: 1 0 auto;
    -webkit-flex: 1 0 auto;
    flex: 1 0 auto
}

.header_sns li {
    display: inline-block;
    position: relative
}

.header_sns li a {
    display: block;
    overflow: hidden;
    width: 30px;
    height: 59px;
    line-height: 59px;
    text-align: center;
    position: relative
}

.header_sns li a span {
    display: none
}

.header_sns li a:before {
    font-family: 'design_plus';
    font-size: 15px;
    display: block;
    color: #fff;
    position: absolute;
    top: 1px;
    left: 0;
    right: 0;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.header_sns li a:hover:before {
    color: orange
}

.header_sns li.twitter a:before {
    content: '\e904'
}

.header_sns li.facebook a:before {
    content: '\e902'
}

.header_sns li.insta a:before {
    content: '\ea92'
}

.header_sns li.pinterest a:before {
    content: '\e905'
}

.header_sns li.google a:before {
    content: '\e900'
}

.header_sns li.youtube a {
    width: 45px
}

.header_sns li.youtube a:before {
    content: '\ea9e'
}

.header_sns li.contact a:before {
    content: '\f003'
}

.header_sns li.rss a:before {
    content: '\e90b'
}

#lang_button {
    font-family: Arial !important;
    border-left: 1px solid rgba(255, 255, 255, .3);
    text-align: center;
    padding: 0 10px;
    font-size: 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -ms-flex: 1 0 auto;
    -webkit-flex: 1 0 auto;
    flex: 1 0 auto
}

#lang_button li {
    display: inline-block;
    font-size: 15px;
    font-weight: 600
}

#lang_button li.active a {
    opacity: .3;
    pointer-events: none
}

#lang_button li a {
    color: #fff;
    display: block;
    height: 59px;
    line-height: 59px;
    width: 30px
}

#lang_button li a:hover {
    color: #fff
}

.pc .header_fix #header {
    z-index: 1000;
    box-shadow: 0 0 15px 5px rgba(0, 0, 0, .1)
}

.pc .admin-bar.header_fix {
    padding-top: 190px
}

#bread_crumb {
    background: #fff;
    border-bottom: 1px solid #e9e9e9
}

#bread_crumb ul {
    width: 1160px;
    margin: 0 auto;
    padding: 0;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    visibility: visible
}

#bread_crumb li {
    display: inline;
    font-size: 12px;
    margin: 0;
    padding: 0;
    position: relative
}

#bread_crumb li:after {
    font-family: 'design_plus';
    content: '\e910';
    font-size: 10px;
    color: #000;
    display: inline-block;
    line-height: 70px;
    height: 69px;
    margin: 0 12px;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

#bread_crumb li:last-of-type:after {
    display: none
}

#bread_crumb,
#bread_crumb li.last {
    color: #999
}

#bread_crumb li a {
    height: 69px;
    line-height: 70px;
    display: inline-block
}

#bread_crumb li.category a {
    display: none
}

#bread_crumb li.category a:first-of-type,
#bread_crumb li.category a:only-of-type {
    display: inline-block
}

#bread_crumb li.home a {
    position: relative;
    width: 16px
}

#bread_crumb li.home a span {
    opacity: 0
}

#bread_crumb li.home a:before {
    font-family: 'design_plus';
    content: '\e90c';
    font-size: 12px;
    display: inline-block;
    height: 100%;
    line-height: 1;
    top: 0;
    position: relative;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

#drawer_menu {
    opacity: 0;
    pointer-events: none;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
    width: 100%;
    height: 100%;
    top: 100%;
    overflow: hidden;
    -webkit-transition: top .5s ease, opacity 0s ease;
    transition: top .5s ease, opacity 0s ease
}

body.open_drawer_menu #drawer_menu {
    opacity: 1;
    top: 0;
    pointer-events: auto
}

body.close_drawer_menu #drawer_menu {
    top: -100%;
    -webkit-transition: top .5s ease .3s, opacity 0s ease .7s;
    transition: top .5s ease .3s, opacity 0s ease .7s
}

#drawer_menu .overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, .7);
    z-index: 3
}

#drawer_menu_inner {
    opacity: 0;
    position: absolute;
    z-index: 10;
    text-align: center;
    left: 50%;
    top: 50%;
    -ms-transform: translate(-50%, -48%);
    -webkit-transform: translate(-50%, -48%);
    transform: translate(-50%, -48%)
}

body.open_drawer_menu #drawer_menu #drawer_menu_inner {
    opacity: 1;
    left: 50%;
    top: 50%;
    -ms-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-transition: all .6s ease .5s;
    transition: all .6s ease .5s
}

body.close_drawer_menu #drawer_menu #drawer_menu_inner {
    opacity: 0;
    -ms-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-transition: all .2s ease;
    transition: all .2s ease
}

#drawer_menu .bg_image {
    position: absolute;
    top: -100%;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    -webkit-transition: all .5s ease;
    transition: all .5s ease
}

#drawer_menu .bg_image.mobile {
    display: none
}

body.open_drawer_menu #drawer_menu .bg_image {
    top: 0
}

body.close_drawer_menu #drawer_menu .bg_image {
    top: 100%;
    -webkit-transition: all .5s ease .3s;
    transition: all .5s ease .3s
}

body.close_drawer_menu #menu_button {
    pointer-events: none
}

#drawer_menu .close_button {
    opacity: 0;
    cursor: pointer;
    display: block;
    width: 60px;
    height: 60px;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 10
}

body.open_drawer_menu #drawer_menu .close_button {
    opacity: 1;
    -webkit-transition: all .4s ease .7s;
    transition: all .6s ease .5s
}

#drawer_menu .close_button:before {
    color: #fff;
    font-family: 'design_plus';
    content: '\e91a';
    font-size: 24px;
    display: block;
    top: 20px;
    left: 18px;
    position: absolute;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

#drawer_menu .close_button:hover:before {
    color: #ff3f00
}

#drawer_menu .logo {
    line-height: 1;
    margin: 0 auto;
    padding: 0;
    font-weight: 500;
    display: block
}

#drawer_menu img {
    display: block;
    margin: 0 auto;
    -webkit-transition: opacity .35s ease-in-out;
    transition: opacity .35s ease-in-out
}

#drawer_menu img:hover {
    opacity: .5
}

#drawer_menu .pc_logo_image.type2 {
    display: none
}

#drawer_menu .mobile_logo_image {
    display: none
}

#drawer_menu .mobile_logo_text {
    display: none
}

#drawer_menu .menu {
    margin-top: 25px
}

#drawer_menu .menu a {
    font-size: 20px;
    color: #fff;
    padding: 22px 0;
    display: block
}

#drawer_menu .menu a:hover {
    color: #ff3f00
}

#drawer_menu .current-menu-item {
    pointer-events: none
}

#drawer_menu .header_sns {
    margin-top: 5px
}

#drawer_menu .header_sns a:hover:before {
    color: #ff3f00
}

#drawer_menu .lang_button {
    margin-top: 20px;
    font-size: 0;
    display: none
}

#drawer_menu .lang_button li {
    display: inline;
    margin: 0 10px
}

#drawer_menu .lang_button li.active a {
    pointer-events: none;
    opacity: .3
}

#drawer_menu_bg .image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    opacity: 0;
    -webkit-transition: all .7s ease-in-out 0s;
    transition: all .7s ease-in-out 0s
}

#drawer_menu_bg .image.active {
    opacity: 1
}

#footer {
    /* position: relative; */
    /* padding: 170px 0; */
    /* overflow: hidden; */
}

#footer a {
    color: #fff
}

#footer_overlay {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1
}

.footer_bg_image {
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0
}

.footer_bg_image.mobile {
    display: none
}

#footer_video {
    position: absolute;
    left: 0;
    width: 100vw;
    top: 50%;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

@media screen and (max-width:950px) {
    #footer_video {
        width: auto;
        height: 100%;
        left: 50%;
        top: 50%;
        -ms-transform: translate(-50%, -50%);
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%)
    }
}

#footer_logo {
    margin: 0;
    text-align: center;
    position: relative;
    z-index: 2
}

#footer_logo .logo {
    line-height: 1;
    padding: 0;
    font-weight: 500
}

#footer_logo img {
    display: block;
    margin: 0 auto;
    -webkit-transition: opacity .35s ease-in-out;
    transition: opacity .35s ease-in-out
}

#footer_logo img:hover {
    opacity: .5
}

#footer_logo .pc_logo_text {
    display: block
}

#footer_logo .mobile_logo_image {
    display: none
}

#footer_logo .mobile_logo_text {
    display: none
}

#footer_logo .desc {
    font-size: 14px;
    font-weight: 400;
    margin: 0 0 0 25px
}

.footer_info {
    margin: 20px 0 0;
    line-height: 2;
    font-size: 16px;
    z-index: 20;
    text-align: center;
    position: relative
}

.footer_info.mobile {
    display: none
}

#footer_sns {
    margin: 20px 0 0;
    font-size: 0;
    z-index: 20;
    text-align: center;
    position: relative
}

#footer_sns li {
    display: inline-block;
    margin: 0 10px;
    position: relative
}

#footer_sns li a {
    display: block;
    overflow: hidden;
    width: 20px;
    height: 20px;
    line-height: 20px;
    text-align: center;
    position: relative
}

#footer_sns li a span {
    display: none
}

#footer_sns li a:before {
    font-family: 'design_plus';
    font-size: 15px;
    display: block;
    position: absolute;
    top: 1px;
    left: 0;
    right: 0;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

#footer_sns li.twitter a:before {
    content: '\e904'
}

#footer_sns li.facebook a:before {
    content: '\e902'
}

#footer_sns li.insta a:before {
    content: '\ea92'
}

#footer_sns li.pinterest a:before {
    content: '\e905'
}

#footer_sns li.google a:before {
    content: '\e900'
}

#footer_sns li.youtube a {
    width: 45px
}

#footer_sns li.youtube a:before {
    content: '\ea9e'
}

#footer_sns li.contact a:before {
    content: '\f003'
}

#footer_sns li.rss a:before {
    content: '\e90b'
}

#footer_menu {
    position: absolute;
    bottom: 60px;
    width: 100%;
    height: 60px;
    border-top: 1px solid rgba(255, 255, 255, .4);
    z-index: 10
}

#footer_menu ul {
    text-align: center;
    font-size: 0;
    z-index: 2;
    width: 1160px;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap
}

#footer_menu li {
    font-size: 14px;
    display: inline-block;
    border-left: 1px solid rgba(255, 255, 255, .4);
    -ms-flex: 1 1 0%;
    -webkit-flex: 1 1 0%;
    flex: 1 1 0%
}

#footer_menu li:last-of-type {
    border-right: 1px solid rgba(255, 255, 255, .4)
}

#footer_menu li a {
    height: 60px;
    display: block
}

#footer_menu a span.title {
    max-height: 1em;
    position: relative;
    overflow: hidden;
    display: block;
    top: 50%;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

#footer_menu a span.title_inner {
    display: block;
    position: relative;
    transition: -webkit-transform .2s;
    transition: transform .2s;
    transition: transform .2s, -webkit-transform .2s
}

#footer_menu a span.main {
    display: block
}

#footer_menu a span.sub {
    display: block
}

#footer_menu a:hover span.title_inner,
.global_menu>ul>li.active_button>a span.title_inner,
.global_menu>ul>li.active>a span.title_inner {
    -webkit-transform: translate3d(0, -.5em, 0);
    transform: translate3d(0, -1em, 0)
}

#footer_menu a:hover span.no_sub_title span.title_inner {
    -webkit-transform: translate3d(0, 0, 0) !important;
    transform: translate3d(0, 0, 0) !important
}

#copyright {
    position: absolute;
    bottom: 0;
    width: 100%;
    line-height: 60px;
    height: 60px;
    font-size: 12px;
    z-index: 10;
    text-align: center;
    border-top: 1px solid rgba(255, 255, 255, .4);
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

#return_top {
    display: block
}

#return_top a {
    background: #222;
    display: block;
    height: 60px;
    width: 60px;
    line-height: 60px;
    text-decoration: none;
    z-index: 100;
    position: relative
}

#return_top a:hover {
    color: #fff !important
}

#return_top span {
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    display: block
}

#return_top a:before {
    color: #fff;
    font-family: 'design_plus';
    content: '\e911';
    font-size: 12px;
    display: block;
    width: 12px;
    height: 12px;
    position: absolute;
    left: 0;
    right: 0;
    top: 4px;
    margin: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

#return_top {
    position: fixed;
    right: 0;
    bottom: 0;
    z-index: 999;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    -webkit-transition: -webkit-transform .35s;
    transition: all .35s
}

#return_top.active {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
}

#fixed_footer_content {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 120px;
    color: #fff;
    padding: 40px;
    z-index: 9999;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    -webkit-transition: -webkit-transform .35s;
    transition: transform .35s
}

#fixed_footer_content.active {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
}

#fixed_footer_content a {
    color: #fff;
    text-decoration: none
}

#fixed_footer_content .content_left {
    position: absolute;
    left: 40px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: -webkit-calc(100% - 530px);
    width: calc(100% - 530px);
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

#fixed_footer_content .has_image .content_left {
    width: -webkit-calc(100% - 840px);
    width: calc(100% - 840px)
}

#fixed_footer_content .button {
    position: absolute;
    right: 55px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    min-width: 300px;
    height: 55px;
    line-height: 55px;
    text-align: center;
    display: inline-block;
    padding: 0 40px 0 10px;
    font-size: 16px
}

#fixed_footer_content .button:after {
    font-family: 'design_plus';
    content: '\e910';
    color: #fff;
    font-size: 14px;
    display: block;
    position: absolute;
    top: 1px;
    right: 16px;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

#fixed_footer_content .image {
    position: absolute;
    right: 55px;
    max-width: 728px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

#fixed_footer_content .image img {
    width: 100%;
    max-width: 100%;
    height: auto;
    display: block
}

#fixed_footer_content .close {
    position: absolute;
    right: 5px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    display: block;
    width: 40px;
    height: 40px;
    border-radius: 100%
}

#fixed_footer_content span {
    display: none
}

#fixed_footer_content .close:before {
    font-family: 'design_plus';
    color: #fff;
    font-size: 20px;
    display: block;
    content: '\e91a';
    position: absolute;
    top: 10px;
    left: 10px;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

#fixed_footer_content .close:hover {
    background: rgba(255, 255, 255, .1)
}

#fixed_footer_content .catch {
    font-size: 21px;
    margin: 0;
    line-height: 1.5
}

#fixed_footer_content .desc {
    font-size: 14px;
    margin: 5px 0 0;
    line-height: 2
}

#fixed_footer_content .pr {
    background: #fff;
    color: #333;
    display: inline;
    font-size: 12px;
    margin: 5px 15px 0 0;
    padding: 0 12px;
    border-radius: 2px;
    height: 20px;
    line-height: 20px;
    float: left
}

#fixed_footer_content .pr1 {
    display: none
}

#fixed_footer_content .free {
    width: 100%;
    padding-right: 100px;
    position: absolute;
    left: 40px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

#fixed_footer_content .post_content p {
    margin: 0;
    line-height: 1.6
}

#side_col {
    margin: 0 auto;
    padding: 0 0 100px;
    width: 760px;
    z-index: 100;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.widget_content {
    width: calc(50% - 30px);
    margin: 0 60px 50px 0
}

.widget_content:nth-child(2n) {
    margin-right: 0
}

.widget_content ul {
    margin: 0
}

.widget_content li ul {
    margin: 10px 0 0
}

.widget_content li {
    line-height: 2;
    padding: 2px 0;
    margin: 0 0 10px
}

.widget_content a {
    text-decoration: none;
    color: #000
}

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

.widget_headline {
    font-size: 16px;
    position: relative;
    margin: 0 0 20px
}

.tcd_ad_widget {
    border: none;
    padding: 0;
    background: 0 0
}

.tcd_ad_widget img {
    height: auto;
    max-width: 100%;
    margin: 0 auto;
    display: block
}

#wp-calendar {
    margin: 0 auto;
    width: 100%;
    font-size: 11px;
    border-collapse: separate;
    table-layout: fixed
}

#wp-calendar th,
#wp-calendar td {
    padding: 2px;
    line-height: 3.4;
    text-align: center
}

#wp-calendar td a {
    display: block;
    margin: 0;
    padding: 0;
    text-decoration: none;
    background-color: #eee
}

#wp-calendar td a:hover {
    text-decoration: none;
    color: #fff;
    background: #aaa
}

#wp-calendar caption {
    padding: 7px 0
}

#wp-calendar thead th,
#wp-calendar tfoot td {
    border: none;
    padding: 0;
    line-height: 2
}

#wp-calendar #prev,
#wp-calendar #next {
    line-height: 3
}

#wp-calendar #prev a,
#wp-calendar #next a {
    text-decoration: none;
    background: 0 0
}

#wp-calendar td#today {
    font-weight: 700
}

.styled_post_list1 li {
    margin: 0 0 30px;
    padding: 0
}

.styled_post_list1 li:last-child {
    margin: 0
}

.styled_post_list1 a {
    display: block;
    width: 100%;
    height: 100px;
    overflow: hidden;
    background: #fff !important;
    position: relative
}

.styled_post_list1 .image_wrap {
    float: left;
    display: block;
    width: 100px;
    height: 100px;
    position: relative;
    z-index: 1;
    overflow: hidden
}

.styled_post_list1 .image {
    width: 100%;
    height: 100px !important;
    display: block;
    overflow: hidden;
    position: relative;
    z-index: 2
}

.styled_post_list1 .image img {
    width: 100%;
    height: auto;
    display: block;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.styled_post_list1 .title_area {
    width: calc(100% - 100px);
    height: 100px;
    float: left;
    border-left: none;
    border-bottom: none;
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.styled_post_list1 .title_area_inner {
    position: absolute;
    padding: 0 27px;
    top: 50%;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

.styled_post_list1 .title {
    margin: 7px 0 0;
    font-size: 14px;
    line-height: 1.6;
    max-height: 3.2em;
    font-weight: 500;
    word-break: break-all;
    overflow: hidden;
    -webkit-transition-property: color;
    -webkit-transition-duration: .2s;
    -webkit-transition-timing-function: ease;
    transition-property: color;
    transition-duration: .2s;
    transition-timing-function: ease
}

.styled_post_list1 .title span {
    display: -webkit-inline-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2
}

.styled_post_list1 .date {
    font-size: 12px;
    color: #999;
    -webkit-transition-property: color;
    -webkit-transition-duration: .2s;
    -webkit-transition-timing-function: ease;
    transition-property: color;
    transition-duration: .2s;
    transition-timing-function: ease
}

.styled_post_list1 a:hover .title {
    color: #666
}

.styled_post_list1 .new_icon {
    width: 80px;
    height: 50px;
    color: #fff;
    font-size: 10px;
    text-align: center;
    font-weight: 600;
    position: absolute;
    top: -17px;
    left: -33px;
    z-index: 100;
    transform: -webkit-rotate(-45deg);
    transform: rotate(-45deg)
}

.styled_post_list1 .new_icon span {
    top: 29px;
    position: relative
}

.widget_search label {
    display: none
}

#searchform {
    border: 1px solid #ddd;
    background: #fff;
    height: 50px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

#searchform #s {
    border: none;
    background: 0 0;
    padding: 0 18px;
    margin: 0;
    width: calc(100% - 50px);
    height: 50px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

#searchform #searchsubmit {
    border: none;
    background: 0 0;
    width: 50px;
    height: 50px;
    z-index: 200;
    position: relative;
    cursor: pointer;
    display: block;
    text-indent: -300px;
    overflow: hidden
}

#searchform .submit_button {
    position: relative;
    width: 50px;
    height: 50px;
    float: right;
    top: 1px
}

#searchform .submit_button:before {
    text-indent: 0;
    display: block;
    width: 50px;
    height: 50px;
    line-height: 50px;
    text-align: center;
    cursor: pointer;
    z-index: 1;
    position: absolute;
    font-family: 'design_plus';
    color: #333;
    font-size: 18px;
    content: '\e915';
    right: 0;
    top: 1px
}

#searchform .submit_button:hover:before {
    color: #aaa
}

.tcdw_search_box_widget {
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.tcdw_search_box_widget .search_area form {
    width: 100%;
    height: 50px;
    margin: 0 auto;
    background: #fff;
    position: relative;
    border: 1px solid #ddd;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.tcdw_search_box_widget .search_area .search_input {
    width: -webkit-calc(100% - 50px);
    width: calc(100% - 50px);
    position: absolute;
    top: 0;
    left: 0
}

.tcdw_search_box_widget .search_area .search_input input {
    height: 50px;
    width: 100%;
    border: none;
    background: 0 0;
    padding: 0 0 0 20px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.tcdw_search_box_widget .search_area .search_button {
    width: 50px;
    height: 50px;
    position: absolute;
    top: 0;
    right: 0
}

.tcdw_search_box_widget .search_area .search_button:before {
    text-indent: 0;
    display: block;
    width: 50px;
    height: 50px;
    line-height: 50px;
    text-align: center;
    cursor: pointer;
    z-index: 1;
    pointer-events: none;
    position: absolute;
    font-family: 'design_plus';
    color: #333;
    font-size: 18px;
    content: '\e915';
    right: 0;
    top: 1px
}

.tcdw_search_box_widget .search_area .search_button:hover:before {
    color: #ccc
}

.tcdw_search_box_widget .search_area .search_button input {
    border: none;
    background: 0 0;
    width: 50px;
    height: 50px;
    text-indent: -200px;
    overflow: hidden;
    cursor: pointer
}

.tcdw_search_box_widget .search_area .search_button label {
    display: none
}

.tcdw_search_box_widget .p-dropdown {
    margin: 0 0 40px
}

.tcdw_archive_list_widget .side_headline {
    display: none
}

.p-widget-dropdown {
    height: 45px;
    line-height: 45px;
    position: relative
}

.p-widget-dropdown:after {
    color: #666;
    content: "\e90e";
    font-family: "design_plus";
    position: absolute;
    top: 0;
    right: 17px;
    z-index: 1
}

.p-widget-dropdown select {
    padding-right: 33px;
    position: relative;
    z-index: 2;
    -webkit-appearance: none;
    appearance: none
}

.p-widget-dropdown select::-ms-expand {
    display: none
}

.p-dropdown {
    font-size: 14px
}

.p-dropdown__title {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
    height: 50px;
    line-height: 50px;
    padding: 0 18px;
    border: 1px solid #ddd;
    background: #fff;
    color: #000;
    z-index: 10
}

.p-dropdown__title:after {
    position: absolute;
    right: 17px;
    top: 2px;
    font-family: "design_plus";
    content: "\e90e";
    color: #000
}

.p-dropdown__title:hover {
    cursor: pointer
}

.p-dropdown__title.is-active:after {
    content: "\e911"
}

.p-dropdown__title:hover:after {
    color: #ccc
}

.p-dropdown__list {
    display: none;
    top: -1px;
    position: relative
}

.p-dropdown__list li {
    line-height: 1.5;
    margin: 0;
    padding: 0;
    position: relative
}

.p-dropdown__list li ul {
    margin: 0;
    position: relative;
    display: none
}

.p-dropdown__list li a {
    display: block;
    padding: 0 18px;
    height: 47px;
    line-height: 47px;
    margin: -1px 0 0;
    background: #fff;
    color: #000;
    border: 1px solid #ddd
}

.p-dropdown__list li li a {
    padding-left: 32px
}

.p-dropdown__list li li li a {
    padding-left: 46px
}

.p-dropdown__list li li li li a {
    padding-left: 60px
}

.p-dropdown__list .child_menu_button {
    width: 50px;
    height: 50px;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 2;
    cursor: pointer
}

.p-dropdown__list .child_menu_button:before {
    font-family: 'design_plus';
    content: '\e90e';
    text-align: center;
    display: block;
    font-size: 14px;
    width: 14px;
    height: 14px;
    line-height: 14px;
    position: absolute;
    right: 18px;
    top: 20px
}

.p-dropdown__list li.active>.child_menu_button:before {
    content: '\e911'
}

.p-dropdown__list .child_menu_button:hover {
    color: #ccc
}

.widget_recent_entries li {
    border-bottom: 1px dotted #ccc;
    padding: 0 0 15px
}

.widget_recent_entries li:last-child {
    border: none;
    padding: 0
}

#comments {
    margin: 100px 50px 0
}

#comments .headline {
    margin: 0 auto 50px;
    font-size: 18px;
    font-weight: 600;
    text-align: center
}

#comment_header {
    position: relative;
    margin: 0 0 25px
}

#comment_tab {
    margin: 0;
    background: #eee
}

#comment_tab li {
    float: left;
    text-align: center;
    margin: 0;
    width: 50%
}

#comment_tab li a,
#comment_tab li p {
    font-size: 12px;
    padding: 15px;
    line-height: 1.6;
    display: block;
    text-decoration: none;
    background: #eee;
    color: #000
}

#comment_tab li a:hover {
    color: #fff;
    background: #999
}

#comment_tab li.active a {
    background: #000
}

#comment_tab li.active a,
#comment_header #comment_closed p {
    color: #fff;
    position: relative
}

#comment_tab li.active a {
    pointer-events: none
}

.commentlist {
    list-style-type: none;
    margin: 0;
    padding: 0
}

.comment {
    margin: 0 0 15px;
    padding: 15px 20px 0;
    background: #fff
}

#comments .post_content {
    margin: 0;
    padding: 0;
    background: 0 0;
    font-size: 14px
}

.comment-meta {
    position: relative;
    margin: 0 0 10px
}

.comment-meta-left {
    float: left;
    width: 100%
}

#comments .avatar {
    float: left;
    margin: 0 10px 0 0;
    width: 40px;
    height: 40px;
    border-radius: 100%
}

.comment-name-date {
    padding: 3px 0 0;
    height: 37px
}

a.admin-url {
    text-decoration: underline
}

a.guest-url {
    text-decoration: underline
}

.comment-name-date {
    margin: 0;
    font-size: 12px
}

.comment-date {
    color: #888;
    margin: 10px 0 0
}

.comment-act {
    font-size: 12px;
    position: absolute;
    right: 0;
    padding: 0;
    margin: 5px 0 0
}

.comment-act li {
    display: inline;
    margin: 0
}

.comment-reply a,
.comment-reply a:visited {
    border-right: 1px solid #aaa;
    padding: 0 10px 0 0;
    margin: 0 6px 0 0
}

.comment-edit a,
.comment-edit a:visited {
    border-left: 1px solid #aaa;
    padding: 0 0 0 10px;
    margin: 0 0 0 6px
}

#comments .post_content p {
    margin: 0 0 15px
}

#comments .post_content blockquote span {
    margin: 0 0 -1em;
    display: block
}

.comment-note {
    display: block;
    font-size: 11px;
    margin: 0 0 1em;
    color: #33a8e5;
    border: 1px solid #94ddd4;
    padding: 10px 15px;
    background: #d6f4f0
}

.comment_closed {
    border: 1px solid #ccc;
    text-align: center;
    margin: 0 35px 15px 0;
    padding: 15px;
    background: #fefefe
}

.no_comment {
    padding-bottom: 15px
}

.comment_message {
    margin: 0 0 25px
}

.commentlist .ping-link {
    margin: 0 0 25px
}

.commentlist .ping-meta {
    margin: 0 0 15px
}

#trackback_url_area {
    margin: 0 0 25px
}

#trackback_url_area label {
    font-size: 11px;
    display: block;
    margin: 0 0 5px
}

#trackback_url_area input {
    border: 1px solid #ddd;
    padding: 5px 10px;
    width: 100%
}

#comment_pager {
    margin: 0 0 10px;
    height: 24px
}

#comment_pager a,
#comment_pager span {
    display: inline;
    float: left;
    margin: 0 10px 0 0
}

#comment_pager .current {
    text-decoration: underline
}

.comment_form_wrapper {
    margin: 0;
    padding: 15px;
    background: #fff
}

.comment .comment_form_wrapper {
    margin: 0 0 20px
}

#cancel_comment_reply a {
    background: #eee;
    margin: 0 0 1em;
    padding: 10px;
    text-align: center;
    display: block
}

#cancel_comment_reply a:hover {
    background: #222;
    color: #fff
}

#comment_user_login p {
    padding: 5px 0;
    margin: 0;
    line-height: 1;
    font-size: 12px
}

#comment_user_login span {
    margin: 0 0 0 40px
}

#comment_login {
    margin: 0;
    padding: 3px 30px 10px
}

#comment_login p {
    margin: 0;
    padding: 12px 0 11px 36px;
    line-height: 1
}

#comment_login a {
    margin: 0 0 0 20px;
    padding: 0
}

#guest_info {
    padding: 0;
    width: 100%
}

#guest_info div {
    margin: 0 0 12px;
    text-align: left
}

#guest_info input {
    margin: 0;
    padding: 5px 10px;
    border: 1px solid #ccc;
    width: 100%;
    background: #fff;
    box-shadow: 1px 1px 5px 0 rgba(0, 0, 0, .1) inset
}

#guest_info input:focus {
    border: 1px solid #999
}

#guest_info label {
    display: block;
    margin: 0 0 10px;
    padding: 0;
    font-size: 12px
}

#guest_info span {
    margin: 0 10px 0 0
}

#comment_textarea textarea {
    margin: 15px 0 0;
    width: 100%;
    height: 150px;
    font-size: 12px;
    overflow: auto;
    padding: 10px;
    background: #fff;
    color: #000;
    border: 1px solid #ccc;
    box-shadow: 1px 1px 5px 0 rgba(0, 0, 0, .1) inset
}

#comment_textarea textarea:focus {
    border: 1px solid #999
}

#submit_comment_wrapper {
    text-align: center
}

#submit_comment {
    color: #fff;
    background: #000;
    border: none;
    cursor: pointer;
    font-size: 14px;
    width: 200px;
    height: 50px;
    margin: 15px auto 0;
    display: block;
    -webkit-transition: background-color .2s ease-in-out;
    transition: background-color .2s ease-in-out
}

#submit_comment:hover {
    background: #222;
    color: #fff
}

#input_hidden_field {
    display: none
}

.password_protected {
    text-align: center;
    margin: 0 38px 30px;
    padding: 10px 20px;
    color: #fff;
    background: #3db4b2;
    border-radius: 5px
}

.password_protected p {
    font-size: 12px;
    margin: 0;
    line-height: 1.6
}

@-webkit-keyframes slideUp {
    0% {
        bottom: -30px
    }

    100% {
        opacity: 1;
        bottom: 0
    }
}

@keyframes slideUp {
    0% {
        bottom: -30px
    }

    100% {
        opacity: 1;
        bottom: 0
    }
}

@-webkit-keyframes zoomOut {
    0% {
        transform: scale(1)
    }

    100% {
        transform: scale(1.1)
    }
}

@keyframes zoomOut {
    0% {
        transform: scale(1)
    }

    100% {
        transform: scale(1.1)
    }
}

@-webkit-keyframes zoomIn {
    0% {
        transform: scale(1.1)
    }

    100% {
        transform: scale(1)
    }
}

@keyframes zoomIn {
    0% {
        transform: scale(1.1)
    }

    100% {
        transform: scale(1)
    }
}

@-webkit-keyframes opacityAnimation {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

@keyframes opacityAnimation {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

@-webkit-keyframes opacityAnimation2 {
    0% {
        opacity: 1
    }

    100% {
        opacity: 0
    }
}

@keyframes opacityAnimation2 {
    0% {
        opacity: 1
    }

    100% {
        opacity: 0
    }
}

@-webkit-keyframes slideRight {
    0% {
        left: -200px;
        opacity: 0
    }

    100% {
        left: 0;
        opacity: 1
    }
}

@keyframes slideRight {
    0% {
        left: -200px;
        opacity: 0
    }

    100% {
        left: 0;
        opacity: 1
    }
}

@-webkit-keyframes zoomIn2 {
    0% {
        transform: scale(1.1)
    }

    100% {
        transform: scale(1)
    }
}

@keyframes zoomIn2 {
    0% {
        transform: scale(1.1)
    }

    100% {
        transform: scale(1)
    }
}

.post_content .alignright {
    float: right
}

.post_content .alignleft {
    float: left
}

.post_content .aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 7px
}

.post_content blockquote.alignleft,
.post_content img.alignleft {
    margin: 7px 24px 7px 0
}

.post_content .wp-caption.alignleft {
    margin: 7px 14px 7px 0
}

.post_content blockquote.alignright,
.post_content img.alignright {
    margin: 7px 0 7px 24px
}

.post_content .wp-caption.alignright {
    margin: 7px 0 7px 14px
}

.post_content blockquote.aligncenter,
.post_content img.aligncenter,
.post_content .wp-caption.aligncenter {
    margin-top: 7px;
    margin-bottom: 7px
}

.post_content p {
    line-height: 2.6;
    margin: 0 0 2em
}

.post_content p:last-child {
    margin: 0
}

.post_content h1,
.post_content h2,
.post_content h3,
.post_content h4,
.post_content h5,
.post_content h6 {
    clear: both;
    line-height: 1.4;
    margin: 0 0 20px;
    padding: 0;
    font-weight: 500
}

.post_content h1 {
    font-size: 150%
}

.post_content h2 {
    font-size: 140%
}

.post_content h3 {
    font-size: 130%
}

.post_content h4 {
    font-size: 120%
}

.post_content h5 {
    font-size: 110%
}

.post_content h6 {
    font-size: 100%
}

.post_content img[class*=align],
.post_content img[class*=wp-image-],
.post_content img[class*=attachment-],
.post_content img.size-full,
.post_content img.size-large,
.post_content .wp-post-image,
.post_content img {
    height: auto;
    max-width: 100%
}

.post_content li,
.post_content dt,
.post_content dd {
    line-height: 2.4
}

.post_content ul,
.post_content ol,
.post_content dl {
    margin-bottom: 24px
}

.post_content ol {
    list-style: decimal outside none;
    margin-left: 1.5em
}

.post_content ul {
    list-style: circle outside none;
    margin-left: 1.3em
}

.post_content li>ul,
.post_content li>ol {
    margin-bottom: 0
}

.post_content dt {
    font-weight: 700
}

.post_content dd {
    margin-bottom: 1em
}

.post_content table {
    margin: 0 0 24px;
    width: 100% !important
}

.post_content td,
.post_content th {
    border: 1px solid #ccc;
    padding: 10px 15px;
    line-height: 2.4;
    background: #fff
}

.post_content th {
    background: #f2f2f2;
    font-weight: 400
}

.post_content table.table_no_border th,
.post_content table.table_no_border td {
    border: none;
    padding-left: 0
}

.post_content table.table_border_horizontal th,
.post_content table.table_border_horizontal td {
    border-left: none;
    border-right: none;
    padding-left: 0
}

body.light_color .post_content td,
body.light_color .post_content th {
    border: 1px solid #ccc;
    background: #fafafa
}

body.light_color .post_content th {
    background: #eee
}

.post_content blockquote {
    margin: 0 0 25px;
    padding: 27px 30px;
    background: #fff;
    border: 1px solid #ccc;
    box-shadow: 0px 3px 0px 0px rgba(150, 150, 150, .1);
    position: relative
}

.post_content blockquote:before {
    content: '"';
    font-style: italic;
    font-size: 30px;
    font-weight: 400;
    line-height: 40px;
    width: 30px;
    height: 30px;
    position: absolute;
    top: 5px;
    left: 10px;
    color: #5cbcd7
}

.post_content blockquote:after {
    content: '"';
    font-style: italic;
    font-size: 30px;
    font-weight: 400;
    text-align: left;
    line-height: 60px;
    width: 30px;
    height: 30px;
    position: absolute;
    bottom: 7px;
    right: -2px;
    color: #5cbcd7
}

.post_content blockquote cite {
    border-top: 1px dotted #aaa;
    display: block;
    padding: 20px 0 0;
    font-style: italic;
    text-align: right;
    font-size: 90%
}

.post_content .wp-caption {
    margin-bottom: 24px;
    background: #f8f8f8;
    border: 1px solid #ccc;
    padding: 5px;
    max-width: 100%;
    -webkit-border-radius: 5px;
    border-radius: 5px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.post_content .wp-caption-text {
    text-align: center;
    font-size: 12px;
    font-style: italic;
    line-height: 1.5;
    margin: 9px auto
}

.post_content .wp-caption img[class*=wp-image-] {
    display: block;
    margin: 0 auto
}

.gallery {
    margin-bottom: 20px
}

.gallery a img {
    border: 0 !important
}

.gallery-item {
    float: left;
    margin: 0 4px 4px 0;
    overflow: hidden;
    position: relative
}

.gallery-columns-1 .gallery-item {
    max-width: 100%
}

.gallery-columns-2 .gallery-item {
    max-width: 48%;
    max-width: -webkit-calc(50% - 4px);
    max-width: calc(50% - 4px)
}

.gallery-columns-3 .gallery-item {
    max-width: 32%;
    max-width: -webkit-calc(33.3% - 4px);
    max-width: calc(33.3% - 4px)
}

.gallery-columns-4 .gallery-item {
    max-width: 23%;
    max-width: -webkit-calc(25% - 4px);
    max-width: calc(25% - 4px)
}

.gallery-columns-5 .gallery-item {
    max-width: 19%;
    max-width: -webkit-calc(20% - 4px);
    max-width: calc(20% - 4px)
}

.gallery-columns-6 .gallery-item {
    max-width: 15%;
    max-width: -webkit-calc(16.7% - 4px);
    max-width: calc(16.7% - 4px)
}

.gallery-columns-7 .gallery-item {
    max-width: 13%;
    max-width: -webkit-calc(14.28% - 4px);
    max-width: calc(14.28% - 4px)
}

.gallery-columns-8 .gallery-item {
    max-width: 11%;
    max-width: -webkit-calc(12.5% - 4px);
    max-width: calc(12.5% - 4px)
}

.gallery-columns-9 .gallery-item {
    max-width: 9%;
    max-width: -webkit-calc(11.1% - 4px);
    max-width: calc(11.1% - 4px)
}

.gallery-columns-10 .gallery-item {
    max-width: 7%;
    max-width: -webkit-calc(9.4% - 0px);
    max-width: calc(9.4% - 0px)
}

.gallery-columns-1 .gallery-item:nth-of-type(1n),
.gallery-columns-2 .gallery-item:nth-of-type(2n),
.gallery-columns-3 .gallery-item:nth-of-type(3n),
.gallery-columns-4 .gallery-item:nth-of-type(4n),
.gallery-columns-5 .gallery-item:nth-of-type(5n),
.gallery-columns-6 .gallery-item:nth-of-type(6n),
.gallery-columns-7 .gallery-item:nth-of-type(7n),
.gallery-columns-8 .gallery-item:nth-of-type(8n),
.gallery-columns-9 .gallery-item:nth-of-type(9n),
.gallery-columns-10 .gallery-item:nth-of-type(10n) {
    margin-right: 0
}

.gallery-caption {
    background-color: rgba(0, 0, 0, .7);
    color: #fff;
    font-size: 12px;
    line-height: 1.5;
    margin: 0;
    max-height: 50%;
    opacity: 0;
    padding: 6px 8px;
    position: absolute;
    bottom: 0;
    left: 0;
    text-align: left;
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.gallery-caption:before {
    content: "";
    height: 100%;
    min-height: 49px;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%
}

.gallery-item:hover .gallery-caption {
    opacity: 1
}

.gallery-columns-7 .gallery-caption,
.gallery-columns-8 .gallery-caption,
.gallery-columns-9 .gallery-caption,
.gallery-columns-10 .gallery-caption {
    display: none
}

.post_content .wp-smiley {
    border: 0;
    margin-bottom: 0;
    margin-top: 0;
    padding: 0
}

.post_content address {
    margin: 0 0 24px;
    line-height: 2.2
}

.post_content pre {
    border-left: 3px solid #ccc;
    background: #f8f8f8;
    font-size: 12px;
    margin: 0 0 27px;
    line-height: 1.7;
    padding: 20px;
    overflow: auto
}

.post_content .mejs-container {
    margin: 12px 0 25px
}

.c-pw__desc,
.c-pw__desc p {
    line-height: 2.5
}

.c-pw__desc p {
    margin-bottom: 16px !important
}

.c-pw__desc.type2 p {
    text-align: center
}

.c-pw__desc.type3 p {
    text-align: right
}

.c-pw__btn {
    border: none;
    background: #111;
    color: #fff;
    display: inline-block;
    padding: 0 20px;
    font-size: 14px;
    text-align: center;
    line-height: 40px;
    height: 40px
}

.c-pw__btn:hover {
    background: #333;
    color: #fff
}

.c-pw__btn--register {
    min-width: 160px;
    margin-bottom: 32px
}

.c-pw__btn--submit {
    background: #111;
    color: #fff;
    min-width: 100px;
    border: 0;
    cursor: pointer;
    top: -1px;
    position: relative;
}

.c-pw .c-pw__btn:hover {
    text-decoration: none
}

.c-pw__btn.type2 {
    display: table;
    margin: 0 auto 32px
}

.c-pw__btn.type3 {
    float: right
}

.c-pw__box {
    width: 100%;
    border: 1px solid #ddd;
    padding: 25px 36px;
    display: inline-block;
    margin-bottom: 40px;
    box-sizing: border-box;
    background: #fff
}

.c-pw__box .c-pw__box-desc {
    line-height: 1.2;
    margin-bottom: 20px
}

.c-pw__box-label {
    margin-right: 14px
}

.c-pw__box-input {
    border: 1px solid #ddd;
    background: #fff;
    height: 40px;
    width: 250px;
    margin-right: 13px;
    flex: 1;
    box-sizing: border-box;
    padding: 0 10px
}

.post_content .c-pw__btn,
.post_content .c-pw__btn:hover {
    color: #fff
}

.cardlink {
    word-wrap: break-word;
    max-width: 100%;
    margin: 45px 0 !important;
    padding: 12px;
    border: 1px solid #ddd;
    background: #fafafa
}

.cardlink_thumbnail {
    margin-right: 20px;
    float: left
}

.cardlink_content {
    line-height: 1.6
}

.cardlink_timestamp {
    display: inline;
    margin: 0;
    padding: 0;
    color: #222;
    font-size: 12px;
    line-height: 1.6;
    vertical-align: top
}

.cardlink_title {
    margin: 0 0 5px;
    font-size: 14px
}

.cardlink_title a {
    color: #000;
    font-weight: 700;
    text-decoration: none
}

.cardlink_title a:hover {
    text-decoration: underline
}

.cardlink_excerpt {
    overflow: hidden;
    color: #333;
    font-size: 12px;
    line-height: 1.8
}

.cardlink_footer {
    clear: both
}

.clear {
    clear: both
}

@media screen and (max-width:767px) {
    .cardlink_thumbnail {
        float: none
    }

    .cardlink_timestamp {
        line-height: 2.4;
        vertical-align: middle
    }

    .cardlink_excerpt {
        float: none
    }
}

.p-btn {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: inline-block;
    min-width: 180px;
    height: 50px;
    padding: 0 15px;
    border-radius: 0;
    color: #fff;
    font-size: 14px;
    line-height: 50px;
    text-align: center
}

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

:root {
    --wp-admin-theme-color: #007cba;
    --wp-admin-theme-color-darker-10: #006ba1;
    --wp-admin-theme-color-darker-20: #005a87
}

#start-resizable-editor-section {
    display: none
}

.wp-block-audio figcaption {
    margin-top: .5em;
    margin-bottom: 1em
}

.wp-block-audio audio {
    width: 100%;
    min-width: 300px
}

.wp-block-button__link {
    color: #fff;
    background-color: #32373c;
    border: none;
    border-radius: 28px;
    box-shadow: none;
    cursor: pointer;
    display: inline-block;
    font-size: 18px;
    padding: 12px 24px;
    text-align: center;
    text-decoration: none;
    overflow-wrap: break-word
}

.wp-block-button__link:active,
.wp-block-button__link:focus,
.wp-block-button__link:hover,
.wp-block-button__link:visited {
    color: #fff
}

.wp-block-button__link.aligncenter {
    text-align: center
}

.wp-block-button__link.alignright {
    text-align: right
}

.wp-block-button.is-style-squared,
.wp-block-button__link.wp-block-button.is-style-squared {
    border-radius: 0
}

.wp-block-button.no-border-radius,
.wp-block-button__link.no-border-radius {
    border-radius: 0 !important
}

.is-style-outline .wp-block-button__link,
.wp-block-button__link.is-style-outline {
    color: #32373c;
    background-color: transparent;
    border: 2px solid
}

.wp-block-buttons .wp-block-button {
    display: inline-block;
    margin-right: 8px;
    margin-bottom: 8px
}

.wp-block-buttons .wp-block-button:last-child {
    margin-right: 0
}

.wp-block-buttons.alignright .wp-block-button {
    margin-right: 0;
    margin-left: 8px
}

.wp-block-buttons.alignright .wp-block-button:first-child {
    margin-left: 0
}

.wp-block-buttons.alignleft .wp-block-button {
    margin-left: 0;
    margin-right: 8px
}

.wp-block-buttons.alignleft .wp-block-button:last-child {
    margin-right: 0
}

.wp-block-button.aligncenter,
.wp-block-buttons.aligncenter,
.wp-block-calendar {
    text-align: center
}

.wp-block-calendar tbody td,
.wp-block-calendar th {
    padding: 4px;
    border: 1px solid #ddd
}

.wp-block-calendar tfoot td {
    border: none
}

.wp-block-calendar table {
    width: 100%;
    border-collapse: collapse;
    font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen-Sans, Ubuntu, Cantarell, Helvetica Neue, sans-serif
}

.wp-block-calendar table th {
    font-weight: 400;
    background: #ddd
}

.wp-block-calendar a {
    text-decoration: underline
}

.wp-block-calendar tfoot a {
    color: #007cba;
    color: var(--wp-admin-theme-color)
}

.wp-block-calendar table caption,
.wp-block-calendar table tbody {
    color: #40464d
}

.wp-block-categories.alignleft {
    margin-right: 2em
}

.wp-block-categories.alignright {
    margin-left: 2em
}

.wp-block-columns {
    display: flex;
    margin-bottom: 28px;
    flex-wrap: wrap
}

@media (min-width:782px) {
    .wp-block-columns {
        flex-wrap: nowrap
    }
}

.wp-block-columns.has-background {
    padding: 20px 38px
}

.wp-block-column {
    flex-grow: 1;
    min-width: 0;
    word-break: break-word;
    overflow-wrap: break-word
}

@media (max-width:599px) {
    .wp-block-column {
        flex-basis: 100% !important
    }
}

@media (min-width:600px) and (max-width:781px) {
    .wp-block-column {
        flex-basis: calc(50% - 16px) !important;
        flex-grow: 0
    }

    .wp-block-column:nth-child(2n) {
        margin-left: 32px
    }
}

@media (min-width:782px) {
    .wp-block-column {
        flex-basis: 0;
        flex-grow: 1
    }

    .wp-block-column[style*=flex-basis] {
        flex-grow: 0
    }

    .wp-block-column:not(:first-child) {
        margin-left: 32px
    }
}

.wp-block-columns.are-vertically-aligned-top {
    align-items: flex-start
}

.wp-block-columns.are-vertically-aligned-center {
    align-items: center
}

.wp-block-columns.are-vertically-aligned-bottom {
    align-items: flex-end
}

.wp-block-column.is-vertically-aligned-top {
    align-self: flex-start
}

.wp-block-column.is-vertically-aligned-center {
    -ms-grid-row-align: center;
    align-self: center
}

.wp-block-column.is-vertically-aligned-bottom {
    align-self: flex-end
}

.wp-block-column.is-vertically-aligned-bottom,
.wp-block-column.is-vertically-aligned-center,
.wp-block-column.is-vertically-aligned-top {
    width: 100%
}

.wp-block-cover,
.wp-block-cover-image {
    position: relative;
    background-size: cover;
    background-position: 50%;
    min-height: 430px;
    height: 100%;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 16px
}

.wp-block-cover-image.has-parallax,
.wp-block-cover.has-parallax {
    background-attachment: fixed
}

@supports (-webkit-overflow-scrolling:touch) {

    .wp-block-cover-image.has-parallax,
    .wp-block-cover.has-parallax {
        background-attachment: scroll
    }
}

@media (prefers-reduced-motion:reduce) {

    .wp-block-cover-image.has-parallax,
    .wp-block-cover.has-parallax {
        background-attachment: scroll
    }
}

.wp-block-cover-image.has-background-dim,
.wp-block-cover.has-background-dim {
    background-color: #000
}

.wp-block-cover-image.has-background-dim:before,
.wp-block-cover.has-background-dim:before {
    content: "";
    background-color: inherit
}

.wp-block-cover-image.has-background-dim:not(.has-background-gradient):before,
.wp-block-cover-image .wp-block-cover__gradient-background,
.wp-block-cover.has-background-dim:not(.has-background-gradient):before,
.wp-block-cover .wp-block-cover__gradient-background {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    z-index: 1
}

.wp-block-cover-image.has-background-dim:not(.has-background-gradient):before,
.wp-block-cover-image .wp-block-cover__gradient-background,
.wp-block-cover.has-background-dim:not(.has-background-gradient):before,
.wp-block-cover .wp-block-cover__gradient-background {
    opacity: .5
}

.wp-block-cover-image.has-background-dim.has-background-dim-10:not(.has-background-gradient):before,
.wp-block-cover.has-background-dim.has-background-dim-10:not(.has-background-gradient):before {
    opacity: .1
}

.wp-block-cover-image.has-background-dim.has-background-dim-10 .wp-block-cover__gradient-background,
.wp-block-cover.has-background-dim.has-background-dim-10 .wp-block-cover__gradient-background {
    opacity: .1
}

.wp-block-cover-image.has-background-dim.has-background-dim-20:not(.has-background-gradient):before,
.wp-block-cover.has-background-dim.has-background-dim-20:not(.has-background-gradient):before {
    opacity: .2
}

.wp-block-cover-image.has-background-dim.has-background-dim-20 .wp-block-cover__gradient-background,
.wp-block-cover.has-background-dim.has-background-dim-20 .wp-block-cover__gradient-background {
    opacity: .2
}

.wp-block-cover-image.has-background-dim.has-background-dim-30:not(.has-background-gradient):before,
.wp-block-cover.has-background-dim.has-background-dim-30:not(.has-background-gradient):before {
    opacity: .3
}

.wp-block-cover-image.has-background-dim.has-background-dim-30 .wp-block-cover__gradient-background,
.wp-block-cover.has-background-dim.has-background-dim-30 .wp-block-cover__gradient-background {
    opacity: .3
}

.wp-block-cover-image.has-background-dim.has-background-dim-40:not(.has-background-gradient):before,
.wp-block-cover.has-background-dim.has-background-dim-40:not(.has-background-gradient):before {
    opacity: .4
}

.wp-block-cover-image.has-background-dim.has-background-dim-40 .wp-block-cover__gradient-background,
.wp-block-cover.has-background-dim.has-background-dim-40 .wp-block-cover__gradient-background {
    opacity: .4
}

.wp-block-cover-image.has-background-dim.has-background-dim-50:not(.has-background-gradient):before,
.wp-block-cover.has-background-dim.has-background-dim-50:not(.has-background-gradient):before {
    opacity: .5
}

.wp-block-cover-image.has-background-dim.has-background-dim-50 .wp-block-cover__gradient-background,
.wp-block-cover.has-background-dim.has-background-dim-50 .wp-block-cover__gradient-background {
    opacity: .5
}

.wp-block-cover-image.has-background-dim.has-background-dim-60:not(.has-background-gradient):before,
.wp-block-cover.has-background-dim.has-background-dim-60:not(.has-background-gradient):before {
    opacity: .6
}

.wp-block-cover-image.has-background-dim.has-background-dim-60 .wp-block-cover__gradient-background,
.wp-block-cover.has-background-dim.has-background-dim-60 .wp-block-cover__gradient-background {
    opacity: .6
}

.wp-block-cover-image.has-background-dim.has-background-dim-70:not(.has-background-gradient):before,
.wp-block-cover.has-background-dim.has-background-dim-70:not(.has-background-gradient):before {
    opacity: .7
}

.wp-block-cover-image.has-background-dim.has-background-dim-70 .wp-block-cover__gradient-background,
.wp-block-cover.has-background-dim.has-background-dim-70 .wp-block-cover__gradient-background {
    opacity: .7
}

.wp-block-cover-image.has-background-dim.has-background-dim-80:not(.has-background-gradient):before,
.wp-block-cover.has-background-dim.has-background-dim-80:not(.has-background-gradient):before {
    opacity: .8
}

.wp-block-cover-image.has-background-dim.has-background-dim-80 .wp-block-cover__gradient-background,
.wp-block-cover.has-background-dim.has-background-dim-80 .wp-block-cover__gradient-background {
    opacity: .8
}

.wp-block-cover-image.has-background-dim.has-background-dim-90:not(.has-background-gradient):before,
.wp-block-cover.has-background-dim.has-background-dim-90:not(.has-background-gradient):before {
    opacity: .9
}

.wp-block-cover-image.has-background-dim.has-background-dim-90 .wp-block-cover__gradient-background,
.wp-block-cover.has-background-dim.has-background-dim-90 .wp-block-cover__gradient-background {
    opacity: .9
}

.wp-block-cover-image.has-background-dim.has-background-dim-100:not(.has-background-gradient):before,
.wp-block-cover.has-background-dim.has-background-dim-100:not(.has-background-gradient):before {
    opacity: 1
}

.wp-block-cover-image.has-background-dim.has-background-dim-100 .wp-block-cover__gradient-background,
.wp-block-cover.has-background-dim.has-background-dim-100 .wp-block-cover__gradient-background {
    opacity: 1
}

.wp-block-cover-image.alignleft,
.wp-block-cover-image.alignright,
.wp-block-cover.alignleft,
.wp-block-cover.alignright {
    max-width: 290px;
    width: 100%
}

.wp-block-cover-image:after,
.wp-block-cover:after {
    display: block;
    content: "";
    font-size: 0;
    min-height: inherit
}

@supports ((position:-webkit-sticky) or (position:sticky)) {

    .wp-block-cover-image:after,
    .wp-block-cover:after {
        content: none
    }
}

.wp-block-cover-image.aligncenter,
.wp-block-cover-image.alignleft,
.wp-block-cover-image.alignright,
.wp-block-cover.aligncenter,
.wp-block-cover.alignleft,
.wp-block-cover.alignright {
    display: flex
}

.wp-block-cover-image .wp-block-cover__inner-container,
.wp-block-cover .wp-block-cover__inner-container {
    width: calc(100% - 70px);
    z-index: 1;
    color: #fff
}

.wp-block-cover-image .wp-block-subhead:not(.has-text-color),
.wp-block-cover-image h1:not(.has-text-color),
.wp-block-cover-image h2:not(.has-text-color),
.wp-block-cover-image h3:not(.has-text-color),
.wp-block-cover-image h4:not(.has-text-color),
.wp-block-cover-image h5:not(.has-text-color),
.wp-block-cover-image h6:not(.has-text-color),
.wp-block-cover-image p:not(.has-text-color),
.wp-block-cover .wp-block-subhead:not(.has-text-color),
.wp-block-cover h1:not(.has-text-color),
.wp-block-cover h2:not(.has-text-color),
.wp-block-cover h3:not(.has-text-color),
.wp-block-cover h4:not(.has-text-color),
.wp-block-cover h5:not(.has-text-color),
.wp-block-cover h6:not(.has-text-color),
.wp-block-cover p:not(.has-text-color) {
    color: inherit
}

.wp-block-cover-image.is-position-top-left,
.wp-block-cover.is-position-top-left {
    align-items: flex-start;
    justify-content: flex-start
}

.wp-block-cover-image.is-position-top-center,
.wp-block-cover.is-position-top-center {
    align-items: flex-start;
    justify-content: center
}

.wp-block-cover-image.is-position-top-right,
.wp-block-cover.is-position-top-right {
    align-items: flex-start;
    justify-content: flex-end
}

.wp-block-cover-image.is-position-center-left,
.wp-block-cover.is-position-center-left {
    align-items: center;
    justify-content: flex-start
}

.wp-block-cover-image.is-position-center-center,
.wp-block-cover.is-position-center-center {
    align-items: center;
    justify-content: center
}

.wp-block-cover-image.is-position-center-right,
.wp-block-cover.is-position-center-right {
    align-items: center;
    justify-content: flex-end
}

.wp-block-cover-image.is-position-bottom-left,
.wp-block-cover.is-position-bottom-left {
    align-items: flex-end;
    justify-content: flex-start
}

.wp-block-cover-image.is-position-bottom-center,
.wp-block-cover.is-position-bottom-center {
    align-items: flex-end;
    justify-content: center
}

.wp-block-cover-image.is-position-bottom-right,
.wp-block-cover.is-position-bottom-right {
    align-items: flex-end;
    justify-content: flex-end
}

.wp-block-cover-image.has-custom-content-position.has-custom-content-position .wp-block-cover__inner-container,
.wp-block-cover.has-custom-content-position.has-custom-content-position .wp-block-cover__inner-container {
    margin: 0;
    width: auto
}

.wp-block-cover__video-background {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    width: 100%;
    height: 100%;
    z-index: 0;
    object-fit: cover
}

.wp-block-cover-image-text,
.wp-block-cover-text,
section.wp-block-cover-image h2 {
    color: #fff
}

.wp-block-cover-image-text a,
.wp-block-cover-image-text a:active,
.wp-block-cover-image-text a:focus,
.wp-block-cover-image-text a:hover,
.wp-block-cover-text a,
.wp-block-cover-text a:active,
.wp-block-cover-text a:focus,
.wp-block-cover-text a:hover,
section.wp-block-cover-image h2 a,
section.wp-block-cover-image h2 a:active,
section.wp-block-cover-image h2 a:focus,
section.wp-block-cover-image h2 a:hover {
    color: #fff
}

.wp-block-cover-image .wp-block-cover.has-left-content {
    justify-content: flex-start
}

.wp-block-cover-image .wp-block-cover.has-right-content {
    justify-content: flex-end
}

.wp-block-cover-image.has-left-content .wp-block-cover-image-text,
.wp-block-cover.has-left-content .wp-block-cover-text,
section.wp-block-cover-image.has-left-content>h2 {
    margin-left: 0;
    text-align: left
}

.wp-block-cover-image.has-right-content .wp-block-cover-image-text,
.wp-block-cover.has-right-content .wp-block-cover-text,
section.wp-block-cover-image.has-right-content>h2 {
    margin-right: 0;
    text-align: right
}

.wp-block-cover-image .wp-block-cover-image-text,
.wp-block-cover .wp-block-cover-text,
section.wp-block-cover-image>h2 {
    font-size: 2em;
    line-height: 1.25;
    z-index: 1;
    margin-bottom: 0;
    max-width: 580px;
    padding: 14px;
    text-align: center
}

.wp-block-embed.alignleft,
.wp-block-embed.alignright,
.wp-block[data-align=left]>[data-type^=core-embed],
.wp-block[data-align=right]>[data-type^=core-embed] {
    max-width: 360px;
    width: 100%
}

.wp-block-embed.alignleft .wp-block-embed__wrapper,
.wp-block-embed.alignright .wp-block-embed__wrapper,
.wp-block[data-align=left]>[data-type^=core-embed] .wp-block-embed__wrapper,
.wp-block[data-align=right]>[data-type^=core-embed] .wp-block-embed__wrapper {
    min-width: 280px
}

.wp-block-embed {
    margin-bottom: 1em
}

.wp-block-embed figcaption {
    margin-top: .5em;
    margin-bottom: 1em
}

.wp-block-embed iframe {
    max-width: 100%
}

.wp-block-embed__wrapper {
    position: relative
}

.wp-embed-responsive .wp-has-aspect-ratio .wp-block-embed__wrapper:before {
    content: "";
    display: block;
    padding-top: 50%
}

.wp-embed-responsive .wp-has-aspect-ratio iframe {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    height: 100%;
    width: 100%
}

.wp-embed-responsive .wp-embed-aspect-21-9 .wp-block-embed__wrapper:before {
    padding-top: 42.85%
}

.wp-embed-responsive .wp-embed-aspect-18-9 .wp-block-embed__wrapper:before {
    padding-top: 50%
}

.wp-embed-responsive .wp-embed-aspect-16-9 .wp-block-embed__wrapper:before {
    padding-top: 56.25%
}

.wp-embed-responsive .wp-embed-aspect-4-3 .wp-block-embed__wrapper:before {
    padding-top: 75%
}

.wp-embed-responsive .wp-embed-aspect-1-1 .wp-block-embed__wrapper:before {
    padding-top: 100%
}

.wp-embed-responsive .wp-embed-aspect-9-6 .wp-block-embed__wrapper:before {
    padding-top: 66.66%
}

.wp-embed-responsive .wp-embed-aspect-1-2 .wp-block-embed__wrapper:before {
    padding-top: 200%
}

.wp-block-file {
    margin-bottom: 1.5em
}

.wp-block-file.aligncenter {
    text-align: center
}

.wp-block-file.alignright {
    text-align: right
}

.wp-block-file .wp-block-file__button {
    background: #32373c;
    border-radius: 2em;
    color: #fff;
    font-size: 13px;
    padding: .5em 1em
}

.wp-block-file a.wp-block-file__button {
    text-decoration: none
}

.wp-block-file a.wp-block-file__button:active,
.wp-block-file a.wp-block-file__button:focus,
.wp-block-file a.wp-block-file__button:hover,
.wp-block-file a.wp-block-file__button:visited {
    box-shadow: none;
    color: #fff;
    opacity: .85;
    text-decoration: none
}

.wp-block-file *+.wp-block-file__button {
    margin-left: .75em
}

.blocks-gallery-grid,
.wp-block-gallery {
    display: flex;
    flex-wrap: wrap;
    list-style-type: none;
    padding: 0;
    margin: 0
}

.blocks-gallery-grid .blocks-gallery-image,
.blocks-gallery-grid .blocks-gallery-item,
.wp-block-gallery .blocks-gallery-image,
.wp-block-gallery .blocks-gallery-item {
    margin: 0 16px 16px 0;
    display: flex;
    flex-grow: 1;
    flex-direction: column;
    justify-content: center;
    position: relative
}

.blocks-gallery-grid .blocks-gallery-image figure,
.blocks-gallery-grid .blocks-gallery-item figure,
.wp-block-gallery .blocks-gallery-image figure,
.wp-block-gallery .blocks-gallery-item figure {
    margin: 0;
    height: 100%
}

@supports ((position:-webkit-sticky) or (position:sticky)) {

    .blocks-gallery-grid .blocks-gallery-image figure,
    .blocks-gallery-grid .blocks-gallery-item figure,
    .wp-block-gallery .blocks-gallery-image figure,
    .wp-block-gallery .blocks-gallery-item figure {
        display: flex;
        align-items: flex-end;
        justify-content: flex-start
    }
}

.blocks-gallery-grid .blocks-gallery-image img,
.blocks-gallery-grid .blocks-gallery-item img,
.wp-block-gallery .blocks-gallery-image img,
.wp-block-gallery .blocks-gallery-item img {
    display: block;
    max-width: 100%;
    height: auto;
    width: 100%
}

@supports ((position:-webkit-sticky) or (position:sticky)) {

    .blocks-gallery-grid .blocks-gallery-image img,
    .blocks-gallery-grid .blocks-gallery-item img,
    .wp-block-gallery .blocks-gallery-image img,
    .wp-block-gallery .blocks-gallery-item img {
        width: auto
    }
}

.blocks-gallery-grid .blocks-gallery-image figcaption,
.blocks-gallery-grid .blocks-gallery-item figcaption,
.wp-block-gallery .blocks-gallery-image figcaption,
.wp-block-gallery .blocks-gallery-item figcaption {
    position: absolute;
    bottom: 0;
    width: 100%;
    max-height: 100%;
    overflow: auto;
    padding: 40px 10px 9px;
    color: #fff;
    text-align: center;
    font-size: 13px;
    background: linear-gradient(0deg, rgba(0, 0, 0, .7), rgba(0, 0, 0, .3) 70%, transparent)
}

.blocks-gallery-grid .blocks-gallery-image figcaption img,
.blocks-gallery-grid .blocks-gallery-item figcaption img,
.wp-block-gallery .blocks-gallery-image figcaption img,
.wp-block-gallery .blocks-gallery-item figcaption img {
    display: inline
}

.blocks-gallery-grid.is-cropped .blocks-gallery-image a,
.blocks-gallery-grid.is-cropped .blocks-gallery-image img,
.blocks-gallery-grid.is-cropped .blocks-gallery-item a,
.blocks-gallery-grid.is-cropped .blocks-gallery-item img,
.wp-block-gallery.is-cropped .blocks-gallery-image a,
.wp-block-gallery.is-cropped .blocks-gallery-image img,
.wp-block-gallery.is-cropped .blocks-gallery-item a,
.wp-block-gallery.is-cropped .blocks-gallery-item img {
    width: 100%
}

@supports ((position:-webkit-sticky) or (position:sticky)) {

    .blocks-gallery-grid.is-cropped .blocks-gallery-image a,
    .blocks-gallery-grid.is-cropped .blocks-gallery-image img,
    .blocks-gallery-grid.is-cropped .blocks-gallery-item a,
    .blocks-gallery-grid.is-cropped .blocks-gallery-item img,
    .wp-block-gallery.is-cropped .blocks-gallery-image a,
    .wp-block-gallery.is-cropped .blocks-gallery-image img,
    .wp-block-gallery.is-cropped .blocks-gallery-item a,
    .wp-block-gallery.is-cropped .blocks-gallery-item img {
        height: 100%;
        flex: 1;
        object-fit: cover
    }
}

.blocks-gallery-grid .blocks-gallery-image,
.blocks-gallery-grid .blocks-gallery-item,
.wp-block-gallery .blocks-gallery-image,
.wp-block-gallery .blocks-gallery-item {
    width: calc(50% - 16px)
}

.blocks-gallery-grid .blocks-gallery-image:nth-of-type(2n),
.blocks-gallery-grid .blocks-gallery-item:nth-of-type(2n),
.wp-block-gallery .blocks-gallery-image:nth-of-type(2n),
.wp-block-gallery .blocks-gallery-item:nth-of-type(2n) {
    margin-right: 0
}

.blocks-gallery-grid.columns-1 .blocks-gallery-image,
.blocks-gallery-grid.columns-1 .blocks-gallery-item,
.wp-block-gallery.columns-1 .blocks-gallery-image,
.wp-block-gallery.columns-1 .blocks-gallery-item {
    width: 100%;
    margin-right: 0
}

@media (min-width:600px) {

    .blocks-gallery-grid.columns-3 .blocks-gallery-image,
    .blocks-gallery-grid.columns-3 .blocks-gallery-item,
    .wp-block-gallery.columns-3 .blocks-gallery-image,
    .wp-block-gallery.columns-3 .blocks-gallery-item {
        width: calc(33.33333% - 10.66667px);
        margin-right: 16px
    }

    .blocks-gallery-grid.columns-4 .blocks-gallery-image,
    .blocks-gallery-grid.columns-4 .blocks-gallery-item,
    .wp-block-gallery.columns-4 .blocks-gallery-image,
    .wp-block-gallery.columns-4 .blocks-gallery-item {
        width: calc(25% - 12px);
        margin-right: 16px
    }

    .blocks-gallery-grid.columns-5 .blocks-gallery-image,
    .blocks-gallery-grid.columns-5 .blocks-gallery-item,
    .wp-block-gallery.columns-5 .blocks-gallery-image,
    .wp-block-gallery.columns-5 .blocks-gallery-item {
        width: calc(20% - 12.8px);
        margin-right: 16px
    }

    .blocks-gallery-grid.columns-6 .blocks-gallery-image,
    .blocks-gallery-grid.columns-6 .blocks-gallery-item,
    .wp-block-gallery.columns-6 .blocks-gallery-image,
    .wp-block-gallery.columns-6 .blocks-gallery-item {
        width: calc(16.66667% - 13.33333px);
        margin-right: 16px
    }

    .blocks-gallery-grid.columns-7 .blocks-gallery-image,
    .blocks-gallery-grid.columns-7 .blocks-gallery-item,
    .wp-block-gallery.columns-7 .blocks-gallery-image,
    .wp-block-gallery.columns-7 .blocks-gallery-item {
        width: calc(14.28571% - 13.71429px);
        margin-right: 16px
    }

    .blocks-gallery-grid.columns-8 .blocks-gallery-image,
    .blocks-gallery-grid.columns-8 .blocks-gallery-item,
    .wp-block-gallery.columns-8 .blocks-gallery-image,
    .wp-block-gallery.columns-8 .blocks-gallery-item {
        width: calc(12.5% - 14px);
        margin-right: 16px
    }

    .blocks-gallery-grid.columns-1 .blocks-gallery-image:nth-of-type(1n),
    .blocks-gallery-grid.columns-1 .blocks-gallery-item:nth-of-type(1n),
    .wp-block-gallery.columns-1 .blocks-gallery-image:nth-of-type(1n),
    .wp-block-gallery.columns-1 .blocks-gallery-item:nth-of-type(1n) {
        margin-right: 0
    }

    .blocks-gallery-grid.columns-2 .blocks-gallery-image:nth-of-type(2n),
    .blocks-gallery-grid.columns-2 .blocks-gallery-item:nth-of-type(2n),
    .wp-block-gallery.columns-2 .blocks-gallery-image:nth-of-type(2n),
    .wp-block-gallery.columns-2 .blocks-gallery-item:nth-of-type(2n) {
        margin-right: 0
    }

    .blocks-gallery-grid.columns-3 .blocks-gallery-image:nth-of-type(3n),
    .blocks-gallery-grid.columns-3 .blocks-gallery-item:nth-of-type(3n),
    .wp-block-gallery.columns-3 .blocks-gallery-image:nth-of-type(3n),
    .wp-block-gallery.columns-3 .blocks-gallery-item:nth-of-type(3n) {
        margin-right: 0
    }

    .blocks-gallery-grid.columns-4 .blocks-gallery-image:nth-of-type(4n),
    .blocks-gallery-grid.columns-4 .blocks-gallery-item:nth-of-type(4n),
    .wp-block-gallery.columns-4 .blocks-gallery-image:nth-of-type(4n),
    .wp-block-gallery.columns-4 .blocks-gallery-item:nth-of-type(4n) {
        margin-right: 0
    }

    .blocks-gallery-grid.columns-5 .blocks-gallery-image:nth-of-type(5n),
    .blocks-gallery-grid.columns-5 .blocks-gallery-item:nth-of-type(5n),
    .wp-block-gallery.columns-5 .blocks-gallery-image:nth-of-type(5n),
    .wp-block-gallery.columns-5 .blocks-gallery-item:nth-of-type(5n) {
        margin-right: 0
    }

    .blocks-gallery-grid.columns-6 .blocks-gallery-image:nth-of-type(6n),
    .blocks-gallery-grid.columns-6 .blocks-gallery-item:nth-of-type(6n),
    .wp-block-gallery.columns-6 .blocks-gallery-image:nth-of-type(6n),
    .wp-block-gallery.columns-6 .blocks-gallery-item:nth-of-type(6n) {
        margin-right: 0
    }

    .blocks-gallery-grid.columns-7 .blocks-gallery-image:nth-of-type(7n),
    .blocks-gallery-grid.columns-7 .blocks-gallery-item:nth-of-type(7n),
    .wp-block-gallery.columns-7 .blocks-gallery-image:nth-of-type(7n),
    .wp-block-gallery.columns-7 .blocks-gallery-item:nth-of-type(7n) {
        margin-right: 0
    }

    .blocks-gallery-grid.columns-8 .blocks-gallery-image:nth-of-type(8n),
    .blocks-gallery-grid.columns-8 .blocks-gallery-item:nth-of-type(8n),
    .wp-block-gallery.columns-8 .blocks-gallery-image:nth-of-type(8n),
    .wp-block-gallery.columns-8 .blocks-gallery-item:nth-of-type(8n) {
        margin-right: 0
    }
}

.blocks-gallery-grid .blocks-gallery-image:last-child,
.blocks-gallery-grid .blocks-gallery-item:last-child,
.wp-block-gallery .blocks-gallery-image:last-child,
.wp-block-gallery .blocks-gallery-item:last-child {
    margin-right: 0
}

.blocks-gallery-grid.alignleft,
.blocks-gallery-grid.alignright,
.wp-block-gallery.alignleft,
.wp-block-gallery.alignright {
    max-width: 290px;
    width: 100%
}

.blocks-gallery-grid.aligncenter .blocks-gallery-item figure,
.wp-block-gallery.aligncenter .blocks-gallery-item figure {
    justify-content: center
}

h1.has-background,
h2.has-background,
h3.has-background,
h4.has-background,
h5.has-background,
h6.has-background {
    padding: 20px 38px
}

.wp-block-image {
    margin-bottom: 1em
}

.wp-block-image img {
    max-width: 100%
}

.wp-block-image.aligncenter {
    text-align: center
}

.wp-block-image.alignfull img,
.wp-block-image.alignwide img {
    width: 100%
}

.wp-block-image .aligncenter,
.wp-block-image .alignleft,
.wp-block-image .alignright,
.wp-block-image.is-resized {
    display: table
}

.wp-block-image .aligncenter>figcaption,
.wp-block-image .alignleft>figcaption,
.wp-block-image .alignright>figcaption,
.wp-block-image.is-resized>figcaption {
    display: table-caption;
    caption-side: bottom
}

.wp-block-image .alignleft {
    float: left;
    margin: .5em 1em .5em 0
}

.wp-block-image .alignright {
    float: right;
    margin: .5em 0 .5em 1em
}

.wp-block-image .aligncenter {
    margin-left: auto;
    margin-right: auto
}

.wp-block-image figcaption {
    margin-top: .5em;
    margin-bottom: 1em
}

.is-style-circle-mask img,
.is-style-rounded img {
    border-radius: 9999px
}

@supports ((-webkit-mask-image:none) or (mask-image:none)) or (-webkit-mask-image:none) {
    .is-style-circle-mask img {
        -webkit-mask-image: url('data:image/svg+xml;utf8,<svg viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg"><circle cx="50" cy="50" r="50"/></svg>');
        mask-image: url('data:image/svg+xml;utf8,<svg viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg"><circle cx="50" cy="50" r="50"/></svg>');
        mask-mode: alpha;
        -webkit-mask-repeat: no-repeat;
        mask-repeat: no-repeat;
        -webkit-mask-size: contain;
        mask-size: contain;
        -webkit-mask-position: center;
        mask-position: center;
        border-radius: 0
    }
}

.wp-block-latest-comments__comment {
    font-size: 15px;
    line-height: 1.1;
    list-style: none;
    margin-bottom: 1em
}

.has-avatars .wp-block-latest-comments__comment {
    min-height: 36px;
    list-style: none
}

.has-avatars .wp-block-latest-comments__comment .wp-block-latest-comments__comment-excerpt,
.has-avatars .wp-block-latest-comments__comment .wp-block-latest-comments__comment-meta {
    margin-left: 52px
}

.has-dates .wp-block-latest-comments__comment,
.has-excerpts .wp-block-latest-comments__comment {
    line-height: 1.5
}

.wp-block-latest-comments__comment-excerpt p {
    font-size: 14px;
    line-height: 1.8;
    margin: 5px 0 20px
}

.wp-block-latest-comments__comment-date {
    color: #8f98a1;
    display: block;
    font-size: 12px
}

.wp-block-latest-comments .avatar,
.wp-block-latest-comments__comment-avatar {
    border-radius: 24px;
    display: block;
    float: left;
    height: 40px;
    margin-right: 12px;
    width: 40px
}

.wp-block-latest-posts.alignleft {
    margin-right: 2em
}

.wp-block-latest-posts.alignright {
    margin-left: 2em
}

.wp-block-latest-posts.wp-block-latest-posts__list {
    list-style: none
}

.wp-block-latest-posts.wp-block-latest-posts__list li {
    clear: both
}

.wp-block-latest-posts.is-grid {
    display: flex;
    flex-wrap: wrap;
    padding: 0
}

.wp-block-latest-posts.is-grid li {
    margin: 0 20px 20px 0;
    width: 100%
}

@media (min-width:600px) {
    .wp-block-latest-posts.columns-2 li {
        width: calc(50% - 20px)
    }

    .wp-block-latest-posts.columns-3 li {
        width: calc(33.33333% - 20px)
    }

    .wp-block-latest-posts.columns-4 li {
        width: calc(25% - 20px)
    }

    .wp-block-latest-posts.columns-5 li {
        width: calc(20% - 20px)
    }

    .wp-block-latest-posts.columns-6 li {
        width: calc(16.66667% - 20px)
    }
}

.wp-block-latest-posts__post-author,
.wp-block-latest-posts__post-date {
    display: block;
    color: #6c7781;
    font-size: 13px
}

.wp-block-latest-posts__post-excerpt {
    margin-top: 8px;
    margin-bottom: 16px
}

.wp-block-latest-posts__featured-image img {
    height: auto;
    width: auto
}

.wp-block-latest-posts__featured-image.alignleft {
    margin-right: 1em
}

.wp-block-latest-posts__featured-image.alignright {
    margin-left: 1em
}

.wp-block-latest-posts__featured-image.aligncenter {
    margin-bottom: 1em;
    text-align: center
}

.edit-post-visual-editor .wp-block-latest-posts.is-grid li {
    margin-bottom: 20px
}

.wp-block-media-text {}

.wp-block-media-text__media img,
.wp-block-media-text__media video {
    max-width: unset;
    width: 100%;
    vertical-align: middle
}

.wp-block-media-text.is-image-fill figure.wp-block-media-text__media {
    height: 100%;
    min-height: 250px;
    background-size: cover
}

.wp-block-media-text.is-image-fill figure.wp-block-media-text__media>img {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0
}

@media (max-width:600px) {
    .wp-block-media-text.is-stacked-on-mobile {
        -ms-grid-columns: 100% !important;
        grid-template-columns: 100% !important
    }

    .wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__media {
        -ms-grid-column: 1;
        grid-column: 1;
        -ms-grid-row: 1;
        grid-row: 1
    }

    .wp-block-media-text.is-stacked-on-mobile.has-media-on-the-right .wp-block-media-text__media,
    .wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__content {
        -ms-grid-column: 1;
        grid-column: 1;
        -ms-grid-row: 2;
        grid-row: 2
    }

    .wp-block-media-text.is-stacked-on-mobile.has-media-on-the-right .wp-block-media-text__content {
        -ms-grid-column: 1;
        grid-column: 1;
        -ms-grid-row: 1;
        grid-row: 1
    }
}

.wp-block-navigation.is-style-light .wp-block-navigation-link:not(.has-text-color),
.wp-block-navigation .wp-block-navigation-link:not(.has-text-color) {
    color: #1e1e1e
}

.wp-block-navigation.is-style-light:not(.has-background) .wp-block-navigation__container,
.wp-block-navigation:not(.has-background) .wp-block-navigation__container {
    background-color: #fff
}

.wp-block-navigation.is-style-dark .wp-block-navigation-link:not(.has-text-color) {
    color: #fff
}

.wp-block-navigation.is-style-dark:not(.has-background) .wp-block-navigation__container {
    background-color: #1e1e1e
}

.items-justified-left>ul {
    justify-content: flex-start
}

.items-justified-center>ul {
    justify-content: center
}

.items-justified-right>ul {
    justify-content: flex-end
}

.wp-block-navigation-link {
    display: flex;
    align-items: center;
    position: relative;
    margin: 0
}

.wp-block-navigation-link .wp-block-navigation__container:empty {
    display: none
}

.wp-block-navigation__container {
    list-style: none;
    margin: 0;
    padding-left: 0;
    display: flex;
    flex-wrap: wrap
}

.is-vertical .wp-block-navigation__container {
    display: block
}

.has-child .wp-block-navigation__container {
    border: 1px solid rgba(0, 0, 0, .15);
    background-color: inherit;
    color: inherit;
    position: absolute;
    left: 0;
    top: 100%;
    width: fit-content;
    z-index: 1;
    opacity: 0;
    transition: opacity .1s linear;
    visibility: hidden
}

.has-child .wp-block-navigation__container>.wp-block-navigation-link>.wp-block-navigation-link__content {
    flex-grow: 1
}

.has-child .wp-block-navigation__container>.wp-block-navigation-link>.wp-block-navigation-link__submenu-icon {
    padding-right: 8px
}

@media (min-width:782px) {
    .has-child .wp-block-navigation__container {
        left: 24px
    }

    .has-child .wp-block-navigation__container .wp-block-navigation__container {
        left: 100%;
        top: -1px
    }

    .has-child .wp-block-navigation__container .wp-block-navigation__container:before {
        content: "";
        position: absolute;
        right: 100%;
        height: 100%;
        display: block;
        width: 8px;
        background: transparent
    }

    .has-child .wp-block-navigation__container .wp-block-navigation-link__submenu-icon svg {
        transform: rotate(0)
    }
}

.has-child:hover {
    cursor: pointer
}

.has-child:hover>.wp-block-navigation__container {
    visibility: visible;
    opacity: 1;
    display: flex;
    flex-direction: column
}

.has-child:focus-within {
    cursor: pointer
}

.has-child:focus-within>.wp-block-navigation__container {
    visibility: visible;
    opacity: 1;
    display: flex;
    flex-direction: column
}

.wp-block-navigation-link__content {
    text-decoration: none;
    padding: 8px 16px
}

.wp-block-navigation-link__content+.wp-block-navigation-link__content {
    padding-top: 0
}

.has-text-color .wp-block-navigation-link__content {
    color: inherit
}

.wp-block-navigation-link__label {
    font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen-Sans, Ubuntu, Cantarell, Helvetica Neue, sans-serif;
    word-break: normal;
    overflow-wrap: break-word
}

.wp-block-navigation-link__submenu-icon {
    height: inherit;
    padding: 6px 16px
}

.wp-block-navigation-link__submenu-icon svg {
    fill: currentColor
}

@media (min-width:782px) {
    .wp-block-navigation-link__submenu-icon svg {
        transform: rotate(90deg)
    }
}

.is-small-text {
    font-size: 14px
}

.is-regular-text {
    font-size: 16px
}

.is-large-text {
    font-size: 36px
}

.is-larger-text {
    font-size: 48px
}

.has-drop-cap:not(:focus):first-letter {
    float: left;
    font-size: 8.4em;
    line-height: .68;
    font-weight: 100;
    margin: .05em .1em 0 0;
    text-transform: uppercase;
    font-style: normal
}

p.has-background {
    padding: 20px 38px
}

p.has-text-color a {
    color: inherit
}

.wp-block-post-author {
    display: flex;
    flex-wrap: wrap;
    line-height: 1.5
}

.wp-block-post-author__byline {
    width: 100%;
    margin-top: 0;
    margin-bottom: 0;
    font-size: .5em
}

.wp-block-post-author__avatar {
    margin-right: 16px
}

.wp-block-post-author__bio {
    margin-bottom: 8px;
    font-size: .7em
}

.wp-block-post-author__content {
    flex-grow: 1;
    flex-basis: 0
}

.wp-block-post-author__name {
    font-weight: 700;
    margin: 0
}

.wp-block-pullquote {
    padding: 3em 0;
    margin-left: 0;
    margin-right: 0;
    text-align: center
}

.wp-block-pullquote.alignleft,
.wp-block-pullquote.alignright {
    max-width: 290px
}

.wp-block-pullquote.alignleft p,
.wp-block-pullquote.alignright p {
    font-size: 20px
}

.wp-block-pullquote p {
    font-size: 28px;
    line-height: 1.6
}

.wp-block-pullquote cite,
.wp-block-pullquote footer {
    position: relative
}

.wp-block-pullquote .has-text-color a {
    color: inherit
}

.wp-block-pullquote:not(.is-style-solid-color) {
    background: none
}

.wp-block-pullquote.is-style-solid-color {
    border: none
}

.wp-block-pullquote.is-style-solid-color blockquote {
    margin-left: auto;
    margin-right: auto;
    text-align: left;
    max-width: 60%
}

.wp-block-pullquote.is-style-solid-color blockquote p {
    margin-top: 0;
    margin-bottom: 0;
    font-size: 32px
}

.wp-block-pullquote.is-style-solid-color blockquote cite {
    text-transform: none;
    font-style: normal
}

.wp-block-pullquote cite {
    color: inherit
}

.wp-block-quote.is-large,
.wp-block-quote.is-style-large {
    margin: 0 0 16px;
    padding: 0 1em
}

.wp-block-quote.is-large p,
.wp-block-quote.is-style-large p {
    font-size: 24px;
    font-style: italic;
    line-height: 1.6
}

.wp-block-quote.is-large cite,
.wp-block-quote.is-large footer,
.wp-block-quote.is-style-large cite,
.wp-block-quote.is-style-large footer {
    font-size: 18px;
    text-align: right
}

.wp-block-rss.alignleft {
    margin-right: 2em
}

.wp-block-rss.alignright {
    margin-left: 2em
}

.wp-block-rss.is-grid {
    display: flex;
    flex-wrap: wrap;
    padding: 0;
    list-style: none
}

.wp-block-rss.is-grid li {
    margin: 0 16px 16px 0;
    width: 100%
}

@media (min-width:600px) {
    .wp-block-rss.columns-2 li {
        width: calc(50% - 16px)
    }

    .wp-block-rss.columns-3 li {
        width: calc(33.33333% - 16px)
    }

    .wp-block-rss.columns-4 li {
        width: calc(25% - 16px)
    }

    .wp-block-rss.columns-5 li {
        width: calc(20% - 16px)
    }

    .wp-block-rss.columns-6 li {
        width: calc(16.66667% - 16px)
    }
}

.wp-block-rss__item-author,
.wp-block-rss__item-publish-date {
    display: block;
    color: #6c7781;
    font-size: 13px
}

.wp-block-search {
    display: flex;
    flex-wrap: wrap
}

.wp-block-search .wp-block-search__label {
    width: 100%
}

.wp-block-search .wp-block-search__input {
    flex-grow: 1;
    max-width: 360px
}

.wp-block-search .wp-block-search__button {
    margin-left: 10px
}

.wp-block-separator.is-style-wide {
    border-bottom-width: 1px
}

.wp-block-separator.is-style-dots {
    background: none !important;
    border: none;
    text-align: center;
    max-width: none;
    line-height: 1;
    height: auto
}

.wp-block-separator.is-style-dots:before {
    content: "\00b7 \00b7 \00b7";
    color: currentColor;
    font-size: 20px;
    letter-spacing: 2em;
    padding-left: 2em;
    font-family: serif
}

.wp-block-social-links {
    display: flex;
    justify-content: flex-start;
    padding-left: 0;
    padding-right: 0;
    margin-left: 0
}

.wp-block-social-links .wp-social-link a,
.wp-block-social-links .wp-social-link a:hover {
    text-decoration: none;
    border-bottom: 0;
    box-shadow: none
}

.wp-social-link {
    display: block;
    width: 36px;
    height: 36px;
    border-radius: 36px;
    margin-right: 8px;
    transition: transform .1s ease
}

@media (prefers-reduced-motion:reduce) {
    .wp-social-link {
        transition-duration: 0s
    }
}

.wp-social-link a {
    padding: 6px;
    display: block;
    line-height: 0;
    transition: transform .1s ease
}

.wp-social-link a,
.wp-social-link a:active,
.wp-social-link a:hover,
.wp-social-link a:visited,
.wp-social-link svg {
    color: currentColor;
    fill: currentColor
}

.wp-social-link:hover {
    transform: scale(1.1)
}

.wp-block-social-links.aligncenter {
    justify-content: center;
    display: flex
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link {
    background-color: #f0f0f0;
    color: #444
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-amazon {
    background-color: #f90;
    color: #fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-bandcamp {
    background-color: #1ea0c3;
    color: #fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-behance {
    background-color: #0757fe;
    color: #fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-codepen {
    background-color: #1e1f26;
    color: #fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-deviantart {
    background-color: #02e49b;
    color: #fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-dribbble {
    background-color: #e94c89;
    color: #fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-dropbox {
    background-color: #4280ff;
    color: #fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-etsy {
    background-color: #f45800;
    color: #fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-facebook {
    background-color: #1778f2;
    color: #fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-fivehundredpx {
    background-color: #000;
    color: #fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-flickr {
    background-color: #0461dd;
    color: #fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-foursquare {
    background-color: #e65678;
    color: #fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-github {
    background-color: #24292d;
    color: #fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-goodreads {
    background-color: #eceadd;
    color: #382110
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-google {
    background-color: #ea4434;
    color: #fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-instagram {
    background-color: #f00075;
    color: #fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-lastfm {
    background-color: #e21b24;
    color: #fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-linkedin {
    background-color: #0d66c2;
    color: #fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-mastodon {
    background-color: #3288d4;
    color: #fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-medium {
    background-color: #02ab6c;
    color: #fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-meetup {
    background-color: #f6405f;
    color: #fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-pinterest {
    background-color: #e60122;
    color: #fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-pocket {
    background-color: #ef4155;
    color: #fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-reddit {
    background-color: #fe4500;
    color: #fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-skype {
    background-color: #0478d7;
    color: #fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-snapchat {
    background-color: #fefc00;
    color: #fff;
    stroke: #000
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-soundcloud {
    background-color: #ff5600;
    color: #fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-spotify {
    background-color: #1bd760;
    color: #fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-tumblr {
    background-color: #011835;
    color: #fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-twitch {
    background-color: #6440a4;
    color: #fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-twitter {
    background-color: #1da1f2;
    color: #fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-vimeo {
    background-color: #1eb7ea;
    color: #fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-vk {
    background-color: #4680c2;
    color: #fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-wordpress {
    background-color: #3499cd;
    color: #fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-yelp {
    background-color: #d32422;
    color: #fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-youtube {
    background-color: red;
    color: #fff
}

.wp-block-social-links.is-style-logos-only .wp-social-link {
    background: none;
    padding: 4px
}

.wp-block-social-links.is-style-logos-only .wp-social-link svg {
    width: 28px;
    height: 28px
}

.wp-block-social-links.is-style-logos-only .wp-social-link-amazon {
    color: #f90
}

.wp-block-social-links.is-style-logos-only .wp-social-link-bandcamp {
    color: #1ea0c3
}

.wp-block-social-links.is-style-logos-only .wp-social-link-behance {
    color: #0757fe
}

.wp-block-social-links.is-style-logos-only .wp-social-link-codepen {
    color: #1e1f26
}

.wp-block-social-links.is-style-logos-only .wp-social-link-deviantart {
    color: #02e49b
}

.wp-block-social-links.is-style-logos-only .wp-social-link-dribbble {
    color: #e94c89
}

.wp-block-social-links.is-style-logos-only .wp-social-link-dropbox {
    color: #4280ff
}

.wp-block-social-links.is-style-logos-only .wp-social-link-etsy {
    color: #f45800
}

.wp-block-social-links.is-style-logos-only .wp-social-link-facebook {
    color: #1778f2
}

.wp-block-social-links.is-style-logos-only .wp-social-link-fivehundredpx {
    color: #000
}

.wp-block-social-links.is-style-logos-only .wp-social-link-flickr {
    color: #0461dd
}

.wp-block-social-links.is-style-logos-only .wp-social-link-foursquare {
    color: #e65678
}

.wp-block-social-links.is-style-logos-only .wp-social-link-github {
    color: #24292d
}

.wp-block-social-links.is-style-logos-only .wp-social-link-goodreads {
    color: #382110
}

.wp-block-social-links.is-style-logos-only .wp-social-link-google {
    color: #ea4434
}

.wp-block-social-links.is-style-logos-only .wp-social-link-instagram {
    color: #f00075
}

.wp-block-social-links.is-style-logos-only .wp-social-link-lastfm {
    color: #e21b24
}

.wp-block-social-links.is-style-logos-only .wp-social-link-linkedin {
    color: #0d66c2
}

.wp-block-social-links.is-style-logos-only .wp-social-link-mastodon {
    color: #3288d4
}

.wp-block-social-links.is-style-logos-only .wp-social-link-medium {
    color: #02ab6c
}

.wp-block-social-links.is-style-logos-only .wp-social-link-meetup {
    color: #f6405f
}

.wp-block-social-links.is-style-logos-only .wp-social-link-pinterest {
    color: #e60122
}

.wp-block-social-links.is-style-logos-only .wp-social-link-pocket {
    color: #ef4155
}

.wp-block-social-links.is-style-logos-only .wp-social-link-reddit {
    color: #fe4500
}

.wp-block-social-links.is-style-logos-only .wp-social-link-skype {
    color: #0478d7
}

.wp-block-social-links.is-style-logos-only .wp-social-link-snapchat {
    color: #fff;
    stroke: #000
}

.wp-block-social-links.is-style-logos-only .wp-social-link-soundcloud {
    color: #ff5600
}

.wp-block-social-links.is-style-logos-only .wp-social-link-spotify {
    color: #1bd760
}

.wp-block-social-links.is-style-logos-only .wp-social-link-tumblr {
    color: #011835
}

.wp-block-social-links.is-style-logos-only .wp-social-link-twitch {
    color: #6440a4
}

.wp-block-social-links.is-style-logos-only .wp-social-link-twitter {
    color: #1da1f2
}

.wp-block-social-links.is-style-logos-only .wp-social-link-vimeo {
    color: #1eb7ea
}

.wp-block-social-links.is-style-logos-only .wp-social-link-vk {
    color: #4680c2
}

.wp-block-social-links.is-style-logos-only .wp-social-link-wordpress {
    color: #3499cd
}

.wp-block-social-links.is-style-logos-only .wp-social-link-yelp {
    background-color: #d32422;
    color: #fff
}

.wp-block-social-links.is-style-logos-only .wp-social-link-youtube {
    color: red
}

.wp-block-social-links.is-style-pill-shape .wp-social-link {
    width: auto
}

.wp-block-social-links.is-style-pill-shape .wp-social-link a {
    padding-left: 16px;
    padding-right: 16px
}

.wp-block-spacer {
    clear: both
}

p.wp-block-subhead {
    font-size: 1.1em;
    font-style: italic;
    opacity: .75
}

.wp-block-table {
    overflow-x: auto
}

.wp-block-table table {
    width: 100%
}

.wp-block-table .has-fixed-layout {
    table-layout: fixed;
    width: 100%
}

.wp-block-table .has-fixed-layout td,
.wp-block-table .has-fixed-layout th {
    word-break: break-word
}

.wp-block-table.aligncenter,
.wp-block-table.alignleft,
.wp-block-table.alignright {
    display: table;
    width: auto
}

.wp-block-table.aligncenter td,
.wp-block-table.aligncenter th,
.wp-block-table.alignleft td,
.wp-block-table.alignleft th,
.wp-block-table.alignright td,
.wp-block-table.alignright th {
    word-break: break-word
}

.wp-block-table .has-subtle-light-gray-background-color {
    background-color: #f3f4f5
}

.wp-block-table .has-subtle-pale-green-background-color {
    background-color: #e9fbe5
}

.wp-block-table .has-subtle-pale-blue-background-color {
    background-color: #e7f5fe
}

.wp-block-table .has-subtle-pale-pink-background-color {
    background-color: #fcf0ef
}

.wp-block-table.is-style-stripes {
    border-spacing: 0;
    border-collapse: inherit;
    background-color: transparent;
    border-bottom: 1px solid #f0f0f0
}

.wp-block-table.is-style-stripes tbody tr:nth-child(odd) {
    background-color: #f0f0f0
}

.wp-block-table.is-style-stripes.has-subtle-light-gray-background-color tbody tr:nth-child(odd) {
    background-color: #f3f4f5
}

.wp-block-table.is-style-stripes.has-subtle-pale-green-background-color tbody tr:nth-child(odd) {
    background-color: #e9fbe5
}

.wp-block-table.is-style-stripes.has-subtle-pale-blue-background-color tbody tr:nth-child(odd) {
    background-color: #e7f5fe
}

.wp-block-table.is-style-stripes.has-subtle-pale-pink-background-color tbody tr:nth-child(odd) {
    background-color: #fcf0ef
}

.wp-block-table.is-style-stripes td,
.wp-block-table.is-style-stripes th {
    border-color: transparent
}

.wp-block-text-columns,
.wp-block-text-columns.aligncenter {
    display: flex
}

.wp-block-text-columns .wp-block-column {
    margin: 0 16px;
    padding: 0
}

.wp-block-text-columns .wp-block-column:first-child {
    margin-left: 0
}

.wp-block-text-columns .wp-block-column:last-child {
    margin-right: 0
}

.wp-block-text-columns.columns-2 .wp-block-column {
    width: 50%
}

.wp-block-text-columns.columns-3 .wp-block-column {
    width: 33.33333%
}

.wp-block-text-columns.columns-4 .wp-block-column {
    width: 25%
}

.wp-block-video {
    margin-left: 0;
    margin-right: 0
}

.wp-block-video video {
    max-width: 100%
}

@supports ((position:-webkit-sticky) or (position:sticky)) {
    .wp-block-video [poster] {
        object-fit: cover
    }
}

.wp-block-video.aligncenter {
    text-align: center
}

.wp-block-video figcaption {
    margin-top: .5em;
    margin-bottom: 1em
}

:root .editor-styles-wrapper .has-pale-pink-background-color,
:root .has-pale-pink-background-color {
    background-color: #f78da7
}

:root .editor-styles-wrapper .has-vivid-red-background-color,
:root .has-vivid-red-background-color {
    background-color: #cf2e2e
}

:root .editor-styles-wrapper .has-luminous-vivid-orange-background-color,
:root .has-luminous-vivid-orange-background-color {
    background-color: #ff6900
}

:root .editor-styles-wrapper .has-luminous-vivid-amber-background-color,
:root .has-luminous-vivid-amber-background-color {
    background-color: #fcb900
}

:root .editor-styles-wrapper .has-light-green-cyan-background-color,
:root .has-light-green-cyan-background-color {
    background-color: #7bdcb5
}

:root .editor-styles-wrapper .has-vivid-green-cyan-background-color,
:root .has-vivid-green-cyan-background-color {
    background-color: #00d084
}

:root .editor-styles-wrapper .has-pale-cyan-blue-background-color,
:root .has-pale-cyan-blue-background-color {
    background-color: #8ed1fc
}

:root .editor-styles-wrapper .has-vivid-cyan-blue-background-color,
:root .has-vivid-cyan-blue-background-color {
    background-color: #0693e3
}

:root .editor-styles-wrapper .has-vivid-purple-background-color,
:root .has-vivid-purple-background-color {
    background-color: #9b51e0
}

:root .editor-styles-wrapper .has-white-background-color,
:root .has-white-background-color {
    background-color: #fff
}

:root .editor-styles-wrapper .has-very-light-gray-background-color,
:root .has-very-light-gray-background-color {
    background-color: #eee
}

:root .editor-styles-wrapper .has-cyan-bluish-gray-background-color,
:root .has-cyan-bluish-gray-background-color {
    background-color: #abb8c3
}

:root .editor-styles-wrapper .has-very-dark-gray-background-color,
:root .has-very-dark-gray-background-color {
    background-color: #313131
}

:root .editor-styles-wrapper .has-black-background-color,
:root .has-black-background-color {
    background-color: #000
}

:root .editor-styles-wrapper .has-pale-pink-color,
:root .has-pale-pink-color {
    color: #f78da7
}

:root .editor-styles-wrapper .has-vivid-red-color,
:root .has-vivid-red-color {
    color: #cf2e2e
}

:root .editor-styles-wrapper .has-luminous-vivid-orange-color,
:root .has-luminous-vivid-orange-color {
    color: #ff6900
}

:root .editor-styles-wrapper .has-luminous-vivid-amber-color,
:root .has-luminous-vivid-amber-color {
    color: #fcb900
}

:root .editor-styles-wrapper .has-light-green-cyan-color,
:root .has-light-green-cyan-color {
    color: #7bdcb5
}

:root .editor-styles-wrapper .has-vivid-green-cyan-color,
:root .has-vivid-green-cyan-color {
    color: #00d084
}

:root .editor-styles-wrapper .has-pale-cyan-blue-color,
:root .has-pale-cyan-blue-color {
    color: #8ed1fc
}

:root .editor-styles-wrapper .has-vivid-cyan-blue-color,
:root .has-vivid-cyan-blue-color {
    color: #0693e3
}

:root .editor-styles-wrapper .has-vivid-purple-color,
:root .has-vivid-purple-color {
    color: #9b51e0
}

:root .editor-styles-wrapper .has-white-color,
:root .has-white-color {
    color: #fff
}

:root .editor-styles-wrapper .has-very-light-gray-color,
:root .has-very-light-gray-color {
    color: #eee
}

:root .editor-styles-wrapper .has-cyan-bluish-gray-color,
:root .has-cyan-bluish-gray-color {
    color: #abb8c3
}

:root .editor-styles-wrapper .has-very-dark-gray-color,
:root .has-very-dark-gray-color {
    color: #313131
}

:root .editor-styles-wrapper .has-black-color,
:root .has-black-color {
    color: #000
}

:root .editor-styles-wrapper .has-vivid-cyan-blue-to-vivid-purple-gradient-background,
:root .has-vivid-cyan-blue-to-vivid-purple-gradient-background {
    background: linear-gradient(135deg, #0693e3, #9b51e0)
}

:root .editor-styles-wrapper .has-vivid-green-cyan-to-vivid-cyan-blue-gradient-background,
:root .has-vivid-green-cyan-to-vivid-cyan-blue-gradient-background {
    background: linear-gradient(135deg, #00d084, #0693e3)
}

:root .editor-styles-wrapper .has-light-green-cyan-to-vivid-green-cyan-gradient-background,
:root .has-light-green-cyan-to-vivid-green-cyan-gradient-background {
    background: linear-gradient(135deg, #7adcb4, #00d082)
}

:root .editor-styles-wrapper .has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background,
:root .has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background {
    background: linear-gradient(135deg, #fcb900, #ff6900)
}

:root .editor-styles-wrapper .has-luminous-vivid-orange-to-vivid-red-gradient-background,
:root .has-luminous-vivid-orange-to-vivid-red-gradient-background {
    background: linear-gradient(135deg, #ff6900, #cf2e2e)
}

:root .editor-styles-wrapper .has-very-light-gray-to-cyan-bluish-gray-gradient-background,
:root .has-very-light-gray-to-cyan-bluish-gray-gradient-background {
    background: linear-gradient(135deg, #eee, #a9b8c3)
}

:root .editor-styles-wrapper .has-cool-to-warm-spectrum-gradient-background,
:root .has-cool-to-warm-spectrum-gradient-background {
    background: linear-gradient(135deg, #4aeadc, #9778d1 20%, #cf2aba 40%, #ee2c82 60%, #fb6962 80%, #fef84c)
}

:root .editor-styles-wrapper .has-blush-light-purple-gradient-background,
:root .has-blush-light-purple-gradient-background {
    background: linear-gradient(135deg, #ffceec, #9896f0)
}

:root .editor-styles-wrapper .has-blush-bordeaux-gradient-background,
:root .has-blush-bordeaux-gradient-background {
    background: linear-gradient(135deg, #fecda5, #fe2d2d 50%, #6b003e)
}

:root .editor-styles-wrapper .has-purple-crush-gradient-background,
:root .has-purple-crush-gradient-background {
    background: linear-gradient(135deg, #34e2e4, #4721fb 50%, #ab1dfe)
}

:root .editor-styles-wrapper .has-luminous-dusk-gradient-background,
:root .has-luminous-dusk-gradient-background {
    background: linear-gradient(135deg, #ffcb70, #c751c0 50%, #4158d0)
}

:root .editor-styles-wrapper .has-hazy-dawn-gradient-background,
:root .has-hazy-dawn-gradient-background {
    background: linear-gradient(135deg, #faaca8, #dad0ec)
}

:root .editor-styles-wrapper .has-pale-ocean-gradient-background,
:root .has-pale-ocean-gradient-background {
    background: linear-gradient(135deg, #fff5cb, #b6e3d4 50%, #33a7b5)
}

:root .editor-styles-wrapper .has-electric-grass-gradient-background,
:root .has-electric-grass-gradient-background {
    background: linear-gradient(135deg, #caf880, #71ce7e)
}

:root .editor-styles-wrapper .has-subdued-olive-gradient-background,
:root .has-subdued-olive-gradient-background {
    background: linear-gradient(135deg, #fafae1, #67a671)
}

:root .editor-styles-wrapper .has-atomic-cream-gradient-background,
:root .has-atomic-cream-gradient-background {
    background: linear-gradient(135deg, #fdd79a, #004a59)
}

:root .editor-styles-wrapper .has-nightshade-gradient-background,
:root .has-nightshade-gradient-background {
    background: linear-gradient(135deg, #330968, #31cdcf)
}

:root .editor-styles-wrapper .has-midnight-gradient-background,
:root .has-midnight-gradient-background {
    background: linear-gradient(135deg, #020381, #2874fc)
}

:root .editor-styles-wrapper .has-link-color a,
:root .has-link-color a {
    color: #00e;
    color: var(--wp--style--color--link, #00e)
}

.editor-styles-wrapper .has-small-font-size,
.has-small-font-size {
    font-size: 13px
}

.editor-styles-wrapper .has-normal-font-size,
.editor-styles-wrapper .has-regular-font-size,
.has-normal-font-size,
.has-regular-font-size {
    font-size: 16px
}

.editor-styles-wrapper .has-medium-font-size,
.has-medium-font-size {
    font-size: 20px
}

.editor-styles-wrapper .has-large-font-size,
.has-large-font-size {
    font-size: 36px
}

.editor-styles-wrapper .has-huge-font-size,
.editor-styles-wrapper .has-larger-font-size,
.has-huge-font-size,
.has-larger-font-size {
    font-size: 42px
}

.has-text-align-center {
    text-align: center
}

.has-text-align-left {
    text-align: left
}

.has-text-align-right {
    text-align: right
}

#end-resizable-editor-section {
    display: none
}

.aligncenter {
    clear: both
}

.wpcf7 .screen-reader-response {
    position: absolute;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px);
    height: 1px;
    width: 1px;
    margin: 0;
    padding: 0;
    border: 0
}

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

.wpcf7 form.init .wpcf7-response-output {
    display: none
}

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

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

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

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

.wpcf7-form-control-wrap {
    position: relative
}

.wpcf7-not-valid-tip {
    color: #dc3232;
    font-size: 1em;
    font-weight: 400;
    display: block
}

.use-floating-validation-tip .wpcf7-not-valid-tip {
    position: absolute;
    top: 20%;
    left: 20%;
    z-index: 100;
    border: 1px solid #dc3232;
    background: #fff;
    padding: .2em .8em
}

span.wpcf7-list-item {
    display: inline-block;
    margin: 0 0 0 1em
}

span.wpcf7-list-item-label:before,
span.wpcf7-list-item-label:after {
    content: " "
}

div.wpcf7 .ajax-loader {
    visibility: hidden;
    display: inline-block;
    background-image: url(https://demo.tcd-theme.com/tcd081/wp-content/plugins/contact-form-7/includes/css/../../images/ajax-loader.gif);
    width: 16px;
    height: 16px;
    border: none;
    padding: 0;
    margin: 0 0 0 4px;
    vertical-align: middle
}

div.wpcf7 .ajax-loader.is-active {
    visibility: visible
}

div.wpcf7 div.ajax-error {
    display: none
}

div.wpcf7 .placeheld {
    color: #888
}

div.wpcf7 input[type=file] {
    cursor: pointer
}

div.wpcf7 input[type=file]:disabled {
    cursor: default
}

div.wpcf7 .wpcf7-submit:disabled {
    cursor: not-allowed
}

.wpcf7 input[type=url],
.wpcf7 input[type=email],
.wpcf7 input[type=tel] {
    direction: ltr
}

@font-face {
    font-family: 'design_plus';
    src: url(https://demo.tcd-theme.com/tcd081/wp-content/themes/tree_tcd081/css/../fonts/design_plus.eot?v=1.5);
    src: url(https://demo.tcd-theme.com/tcd081/wp-content/themes/tree_tcd081/css/../fonts/design_plus.eot?v=1.5#iefix) format('embedded-opentype'), url(https://demo.tcd-theme.com/tcd081/wp-content/themes/tree_tcd081/css/../fonts/design_plus.woff?v=1.5) format('woff'), url(https://demo.tcd-theme.com/tcd081/wp-content/themes/tree_tcd081/css/../fonts/design_plus.ttf?v=1.5) format('truetype'), url(https://demo.tcd-theme.com/tcd081/wp-content/themes/tree_tcd081/css/../fonts/design_plus.svg?v=1.5#design_plus) format('svg');
    font-weight: 400;
    font-style: normal
}

.post_row {
    margin-right: -25px;
    margin-left: -25px;
    line-height: 2.4
}

.post_row:before,
.post_row:after {
    display: table;
    content: " "
}

.post_row:after {
    clear: both
}

.post_col,
.post_col-2,
.post_col-3 {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
    width: 100%;
    min-height: 1px;
    margin-bottom: 2em;
    padding-right: 25px;
    padding-left: 25px;
    float: left
}

@media screen and (min-width:768px) {
    .post_col-2 {
        width: 50%
    }

    .post_col-3 {
        width: 33.33333%
    }
}

@media screen and (min-width:1024px) {
    .post_col-2 {
        width: 50%
    }

    .post_col-3 {
        width: 33.33333%
    }
}

.post_content .style3a,
.post_content .style3b,
.post_content .style4a,
.post_content .style4b,
.post_content .style5a,
.post_content .style5b,
.post_content .style6 {
    font-weight: 500;
    line-height: 1.6
}

.style2a {
    margin: 65px 0 30px !important;
    padding: 0 0 .9em !important;
    border-bottom: 3px solid #000;
    font-size: 26px !important
}

.style2b {
    margin: 65px 0 30px !important;
    padding: .48em 1em .47em !important;
    background: #000;
    color: #fff;
    font-size: 26px !important
}

.style3a {
    margin: 65px 0 30px !important;
    padding: 1.2em .15em !important;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    font-size: 22px !important
}

.style3b {
    margin: 65px 0 30px !important;
    padding: 1.1em 1.4em 1.15em !important;
    border: 1px solid #ddd;
    border-top: 3px solid #000;
    background: #fafafa;
    font-size: 22px !important
}

.style4a {
    margin: 65px 0 30px !important;
    padding: .4em 0 .4em 1.2em !important;
    border-left: 3px solid #000;
    font-size: 20px !important;
    font-weight: 500
}

.style4b {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
    margin: 65px 0 30px !important;
    padding: .8em 1.5em .8em !important;
    border-left: #000 3px solid;
    font-size: 20px !important
}

.style4b:after {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: calc(100% - 2px);
    border: 1px solid #ddd;
    border-left: none;
    content: ''
}

.style5a {
    margin: 65px 0 30px !important;
    padding: .85em 1.5em .8em !important;
    border: 1px solid #ddd;
    background: #fafafa;
    font-size: 18px !important
}

.style5b {
    margin: 65px 0 30px !important;
    padding: .85em 1.5em .8em !important;
    background: #000;
    color: #fff;
    font-size: 18px !important
}

.style6 {
    position: relative;
    margin: 65px 0 30px !important;
    padding: 0 .8em 0 1.3em !important;
    color: #000;
    font-size: 16px !important;
    font-weight: 700
}

.style6:before {
    position: absolute;
    top: .35em;
    left: 0;
    width: 12px;
    height: 12px;
    background: #000;
    content: ""
}

.balloon {
    display: block;
    z-index: 0;
    position: relative;
    width: auto;
    min-width: 115px;
    margin: 50px 0 22px;
    padding: .5em 18px .5em;
    clear: both;
    border-bottom: 0;
    background: #222;
    color: #fff;
    font-size: 20px;
    font-weight: 400;
    text-align: left
}

.balloon:after {
    display: block;
    position: absolute;
    bottom: -10px;
    left: 30px;
    width: 0;
    height: 0;
    margin-left: -10px;
    border-width: 10px 10px 0;
    border-style: solid;
    border-color: #222 transparent transparent;
    content: ""
}

@media screen and (max-width:767px) {
    .style2a {
        margin: 30px 0 20px !important;
        padding: 0 0 .6em !important;
        font-size: 20px !important
    }

    .style2b {
        margin: 30px 0 20px !important;
        padding: .42em .7em .41em !important;
        background: #000;
        color: #fff;
        font-size: 20px !important
    }

    .style3a {
        margin: 30px 0 20px !important;
        padding: .6em .15em !important;
        font-size: 18px !important
    }

    .style3b {
        margin: 30px 0 20px !important;
        padding: .5em .5em .45em .6em !important;
        font-size: 18px !important
    }

    .style4a {
        margin: 30px 0 20px !important;
        padding: .4em 0 .4em .8em !important;
        border-left: 2px solid #000;
        font-size: 16px !important
    }

    .style4b {
        margin: 30px 0 20px !important;
        padding: .8em 1em .75em !important;
        border-left: #000 2px solid;
        font-size: 16px !important
    }

    .style5a {
        margin: 30px 0 20px !important;
        padding: .8em 1em .75em !important;
        font-size: 15px !important
    }

    .style5b {
        margin: 30px 0 20px !important;
        padding: .8em 1em .75em !important;
        font-size: 15px !important
    }
}

@media screen and (min-width:769px) {

    .post_content :not(h2):not(h3):not(h4):not(h5):not(h6)+h2,
    .post_content :not(h2):not(h3):not(h4):not(h5):not(h6)+h3,
    .post_content :not(h2):not(h3):not(h4):not(h5):not(h6)+h4,
    .post_content :not(h2):not(h3):not(h4):not(h5):not(h6)+h5,
    .post_content :not(h2):not(h3):not(h4):not(h5):not(h6)+h6 {
        margin-top: 40px !important
    }
}

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

    .post_content :not(h2):not(h3):not(h4):not(h5):not(h6)+h2,
    .post_content :not(h2):not(h3):not(h4):not(h5):not(h6)+h3,
    .post_content :not(h2):not(h3):not(h4):not(h5):not(h6)+h4,
    .post_content :not(h2):not(h3):not(h4):not(h5):not(h6)+h5,
    .post_content :not(h2):not(h3):not(h4):not(h5):not(h6)+h6 {
        margin-top: 30px !important
    }
}

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

    .post_content :not(h2):not(h3):not(h4):not(h5):not(h6)+h2,
    .post_content :not(h2):not(h3):not(h4):not(h5):not(h6)+h3,
    .post_content :not(h2):not(h3):not(h4):not(h5):not(h6)+h4,
    .post_content :not(h2):not(h3):not(h4):not(h5):not(h6)+h5,
    .post_content :not(h2):not(h3):not(h4):not(h5):not(h6)+h6 {
        margin-top: 20px !important
    }
}

.post_content h2 {
    font-size: 24px
}

.post_content h3 {
    font-size: 22px
}

.post_content h4 {
    font-size: 20px
}

.post_content h5 {
    font-size: 18px
}

.post_content h6 {
    font-size: 16px
}

@media screen and (max-width:767px) {
    .post_content h2 {
        font-size: 20px
    }

    .post_content h3 {
        font-size: 18px
    }

    .post_content h4 {
        font-size: 18px
    }

    .post_content h5 {
        font-size: 16px
    }

    .post_content h6 {
        font-size: 14px
    }
}

.p-vertical {
    width: 100%;
    margin: 70px 0;
    font-size: 36px;
    line-height: 1.4;
    text-align: center
}

.p-vertical p {
    display: inline-block;
    margin: 0;
    font-size: inherit;
    line-height: inherit;
    text-align: left;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl
}

@media screen and (max-width:767px) {
    .p-vertical {
        margin: 33px 0;
        font-size: 24px;
        line-height: 1.3
    }
}

.q_underline {
    background-image: -webkit-linear-gradient(left, transparent 50%, #fff799 50%);
    background-image: -moz-linear-gradient(left, transparent 50%, #fff799 50%);
    background-image: linear-gradient(to right, transparent 50%, #fff799 50%);
    background-position: 0 .8em;
    background-repeat: repeat-x;
    background-size: 200% .5em;
    border: none;
    border-bottom-color: transparent;
    -webkit-transition: background 2s ease;
    -ms-transition: background 2s ease;
    transition: background 2s ease
}

.q_underline.is-active {
    background-position: -100% .8em
}

.speach_balloon {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    -webkit-align-items: flex-start;
    align-items: flex-start
}

.speach_balloon_text {
    background: #fff;
    border: 2px solid #ddd;
    border-radius: 10px;
    -webkit-flex: 1 1 auto;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    line-height: 2;
    margin-bottom: 3em;
    min-height: 80px;
    padding: 22px 28px;
    position: relative
}

.speach_balloon_text>*:last-child {
    margin-bottom: 0 !important
}

.speach_balloon_text:before,
.speach_balloon_text:after {
    border-color: transparent;
    border-style: solid;
    content: '';
    pointer-events: none;
    height: 0;
    margin-top: -10px;
    width: 0;
    position: absolute;
    right: 100%;
    top: 40px
}

.speach_balloon_user {
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    margin-right: 36px;
    margin-bottom: 2em;
    min-width: 80px;
    text-align: center
}

.speach_balloon_user_image {
    border-radius: 50%;
    height: 80px !important;
    width: 80px;
    object-fit: cover
}

.speach_balloon_user_name {
    font-size: 87.5%;
    line-height: 1.2;
    margin-top: 12px
}

.speach_balloon_user_name:only-child {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    margin-top: 0;
    min-height: 80px
}

.speech_balloon_left1 .speach_balloon_text:before,
.speech_balloon_left2 .speach_balloon_text:before {
    border-width: 8px 10px 8px 0;
    border-right-color: #ddd;
    margin-right: 2px
}

.speech_balloon_left1 .speach_balloon_text:after,
.speech_balloon_left2 .speach_balloon_text:after {
    border-width: 8px 10px 8px 0;
    margin-right: -1.5px;
    border-right-color: #fff
}

.speech_balloon_right1 .speach_balloon_user,
.speech_balloon_right2 .speach_balloon_user {
    -webkit-order: 2;
    -ms-order: 2;
    order: 2;
    margin-left: 36px;
    margin-right: 0
}

.speech_balloon_right1 .speach_balloon_text:before,
.speech_balloon_right2 .speach_balloon_text:before {
    border-width: 8px 0 8px 10px;
    border-left-color: #ddd;
    margin-left: 2px;
    left: 100%
}

.speech_balloon_right1 .speach_balloon_text:after,
.speech_balloon_right2 .speach_balloon_text:after {
    border-width: 8px 0 8px 10px;
    margin-left: -1.5px;
    border-left-color: #fff;
    left: 100%
}

.qt_google_map {
    width: 100%;
    height: 550px;
    background: #ddd;
    margin: 0 0 35px
}

.qt_google_map .qt_googlemap_embed {
    width: 100%;
    height: 550px
}

.qt_google_map .pb_googlemap_custom-overlay-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    top: -94px;
    left: -40px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 80px !important;
    height: 80px !important;
    border-radius: 50%;
    font-size: 18px;
    text-align: center
}

.qt_google_map .pb_googlemap_custom-overlay-inner:after {
    display: block;
    position: absolute;
    right: 0;
    bottom: -15px;
    left: 0;
    width: 0;
    height: 0;
    margin: auto;
    border-width: 16px 5px 0;
    border-style: solid;
    content: ""
}

@media screen and (max-width:750px) {
    .qt_google_map {
        height: 320px
    }

    .qt_google_map .qt_googlemap_embed {
        height: 320px
    }
}

.well {
    margin-bottom: 30px;
    padding: 1.1em 2em;
    border: 1px solid #ddd;
    border-radius: 6px;
    background-color: #fafafa
}

.well2 {
    margin-bottom: 30px;
    padding: 1.1em 2em;
    border: 1px solid #ddd
}

.well3 {
    margin-bottom: 30px;
    padding: 1.1em 2em;
    border: 1px dashed #ddd;
    background: #fafafa
}

.wl_red {
    border-color: #ebccd1;
    background-color: #f2dede;
    color: #a94442 !important
}

.wl_yellow {
    border-color: #faebcc;
    background-color: #fcf8e3;
    color: #8a6d3b !important
}

.wl_blue {
    border-color: #bce8f1;
    background-color: #d9edf7;
    color: #31708f !important
}

.wl_green {
    border-color: #d6e9c6;
    background-color: #dff0d8;
    color: #3c763d !important
}

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

    .well,
    .well2,
    .well3 {
        padding: .9em .8em .9em 1em
    }
}

.q_button,
.q_custom_button1,
.q_custom_button2,
.q_custom_button3 {
    background-color: #535353;
    color: #fff !important;
    border: 1px solid #535353;
    font-size: 100%;
    font-weight: 400;
    line-height: 1.5;
    text-align: center;
    max-width: 100%;
    padding: 0 30px;
    margin: 0;
    transition: all .3s ease-in-out 0s;
    text-decoration: none;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-justify-content: center;
    -webkit-justify-content: center;
    justify-content: center;
    -ms-align-items: center;
    -webkit-align-items: center;
    align-items: center
}

.q_button:hover,
.q_button:focus,
.q_custom_button1:hover,
.q_custom_button1:focus,
.q_custom_button2:hover,
.q_custom_button2:focus,
.q_custom_button3:hover,
.q_custom_button3:focus {
    background-color: #7d7d7d;
    text-decoration: none
}

.rounded {
    border-radius: 6px
}

.pill {
    border-radius: 70px
}

.bt_red {
    background: #c01f0e;
    border-color: #c01f0e;
    color: #fff
}

.bt_red:hover,
.bt_red:focus {
    background-color: #d33929;
    border-color: #d33929;
    color: #fff
}

.bt_yellow {
    background: #f1c40f;
    border-color: #f1c40f;
    color: #fff
}

.bt_yellow:hover,
.bt_yellow:focus {
    background-color: #f9d441;
    border-color: #f9d441;
    color: #fff
}

.bt_blue {
    background: #2980b9;
    border-color: #2980b9;
    color: #fff
}

.bt_blue:hover,
.bt_blue:focus {
    background-color: #3a91c9;
    border-color: #3a91c9;
    color: #fff
}

.bt_green {
    background: #27ae60;
    border-color: #27ae60;
    color: #fff
}

.bt_green:hover,
.bt_green:focus {
    background-color: #39c574;
    border-color: #39c574;
    color: #fff
}

.ytube {
    position: relative;
    height: 0;
    margin-top: 20px;
    margin-bottom: 20px;
    padding-bottom: 56.25%;
    padding-top: 30px;
    overflow: hidden
}

.ytube iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important
}

.rps_table {
    line-height: 2.0
}

@media only screen and (max-width:567px) {
    .rps_table tr {
        display: block;
        margin-bottom: 1.5em
    }

    .rps_table th,
    .rps_table td {
        display: list-item;
        list-style-type: none;
        border: none
    }

    .rps_table td {
        border-top: none
    }
}

.cardlink {
    word-wrap: break-word;
    max-width: 100%;
    margin: 15px 0 2em !important;
    padding: 20px;
    border: 1px solid #ddd;
    background: #fafafa
}

.cardlink_thumbnail {
    margin-right: 25px;
    float: left
}

.cardlink_thumbnail img {
    width: 130px;
    height: 130px;
    -o-object-fit: cover;
    object-fit: cover
}

@media screen and (-ms-high-contrast:active),
    screen and (-ms-high-contrast:none) {
        .cardlink_thumbnail img {
            height: auto
        }
}

.cardlink_content {
    line-height: 1.6
}

.cardlink_content p {
    color: #000;
    margin-bottom: .5em;
    line-height: 1
}

.cardlink_timestamp {
    display: inline;
    margin: 0;
    padding: 0;
    color: #222;
    font-size: 12px;
    line-height: 1;
    vertical-align: top
}

.cardlink_title {
    margin: -3px 0 5px;
    font-size: 16px
}

.cardlink_title a {
    color: #000;
    font-weight: 700;
    text-decoration: none
}

.cardlink_title a:hover {
    text-decoration: none
}

.cardlink_excerpt {
    overflow: hidden;
    color: #000;
    font-size: 14px;
    line-height: 1.9;
    max-height: 3.8em
}

.cardlink_excerpt span {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2
}

.cardlink_footer {
    clear: both
}

.clear {
    clear: both
}

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

@media screen and (max-width:567px) {
    .cardlink {
        padding: 15px 11px 12px 13px
    }

    .cardlink_thumbnail {
        margin-right: 12px;
        margin-bottom: 10px;
        float: left
    }

    .cardlink_thumbnail img {
        width: 100px;
        height: 100px
    }

    .cardlink_title {
        margin-top: -5px;
        font-size: 14px
    }

    .cardlink_excerpt {
        clear: both
    }
}

.wpcf7 {
    width: 100%;
    margin: 0 0 2.5em !important;
    padding: 0;
    border: 1px solid #ddd;
    background: #fafafa;
    font-size: 14px
}

.wpcf7 form {
    margin: 1.5em 1.5em 0
}

.wpcf7 p {
    margin-bottom: 1em;
    font-size: 16px
}

.wpcf7 input,
.wpcf7 textarea {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
    padding: 8px;
    border: 1px solid #ccc;
    line-height: 1.2
}

.wpcf7 select,
.wpcf7 input[type=checkbox],
.wpcf7 input[type=radio] {
    width: auto;
    max-width: 97%;
    padding: 8px;
    border: 1px solid #ccc
}

.wpcf7 select,
.wpcf7 .wpcf7-list-item-label {
    font-size: 14px;
    line-height: 1.2
}

.wpcf7 .wpcf7-list-item {
    display: block
}

.wpcf7 textarea {
    height: 300px
}

.wpcf7 input:focus,
.wpcf7 textarea:focus {
    border: 1px solid #bbb;
    outline: none
}

.wpcf7 .wpcf7-submit,
.wpcf7 .wpcf7-previous {
    -webkit-transition: all .3s;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: block;
    position: relative;
    width: 225px;
    height: 48px;
    margin: 30px auto 0;
    border: none !important;
    outline: none;
    background-color: #333;
    color: #fff;
    font-size: 14px;
    line-height: 1.5;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
    transition: all .3s
}

.wpcf7 .wpcf7-submit:before,
.wpcf7 .wpcf7-submit:after {
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.wpcf7 .wpcf7-submit:hover,
.wpcf7 .wpcf7-previous:hover {
    background-color: #666
}

.wpcf7 .wpcf7-submit .wpcf7-not-valid {
    background: pink
}

.wpcf7 .wpcf7-submit .wpcf7-response-output {
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    margin: 10px 0 0;
    padding: 8px 35px 8px 14px;
    border-radius: 4px
}

.wpcf7 .wpcf7-submit .wpcf7-validation-errors {
    border: 1px solid #eed3d7;
    background-color: #f2dede;
    color: #b94a48
}

.wpcf7 .wpcf7-submit .wpcf7-mail-sent-ok {
    border: 1px solid #bce8f1;
    background-color: #d9edf7;
    color: #3a87ad
}

.wpcf7 .wpcf7-previous+br {
    display: none
}

.wpcf7 form .wpcf7-response-output {
    margin: 2em .5em 2em;
    padding: 0;
    border: none;
    text-align: center
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output {
    color: #dc3232;
    font-size: 1em
}

.wpcf7 {
    color: #000
}

.text70 {
    font-size: 70%
}

.text80 {
    font-size: 80%
}

.text90 {
    font-size: 90%
}

.text100 {
    font-size: 100%
}

.text110 {
    font-size: 110%
}

.text120 {
    font-size: 120%
}

.text130 {
    font-size: 130%
}

.text140 {
    font-size: 140%
}

.text150 {
    font-size: 150%
}

.text160 {
    font-size: 160%
}

.text170 {
    font-size: 170%
}

.text180 {
    font-size: 180%
}

.text190 {
    font-size: 190%
}

.text200 {
    font-size: 200%
}

.text210 {
    font-size: 210%
}

.text220 {
    font-size: 220%
}

.b {
    font-weight: 700
}

.u {
    text-decoration: underline
}

.del {
    text-decoration: line-throug
}

.red {
    color: red
}

.blue {
    color: #2ca9e1
}

.green {
    color: #82ae46
}

.orange {
    color: #ff7d00
}

.yellow {
    color: #fff000
}

.pink {
    color: #ff0084
}

.gray {
    color: #999
}

.bg-yellow {
    padding: 2px;
    background-color: #ff0
}

.bg-blue {
    padding: 2px;
    background-color: #4ab0f5
}

.bg-red {
    padding: 2px;
    background-color: red
}

.align1 {
    text-align: center !important
}

.align2 {
    text-align: right !important
}

.align3 {
    text-align: left !important
}

.r-flo {
    float: right;
    margin: 10px
}

.l-flo {
    float: left;
    margin: 10px
}

.f-clear {
    clear: both
}

a img.fade {
    background: 0 0 !important;
    outline: none;
    -webkit-transition: all .3s;
    transition: all .3s
}

a:hover img.fade {
    opacity: .7;
    filter: alpha(opacity=70);
    -ms-filter: "alpha( opacity=70 )";
    background: 0 0 !important
}

.att {
    padding-left: 1em;
    text-indent: -1em
}

.att_box {
    margin: 2em 0 2.5em;
    padding: 1em 1.2em;
    line-height: 2;
    border: 1px dotted #ccc;
    background: #fcfcfc;
    box-shadow: 0px 4px 0px 0px #f7f7f7
}

.m0 {
    margin: 0 !important
}

.mt0 {
    margin-top: 0 !important
}

.mr0 {
    margin-right: 0 !important
}

.mb0 {
    margin-bottom: 0 !important
}

.ml0 {
    margin-left: 0 !important
}

.m5 {
    margin: 5px !important
}

.mt5 {
    margin-top: 5px !important
}

.mr5 {
    margin-right: 5px !important
}

.mb5 {
    margin-bottom: 5px !important
}

.ml5 {
    margin-left: 5px !important
}

.m10 {
    margin: 10px !important
}

.mt10 {
    margin-top: 10px !important
}

.mr10 {
    margin-right: 10px !important
}

.mb10 {
    margin-bottom: 10px !important
}

.ml10 {
    margin-left: 10px !important
}

.m15 {
    margin: 15px !important
}

.mt15 {
    margin-top: 15px !important
}

.mr15 {
    margin-right: 15px !important
}

.mb15 {
    margin-bottom: 15px !important
}

.ml15 {
    margin-left: 15px !important
}

.m20 {
    margin: 20px !important
}

.mt20 {
    margin-top: 20px !important
}

.mr20 {
    margin-right: 20px !important
}

.mb20 {
    margin-bottom: 20px !important
}

.ml20 {
    margin-left: 20px !important
}

.m25 {
    margin: 25px !important
}

.mt25 {
    margin-top: 25px !important
}

.mr25 {
    margin-right: 25px !important
}

.mb25 {
    margin-bottom: 25px !important
}

.ml25 {
    margin-left: 25px !important
}

.m30 {
    margin: 30px !important
}

.mt30 {
    margin-top: 30px !important
}

.mr30 {
    margin-right: 30px !important
}

.mb30 {
    margin-bottom: 30px !important
}

.ml30 {
    margin-left: 30px !important
}

.m35 {
    margin: 35px !important
}

.mt35 {
    margin-top: 35px !important
}

.mr35 {
    margin-right: 35px !important
}

.mb35 {
    margin-bottom: 35px !important
}

.ml35 {
    margin-left: 35px !important
}

.m40 {
    margin: 40px !important
}

.mt40 {
    margin-top: 40px !important
}

.mr40 {
    margin-right: 40px !important
}

.mb40 {
    margin-bottom: 40px !important
}

.ml40 {
    margin-left: 40px !important
}

.m45 {
    margin: 45px !important
}

.mt45 {
    margin-top: 45px !important
}

.mr45 {
    margin-right: 45px !important
}

.mb45 {
    margin-bottom: 45px !important
}

.ml45 {
    margin-left: 45px !important
}

.m50 {
    margin: 50px !important
}

.mt50 {
    margin-top: 50px !important
}

.mr50 {
    margin-right: 50px !important
}

.mb50 {
    margin-bottom: 50px !important
}

.ml50 {
    margin-left: 50px !important
}

.m55 {
    margin: 55px !important
}

.mt55 {
    margin-top: 55px !important
}

.mr55 {
    margin-right: 55px !important
}

.mb55 {
    margin-bottom: 55px !important
}

.ml55 {
    margin-left: 55px !important
}

.m60 {
    margin: 60px !important
}

.mt60 {
    margin-top: 60px !important
}

.mr60 {
    margin-right: 60px !important
}

.mb60 {
    margin-bottom: 60px !important
}

.ml60 {
    margin-left: 60px !important
}

.m65 {
    margin: 65px !important
}

.mt65 {
    margin-top: 65px !important
}

.mr65 {
    margin-right: 65px !important
}

.mb65 {
    margin-bottom: 65px !important
}

.ml65 {
    margin-left: 65px !important
}

.m70 {
    margin: 70px !important
}

.mr70 {
    margin-right: 70px !important
}

.mb70 {
    margin-bottom: 70px !important
}

.ml70 {
    margin-left: 70px !important
}

.m75 {
    margin: 75px !important
}

.mt75 {
    margin-top: 75px !important
}

.mr75 {
    margin-right: 75px !important
}

.mb75 {
    margin-bottom: 75px !important
}

.ml75 {
    margin-left: 75px !important
}

.m80 {
    margin: 80px !important
}

.mt80 {
    margin-top: 80px !important
}

.mr80 {
    margin-right: 80px !important
}

.mb80 {
    margin-bottom: 80px !important
}

.ml80 {
    margin-left: 80px !important
}

.p0 {
    padding: 0 !important
}

.pt0 {
    padding-top: 0 !important
}

.pr0 {
    padding-right: 0 !important
}

.pb0 {
    padding-bottom: 0 !important
}

.pl0 {
    padding-left: 0 !important
}

.p5 {
    padding: 5px !important
}

.pt5 {
    padding-top: 5px !important
}

.pr5 {
    padding-right: 5px !important
}

.pb5 {
    padding-bottom: 5px !important
}

.pl5 {
    padding-left: 5px !important
}

.p10 {
    padding: 10px !important
}

.pt10 {
    padding-top: 10px !important
}

.pr10 {
    padding-right: 10px !important
}

.pb10 {
    padding-bottom: 10px !important
}

.pl10 {
    padding-left: 10px !important
}

@font-face {
    font-family: 'design_plus';
    src: url(https://demo.tcd-theme.com/tcd081/wp-content/themes/tree_tcd081/css/../fonts/design_plus.eot?v=1.5);
    src: url(https://demo.tcd-theme.com/tcd081/wp-content/themes/tree_tcd081/css/../fonts/design_plus.eot?v=1.5#iefix) format('embedded-opentype'), url(https://demo.tcd-theme.com/tcd081/wp-content/themes/tree_tcd081/css/../fonts/design_plus.woff?v=1.5) format('woff'), url(https://demo.tcd-theme.com/tcd081/wp-content/themes/tree_tcd081/css/../fonts/design_plus.ttf?v=1.5) format('truetype'), url(https://demo.tcd-theme.com/tcd081/wp-content/themes/tree_tcd081/css/../fonts/design_plus.svg?v=1.5#design_plus) format('svg');
    font-weight: 400;
    font-style: normal
}

[class^=icon-],
[class*=" icon-"] {
    font-family: "design_plus" !important;
    line-height: 1;
    font-style: normal;
    font-variant: normal;
    font-weight: 400;
    speak: none;
    text-transform: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.icon-feedly:before {
    content: "\e907"
}

.icon-hatebu:before {
    content: "\e908"
}

.icon-line:before {
    content: "\e909"
}

.icon-pocket:before {
    content: "\e90a"
}

.icon-google-plus:before {
    content: "\e900"
}

.icon-google-plus2:before {
    content: "\e901"
}

.icon-facebook:before {
    content: "\e902"
}

.icon-facebook2:before {
    content: "\e903"
}

.icon-twitter:before {
    content: "\e904"
}

.icon-rss:before {
    content: "\e90b"
}

.icon-rss2:before {
    content: "\e906"
}

.icon-pinterest:before {
    content: "\e905"
}

.share-top {
    margin-bottom: 30px
}

.share-btm {
    margin-bottom: 50px
}

.share-type1 {
    width: 100%
}

.share-type1 h2 {
    color: #666;
    font-weight: 400
}

.share-type1 ul {
    list-style: none;
    margin: 0;
    padding: 0
}

.share-type1 li {
    display: inline-block;
    padding: 0;
    text-align: center
}

.share-type1 li>a:hover {
    -webkit-transform: translate3d(0, 1px, 0);
    transform: translate3d(0, 1px, 0)
}

.share-type1 a {
    min-width: 27px;
    text-decoration: none;
    display: inline-block;
    margin: 0 5px 5px 0;
    font-size: 12px;
    font-weight: 400;
    color: #fff !important;
    background: #fafafa;
    border-radius: 2px;
    box-shadow: 0 1px 0 rgba(0, 0, 0, .03);
    text-shadow: none;
    text-align: center;
    line-height: 25px;
    padding: 1px 5px 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box
}

.share-type1 i {
    position: relative;
    top: 3px;
    color: #fff;
    font-size: 1.3em;
    text-shadow: 1px 1px 0 rgba(255, 255, 255, .1)
}

.share-type1 .ttl {
    margin: 0 3px 0 2px;
    text-align: center;
    line-height: 20px
}

.share-type1 .share-count {
    display: inline;
    font-size: 9px;
    color: #fff;
    padding: 0;
    line-height: 25px;
    margin: 0;
    border-radius: 0 1px 1px 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box
}

@media screen and (max-width:767px) {
    .share-type1 {
        width: 100%
    }

    .share-type1 ul {
        margin-bottom: 15px
    }

    .share-type1 li>a span {
        display: none
    }

    .share-type1 a {
        margin-right: 2px
    }

    .share-type1 i {
        left: 1px
    }

    .share-type1 .share-count {
        margin-left: 3px
    }
}

.share-type3 .sns {
    margin: 0;
    text-align: center
}

.share-type3 ul {
    margin: 0 -3% 3% 0;
    list-style: none
}

.share-type3 li {
    float: left;
    width: 47%;
    margin: 0 3% 1.5% 0;
    cursor: pointer;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box
}

.post .share-type3 ul li {
    list-style: none;
    background-image: none;
    padding: 0
}

.share-type3 ul li a {
    position: relative;
    display: block;
    top: 3px;
    font-size: 13px;
    padding: 10px 2px;
    color: #fff;
    border-radius: 2px;
    text-align: center;
    text-decoration: none;
    vertical-align: middle
}

.share-type3 ul li a i {
    position: relative;
    top: 3px;
    font-size: 140%
}

.share-type3 ul li a .ttl {
    margin: 0 3px 0 4px;
    display: inline-block;
    text-align: center;
    font-size: 12px
}

.share-type3 ul li a .share-count {
    position: absolute;
    bottom: -2px;
    right: 8px;
    font-size: 10px;
    padding: 0;
    line-height: 25px;
    margin: 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box
}

.share-type3 ul li a:hover {
    -webkit-transform: translate3d(0px, 2px, 1px);
    -moz-transform: translate3d(0px, 2px, 1px);
    transform: translate3d(0px, 2px, 1px)
}

@media only screen and (min-width:480px) {
    .share-type3 {
        width: auto;
        margin: 20px 0 15px
    }

    .share-type3 ul {
        margin-right: -1%;
        list-style: none;
        overflow: hidden
    }

    .share-type3 li {
        width: 24%;
        margin: 0 1% 2% 0
    }

    .share-type3 li a {
        font-size: 12px;
        padding: 10px 2px
    }

    .share-type3 li:nth-child(4n) {
        margin-right: 0
    }
}

.share-type1 .twitter a,
.share-type3 .twitter a {
    background-color: #55acee
}

.share-type1 .twitter a:hover,
.share-type3 .twitter a:hover {
    background-color: #468ec5
}

.share-type1 ul li.facebook a,
.share-type3 ul li.facebook a {
    background-color: #35629a
}

.share-type1 ul li.facebook a:hover,
.share-type3 ul li.facebook a:hover {
    background-color: #1f3669
}

.share-type1 ul li.googleplus a,
.share-type3 ul li.googleplus a {
    background-color: #dd4b39
}

.share-type1 ul li.googleplus a:hover,
.share-type3 ul li.googleplus a:hover {
    background-color: #b94031
}

.share-type1 ul li.googleplus a i {
    top: 4px
}

.share-type1 ul li.hatebu>a,
.share-type3 ul li.hatebu a {
    background-color: #3c7dd1
}

.share-type1 ul li.hatebu>a:hover,
.share-type3 ul li.hatebu a:hover {
    background-color: #0270ac
}

.share-type1 ul li.pocket a,
.share-type3 ul li.pocket a {
    background-color: #ee4056
}

.share-type1 ul li.pocket a:hover,
.share-type3 ul li.pocket a:hover {
    background-color: #c53648
}

.share-type1 ul li.rss a,
.share-type3 ul li.rss a {
    background-color: #ffb53c
}

.share-type1 ul li.rss a:hover,
.share-type3 ul li.rss a:hover {
    background-color: #e09900
}

.share-type1 ul li.feedly a,
.share-type3 ul li.feedly a {
    background-color: #6cc655
}

.share-type1 ul li.feedly>a:hover,
.share-type3 ul li.feedly>a:hover {
    background-color: #5ca449
}

.share-type1 ul li.pinterest a,
.share-type3 ul li.pinterest a {
    background-color: #d4121c
}

.share-type1 ul li.pinterest a:hover,
.share-type3 ul li.pinterest a:hover {
    background-color: #a42f35
}

.share-type2 {
    width: auto
}

.share-type2 h2 {
    color: #444;
    font-weight: 400
}

.share-type2 ul.type2 {
    margin: 0;
    padding: 0;
    list-style: none
}

.share-type2 ul.type2 li {
    display: inline-block;
    padding: 0;
    text-align: center
}

.share-type2 ul.type2 li a {
    text-decoration: none;
    display: inline-block;
    margin: 0 5px 5px 0;
    font-size: 12px;
    font-weight: 400;
    border-radius: 2px;
    color: #222 !important;
    text-align: center;
    background: #fafafa !important;
    border: 1px solid rgba(0, 0, 0, .1);
    box-shadow: 0 1px 0 rgba(0, 0, 0, .03);
    text-shadow: none;
    line-height: 25px;
    padding: 1px 4px 0
}

.share-type2 ul.type2 li a i {
    position: relative;
    top: 3px;
    color: #222;
    font-size: 1.3em;
    text-shadow: 1px 1px 0 rgba(255, 255, 255, .1)
}

.share-type2 ul.type2 li a .ttl {
    margin: 0 3px 0 2px;
    text-align: center;
    line-height: 20px
}

.share-type2 ul.type2 li a .share-count {
    color: #444;
    font-size: 9px;
    padding: 0;
    line-height: 25px;
    margin: 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box
}

.share-type2 ul.type2 li a:hover,
.share-type2 ul.type2 li a:hover i,
.share-type2 ul.type2 li a:hover .share-count {
    color: #fff !important
}

.share-type2 ul.type2 li a:hover {
    border-color: rgba(255, 255, 255, .1)
}

@media screen and (max-width:480px) {
    .share-type2 {
        width: auto;
        margin: 0
    }

    .share-type2 ul.type2 {
        margin-bottom: 15px
    }

    .share-type2 ul.type2 li a {
        margin-right: 1px
    }

    .share-type2 ul.type2 li a i {
        left: 1px
    }

    .share-type2 ul.type2 li>a span.ttl {
        display: none
    }

    .share-type2 ul.type2 li a .share-count {
        margin-left: 3px
    }
}

.share-type4 {
    text-align: center
}

.share-type4 .sns {
    margin: 0
}

.share-type4 ul.type4 {
    margin: 0 -3% 2% 0;
    list-style: none
}

.share-type4 ul.type4 li {
    float: left;
    width: 47%;
    margin: 0 3% 3% 0;
    cursor: pointer;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box
}

.post .share-type4 ul li {
    list-style: none;
    background-image: none;
    padding: 0
}

.share-type4 ul.type4 li a {
    position: relative;
    display: block;
    top: 5px;
    font-size: 13px;
    padding: 10px 2px;
    text-decoration: none;
    border-radius: 2px;
    color: #222 !important;
    text-align: center;
    background: #fafafa !important;
    border: 1px solid rgba(0, 0, 0, .1);
    box-shadow: 0 1px 0 rgba(0, 0, 0, .03);
    text-shadow: none
}

.share-type4 ul.type4 li a i {
    position: relative;
    top: 3px;
    font-size: 140%;
    color: #222 !important
}

.share-type4 ul.type4 li a .ttl {
    margin: 0 3px 0 4px;
    display: inline-block;
    text-align: center;
    font-size: 12px
}

.share-type4 ul.type4 li a .share-count {
    position: absolute;
    bottom: -2px;
    right: 8px;
    font-size: 10px;
    padding: 0;
    line-height: 25px;
    margin: 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    color: #222 !important
}

.share-type4 ul.type4 li a:hover,
.share-type4 ul.type4 li a:hover i,
.share-type4 ul.type4 li a:hover .share-count {
    color: #fff !important
}

@media only screen and (min-width:480px) {
    .share-type4 {
        width: auto;
        margin: 20px 0 15px
    }

    .share-type4 ul.type4 {
        margin-right: -1%;
        list-style: none;
        overflow: hidden
    }

    .share-type4 ul.type4 li {
        width: 24%;
        margin: 0 1% 2% 0
    }

    .share-type4 ul.type4 li a {
        font-size: 12px;
        padding: 10px 2px
    }

    .share-type4 ul.type4 li:nth-child(4n) {
        margin-right: 0
    }
}

.share-type2 ul.type2 li.twitter a,
.share-type4 ul.type4 li.twitter a {
    color: #222 !important;
    background-color: #fafafa !important
}

.share-type2 ul.type2 li.twitter a:hover,
.share-type4 ul.type4 li.twitter a:hover {
    color: #fff !important;
    background-color: #55acee !important
}

.share-type2 ul.type2 li.facebook a,
.share-type4 ul.type4 li.facebook a {
    color: #222 !important;
    background-color: #fafafa !important
}

.share-type2 ul.type2 li.facebook a:hover,
.share-type4 ul.type4 li.facebook a:hover {
    color: #fff !important;
    background-color: #35629a !important
}

.share-type2 ul.type2 li.googleplus a,
.share-type4 ul.type4 li.googleplus a {
    color: #222 !important;
    background-color: #fafafa !important
}

.share-type2 ul.type2 li.googleplus a:hover,
.share-type4 ul.type4 li.googleplus a:hover {
    color: #fff !important;
    background-color: #dd4b39 !important
}

.share-type2 ul.type2 li.googleplus a i,
.share-type4 ul.type4 li.googleplus a i {
    top: 4px
}

.share-type2 ul.type2 li.hatebu a,
.share-type4 ul.type4 li.hatebu a {
    color: #222 !important;
    background-color: #fafafa !important
}

.share-type2 ul.type2 li.hatebu a:hover,
.share-type4 ul.type4 li.hatebu a:hover {
    color: #fff !important;
    background-color: #3c7dd1 !important
}

.share-type2 ul.type2 li.pocket a,
.share-type4 ul.type4 li.pocket a {
    color: #222 !important;
    background-color: #fafafa !important
}

.share-type2 ul.type2 li.pocket a:hover,
.share-type4 ul.type4 li.pocket a:hover {
    color: #fff !important;
    background-color: #ee4056 !important
}

.share-type2 ul.type2 li.rss a,
.share-type4 ul.type4 li.rss a {
    color: #222 !important;
    background-color: #fafafa !important
}

.share-type2 ul.type2 li.rss a:hover,
.share-type4 ul.type4 li.rss a:hover {
    color: #fff !important;
    background-color: #ff8c00 !important
}

.share-type2 ul.type2 li.feedly a,
.share-type4 ul.type4 li.feedly a {
    color: #222 !important;
    background-color: #fafafa !important
}

.share-type2 ul.type2 li.feedly a:hover,
.share-type4 ul.type4 li.feedly a:hover {
    color: #fff !important;
    background-color: #6cc655 !important
}

.share-type2 ul.type2 li.pinterest a,
.share-type4 ul.type4 li.pinterest a {
    color: #222 !important;
    background-color: #fafafa !important
}

.share-type2 ul.type2 li.pinterest a:hover,
.share-type4 ul.type4 li.pinterest a:hover {
    color: #fff !important;
    background-color: #d4121c !important
}

.sns_default_top {
    padding: 0;
    overflow: hidden;
    list-style: none
}

.sns_default_top ul li {
    display: inline-block;
    margin: 0 5px 3px 0;
    line-height: 1 !important;
    overflow: hidden;
    vertical-align: top
}

.sns_default_top ul li.twitter_button {
    width: 89px
}

.sns_default_top ul li.fbshare_button:hover {
    text-decoration: none
}

.sns_default_top ul li.google_button {
    width: 58px
}

.sns_default_top ul li.pocket_button {
    width: 88px
}

@media only screen and (max-width:480px) {
    .sns_default_top ul li {
        margin-bottom: 6px
    }

    .sns_default_top ul li.twitter_button {
        margin-left: 0
    }
}

@media screen and (max-width:1201px) {
    #main_contents {
        width: auto;
        margin: 0;
        padding: 0 100px;
        border: none !important
    }

    #main_contents:before {
        left: 49px
    }

    #main_contents:after {
        right: 48px
    }

    body.home.no_index_header_content #main_contents {
        padding-top: 100px
    }

    body.single #main_contents {
        padding-top: 0;
        padding-bottom: 50px
    }

    #main_col {
        width: auto;
        padding: 0 0 100px
    }

    body.single-news #main_col {
        padding: 0 0 50px
    }

    @media screen and (max-width:950px) {
        #main_contents {
            padding: 0 40px
        }

        #main_contents:before {
            left: 79px
        }

        #main_contents:after {
            right: 78px
        }

        #main_col {
            width: auto;
            padding: 0 0 50px
        }

        body.single #main_contents {
            padding-bottom: 20px
        }
    }

    @media screen and (max-width:750px) {
        body.single #main_contents {
            padding-bottom: 0
        }
    }

    @media screen and (max-width:550px) {
        #main_contents {
            padding: 0 20px
        }

        #main_contents:before {
            left: 39px
        }

        #main_contents:after {
            right: 38px
        }

        #main_col {
            padding: 0 0 40px
        }
    }

    #side_headline {
        line-height: 1.5;
        position: relative;
        top: 0;
        margin: 0 0 0 5px;
        padding-top: 100px;
        left: 50%;
        -ms-transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%)
    }

    body.single #side_headline {
        top: 0
    }

    @media screen and (max-width:950px) {
        #side_headline {
            padding-top: 70px
        }
    }

    @media screen and (max-width:750px) {
        #side_headline {
            padding-top: 50px;
            margin: 0 0 0 3px
        }
    }

    @media screen and (max-width:550px) {
        #side_headline {
            padding-top: 40px
        }

        body.single #side_headline {
            display: none
        }
    }

    body.admin-bar {
        padding-top: 32px
    }

    body.admin-bar.header_fix_mobile #header {
        margin-top: 32px
    }

    body.admin-bar #drawer_menu {
        padding-top: 32px
    }

    .mobile body.admin-bar.header_fix_mobile {
        padding-top: 102px
    }

    @media screen and (max-width:781px) {
        body.admin-bar {
            padding-top: 46px
        }

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

        body.admin-bar #drawer_menu {
            padding-top: 46px
        }

        body.admin-bar.fixed_find_menu #find_menu_wrap {
            top: 46px
        }

        body.admin-bar.fixed_find_menu {
            padding-top: 106px
        }

        .mobile body.admin-bar.header_fix_mobile {
            padding-top: 126px
        }
    }

    #page_content {
        width: auto;
        max-width: 860px;
        padding: 100px 0 100px
    }

    @media screen and (max-width:750px) {
        #page_content {
            padding: 70px 0 70px
        }

        .lp_top_headline {
            font-size: 24px !important
        }

        .lp_top_desc {
            margin: 0 0 60px
        }

        .lp_top_image {
            margin: 0 0 60px
        }

        .lp_image_list {
            margin: 60px 0 25px
        }

        .lp_image_list .desc {
            padding: 0 30px 20px
        }

        .lp_list_headline {
            margin: 0 0 62px
        }

        .lp_list_headline h3 {
            font-size: 24px !important
        }

        .lp_list_headline p {
            font-size: 12px
        }

        .lp_list_area {
            padding: 40px;
            margin: 0 0 70px
        }

        .lp_list_area .item {
            margin: 0 0 35px
        }

        .lp_list_area .item:last-of-type {
            margin-bottom: 0
        }

        .lp_list_area h4 {
            margin: 0 0 5px !important;
            font-size: 16px !important
        }

        .lp_address .link_button {
            margin: 40px 0 0
        }

        .lp_address .link_button a {
            min-width: 220px;
            height: 50px;
            line-height: 50px;
            font-size: 14px
        }
    }

    @media screen and (max-width:550px) {
        #page_content {
            padding: 40px 0 40px
        }

        .lp_top_headline {
            font-size: 20px !important
        }

        .lp_top_desc {
            margin: 0 0 30px
        }

        .lp_top_image {
            margin: 0 -20px 30px
        }

        .lp_image_list {
            margin: 30px -20px 2px
        }

        .lp_image_list .desc {
            padding: 0 20px 20px
        }

        .lp_list_area {
            margin: 0 0 40px
        }

        .lp_list_headline {
            margin: 0 0 32px
        }

        .lp_list_area h4 {
            margin: 0 0 5px !important;
            font-size: 14px !important
        }

        .lp_address img {
            margin: 0 auto 28px;
            width: 80px;
            height: auto
        }

        .lp_address .link_button {
            margin: 30px 0 0
        }

        #lp_header #header_logo {
            top: 20px
        }

        body.display_only_logo.page_header_logo_position_type1 #header_logo {
            left: 20px
        }

        body.display_only_logo.page_header_logo_position_type3 #header_logo {
            right: 20px
        }
    }

    #access_page {
        width: auto;
        max-width: 860px;
        padding: 100px 0 50px
    }

    @media screen and (max-width:750px) {
        #access_page {
            padding: 70px 0 20px
        }
    }

    @media screen and (max-width:550px) {
        #access_page {
            padding: 40px 0 10px
        }
    }

    .access_content1 .cb_side_headline {
        position: relative;
        top: 0;
        margin: 0 0 95px 4px;
        right: auto;
        left: 50%;
        -ms-transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%)
    }

    .access_content1 .image {
        height: 500px
    }

    @media screen and (max-width:950px) {
        .access_content1 {
            padding: 0 39px 0 40px
        }

        .access_content1 .desc {
            padding: 0 30px
        }
    }

    @media screen and (max-width:750px) {
        .access_content1 {
            margin: 0 0 60px
        }

        .access_content1 .cb_side_headline {
            margin: 0 0 70px 3px !important
        }

        .access_content1 .image {
            height: 350px
        }

        .access_content1 .desc {
            margin-top: 60px
        }
    }

    @media screen and (max-width:550px) {
        .access_content1 {
            margin: 0 0 30px;
            padding: 0 19px 0 20px
        }

        .access_content1 .cb_side_headline {
            margin: 0 0 40px 3px !important
        }

        .access_content1 .image {
            height: 200px
        }

        .access_content1 .desc {
            margin-top: 30px
        }
    }

    @media screen and (max-width:950px) {
        .access_content2 {
            margin: 0 -40px 70px
        }
    }

    @media screen and (max-width:750px) {
        .access_content2 {
            margin: 0 -40px 40px
        }

        .access_content2 .desc {
            padding: 18px 25px
        }
    }

    @media screen and (max-width:550px) {
        .access_content2 {
            margin: 0 -20px 10px
        }

        .access_content2 .desc {
            padding: 16px 20px;
            font-size: 12px !important;
            line-height: 2
        }
    }

    .access_google_map {
        height: 500px;
        margin: 0;
        width: 100%;
        margin: 0
    }

    .access_google_map .pb_googlemap_embed {
        height: 500px
    }

    @media screen and (max-width:750px) {
        .access_content3 {
            position: relative;
            margin: 0 0 45px
        }

        .access_content3 .headline {
            margin: 0 0 60px
        }

        .access_google_map {
            height: 400px
        }

        .access_google_map .pb_googlemap_embed {
            height: 400px
        }

        .access_content3 .link_button {
            margin: 40px 0 0
        }

        .access_content3 .link_button a {
            min-width: 220px;
            height: 50px;
            line-height: 50px;
            font-size: 14px
        }

        .access_content3 .desc_area {
            padding: 0 70px
        }

        .access_content3 .logo_image {
            margin: 70px 0 0
        }
    }

    @media screen and (max-width:550px) {
        .access_content3 {
            margin: 0 0 30px
        }

        .access_content3 .headline {
            margin: 0 0 30px
        }

        .access_google_map {
            height: 316px;
            width: -webkit-calc(100% - 4px);
            width: calc(100% - 4px);
            border: 2px solid #ddd
        }

        .access_google_map .pb_googlemap_embed {
            height: 316px
        }

        .access_content3 .logo_image {
            margin: 40px 0 0
        }

        .access_content3 .desc_area {
            padding: 0 40px
        }

        .access_content3 .desc {
            margin-top: 30px
        }

        .access_content3 .tel_area {
            margin-top: 30px
        }

        .access_content3 .number {
            margin: 12px 0 0
        }
    }

    #design_content2 {
        width: auto;
        max-width: 860px;
        padding: 100px 0 50px
    }

    @media screen and (max-width:750px) {
        #design_content2 {
            padding: 70px 0 10px
        }
    }

    @media screen and (max-width:550px) {
        #design_content2 {
            padding: 40px 0 10px
        }
    }

    .design2_content1 .cb_side_headline,
    .design2_content1.layout_type2 .cb_side_headline,
    .design2_content1.no_headline .cb_side_headline {
        position: relative;
        top: 0;
        margin: 0 0 95px 4px;
        right: auto;
        left: 50%;
        -ms-transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%)
    }

    @media screen and (max-width:950px) {
        .design2_content1 {
            margin: 0 39px 50px
        }

        .design2_content1 .desc {
            padding: 0 30px
        }
    }

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

        .design2_content1 .cb_side_headline,
        .design2_content1.layout_type2 .cb_side_headline,
        .design2_content1.no_headline .cb_side_headline {
            margin: 0 0 69px 4px !important
        }

        .design2_content1 .headline {
            margin: 0 0 60px
        }

        .design2_content1 {
            margin: 0 39px 50px
        }

        .design2_content1 .desc {
            margin-top: 60px
        }

        .design2_content1 .tel_number {
            margin-top: 60px
        }
    }

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

        .design2_content1 .cb_side_headline,
        .design2_content1.layout_type2 .cb_side_headline,
        .design2_content1.no_headline .cb_side_headline {
            margin: 0 0 39px 3px !important
        }

        .design2_content1 {
            margin: 0 19px 20px 20px
        }

        .design2_content1 .headline {
            margin: -10px 0 40px
        }

        .design2_content1 .desc {
            margin-top: 35px;
            padding: 0 20px
        }

        .design2_content1 .tel_number {
            margin-top: 33px
        }
    }

    .design2_content2 {
        margin: 0 -147px 90px;
        width: auto;
        height: 460px
    }

    .design2_content2_inner {
        width: 100%;
        height: 460px;
        position: relative
    }

    .design2_content2 .catch {
        padding: 0 50px;
        left: 0
    }

    @media screen and (max-width:950px) {
        .design2_content2 {
            margin: 0 -40px 90px;
            height: 300px
        }

        .design2_content2_inner {
            height: 300px
        }
    }

    @media screen and (max-width:750px) {
        .design2_content2 {
            margin: 0 -40px 70px;
            height: 250px
        }

        .design2_content2_inner {
            height: 250px
        }
    }

    @media screen and (max-width:550px) {
        .design2_content2 {
            margin: 0 -40px 40px;
            height: 160px
        }

        .design2_content2_inner {
            height: 160px
        }
    }

    .design2_content3 .list_area {
        margin: 95px 38px 0 39px
    }

    .design2_content3 .list_area.list_num3 {
        margin: 95px 0 0 -51px;
        width: calc(100% + 105px)
    }

    .design2_content3 .list_num2 .item {
        width: calc(50% - 25px)
    }

    .design2_content3 .list_num2 .item:nth-child(1) {
        margin-right: 50px
    }

    .design2_content3 .list_num3 .item {
        width: calc(100%/3 - 14px)
    }

    .design2_content3 .list_num3 .item:nth-child(1),
    .design2_content3 .list_num3 .item:nth-child(2) {
        margin-right: 20px
    }

    @media screen and (max-width:950px) {
        .design2_content3 .list_area.list_num3 {
            margin: 60px 38px 0 39px;
            width: auto;
            display: block
        }

        .design2_content3 .list_num3 .item {
            width: 100%
        }

        .design2_content3 .list_num3 .item:nth-child(1),
        .design2_content3 .list_num3 .item:nth-child(2) {
            margin: 0 0 40px
        }
    }

    @media screen and (max-width:750px) {
        .design2_content3 {
            position: relative;
            margin: 0 0 70px
        }

        .design2_content3 .desc {
            margin: 50px 70px 0
        }

        .design2_content3 .list_area {
            margin: 60px 38px 0 39px;
            display: block
        }

        .design2_content3 .list_num2 .item {
            width: 100%
        }

        .design2_content3 .list_num2 .item:nth-child(1) {
            margin: 0 0 20px
        }

        .design2_content3 .list_num3 .item:nth-child(1),
        .design2_content3 .list_num3 .item:nth-child(2) {
            margin: 0 0 20px
        }
    }

    @media screen and (max-width:550px) {
        .design2_content3 {
            margin: 0 0 40px
        }

        .design2_content3 .headline {
            margin-top: -10px
        }

        .design2_content3 .desc {
            margin: 20px 0 0;
            padding: 0 40px
        }

        .design2_content3 .list_area {
            margin: 30px 0 0
        }

        .design2_content3 .list_area.list_num3 {
            margin: 30px 0 0
        }

        .design2_content3 .list_headline {
            height: 50px;
            line-height: 50px
        }

        .design2_content3 .content {
            padding: 25px 30px
        }
    }

    #design_content1 {
        width: auto;
        max-width: 860px;
        padding: 100px 0 50px
    }

    .design1_content1 .cb_side_headline {
        position: relative;
        top: 0;
        margin: 0 0 95px 4px;
        right: auto !important;
        left: 50% !important;
        -ms-transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%)
    }

    .design1_content1 .image {
        width: 50%;
        height: 50%
    }

    .design1_content1 .catch_area {
        padding: 40px
    }

    @media screen and (max-width:750px) {
        #design_content1 {
            padding: 70px 0 20px
        }

        .design1_content1 .cb_side_headline,
        .design1_content1:nth-child(2n) .cb_side_headline {
            margin: 0 0 65px 4px !important
        }

        .design1_content1 {
            margin: 0 -40px 20px
        }

        .design1_content1:last-of-type {
            margin: 0 -40px 0
        }

        .design1_content1 .catch_area {
            padding: 30px
        }

        .design1_content1 .catch_area .desc {
            margin-top: 22px
        }
    }

    @media screen and (max-width:550px) {
        #design_content1 {
            padding: 40px 0 20px
        }

        .design1_content1 .cb_side_headline,
        .design1_content1:nth-child(2n) .cb_side_headline {
            margin: 0 0 38px 4px !important
        }

        .design1_content1 .image2 {
            margin-bottom: 0
        }

        .design1_content1.layout_type2 .image1 {
            margin-bottom: 0
        }

        .design1_content1 .catch_area {
            width: 100%;
            padding: 30px 75px 10px
        }

        .design1_content1.layout_type2 .catch_area {
            float: none
        }
    }

    #index_slider .caption {
        padding: 0 50px;
        width: auto;
        max-width: 860px
    }

    @media screen and (max-width:750px) {
        #index_slider .caption {
            padding: 0 70px
        }

        #index_slider .button {
            font-size: 14px;
            min-width: 220px;
            height: 50px;
            line-height: 50px;
            padding: 0 30px
        }
    }

    @media screen and (max-width:550px) {
        #index_slider .desc {
            margin-top: 18px
        }

        #index_slider .item .image.pc {
            display: none
        }

        #index_slider .item .image.mobile {
            display: block
        }

        #index_slider .catch_image img.pc {
            display: none
        }

        #index_slider .catch_image img.mobile {
            display: inline-block
        }

        #index_slider .catch_image.use_catch_bg {
            width: 130px;
            height: 130px
        }

        #index_slider .button {
            margin-top: 18px
        }
    }

    body.home #main_contents_link {
        display: none !important
    }

    #index_news {
        opacity: 0;
        display: block;
        height: 59px;
        width: 100%;
        position: absolute;
        left: 0;
        bottom: 0;
        overflow: hidden;
        border-top: 1px solid rgba(255, 255, 255, .3);
        z-index: 999
    }

    #index_news_slider {
        height: 35px;
        overflow: hidden;
        top: 12px
    }

    #index_news a {
        display: block;
        color: #fff;
        padding: 0 20px;
        -webkit-box-sizing: border-box;
        box-sizing: border-box
    }

    #index_news a .date {
        font-size: 10px;
        margin: 0 0 9px;
        color: #fff !important
    }

    #index_news a .title {
        font-size: 12px;
        font-weight: 500;
        overflow: hidden;
        white-space: nowrap;
        text-overflow: ellipsis;
        visibility: visible
    }

    #index_news.animate {
        -webkit-animation: opacityAnimation 1s ease forwards 2s;
        animation: opacityAnimation 1s ease forwards 2s
    }

    #index_news.first_animate {
        -webkit-animation: opacityAnimation 1s ease forwards 3s !important;
        animation: opacityAnimation 1s ease forwards 3s !important
    }

    .cb_contents_inner {
        width: auto
    }

    .cb_side_headline,
    .index_design_content.layout_type1 .cb_side_headline,
    .index_post_list .cb_side_headline {
        position: relative;
        top: 0;
        margin: 0 0 95px 4px;
        right: auto;
        left: 50%;
        -ms-transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%)
    }

    @media screen and (max-width:750px) {
        .cb_side_headline {
            margin: 0 0 35px 3px !important
        }

        .cb_contents .link_button a {
            min-width: 220px;
            height: 50px;
            line-height: 50px;
            font-size: 14px
        }
    }

    @media screen and (max-width:750px) {
        .index_free_space {
            padding: 0 35px
        }
    }

    .index_design_content.cb_contents:nth-last-of-type(2) {
        padding-bottom: 100px
    }

    .index_design_content .image_wrap {
        height: 500px;
        margin-bottom: -150px
    }

    .index_design_content .image {
        width: 100%;
        left: auto;
        right: -100px
    }

    .index_design_content .content_area {
        width: calc(50% + 100px);
        padding: 61px 50px 57px;
        left: -100px;
        top: 0
    }

    .index_design_content .link_button {
        margin-top: 100px
    }

    .index_design_content.layout_type1 .content_area {
        left: auto;
        right: -50%
    }

    .index_design_content.layout_type1 .image {
        left: -100px;
        right: auto
    }

    @media screen and (max-width:950px) {
        .index_design_content .image {
            right: -40px
        }

        .index_design_content .content_area {
            width: calc(50% + 50px);
            left: -50px
        }
    }

    @media screen and (max-width:750px) {
        .index_design_content {
            padding: 40px 0 !important
        }

        .index_design_content .image_wrap {
            height: 400px;
            margin-bottom: -100px
        }

        .index_design_content .image {
            left: 40px;
            right: auto
        }

        .index_design_content .content_area {
            width: calc(100% + 2px);
            padding: 61px 50px 57px;
            left: -40px;
            top: 0
        }

        .index_design_content .content_area .desc {
            margin: 20px 0 0
        }

        .index_design_content .link_button {
            margin-top: 40px
        }

        .index_design_content.layout_type1 .content_area {
            left: 40px;
            right: auto
        }

        .index_design_content.layout_type1 .image {
            width: calc(100% + 1px);
            left: -40px
        }
    }

    @media screen and (max-width:550px) {
        .index_design_content .image_wrap {
            height: 240px;
            margin-bottom: -40px
        }

        .index_design_content .image {
            left: 20px
        }

        .index_design_content .content_area {
            width: calc(100% + 2px);
            padding: 23px 30px 23px;
            left: -20px;
            top: 0
        }

        .index_design_content .content_area .desc {
            margin-top: 10px
        }

        .index_design_content.layout_type1 .content_area {
            left: 20px;
            right: auto
        }
    }

    .index_message .cb_contents_inner {
        width: auto
    }

    .index_message .cb_contents_inner .catch {
        width: auto;
        padding: 0;
        display: table;
        margin: 0 auto
    }

    .index_message.layout_type2 .catch {
        float: none
    }

    @media screen and (max-width:550px) {
        .index_message .cb_contents_inner {
            width: auto;
            margin: 0 14px
        }

        .index_message .cb_contents_inner .catch {
            display: block;
            padding: 0 20px;
            margin: 0;
            line-height: 2
        }
    }

    .cb_image_slider {
        width: auto;
        margin: 0 -51px;
        position: relative
    }

    .index_image_slider .content_area {
        width: auto
    }

    @media screen and (max-width:950px) {
        .cb_image_slider {
            width: auto;
            margin: 0 39px;
            height: 450px
        }

        .cb_image_slider .animate_background {
            height: 450px
        }

        .cb_image_slider .image_wrap {
            height: 450px
        }

        .index_image_slider .content_area {
            padding: 40px 70px;
            margin: 0
        }

        .index_image_slider .content_area .catch {
            float: none;
            width: auto;
            padding: 0
        }

        .index_image_slider .content_area .desc {
            float: none;
            width: auto;
            padding: 0;
            margin-top: 20px
        }
    }

    @media screen and (max-width:750px) {
        .index_image_slider {
            padding: 40px 0
        }

        .cb_image_slider {
            width: auto;
            height: 350px;
            margin: 0 39px 0 40px
        }

        .cb_image_slider .animate_background {
            height: 350px
        }

        .cb_image_slider .image_wrap {
            height: 350px
        }
    }

    @media screen and (max-width:550px) {
        .cb_image_slider {
            width: auto;
            height: 220px;
            margin: 0
        }

        .cb_image_slider .animate_background {
            height: 220px
        }

        .cb_image_slider .image_wrap {
            height: 220px
        }

        .index_image_slider .content_area {
            padding: 35px 40px;
            margin: 0
        }
    }

    .index_post_list .post_list_area {
        max-width: 860px;
        width: auto;
        margin: 0 auto
    }

    .index_post_list .post_list {
        width: auto;
        margin: 0 auto
    }

    @media screen and (max-width:750px) {
        .index_post_list {
            padding: 40px 0
        }

        .index_post_list .headline {
            margin: -10px 0 30px
        }

        .index_post_list .post_list_area {
            margin: 0 19px;
            padding: 0 0 70px
        }

        .index_post_list .post_list .item {
            margin: 0 20px
        }

        .index_post_list .image_link {
            height: 160px
        }

        .index_post_list .title_area {
            height: 105px;
            padding: 15px 20px
        }

        .index_post_list .date_area .month {
            font-size: 20px
        }

        .index_post_list .date_area .date1 {
            font-size: 20px
        }

        .index_post_list .date_area .date2 {
            font-size: 10px;
            color: #999
        }

        .index_post_list .slick-dots {
            bottom: -42px
        }
    }

    @media screen and (max-width:550px) {
        .index_post_list .post_list_area {
            margin: 0 -12px
        }

        .index_post_list .post_list .item {
            margin: 0 14px
        }

        .index_post_list .image_link {
            height: 95px
        }

        .index_post_list .title_area {
            height: 118px;
            padding: 15px
        }

        .index_post_list .title {
            line-height: 1.6;
            max-height: 4.8em
        }

        .index_post_list .title span {
            -webkit-line-clamp: 3
        }

        .index_post_list .date_area {
            margin-bottom: 13px
        }

        .index_post_list .date_area .date {
            padding: 0 0 0 10px;
            margin: 0 0 0 10px
        }
    }

    #menu_single {
        width: auto;
        max-width: 860px;
        margin: 0 auto;
        padding: 100px 0
    }

    .menu_content1 {
        position: relative;
        margin: 0 0 100px
    }

    .menu_content1:last-of-type {
        margin-bottom: 0
    }

    .menu_content3 {
        margin: 0 auto 100px
    }

    @media screen and (max-width:950px) {
        .menu_content3 {
            width: auto
        }
    }

    @media screen and (max-width:750px) {
        #menu_single {
            padding: 70px 0
        }

        .menu_content1 {
            margin: 0 0 60px
        }

        .menu_content3 {
            margin: 0 0 60px
        }

        .menu_content3 a {
            display: block;
            padding: 40px
        }

        .menu_content3 img {
            margin: 0 auto 25px;
            display: block;
            max-width: 100px;
            height: auto
        }

        .menu_content3 .catch {
            text-align: center
        }
    }

    @media screen and (max-width:550px) {
        #menu_single {
            padding: 40px 0
        }

        .menu_content1 {
            margin: 0 0 40px
        }

        .menu_content3 {
            margin: 0 0 40px
        }

        .menu_content3 a {
            padding: 30px 30px 25px
        }
    }

    #top_desc {
        margin: -12px 0 90px
    }

    @media screen and (max-width:750px) {
        #top_desc {
            margin: -12px 70px 50px
        }
    }

    @media screen and (max-width:550px) {
        #top_desc {
            margin: -10px 40px 20px
        }
    }

    .menu_content1 .top_headline {
        margin: 0 0 85px
    }

    .menu_content1 .cb_side_headline,
    .menu_content1.side_headline_type2 .cb_side_headline {
        position: relative;
        top: 0;
        margin: 0 0 95px 4px;
        right: auto;
        left: 50%;
        -ms-transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%)
    }

    .menu_content1.image_layout_type2 .item:nth-child(even) {
        margin-top: 16%
    }

    .menu_content1.image_layout_type3 .item:nth-child(odd) {
        margin-top: 16%
    }

    #menu_single .cb_side_headline.menu_animate_item {
        position: relative
    }

    @media screen and (max-width:750px) {
        .menu_content1 .top_headline {
            margin: 0 0 55px
        }

        .menu_content1 .cb_side_headline {
            margin: 0 0 65px 4px !important
        }

        .menu_content1 .image_area {
            margin: 0 -40px
        }

        .menu_content1 .image_area .desc {
            font-size: 14px;
            padding: 30px
        }
    }

    @media screen and (max-width:550px) {
        .menu_content1 .top_headline {
            margin: 0 0 27px
        }

        .menu_content1 .cb_side_headline {
            margin: 0 0 35px 4px !important
        }

        .menu_content1 .image_area {
            margin: 0 -20px
        }

        .menu_content1 .image_area .desc {
            font-size: 12px;
            padding: 15px 18px 10px;
            line-height: 2
        }
    }

    .menu_content1 .data_list {
        margin: 70px 38px 0
    }

    .menu_content1 .data_list .headline {
        margin: 0 0 53px
    }

    .menu_content1 .data_list dt {
        width: calc(100% - 120px)
    }

    .menu_content1 .data_list dd {
        -webkit-width: 120px;
        width: 120px
    }

    @media screen and (max-width:750px) {
        .menu_content1 .data_list {
            padding: 35px 40px 40px;
            margin: 40px 0 0
        }

        .menu_content1 .data_list .headline {
            margin: 0 0 33px
        }
    }

    @media screen and (max-width:550px) {
        .menu_content1 .data_list {
            padding: 25px 27px 30px;
            margin: 15px 0 0
        }

        .menu_content1 .data_list .headline {
            margin: 0 0 23px
        }

        .menu_content1 .data_list dl {
            font-size: 12px
        }

        .menu_content1 .data_list dd,
        .menu_content1 .data_list dt {
            line-height: 2;
            padding: 9px 0 6px
        }
    }

    #menu_archive_button ol {
        width: auto;
        margin: 0 auto
    }

    #menu_archive_button ol li a {
        border-left: none
    }

    #menu_archive_button ol.type1 li:nth-child(3n) a {
        border-right: none
    }

    #menu_archive_button ol.type2 li:nth-child(4n) a {
        border-right: none
    }

    @media screen and (max-width:950px) {
        #menu_archive_button ol {
            border: none
        }

        #menu_archive_button a {
            height: 50px
        }

        #menu_archive_button ol li {
            width: calc(100%/3 + 1px) !important
        }

        #menu_archive_button ol.type2 li:nth-child(4n) a {
            border-right: 1px solid #ddd
        }

        #menu_archive_button ol.type2 li:nth-child(3n) a {
            border-right: none
        }

        #menu_archive_button .sub {
            display: none
        }
    }

    #menu_archive {
        width: auto;
        padding: 100px 0
    }

    #menu_list .cb_side_headline,
    #menu_list .item:nth-child(2n) .cb_side_headline {
        position: relative;
        top: 0;
        margin: 0 0 95px 4px;
        right: auto;
        left: 50%;
        -ms-transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%)
    }

    #menu_list .large_image {
        width: calc(100% + 80px);
        height: 500px;
        left: 80px
    }

    #menu_list .small_image {
        width: calc(50% + 161px);
        height: 350px;
        left: -161px;
        margin-top: -175px
    }

    #menu_list .item:nth-child(2n) .large_image {
        right: 161px
    }

    #menu_list .catch {
        display: inline-block;
        width: auto;
        padding: 0;
        position: relative;
        margin: 100px 0 0;
        float: none;
        left: 50%;
        -ms-transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%)
    }

    #menu_list .cb_side_headline.menu_animate_item {
        position: relative;
        top: 70px !important
    }

    #menu_list .cb_side_headline.menu_animate_item.active {
        top: 0 !important
    }

    @media screen and (max-width:950px) {
        #menu_list .large_image {
            width: 100%;
            height: 400px;
            left: 40px
        }

        #menu_list .small_image {
            width: calc(50% + 40px);
            left: -40px;
            height: 300px;
            margin-top: -150px
        }

        #menu_list .desc {
            margin: -12px 100px 100px
        }
    }

    @media screen and (max-width:750px) {
        #menu_archive {
            width: auto;
            padding: 70px 0
        }

        #menu_list .item {
            position: relative;
            margin-bottom: 100px
        }

        #menu_list .desc {
            margin: -12px 70px 60px
        }

        #menu_list .cb_side_headline,
        #menu_list .item:nth-child(2n) .cb_side_headline {
            margin: 0 0 65px 4px
        }

        #menu_list .catch {
            margin-top: 65px;
            padding: 0 70px
        }

        #menu_list .link_button {
            margin-top: 70px
        }

        #menu_list .link_button a {
            min-width: 220px;
            height: 50px;
            line-height: 50px;
            font-size: 14px
        }
    }

    @media screen and (max-width:550px) {
        #menu_archive {
            padding: 40px 0
        }

        #menu_list .item {
            position: relative;
            margin-bottom: 40px
        }

        #menu_list .title {
            margin: 0 0 5px
        }

        #menu_list .desc {
            margin: -12px 40px 30px
        }

        #menu_list .cb_side_headline,
        #menu_list .item:nth-child(2n) .cb_side_headline {
            margin: 0 0 35px 4px
        }

        #menu_list .large_image {
            width: 100%;
            height: 210px;
            left: 20px
        }

        #menu_list .item:nth-child(2n) .large_image {
            right: 20px;
            width: calc(100% + 1px)
        }

        #menu_list .small_image {
            width: calc(50% + 66px);
            left: -65px;
            height: 135px;
            margin-top: -67px
        }

        #menu_list .catch {
            margin-top: 32px;
            padding: 0 40px
        }

        #menu_list .link_button {
            margin-top: 30px
        }
    }

    #page_header_inner {
        width: auto
    }

    #page_header .catch_area {
        padding: 0 30px;
        -webkit-box-sizing: border-box;
        box-sizing: border-box
    }

    #page_header .headline {
        width: 170px;
        height: 170px
    }

    @media screen and (max-width:550px) {
        #page_header .headline {
            width: 130px;
            height: 130px
        }

        #page_header .desc {
            margin-top: 20px
        }

        #page_header .desc.pc {
            display: none
        }

        #page_header .desc.mobile {
            display: block
        }

        #page_header .image.pc {
            display: none
        }

        #page_header .image.mobile {
            display: block
        }

        #page_header .catch {
            margin-bottom: -15px
        }
    }

    #sub_page_header {
        height: 300px
    }

    #sub_page_header_inner {
        width: auto;
        height: 240px;
        margin-top: 60px
    }

    @media screen and (max-width:750px) {
        #sub_page_header {
            height: 260px
        }

        #sub_page_header_inner {
            height: 200px
        }
    }

    @media screen and (max-width:550px) {
        #sub_page_header {
            height: 220px
        }

        #sub_page_header_inner {
            height: 160px
        }
    }

    #news_archive {
        max-width: 760px;
        width: auto;
        padding: 100px 0 70px
    }

    #news_list .image_wrap {
        width: 45%;
        height: 200px
    }

    #news_list .title_area {
        width: 55%;
        height: 200px
    }

    @media screen and (max-width:950px) {
        #news_archive {
            padding: 70px 0 70px
        }

        #news_list .title {
            padding: 0 40px;
            line-height: 1.8;
            max-height: 5.4em
        }

        #news_list .title span {
            -webkit-line-clamp: 3
        }
    }

    @media screen and (max-width:750px) {
        #news_archive {
            padding: 50px 0 50px
        }

        #news_list .image_wrap {
            width: 45%;
            height: 160px
        }

        #news_list .title_area {
            width: 55%;
            height: 160px
        }
    }

    @media screen and (max-width:550px) {
        #news_archive {
            padding: 40px 0 40px
        }

        #news_list .item {
            margin: 0 0 25px;
            position: relative;
            padding: 50px 0 0
        }

        #news_list .image_wrap {
            width: 50%;
            height: 96px
        }

        #news_list .title_area {
            width: 50%;
            height: 96px
        }

        #news_list .title {
            padding: 1px 20px 0
        }

        #news_list .date_area .month {
            font-size: 20px
        }

        #news_list .date_area .date {
            padding: 0 0 0 10px;
            margin: 0 0 0 10px
        }

        #news_list .date_area .date1 {
            font-size: 20px
        }

        #news_list .date_area .date2 {
            margin: 5px 0 0;
            font-size: 9px
        }

        #news_list .date_area .date3 {
            left: 1px
        }
    }

    #blog_archive {
        max-width: 760px;
        width: auto;
        padding: 100px 0 70px
    }

    @media screen and (max-width:950px) {
        #blog_archive {
            width: auto;
            padding: 70px 0 70px
        }
    }

    @media screen and (max-width:750px) {
        #blog_list .item {
            width: calc(50% - 15px);
            float: left;
            margin: 0 30px 50px 0
        }

        #blog_list .image_link {
            height: 170px
        }
    }

    @media screen and (max-width:550px) {
        #blog_archive {
            padding: 40px 0 40px
        }

        #blog_list .item {
            margin: 0 30px 25px 0
        }

        #blog_list .image_link {
            height: 96px
        }

        #blog_list .title_area {
            height: 112px;
            padding: 10px 15px
        }

        #blog_list .title {
            line-height: 1.6;
            max-height: 5.4em
        }

        #blog_list .title span {
            -webkit-line-clamp: 3
        }

        #blog_list .date_area {
            margin: 0 0 15px
        }

        #blog_list .date_area .month {
            font-size: 20px
        }

        #blog_list .date_area .date {
            padding: 0 0 0 10px;
            margin: 0 0 0 10px
        }

        #blog_list .date_area .date1 {
            font-size: 20px
        }

        #blog_list .date_area .date2 {
            margin: 5px 0 0;
            font-size: 9px
        }

        #blog_list .category {
            margin-top: 5px
        }
    }

    .page_navi {
        margin: 50px 0 30px
    }

    body.post-type-archive-news .page_navi {
        margin-top: 100px
    }

    @media screen and (max-width:950px) {
        .page_navi {
            margin: 20px 0 0
        }

        body.post-type-archive-news .page_navi {
            margin-top: 70px
        }
    }

    @media screen and (max-width:750px) {
        body.post-type-archive-news .page_navi {
            margin-top: 50px
        }
    }

    @media screen and (max-width:550px) {
        body.post-type-archive-news .page_navi {
            margin-top: 40px
        }
    }

    #header {
        height: 60px
    }

    #header.active {
        border-bottom: 1px solid #ddd
    }

    body.single #header {
        position: absolute
    }

    body.use_mobile_header_fix #header {
        position: fixed
    }

    .header_fix_mobile #header {
        position: fixed !important;
        top: 0;
        left: 0;
        z-index: 500;
        width: 100%;
        box-shadow: 0 0 15px 5px rgba(0, 0, 0, .1)
    }

    #header.start:after {
        height: 60px;
        top: -60px
    }

    body.header_fix_mobile #header:after {
        top: 0
    }

    body.single.use_header_fix {
        padding-top: 0
    }

    body.single.use_mobile_header_fix {
        padding-top: 0
    }

    #header_logo {
        height: 60px;
        width: 100%;
        border: none;
        text-align: center
    }

    #header_logo .logo {
        width: 100%;
        line-height: 1;
        margin: 0;
        padding: 0;
        font-weight: 500;
        display: block
    }

    #header_logo .pc_logo_image {
        display: none
    }

    #header_logo .pc_logo_text {
        display: none
    }

    #header.active #header_logo .pc_logo_image.type1 {
        display: none
    }

    #header.active #header_logo .pc_logo_image.type2 {
        display: none
    }

    #header_logo .mobile_logo_image {
        display: block
    }

    #header_logo .mobile_logo_text {
        display: block;
        line-height: 60px
    }

    #header_logo .mobile_logo_image.type2 {
        display: none
    }

    #header.active #header_logo .mobile_logo_image.type1 {
        display: none
    }

    #header.active #header_logo .mobile_logo_image.type2 {
        display: block
    }

    .header_fix_mobile #header_logo .mobile_logo_image.type1 {
        display: none
    }

    .header_fix_mobile #header_logo .mobile_logo_image.type2 {
        display: block
    }

    .global_menu {
        display: none
    }

    #header_news {
        display: none
    }

    #site_description {
        display: none
    }

    #header_right_top {
        height: 60px;
        width: auto;
        display: block;
        z-index: 30
    }

    #header_button {
        display: none
    }

    #header_sns {
        display: none
    }

    #lang_button {
        display: none
    }

    #menu_button {
        width: 60px;
        height: 60px;
        line-height: 60px;
        z-index: 200;
        border: none
    }

    #bread_crumb {
        height: auto;
        padding: 0 40px
    }

    #bread_crumb ul {
        width: auto
    }

    #bread_crumb li {
        font-size: 12px
    }

    #bread_crumb li a {
        height: 48px;
        line-height: 48px
    }

    #bread_crumb li:after {
        height: 48px;
        line-height: 48px;
        margin: 0 5px
    }

    #bread_crumb li.home a:before {
        font-size: 12px
    }

    @media screen and (max-width:550px) {
        #bread_crumb {
            padding: 2px 20px 0
        }
    }

    #drawer_menu .lang_button {
        display: block
    }

    #drawer_menu .lang_button li {
        margin: 0 8px
    }

    @media screen and (max-width:550px) {
        #drawer_menu .pc_logo_image {
            display: none
        }

        #drawer_menu .mobile_logo_image {
            display: block
        }

        #drawer_menu .mobile_logo_image.type2 {
            display: none
        }

        #drawer_menu .bg_image.pc {
            display: none
        }

        #drawer_menu .bg_image.mobile {
            display: block
        }

        #drawer_menu .menu {
            margin-top: 15px
        }

        #drawer_menu .menu a {
            padding: 13px 0
        }

        #drawer_menu .header_sns {
            margin: -7px 0 0
        }

        #drawer_menu .lang_button {
            margin: 4px 0 0
        }
    }

    #article {
        max-width: 760px;
        width: auto;
        margin: 100px auto 0;
        padding: 50px
    }

    @media screen and (max-width:950px) {
        #article {
            margin: 70px auto 0;
            padding: 50px
        }
    }

    @media screen and (max-width:750px) {
        #article {
            margin: 50px auto 0;
            padding: 30px
        }
    }

    @media screen and (max-width:550px) {
        #article {
            margin: 0 -20px 0;
            padding: 30px 20px 40px
        }
    }

    @media screen and (max-width:750px) {
        #post_title_area {
            margin: 0 0 40px
        }

        #post_title_area .date_area {
            position: relative;
            margin: 0 0 30px
        }

        #post_title_area .image {
            height: 300px;
            margin-top: 40px
        }
    }

    @media screen and (max-width:550px) {
        #post_title_area .date_area {
            margin: 0 0 25px
        }

        #post_title_area .date_area .month {
            font-size: 20px
        }

        #post_title_area .date_area .date {
            padding: 0 0 0 10px;
            margin: 0 0 0 10px
        }

        #post_title_area .date_area .date1 {
            font-size: 20px
        }

        #post_title_area .date_area .date2 {
            font-size: 9px
        }

        #post_title_area .category {
            margin: 0
        }

        #post_title_area .image {
            height: 212px;
            margin-top: 20px
        }
    }

    #single_share_top {
        margin: 0 0 45px
    }

    #single_share_bottom {
        margin: 50px 0 0
    }

    @media screen and (max-width:750px) {
        #single_share_top {
            margin: 0 0 40px;
            padding: 0
        }

        #single_share_bottom {
            margin: 40px 0 0
        }

        #single_share_bottom .share-btm {
            margin-bottom: 0 !important;
            padding: 0
        }

        #single_share_top .mt10,
        #single_share_top .mt10 {
            margin: 0 !important
        }

        #single_share_bottom .mb45,
        #single_share_bottom .mb45 {
            margin: 0 !important
        }

        .share-type1 ul {
            text-align: center;
            margin-bottom: -5px !important
        }

        .share-type3 ul {
            text-align: center;
            margin-bottom: -5px !important
        }

        .share-type2 ul.type2 {
            text-align: center;
            margin-bottom: -5px !important
        }

        .share-type4 ul.type4 {
            text-align: center;
            margin-bottom: -5px !important
        }

        .sns_default_top {
            text-align: center;
            margin-bottom: -5px !important
        }
    }

    #single_copy_title_url_top {
        margin: 0 0 40px
    }

    #single_copy_title_url_bottom {
        margin: 45px 0 0
    }

    @media screen and (max-width:750px) {
        #single_copy_title_url_bottom {
            margin: 40px 0 0
        }

        #single_copy_title_url_top {
            margin: 0 0 33px
        }

        .single_copy_title_url_btn {
            border-width: 2px;
            font-size: 12px;
            line-height: 46px;
            min-width: 250px
        }
    }

    #post_meta_bottom {
        padding: 15px 20px 13px;
        margin: 45px 30px 0
    }

    #post_meta_bottom li {
        display: block;
        margin: 0 0 5px;
        padding: 0 0 0 20px;
        border-right: none
    }

    #post_meta_bottom li:last-child {
        border: none;
        margin: 0
    }

    @media screen and (max-width:750px) {
        #post_meta_bottom {
            margin: 40px 20px 0
        }
    }

    @media screen and (max-width:1100px) {
        #next_prev_post {
            margin: 50px 0 0
        }

        #next_prev_post .item {
            height: 50px
        }

        #next_prev_post a {
            background: #fff;
            color: #000;
            border: 1px solid #ddd
        }

        #next_prev_post .title_area {
            font-size: 12px;
            margin: 0;
            text-align: center;
            width: 100%;
            height: 50px
        }

        #next_prev_post .title {
            display: none
        }

        #next_prev_post .nav {
            display: block;
            position: relative;
            height: 50px;
            line-height: 50px;
            text-align: center
        }

        #next_prev_post .image_wrap {
            display: none
        }

        #next_prev_post a:before {
            content: '';
            font-family: 'design_plus';
            color: #111;
            font-size: 12px;
            display: block;
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
            content: '\e90f';
            position: absolute;
            left: 18px;
            margin-top: 2px;
            top: 50%;
            -ms-transform: translateY(-50%);
            -webkit-transform: translateY(-50%);
            transform: translateY(-50%)
        }

        #next_prev_post .next_post a:before {
            content: '\e910';
            left: auto;
            right: 15px
        }

        #next_prev_post .next_post {
            float: right;
            margin: 0;
            width: 50%;
            position: relative;
            left: -1px
        }

        #next_prev_post .next_post .title_area {
            margin: 0
        }

        #next_prev_post .register_link:after {
            top: 16px;
            right: 20px
        }

        #next_prev_post .next_post .register_link:after {
            right: auto;
            left: 20px
        }

        body.single-news #next_prev_post .item:last-of-type a {
            border-left: 1px solid #ddd
        }
    }

    @media screen and (max-width:750px) {
        #next_prev_post {
            margin-top: 40px
        }
    }

    @media screen and (max-width:750px) {
        #post_pagination {
            padding: 5px 0 0
        }

        #p_readmore {
            padding: 5px 0 0;
            margin: 0
        }
    }

    @media screen and (max-width:750px) {
        .author_profile {
            margin: 40px 0 0;
            height: 140px;
            padding: 15px;
            -webkit-box-sizing: border-box;
            box-sizing: border-box
        }

        .author_profile a.avatar {
            width: 110px;
            height: 110px;
            margin: 0
        }

        .author_profile .info {
            padding: 10px 0 10px 20px;
            -webkit-width: calc(100% - 110px);
            width: calc(100% - 110px)
        }

        .author_profile .name {
            font-size: 14px;
            margin: 0 0 13px
        }

        .author_profile .desc {
            margin: 0 0 10px;
            font-size: 12px;
            line-height: 1.6;
            max-height: 3.2em;
            overflow: hidden;
            white-space: normal;
            text-overflow: clip
        }

        .author_profile .desc span {
            display: -webkit-box;
            -webkit-box-orient: vertical;
            -webkit-line-clamp: 2
        }
    }

    #single_banner_top {
        width: auto;
        padding-top: 20px
    }

    #single_banner_bottom {
        width: auto;
        margin: 50px auto
    }

    #single_banner_shortcode {
        width: auto
    }

    @media screen and (max-width:750px) {
        #single_banner_top {
            padding: 10px 0 30px;
            width: auto
        }

        #single_banner_bottom {
            margin: 40px 0 0;
            width: auto
        }

        #single_banner_shortcode {
            padding: 0 0 20px
        }
    }

    #related_post {
        margin: 100px auto 0;
        max-width: 760px
    }

    body.single-news #related_post {
        margin-bottom: 0
    }

    #related_post .cb_side_headline {
        display: none
    }

    @media screen and (max-width:950px) {
        #related_post {
            margin: 70px auto 0
        }

        #related_post .link_button {
            margin-top: 50px
        }
    }

    @media screen and (max-width:750px) {
        #related_post {
            margin: 50px auto 0
        }

        #related_post .item {
            width: -webkit-calc(50% - 15px);
            width: calc(50% - 15px);
            height: 256px;
            margin: 25px 30px 0 0
        }

        #related_post .item:nth-child(3n) {
            margin-right: 30px
        }

        #related_post .item:nth-child(2n) {
            margin-right: 0
        }

        #related_post .image_wrap {
            height: 136px
        }

        #related_post .title_area {
            padding: 10px 15px
        }

        #related_post .title {
            font-weight: 600;
            max-height: 5.4em
        }

        #related_post .title span {
            -webkit-line-clamp: 3
        }

        #related_post .link_button {
            margin-top: 25px
        }

        #related_post .link_button a {
            min-width: 220px;
            height: 50px;
            line-height: 50px;
            font-size: 14px
        }
    }

    @media screen and (max-width:550px) {
        #related_post {
            margin: 40px auto 0
        }

        #related_post .headline {
            margin: 0 auto 15px
        }

        #related_post .item {
            height: 215px
        }

        #related_post .image_wrap {
            height: 96px
        }
    }

    #side_col {
        padding: 0;
        width: auto;
        max-width: 760px
    }

    @media screen and (max-width:950px) {
        #side_col {
            margin: 20px auto 0
        }
    }

    @media screen and (max-width:750px) {
        #side_col {
            margin: 0 0 50px;
            padding: 0;
            display: block;
            border: none
        }

        .widget_content {
            width: auto;
            margin: 0 0 50px
        }

        .widget_content:last-of-type {
            margin: 0
        }
    }

    @media screen and (max-width:550px) {
        .widget_content {
            margin: 0 0 40px
        }

        .widget_content:last-of-type {
            margin: 0
        }
    }

    @media screen and (max-width:550px) {
        .styled_post_list1 li {
            margin: 0 0 20px
        }

        .styled_post_list1 li:last-child {
            margin: 0
        }

        .styled_post_list1 .title_area_inner {
            padding: 0 20px
        }
    }

    @media screen and (max-width:750px) {
        .tcdw_search_box_widget {
            padding: 0
        }

        .tcdw_search_box_widget .p-dropdown {
            margin: 0 0 20px
        }
    }

    @media screen and (max-width:950px) {
        #footer {
            /* padding: 110px 0; */
        }
    }

    @media screen and (max-width:550px) {
        #footer {
            /* padding: 0 0; */
        }
        .footer_bg_image.pc {
            display: none
        }

        .footer_bg_image.mobile {
            display: block
        }
    }

    @media screen and (max-width:750px) {
        #footer_logo .pc_logo_image {
            display: none
        }

        #footer_logo .pc_logo_text {
            display: none
        }

        #footer_logo .mobile_logo_image {
            display: block
        }

        #footer_logo .mobile_logo_text {
            display: block
        }

        #footer_logo .mobile_logo_image {
            margin: 0 auto
        }
    }

    @media screen and (max-width:750px) {
        .footer_info {
            margin: 20px 110px 0
        }
    }

    @media screen and (max-width:550px) {
        .footer_info {
            margin: 20px 60px 0
        }

        .footer_info.pc {
            display: none
        }

        .footer_info.mobile {
            display: block
        }
    }

    @media screen and (max-width:750px) {
        #footer_sns {
            margin-top: 5px
        }

        #footer_sns li {
            margin: 0 6px
        }
    }

    @media screen and (max-width:750px) {
        #footer_button {
            margin-top: 25px
        }

        #footer_button a {
            font-size: 12px;
            padding: 0 20px;
            height: 50px;
            line-height: 50px;
            min-width: 240px
        }
    }

    #footer_menu ul {
        width: 100%
    }

    #footer_menu li:first-of-type {
        border: none
    }

    @media screen and (max-width:950px) {
        #footer_menu {
            display: none;
            position: relative;
            height: auto;
            bottom: auto;
            border: none;
            padding: 30px 0 10px
        }

        #footer_menu ul {
            display: block
        }

        #footer_menu li {
            font-size: 14px;
            line-height: 1;
            border: none !important;
            display: block;
            margin: 0 0 10px;
            flex: inherit;
            flex: initial;
            flex: unset
        }

        #footer_menu li a {
            height: auto;
            line-height: 2
        }
    }

    @media screen and (max-width:750px) {
        #copyright {
            line-height: 50px;
            height: 50px
        }
    }

    @media screen and (max-width:750px) {
        #return_top a {
            height: 50px;
            line-height: 50px;
            width: 50px
        }
    }

    #dp-footer-bar {
        position: fixed;
        right: 0;
        bottom: 0;
        z-index: 999;
        width: 100%
    }

    .open_menu #dp-footer-bar {
        display: none
    }

    .dp-footer-bar-type1 #dp-footer-bar {
        opacity: 0;
        -webkit-transition: opacity .35s, -webkit-transform .35s;
        transition: opacity .35s, transform .35s
    }

    .dp-footer-bar-type1 #dp-footer-bar.active {
        opacity: 1
    }

    .dp-footer-bar-type2 #dp-footer-bar {
        -webkit-transform: translate3d(0, 100%, 0);
        transform: translate3d(0, 100%, 0);
        -webkit-transition: -webkit-transform .35s;
        transition: transform .35s
    }

    .dp-footer-bar-type2 #dp-footer-bar.active {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }

    body.show_footer_bar {
        padding-bottom: 0
    }

    body.show_footer_bar #return_top.active {
        -webkit-transform: translate3d(0, -55px, 0);
        transform: translate3d(0, -55px, 0)
    }

    body.home.show_footer_bar #container {
        padding-bottom: 0
    }

    @media screen and (max-width:950px) {
        body.show_footer_bar #footer_button.active {
            -webkit-transform: translate3d(0, -55px, 0);
            transform: translate3d(0, -55px, 0)
        }
    }

    #comments {
        margin: 100px auto 0;
        max-width: 750px
    }

    #comments .headline {
        margin: 0 auto 50px
    }

    @media screen and (max-width:950px) {
        #comments {
            margin: 70px auto 0
        }

        #comments .headline {
            margin: 0 auto 45px
        }
    }

    @media screen and (max-width:750px) {
        #comments {
            margin: 50px auto 0
        }
    }

    @media screen and (max-width:550px) {
        #comments {
            margin: 37px auto 0
        }

        #comments .headline {
            margin: 0 auto 37px
        }
    }

    #comment_tab li a,
    #comment_tab li p {
        padding: 15px
    }

    @media screen and (max-width:750px) {
        .post_content p {
            line-height: 2.2
        }

        .post_content li,
        .post_content dt,
        .post_content dd {
            line-height: 2.2
        }

        .post_content td,
        .post_content th {
            line-height: 2.2
        }
    }

    .c-pw__box {
        padding: 20px;
        margin: 0 0 20px
    }

    .c-pw__box-label {
        display: block;
        margin: 0 0 15px;
        text-align: center
    }

    .c-pw__box-input {
        width: calc(100% - 160px);
        margin: 0 10px 0 0;
        -webkit-box-sizing: border-box;
        box-sizing: border-box
    }

    .c-pw__btn--submit {
        width: 150px;
        min-width: inherit;
        -webkit-box-sizing: border-box;
        box-sizing: border-box
    }

    @media screen and (max-width:750px) {
        .c-pw__box {
            padding: 15px
        }

        .c-pw__box-input {
            width: calc(100% - 105px);
            margin-right: 5px
        }

        .c-pw__btn--submit {
            width: 100px
        }
    }

    .cardlink {
        margin: 30px 0 35px !important;
        padding: 15px
    }
}

[data-simplebar] {
    position: relative;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-content: flex-start;
    align-items: flex-start
}

.simplebar-wrapper {
    overflow: hidden;
    width: inherit;
    height: inherit;
    max-width: inherit;
    max-height: inherit
}

.simplebar-mask {
    direction: inherit;
    position: absolute;
    overflow: hidden;
    padding: 0;
    margin: 0;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    width: auto !important;
    height: auto !important;
    z-index: 0
}

.simplebar-offset {
    direction: inherit !important;
    box-sizing: inherit !important;
    resize: none !important;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    padding: 0;
    margin: 0;
    -webkit-overflow-scrolling: touch
}

.simplebar-content-wrapper {
    direction: inherit;
    box-sizing: border-box !important;
    position: relative;
    display: block;
    height: 100%;
    width: auto;
    visibility: visible;
    overflow: auto;
    max-width: 100%;
    max-height: 100%
}

.simplebar-content:before,
.simplebar-content:after {
    content: ' ';
    display: table
}

.simplebar-placeholder {
    max-height: 100%;
    max-width: 100%;
    width: 100%;
    pointer-events: none
}

.simplebar-height-auto-observer-wrapper {
    box-sizing: inherit !important;
    height: 100%;
    width: 100%;
    max-width: 1px;
    position: relative;
    float: left;
    max-height: 1px;
    overflow: hidden;
    z-index: -1;
    padding: 0;
    margin: 0;
    pointer-events: none;
    flex-grow: inherit;
    flex-shrink: 0;
    flex-basis: 0
}

.simplebar-height-auto-observer {
    box-sizing: inherit;
    display: block;
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    height: 1000%;
    width: 1000%;
    min-height: 1px;
    min-width: 1px;
    overflow: hidden;
    pointer-events: none;
    z-index: -1
}

.simplebar-track {
    z-index: 1;
    position: absolute;
    right: 0;
    bottom: 0;
    pointer-events: none;
    overflow: hidden
}

[data-simplebar].simplebar-dragging .simplebar-track {
    pointer-events: all
}

.simplebar-scrollbar {
    position: absolute;
    right: 2px;
    width: 7px;
    min-height: 10px
}

.simplebar-scrollbar:before {
    position: absolute;
    content: '';
    background: #000;
    border-radius: 7px;
    left: 0;
    right: 0;
    opacity: 0;
    transition: opacity .2s linear
}

.simplebar-track .simplebar-scrollbar.simplebar-visible:before {
    opacity: .5;
    transition: opacity 0s linear
}

.simplebar-track.simplebar-vertical {
    top: 0;
    width: 11px
}

.simplebar-track.simplebar-vertical .simplebar-scrollbar:before {
    top: 2px;
    bottom: 2px
}

.simplebar-track.simplebar-horizontal {
    left: 0;
    height: 11px
}

.simplebar-track.simplebar-horizontal .simplebar-scrollbar:before {
    height: 100%;
    left: 2px;
    right: 2px
}

.simplebar-track.simplebar-horizontal .simplebar-scrollbar {
    right: auto;
    left: 0;
    top: 2px;
    height: 7px;
    min-height: 0;
    min-width: 10px;
    width: auto
}

[data-simplebar-direction=rtl] .simplebar-track.simplebar-vertical {
    right: auto;
    left: 0
}

.hs-dummy-scrollbar-size {
    direction: rtl;
    position: fixed;
    opacity: 0;
    visibility: hidden;
    height: 500px;
    width: 500px;
    overflow-y: hidden;
    overflow-x: scroll
}

body,
input,
textarea {
    /* font-family: Arial, "Hiragino Sans", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif */
}

.rich_font,
.p-vertical {
    font-family: Arial, "Hiragino Sans", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
    font-weight: 500
}

.rich_font_type1 {
    font-family: Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, sans-serif
}

.rich_font_type2 {
    font-family: Arial, "Hiragino Sans", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
    font-weight: 500
}

.rich_font_type3 {
    font-family: "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    font-weight: 500
}

#side_headline .main,
.cb_side_headline .main {
    font-size: 24px
}

#side_headline .sub,
.cb_side_headline .sub {
    font-size: 16px
}

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

    #side_headline .main,
    .cb_side_headline .main {
        font-size: 20px
    }

    #side_headline .sub,
    .cb_side_headline .sub {
        font-size: 14px
    }
}

#header.start:after {
    background: #fff
}

#header,
#header_logo,
.global_menu>ul>li>a,
#lang_button,
#header_sns,
#menu_button,
#index_news {
    border-color: rgba(255, 255, 255, .3)
}

#header_logo .logo a,
.global_menu>ul>li>a,
#header_news a,
#header_button,
#menu_button:before,
#header_sns li a:before,
#lang_button li a {
    color: #fff
}

#header.active,
#header.active #header_logo,
#header.active .global_menu>ul>li>a,
#header.active #lang_button,
#header.active #header_sns,
#header.active #menu_button,
body.header_fix_mobile #header #menu_button {
    border-color: #ddd
}

#header.active #header_logo .logo a,
#header.active .global_menu>ul>li>a,
#header.active #header_news a,
#header.active #header_button,
#header.active #menu_button:before,
body.header_fix_mobile #header #menu_button:before,
#header.active #header_sns li a:before,
#header.active #lang_button li a {
    color: #000
}

#header #header_logo .logo a:hover,
#header .global_menu>ul>li>a:hover,
#header #header_news a:hover,
#header #header_button:hover,
#header #menu_button:hover:before,
#header #header_sns li a:hover:before,
#header #lang_button li a:hover,
.global_menu>ul>li.active_button>a,
.global_menu>ul>li.active>a {
    color: #ff4000 !important
}

#menu_button span {
    background: #fff
}

#header.active #menu_button span {
    background: #000
}

#menu_button:hover span {
    background: #ff4000 !important
}

body.home .global_menu>ul>li.current-menu-item>a {
    color: #fff !important
}

body.home #header.active .global_menu>ul>li.current-menu-item>a {
    color: #000 !important
}

.global_menu ul ul a {
    color: #fff;
    background: #000
}

.global_menu ul ul a:hover {
    background: #ff4000
}

#drawer_menu .menu a,
#drawer_menu .lang_button li {
    font-size: 16px
}

#drawer_menu .menu a,
#drawer_menu .close_button:before,
#drawer_menu .header_sns a:before,
#drawer_menu .menu li.current-menu-item.non_active_menu a,
#drawer_menu .lang_button li a {
    color: #fff
}

#drawer_menu .menu a:hover,
#drawer_menu .close_button:hover:before,
#drawer_menu .header_sns a:hover:before,
#drawer_menu .menu li.current-menu-item a,
#drawer_menu .menu li.current-menu-item.non_active_menu a:hover,
#drawer_menu .lang_button li a:hover {
    color: #ff4000
}

.global_menu>ul>li.current-menu-item>a {
    color: #ff4000 !important
}

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

    #drawer_menu .menu a,
    #drawer_menu .lang_button li {
        font-size: 14px
    }
}

.megamenu_menu_list .title {
    font-size: 32px
}

.megamenu_menu_list .sub_title {
    font-size: 14px
}

.megamenu_blog_list {
    background: #ebebeb
}

.megamenu_blog_slider .title {
    font-size: 14px
}

.megamenu_blog_list.type2 {
    background: #f8f7f6
}

.megamenu_blog_list.type2 .megamenu_blog_slider .title {
    font-size: 14px
}


#return_top a:before {
    color: #fff
}

#return_top a {
    background: #222
}

#return_top a:hover {
    background: #ff4000
}

@media screen and (max-width:750px) {
    .footer_info {
        font-size: 14px
    }
}

.author_profile a.avatar img,
.animate_image img,
.animate_background .image,
#recipe_archive .blur_image {
    width: 100%;
    height: auto;
    -webkit-transition: transform .75s ease;
    transition: transform .75s ease
}

.author_profile a.avatar:hover img,
.animate_image:hover img,
.animate_background:hover .image,
#recipe_archive a:hover .blur_image {
    -webkit-transform: scale(1.2);
    transform: scale(1.2)
}

a {
    color: #000
}

a:hover,
#header_logo a:hover,
.megamenu_blog_list a:hover .title,
#footer a:hover,
#footer_social_link li a:hover:before,
#bread_crumb a:hover,
#bread_crumb li.home a:hover:after,
#next_prev_post a:hover,
.megamenu_blog_slider a:hover,
.megamenu_blog_slider .category a:hover,
.megamenu_blog_slider_wrap .carousel_arrow:hover:before,
.megamenu_menu_list .carousel_arrow:hover:before,
.single_copy_title_url_btn:hover,
.p-dropdown__list li a:hover,
.p-dropdown__title:hover,
.p-dropdown__title:hover:after,
.p-dropdown__title:hover:after,
.p-dropdown__list li a:hover,
.p-dropdown__list .child_menu_button:hover,
.tcdw_search_box_widget .search_area .search_button:hover:before,
.tcd_category_list a:hover,
.tcd_category_list .child_menu_button:hover,
.styled_post_list1 a:hover .title,
.index_post_list .category a:hover,
#index_news a:hover,
#blog_list .category a:hover,
#post_title_area .category a:hover,
#post_title_area .post_meta a:hover,
#single_author_title_area .author_link li a:hover:before,
.author_profile a:hover,
.author_profile .author_link li a:hover:before,
#post_meta_bottom a:hover,
.cardlink_title a:hover,
.comment a:hover,
.comment_form_wrapper a:hover,
#searchform .submit_button:hover:before {
    color: #ff4000
}

#submit_comment:hover,
#cancel_comment_reply a:hover,
#wp-calendar #prev a:hover,
#wp-calendar #next a:hover,
#wp-calendar td a:hover,
#p_readmore .button:hover,
.page_navi a:hover,
#post_pagination a:hover,
.c-pw__btn:hover,
#post_pagination a:hover,
#comment_tab li a:hover {
    background-color: #ff4000
}

#comment_textarea textarea:focus,
.c-pw__box-input:focus,
.page_navi a:hover,
#post_pagination a:hover {
    border-color: #ff4000
}

.post_content a,
.custom-html-widget a {
    color: #ff4000
}

.post_content a:hover,
.custom-html-widget a:hover {
    color: #ff8056
}

#main_contents {
    border-right: 1px solid #e9e9e9;
    border-left: 1px solid #e9e9e9
}

#main_contents:before,
#main_contents:after,
#main_contents_line {
    background: #e9e9e9
}

body.page,
body.post-type-archive-menu,
body.single-menu {
    background: #fff
}

.styled_h2 {
    font-size: 22px !important;
    text-align: center;
    color: #000;
    border-top: 10px solid #222;
    border-bottom: 10px solid #222;
    border-left: 10px solid #222;
    border-right: 10px solid #222;
    padding: 30px px 30px px !important;
    margin: px 0px 30px !important
}

.styled_h3 {
    font-size: 20px !important;
    text-align: center;
    color: #000;
    border-top: 2px solid #222;
    border-bottom: 1px solid #ddd;
    border-left: 0 solid #222;
    border-right: 0 solid #222;
    padding: 30px 0 !important;
    margin: 0 0 30px !important
}

.styled_h4 {
    font-size: 18px !important;
    text-align: center;
    color: #000;
    border-top: 2px solid #ddd;
    border-bottom: 2px solid #ddd;
    border-left: px solid #222;
    border-right: px solid #ddd;
    padding: 10px px 10px 15px !important;
    margin: px 0px 30px !important
}

.styled_h5 {
    font-size: 16px !important;
    text-align: center;
    color: #000;
    border-top: 10px solid #ddd;
    border-bottom: 10px solid #ddd;
    border-left: 10px solid #ddd;
    border-right: 10px solid #ddd;
    padding: 15px px 15px px !important;
    margin: px 0px 30px !important
}

.q_custom_button1 {
    background: #535353;
    color: #fff !important;
    border-color: #535353 !important
}

.q_custom_button1:hover,
.q_custom_button1:focus {
    background: #7d7d7d;
    color: #fff !important;
    border-color: #7d7d7d !important
}

.q_custom_button2 {
    background: #535353;
    color: #fff !important;
    border-color: #535353 !important
}

.q_custom_button2:hover,
.q_custom_button2:focus {
    background: #7d7d7d;
    color: #fff !important;
    border-color: #7d7d7d !important
}

.q_custom_button3 {
    background: #535353;
    color: #fff !important;
    border-color: #535353 !important
}

.q_custom_button3:hover,
.q_custom_button3:focus {
    background: #7d7d7d;
    color: #fff !important;
    border-color: #7d7d7d !important
}

.speech_balloon_left1 .speach_balloon_text {
    background-color: #ffdfdf;
    border-color: #ffdfdf;
    color: #000
}

.speech_balloon_left1 .speach_balloon_text:before {
    border-right-color: #ffdfdf
}

.speech_balloon_left1 .speach_balloon_text:after {
    border-right-color: #ffdfdf
}

.speech_balloon_left2 .speach_balloon_text {
    background-color: #fff;
    border-color: #ff5353;
    color: #000
}

.speech_balloon_left2 .speach_balloon_text:before {
    border-right-color: #ff5353
}

.speech_balloon_left2 .speach_balloon_text:after {
    border-right-color: #fff
}

.speech_balloon_right1 .speach_balloon_text {
    background-color: #ccf4ff;
    border-color: #ccf4ff;
    color: #000
}

.speech_balloon_right1 .speach_balloon_text:before {
    border-left-color: #ccf4ff
}

.speech_balloon_right1 .speach_balloon_text:after {
    border-left-color: #ccf4ff
}

.speech_balloon_right2 .speach_balloon_text {
    background-color: #fff;
    border-color: #0789b5;
    color: #000
}

.speech_balloon_right2 .speach_balloon_text:before {
    border-left-color: #0789b5
}

.speech_balloon_right2 .speach_balloon_text:after {
    border-left-color: #fff
}

.qt_google_map .pb_googlemap_custom-overlay-inner {
    background: #000;
    color: #fff
}

.qt_google_map .pb_googlemap_custom-overlay-inner:after {
    border-color: #000 transparent transparent
}

.slick-slider {
    position: relative;
    display: block;
    box-sizing: border-box;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent
}

.slick-list {
    position: relative;
    display: block;
    overflow: hidden;
    margin: 0;
    padding: 0
}

.slick-list:focus {
    outline: none
}

.slick-list.dragging {
    cursor: pointer;
    cursor: hand
}

.slick-slider .slick-track,
.slick-slider .slick-list {
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
}

.slick-track {
    position: relative;
    top: 0;
    left: 0;
    display: block
}

.slick-track:before,
.slick-track:after {
    display: table;
    content: ''
}

.slick-track:after {
    clear: both
}

.slick-loading .slick-track {
    visibility: hidden
}

.slick-slide {
    display: none;
    float: left;
    height: 100%;
    min-height: 1px
}

[dir=rtl] .slick-slide {
    float: right
}

.slick-slide img {
    display: block
}

.slick-slide.slick-loading img {
    display: none
}

.slick-slide.dragging img {
    pointer-events: none
}

.slick-initialized .slick-slide {
    display: block
}

.slick-loading .slick-slide {
    visibility: hidden
}

.slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent
}

.slick-arrow.slick-hidden {
    display: none
}



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


.event {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: 20px;
    /*! letter-spacing: 0.08em; */
    /* border: 1px solid rgba(0,0,0,0.2); */
    /*! border-radius: 8px 0 0 0; */
    padding: 20px 0;
    box-sizing: border-box;
    border-right: none;
    border-bottom: none;
    border-left: none;
    margin: 0 auto 20px;
}

.event__item {
    position: relative;
    display: flex;
    width: 100%;
    margin: 0;
    padding: 20px 0;
    box-sizing: border-box;
    border-top: 1px dashed rgba(0,0,0,0.3);
    flex-direction: column;
}

.event__item:first-child {
    border-top: none;
}

.event__h {
    width: 100px;
    margin: 0;
    font-size: 2rem;
    line-height: 1;
}

.event__h .ext {

}

.event__c {
    position: relative;
    list-style: none;
    margin: 0;
    padding: 0;
}

.event__c li {
    position: relative;
    display: flex;
    align-items: center;
    margin-bottom: 5px;
    line-height: 1.5;
}

.event__c li:before {
    /* 	display: block;
    width: 11px;
    height: 11px;
    margin-right: 1em;
    border-radius: 50%;
    border-radius: 60% 50% 50% 70%/60% 50% 55% 60%;
    background-color: currentColor;
    content: ""; */
}

@media print, screen and (min-width: 768px) {

    .event {
    }

    .event__item {
        display: block;
        width: calc(33.333% - 20px);
        padding: 20px 10px;
    }

    .event__item:nth-child(-n + 3) {
        border-top: none;
    }

    .event__item:before {
        position: absolute;
        top: 0;
        bottom: 0;
        left: -8px;
        right: auto;
        display: block;
        width: 1px;
        height: calc(100% - 10px);
        margin: auto;
        border-left: 1px dashed rgba(0,0,0,0.3);
        content: "";
    }

    .event__item:after {
        position: absolute;
        top: 0;
        bottom: 0;
        left: auto;
        right: auto;
        display: block;
        width: calc(100% - 10px);
        height: 1px;
        margin: auto;
        border-left: 1px dashed rgba(0,0,0,0.3);
        content: "";
    }

    .event__item:nth-child(3n + 1):before {
        display: none;
    }

    .event__item:nth-child(-n + 3) {
        border-top: none;
    }

    .event__h {
        width: auto;
        margin: 0;
        font-size: 2.4rem;
        letter-spacing: 0.1em;
    }

    .event__c {
        margin-top: 20px;
        padding-bottom: 20px;
    }

    .event__c li:before {
        margin: 0 10px 0 2px;
    }
}

@media print, screen and (min-width: 1280px) {

    .event__item {
        width: calc(25% - 10px);
        padding: 0px 10px;
    }


    .event__item .photo {
        margin-bottom:20px
    }


    .event__item:nth-child(3n + 1):before {
        display: block;
    }

    .event__item:nth-child(4n + 1):before {
        display: none;
    }

    .event__item:nth-child(-n + 4) {
        border-top: none;
    }

    .event__item .photo img{
        margin-top:0;
    }
}ne;
}

.event__item .photo img{
    margin-top:0;
}
}



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

Primary style

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

table.tab01 {
    width: 95%;
    font-size: 1.0rem;
    border-collapse: separate;
    border-spacing: 0px 1px;
    margin:2%;
    padding: 0 3%;

}

table.tab01 img{
    margin:0;
}

table.tab01 th {
    font-weight: 500;
    padding: 8px 0;
    padding-left:5px;
    vertical-align: middle;
    text-align: left;
    border-bottom: #999 1px solid;
    /*border-bottom: #999 1px solid;
    color: #fff;*/
}

table.tab01 td {
    padding: 8px 2%;
    text-align: left;
    border-bottom: #09437c 2px solid;
}

table.tab01 td.r1 {
    width: 20%;
    text-align: left;
}

table.tab01 td.r2 {
    width: 75%;
    text-align: left;
}









/* ======== 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: flex;}
table.company th {width:25%;padding:22px;vertical-align: 0;border: #ddd 1px solid;border-right:#ddd 1px dashed;border-right: #ddd 1px solid;}
table.company td {padding:22px;vertical-align: 0;border: #ddd 1px solid;border-left:none;width: calc(75% - 2px);}
table.company td .linkArea {margin-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: 950px) {
    table.company th {width:30%;padding:20px;}
    table.company td {padding:20px;width: 70%;}	
}

@media only screen and (max-width: 800px) {
    table.company { font-size:13px;}	
}
@media only screen and (max-width: 738px) {

    table.company { font-size:12px;}	
    /*	#map_canvas { display:none; }*/
}
@media only screen and (max-width: 414px) {
    table.company th {width:30%;padding:15px;}
    table.company td {padding:15px;}		
}

