@charset "utf-8";

/*

    main.css
    Version: 2019.02.07

*/


/* CSSハック
-------------------------------------------------------- */
.ie.ie6 body,
.ie.ie7 body,
.ie.ie8 body,
.srcset {
    visibility: hidden;
}
.no-js {
    display: none;
    margin: 0;
}

/* IE Hack */
/*.ie {}
.ie.ie6 {}
.ie.ie7 {}
.ie.ie8 {}
.ie.ie9 {}*/

/* IE8以下 */
.ie.ie8-lte {
    height: 0 !important;
}

/* IE9以下 */
/*.ie.ie9-lte {}*/

/* IE以外 */
/*.no-ie {}*/


/* パンくずリスト / .breadcrumbs
-------------------------------------------------------- */
.breadcrumbs {
    box-sizing: border-box;
    margin: 0 0 0 0;
    padding: 16px 16px;
    padding-left: 0;
    width: 100%;
    /* border-top: 1px solid #e5e5e5;
    background: #fff; */
    font-size: 12px;
    font-size: 1.2rem;
}
.breadcrumbs ul {
    margin: 0 auto;
    max-width: 1364px;
    width: 100%;
}
.breadcrumbs li {
    display: inline;
    margin: 0 0 0 3px !important;
    color: #212121;
    list-style: none;
    font-weight: 400;
}
.breadcrumbs li:after {
    padding: 0 0 0 6px;
    color: #a7a7a7;
    content: "\e848";
    font-weight: normal;
    font-size: 12px;
    font-size: 1.2rem;
    font-family: "webfont";
}
.breadcrumbs li:last-child:after {
    content: "";
}
.breadcrumbs li a {
    color: #212121;
    text-decoration: none;
}
.breadcrumbs li:first-child a:before {
    color: #a7a7a7;
    content: "\e8ae";
    font-weight: normal;
    font-size: 12px;
    font-size: 1.2rem;
    font-family: "webfont";
}
.breadcrumbs li a:hover {
    text-decoration: underline;
}

/*Breadcrumb NavXT対応*/
.breadcrumbs li.post,
.breadcrumbs li .post {
    margin: 0;
    padding: 0;
    border: none;
}
.breadcrumbs li.archive:before,
.breadcrumbs li.archive:after,
.breadcrumbs li.category:before,
.breadcrumbs li.category:after,
.breadcrumbs li .archive:before,
.breadcrumbs li .archive:after,
.breadcrumbs li .category:before,
.breadcrumbs li .category:after {
    display: inline;
}


/* パンくずリスト / .breadcrumb
-------------------------------------------------------- */
.breadcrumb {
    margin: 0 0 20px 0;
    font-size: 12px;
    font-size: 1.2rem;
}

.breadcrumb ol {
    margin-left: 0;
}

.breadcrumb li {
    display: inline-block;
}

.ie.ie6 .breadcrumb li,
.ie.ie7 .breadcrumb li {
    display: inline;
    zoom: 1;
}

.breadcrumb .ico {
    margin: 0 6px;
    color: #a7a7a7;
}

.breadcrumb .ico-circle {
    float: left;
    margin: 3px 5px 0 0;
    color: #1b63a7;
}

.breadcrumb > span.is-current {
    background: 0;
    font-weight: 700;
}


/* レイアウト / .wrap
-------------------------------------------------------- */
.wrap {
    position: relative;
    z-index: 1;
    display: block;
    margin-top: 60px;
    width: 100%;
    height: auto;
    background-color: #fff;
    /*background-image: url(../../assets/img/common/bg_wrap.jpg);*/
}

.cnts {
    margin: 0 auto 30px;
    padding: 0 14px;
}

.cnts-main {
    float: none;
    margin-top: 0;
    width: auto;
}

.page-home .cnts-main {
    margin-top: 0;
}

.cnts-sub {
    float: none;
    margin-top: 15px;
    width: auto;
}

.page-home .cnts-sub {
    margin-top: 0;
}

/* PC */
@media only screen and (min-width: 980px) {
    .wrap {
        margin-top: 0;
        min-width: 1200px;
        border-top: 0;
        background-color: #fff;
        /*background: #fff url(../../assets/img/common/bg_wrap.jpg) 0 450px no-repeat;*/
    }
    .cnts {
        margin: 0 auto 40px;
        padding: 0;
        width: 1200px;
        /* background: rgba(255,255,255,.8); */
    }
    .cnts-main {
        float: right;
        width: 75.0734%;/* 1024px */
    }
    .cnts-sub {
        float: left;
        margin-top: 0;
        width: 20.52785923753666%;/* 280px */
    }
}

/* PC */
@media only screen and (min-width: 1400px) {
    .cnts {
        width: 1364px;
    }
    .cnts-main {
        width: 75.0734%;/* 1024px */
    }
    .cnts-sub {
        width: 20.52785923753666%;/* 280px */
    }
}


/* ヘッダー / .hdr
-------------------------------------------------------- */
.hdr {
    /*position: relative;*/
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1000;
    width: 100%;
    height: 60px;
    border-top: 3px solid #f99408;
    background-color: #fff;
    -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, .2);
       -moz-box-shadow: 0 0 5px rgba(0, 0, 0, .2);
            box-shadow: 0 0 5px rgba(0, 0, 0, .2);
    transform: translate3d(0, 0, 0);
}

.hdr-inner {
    position: relative;
    padding: 0 0 0 14px;
}

/* .hdr-logo */
.hdr-logo {
    position: absolute;
    top: 4px;
    left: 14px;
    /*left: 50%;
    -ms-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);*/
    float: none;
    padding: 0;
}

.hdr-logo-txt {
    overflow: hidden;
    margin: 0 0 6px 0;
    width: 255px;
    color: #999;
    text-align: left;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-weight: 400;
    font-size: 10px;
    font-size: 1rem;
    line-height: 1;
}

.hdr-logo-ttl a img {
    width: 255px;
}

/* SP */
@media only screen and (min-width: 0) and (max-width: 767px) {
    /* .hdr-box */
    .hdr-box-btn {
        display: none;
    }
}

/* Tablet */
@media only screen and (min-width: 768px) and (max-width: 979px) {
    /* .hdr-box */
    .hdr-box-btn {
        display: none;
    }
}

/* PC */
@media only screen and (min-width: 980px) {
    .hdr {
        position: relative;
        padding: 0;
        width: 100%;
        height: 174px;
        /*background: #fefefe url(../../assets/img/common/bg_hdr.png) 0 0 repeat-x;*/
        border-top: 3px solid #f99408;
        transform: none;
    }

    .hdr-inner {
        overflow: hidden;
        margin: 0 auto;
        padding: 0;
        width: 1200px;
        height: 100px;
    }

    /* .hdr-logo */
    .hdr-logo {
        top: 19px;
        left: 0;
    }

    .hdr-logo-txt {
        margin: 0 0 11px 0;
        width: 500px;
        color: #999;
        font-weight: 500;
        font-size: 14px;
        font-size: 1.4rem;
        font-family: "Noto Sans JP", sans-serif;
    }

    .hdr-logo-ttl a img {
        width: 440px;
    }

    /* .hdr-box */
    .hdr-box {
        position: relative;
    }

    .hdr-box-btn {
        position: absolute;
        top: 39px;
        right: 0;
        font-size: 0;
    }

    .hdr-box-btn li {
        display: inline-block;
        margin-left: 90px;
        vertical-align: top;
    }

    .hdr-box-btn li:first-child {
        margin-left: 0;
    }

    .hdr-box-btn li:nth-child(3) {
        margin-left: 25px;
    }

    .hdr-box-btn-counter {
        padding: 10px;
    }

    .hdr-box-btn-counter th,
    .hdr-box-btn-counter td {
        padding: 0;
        border: none;
    }

    .hdr-box-btn-info {
        box-sizing: border-box;
        /*margin: 17px 0 0 0;*/
        /*padding: 0 15px 0 15px;*/
        /*border-left: 1px solid #d0d2db;*/
        text-align: right;
    }

    .hdr-box-btn-info-time {
        display: block;
        color: #640019;
        font-size: 12px;
        font-size: 1.2rem;
        line-height: 1;
    }

    .hdr-box-btn-info-tel,
    .hdr-box-btn-info-fax {
        display: block;
        color: #640019;
        text-decoration: none;
        letter-spacing: -.02em;
        font-weight: 700;
        font-size: 28px;
        font-size: 2.8rem;
        font-family: "Noto Sans JP", sans-serif;
        line-height: 1.2;
    }

    .hdr-box-btn-info-tel .ico,
    .hdr-box-btn-info-fax .ico {
        position: relative;
        top: -1px;
        margin-right: 5px;
        color: #f99408;
        font-size: 26px;
        font-size: 2.6rem;
    }

    .hdr-box-btn-contact a {
        display: block;
        padding: 0;
        width: 160px;
        height: 50px;
        color: #fff;
        text-align: center;
        text-decoration: none;
        font-weight: 700;
        line-height: 50px;
    }

    .hdr-box-btn-contact-inner a {
        border-radius: 4px;
        background: #f99408;
        /*border-bottom: 3px solid #17419f;*/
        box-shadow: 0 3px 0 #17419f;
    }

    .hdr-box-btn-contact:hover {
        padding-top: 3px;
    }

    .hdr-box-btn-contact:hover .hdr-box-btn-contact-inner a {
        /*border-bottom: none;*/
        box-shadow: none;
    }

    .hdr-box-btn-contact-ico {
        /*display: block;*/
        margin-right: 7px;
        font-size: 24px;
        font-size: 2.4rem;
        line-height: 1;
    }

    .hdr-box-btn-contact-txt {
        /*display: block;*/
        font-size: 15px;
        font-size: 1.5rem;
    }

    .hdr-box-list {
        position: absolute;
        top: 55px;
        right: 300px;
        padding: 0;
        border-radius: 0 0 0 0;
        background-color: #fff;
        font-size: 0;
    }

    .hdr-box-list li {
        display: inline-block;
        vertical-align: middle;
    }

    .hdr-box-list li a {
        color: #333;
        font-weight: 700;
    }

    .hdr-box-list li .ico {
        position: relative;
        top: -1px;
        margin-right: 5px;
        color: #f99408;
        font-size: 14px;
        font-size: 1.4rem;
    }

    .hdr-box-list-item {
        margin: 0 25px 0 0;
        font-size: 15px;
        font-size: 1.5rem;
    }

    .hdr-box-list-item:last-child {
        margin: 0;
    }


    .hdr-box-mail {
        position: absolute;
        top: 0;
        right: 0;
        font-size: 0;
    }

    .hdr-box-mail li {
        display: inline-block;
        vertical-align: middle;
    }

    .hdr-box-mail li a {
        display: block;
        padding: 0 15px 2px;
        height: 28px;
        background-color: #f99408;
        color: #fff;
        /* text-shadow: 1px 1px 1px rgba(0,0,0,.3); */
    }

    .hdr-box-mail li .ico {
        position: relative;
        top: -1px;
        margin-right: 5px;
        color: #fff;
        font-size: 13px;
        font-size: 1.3rem;
    }

    .hdr-box-mail-txt {
        margin-right: 2px;
        font-weight: 700;
        font-size: 15px;
        font-size: 1.5rem;
    }

    .hdr-box-mail-txt:last-child {
        margin: 0;
    }


    .hdr-box-txt {
        position: absolute;
        top: 13px;
        right: 0;
        margin: 0;
        color: #17419f;
        font-weight: 700;
        font-size: 16px;
        font-size: 1.6rem;
    }
}

/* PC */
@media only screen and (min-width: 1400px) {
    .hdr-inner {
        width: 100%;
    }

    .hdr-logo {
        left: 40px;
    }

    .hdr-logo-txt {
        width: 500px;
    }

    .hdr-box {
        right: 40px;
    }

    .hdr-box-btn-contact a {
        width: 169px;
    }

    .hdr-box-btn-contact-txt {
        font-size: 15px;
        font-size: 1.5rem;
    }
}


/* グローバルナビ / .gnav
-------------------------------------------------------- */
/* SP */
@media only screen and (min-width: 0) and (max-width: 767px) {
    .hdr-box-list,
    .hdr-box-mail,
    .hdr-box-txt,
    .hdr-box-btn-contact,
    .gnav {
        display: none;
    }
}

/* Tablet */
@media only screen and (min-width: 768px) and (max-width: 979px) {
    .hdr-box-list,
    .hdr-box-mail,
    .hdr-box-txt,
    .hdr-box-btn-contact,
    .gnav {
        display: none;
    }
}

/* PC */
@media only screen and (min-width: 980px) {
    .gnav {
        position: absolute;
        top: auto;
        bottom: 0;
        width: 100%;
        height: auto;
        /*border-top: 1px solid rgba(0,0,0,.08);*/
        /*border-bottom: 1px solid rgba(0,0,0,.08);*/
        background: #fefefe;
    }


    .gnav {
        border: 2px solid #fdd431;
        background: #fdc52e;/* Old Browsers */
        -webkit-box-shadow: inset 1px 1px 0 rgba(255,255,255,.25);
           -moz-box-shadow: inset 1px 1px 0 rgba(255,255,255,.25);
                box-shadow: inset 1px 1px 0 rgba(255,255,255,.25);
        color: #fff;
        /*text-shadow: 1px 1px 1px rgba(0,0,0,.75);*/
        font-weight: 700;
        font-size: 20px;
        font-size: 2.0rem;
        font-family: "Noto Sans JP", sans-serif;
        line-height: 1.54;
        filter: progid: DXImageTransform.Microsoft.gradient( startColorstr="#fdd431", endColorstr="#fdc52e", GradientType=0 );/* IE6-9 */
    }

    .gnav.fixed {
        position: fixed;
        top: 0;
        bottom: auto;
        z-index: 99999999;
        width: 100%;
        border-top: none;
        -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, .2);
           -moz-box-shadow: 0 0 5px rgba(0, 0, 0, .2);
                box-shadow: 0 0 5px rgba(0, 0, 0, .2);

        -webkit-backface-visibility: hidden;
                backface-visibility: hidden;
    }

    .gnav > ul {
        display: table;
        margin: 0 auto;
        padding: 0;
        /*table-layout: fixed;*/
        width: 1200px;
    }

    .gnav > ul > li {
        display: table-cell;
        /* width: 14.2857142857%;*//*160px*/
        margin: 0;
        padding: 0;
        vertical-align: middle;
    }

    .gnav > ul > li:nth-child(1) {
        width: 18.38931297709924%;/*254px*/
    }

    .gnav > ul > li:nth-child(2) {
        width: 25.38931297709924%;/*306px*/
    }

    .gnav > ul > li:nth-child(4) {
        width: 10.38931297709924%;/*306px*/
    }

    .gnav-list-item-ja {
        display: block;
        color: #640019;
        text-shadow: 1px 1px 1px rgba(255,255,255,.3);
        letter-spacing: 1.5px;
        font-weight: 700;
        font-size: 15px;
        font-size: 1.5rem;
        font-family: "Noto Sans JP", sans-serif;
        line-height: 1.2;
    }

    .gnav-list-item-en {
        display: block;
        color: #640019;
        text-shadow: 1px 1px 1px rgba(255,255,255,.3);
        letter-spacing: 1.5px;
        font-weight: 700;
        font-size: 14px;
        font-size: 1.4rem;
        font-family: "Josefin Sans", "游ゴシック", "YuGothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", Helvetica, Arial, sans-serif, sans-serif;
        line-height: 1.2;
    }

    /*罫線*/
    .gnav > ul > li:first-child > a > span::before,
    .gnav > ul > li > a > span::after {
        position: absolute;
        top: 50%;
        display: block;
        margin-top: -14px;
        width: 1px;
        height: 28px;
        border-right: 1px dotted #aaa;
        /*background-color: rgba(0,0,0,.08);*/
        content: "";
        /*background: url(../../assets/img/common/common/bg_gnav_border.png) left center repeat-y;*/
    }

    .gnav > ul > li:first-child > a > span::before {
        left: 0;
    }

    .gnav > ul > li > a > span::after {
        right: 0;
    }

    /*ホバーエフェクト*/
    .gnav > ul > li > a {
        position: relative;
        display: block;
        padding: 15px 0 0;
        height: 64px;
        text-align: center;
        text-decoration: none;
        line-height: 1.5;
    }

    .gnav > ul > li > a.contact2 {
        padding: 11px 0;
        background: #f99408;
        background: linear-gradient(to bottom,#5889cd 0,#f99408 100%);
    }

    .gnav > ul > li > a.contact2 .gnav-list-item-ja {
        color: #fff;
        text-shadow: 1px 1.73px 2px rgba(0,0,0,.2);
        font-size: 16px;
        font-size: 1.6rem;
    }

    .gnav > ul > li > a.contact2 .gnav-list-item-en {
        color: #fff;
        text-shadow: 1px 1.73px 2px rgba(0,0,0,.2);
    }

    .gnav > ul > li > a:hover .gnav-list-item-ja {
        color: #f99408;
    }

    .gnav > ul > li > a.contact:hover {
        background: #719bd5;
    }

    .gnav > ul > li > a.contact:hover .gnav-list-item-ja {
        color: #fff;
    }

    .gnav > ul > li > a.contact:hover .gnav-list-item-en {
        color: #fff;
    }

    /*.dropdown（ドロップダウンメニュー）*/
    .gnav-list-item .ico {
        position: relative;
        top: -1px;
        margin-left: 10px;
        font-weight: 700;
        font-size: 18px;
        font-size: 1.8rem;
        /*color: #fff;*/
    }

    .gnav > ul > li {
        position: relative;
    }

    .gnav > ul > li:hover a .gnav-list-item-ja {
        color: #f99408;
    }

    .gnav > ul > li:hover .dropdown {
        max-height: 9999px;
        transition: max-height 2s ease-in;
        /*opacity: 1;*/
    }

    .gnav > ul > li > a {
        transition: all .2s ease-in;
    }

    .gnav > ul > li > a.contact {
        transition: none;
    }

    .gnav > ul .dropdown {
        position: absolute;
        top: 100%;
        left: 0;
        /*opacity: 0;*/
        overflow: hidden;
        max-height: 0;
        width: 100%;
        /*background-color: #19192b;*/
        background-color: rgba(249, 148, 8, .95);
        text-align: center;
        /*transition: all .2s ease-in;*/
        transition: max-height .2s ease-out;
    }

    .gnav > ul .dropdown > li > a {
        display: block;
        overflow: hidden;
        margin: 0;
        padding: 0;
        height: 50px;
        /*text-decoration: none;*/
        background: transparent;
        color: #fff;
        text-align: center;
        text-overflow: ellipsis;
        white-space: nowrap;
        font-weight: 400;
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 50px;
    }

    .gnav > ul .dropdown > li > a:hover {
        background-color: rgba(200,200,200,.3);
        /*text-decoration: none;*/
    }
}

/* PC */
@media only screen and (min-width: 1400px) {
    .gnav > ul {
        width: 1364px;
    }
}


/* コンテナー / .cntr
-------------------------------------------------------- */


/* メインビジュアル / .visual-main
-------------------------------------------------------- */
.visual-main {
    margin: 0;
    width: 100%;
    /*height: 530px;*/
    background: #34bcf0 url(../../assets/img/home/bg_visual-main_sp.jpg) center center no-repeat fixed;
    background-size: cover;
    color: #333;
    text-align: center;
}

.visual-main-inner {
    margin: 0 auto;
    padding: 7% 2% 6%;
}

.visual-main-box {
    margin: auto;
    max-width: 980px;
}

.visual-main-box-ttl {
    margin: .3em 0;
    letter-spacing: -1px;
    font-weight: normal;
    font-size: 32px;
    font-size: 3.2rem;
    line-height: 1;
}

.visual-main-box-txt {
    margin: 0 0 35px;
    font-weight: 700;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.7;
}

.visual-main-box-btn {
    margin: 2.5em 0 0;
}

.visual-main-box-btn a {
    padding: 13px 25px;
    max-width: 90%;
    width: 300px;
    border-radius: 6px;
    background-color: #e6000f;/* Old Browsers */
    background-image:    -moz-linear-gradient(top, red 0, #cd001f 100%);/* FF3.6+ */
    background-image: -webkit-gradient(linear, left top, left bottom, from(red), to(#cd001f));/* 旧構文 */
    background-image: -webkit-linear-gradient(top, red 0, #cd001f 100%);/* Chrome10+,Safari5.1+ */
    background-image:      -o-linear-gradient(top, red 0, #cd001f 100%);/* Opera 11.10+ */
    background-image:     -ms-linear-gradient(top, red 0, #cd001f 100%);/* IE 10+ */
    background-image:         linear-gradient(to bottom, red, #cd001f);/* W3C */
    background-position: center top;
    background-repeat: repeat-x;
    -webkit-box-shadow: 2px 3px 9px rgba(0, 104, 183, .35);
       -moz-box-shadow: 2px 3px 9px rgba(0, 104, 183, .35);
            box-shadow: 2px 3px 9px rgba(0, 104, 183, .35);
    color: #fff;
    text-align: center;
    font-weight: 700;
    font-size: 16px;
    font-size: 1.6rem;
    filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
}

/* SP */
@media only screen and (min-width: 0) and (max-width: 767px) {
    .visual-main {
        padding: 10% 0;
        background: #34bcf0 url(../../assets/img/home/bg_visual-main_sp.jpg) center center no-repeat fixed;
        background-size: cover;
    }

    .visual-main-box-txt {
        margin: 2em auto auto;
        max-width: 85%;
        text-align: left;
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 1.7;
    }
}

/* Tablet */
@media only screen and (min-width: 768px) and (max-width: 979px) {
    .visual-main {
        padding: 2.5% 0;
        background: #34bcf0 url(../../assets/img/home/bg_visual-main_pc.jpg) center center no-repeat fixed;
        background-size: cover;
    }

    .visual-main-box-ttl {
        letter-spacing: 1px;
        font-size: 62px;
        font-size: 6.2rem;
    }
}

/* PC */
@media only screen and (min-width: 980px) {
    .visual-main {
        padding: 2.5% 0;
        background: #34bcf0 url(../../assets/img/home/bg_visual-main_pc.jpg) center center no-repeat fixed;
        background-size: cover;
    }

    .visual-main-box-ttl {
        letter-spacing: 1px;
        font-size: 82px;
        font-size: 8.2rem;
    }
}


/* サブビジュアル / .visual-sub
-------------------------------------------------------- */
.visual-sub {
    overflow: hidden;
    margin-bottom: 15px;
    width: 100%;
    height: 222px;
}

.visual-sub-bg {
    position: relative;
    border-bottom: 4px solid #fa9f21;
    background: #fffce4 url(../../assets/img/common/bg_visual-sub-bg_sp.jpg) no-repeat 100% 0;
    background-size: cover !important;
}

.visual-sub-bg:before {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    display: block;
    width: 100%;
    height: 100%;
    background: url(../../assets/img/common/bg_overlay_01.png) repeat 0 0;
    content: "";
}

.visual-sub-inner {
    position: relative;
    z-index: 2;
    display: table;
    margin: 0 auto;
    padding: 0;
    width: 100%;
    height: 100%;
    /*background-color: rgba(255,255,255,.5);*/
}

.visual-sub-box {
    display: table-cell;
    padding: 0;
    color: #fff;
    vertical-align: middle;
}

.visual-sub-box-ttl {
    color: #fff;
    text-align: center;
    text-transform: uppercase;
    /*text-shadow: 1px 1px 1px rgba(0,0,0,.3);*/
    letter-spacing: 1.5px;
    font-weight: 400;
    font-size: 16px;
    font-size: 1.6rem;
    font-family: "Josefin Sans", "游ゴシック", "YuGothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", Helvetica, Arial, sans-serif, sans-serif;
    line-height: 1;
}

.visual-sub-box-ttl .ico {
    display: block;
    margin: 0 auto;
    color: #39b54a;
    font-size: 57px;
    font-size: 5.7rem;
    line-height: 1;
}

.visual-sub-box-txt {
    margin-top: 1.8em;
    color: #fff;
    text-align: center;
    /*text-shadow: 1px 1px 1px rgba(0,0,0,.3);*/
    font-weight: 400;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.2;
}

/* SP */
@media only screen and (min-width: 0) and (max-width: 767px) {
    .visual-sub {
        height: 130px;
        border-top: 0 solid #e6e6e6;
    }

    .visual-sub-inner {
        width: 100%;
    }

    .visual-sub-box-ttl {
        font-size: 18px;
        font-size: 1.8rem;
    }

    .visual-sub-box-txt {
        margin: 0;
        font-size: 14px;
        font-size: 1.4rem;
    }
}

/* Tablet */
@media only screen and (min-width: 768px) and (max-width: 979px) {
    .visual-sub {
        height: 160px;
        border-top: 0 solid #e6e6e6;
    }

    .visual-sub-inner {
        width: 100%;
    }

    .visual-sub-box {
        padding: 0;
    }

    .visual-sub-box-ttl {
        font-size: 18px;
        font-size: 1.8rem;
    }

    .visual-sub-box-txt {
        margin: 0;
        font-size: 15px;
        font-size: 1.5rem;
    }
}

/* PC */
@media only screen and (min-width: 980px) {
    .visual-sub {
        height: 260px;
    }

    .visual-sub-bg {
        background: #f0edde url(../../assets/img/common/bg_visual-sub-bg_pc.jpg) no-repeat center center;
        background-size: cover !important;
    }

    .visual-sub-inner {
        padding: 0;
        width: 1200px;
        background-color: transparent;
    }

    .visual-sub-box {
        padding: 0 0 0 30px;
    }

    .visual-sub-box-ttl {
        margin: 0;
        font-size: 58px;
        font-size: 5.8rem;
    }

    .visual-sub-box-txt {
        margin: 0;
        font-size: 14px;
        font-size: 1.4rem;
    }
}

/* PC */
@media only screen and (min-width: 1400px) {
    .visual-sub-inner {
        width: 1364px;
    }
}


/* メインコンテンツタイトル / .main-hdr
-------------------------------------------------------- */
.main-hdr {
    margin: 0 0 33px;
    padding: 0 0 18px;
}

.main-hdr-ttl {
    font-weight: 700;
    font-size: 28px;
    font-size: 2.8rem;
    line-height: 1.4;
}


/* セクション / .section
-------------------------------------------------------- */
.sect {
    margin: 0 0 90px;
}

.sect:last-child {
    margin: 0 0 45px;
}

.sect-ttl,
.post-ttl {
    position: relative;
    margin: 0 0 26px 0;
    padding: 0 0 16px;
    border-bottom: 3px solid #fbe2e6;
    color: #333;
    text-align: left;
    letter-spacing: 2px;
    /*font-family: "ヒラギノ角ゴ ProN W3","Lucida Grande","Hiragino Kaku Gothic ProN","メイリオ",Meiryo,Verdana,"游ゴシック",YuGothic,sans-serif;*/
    /*font-family: "hannari";*/
    font-weight: 600;
    font-size: 28px;
    font-size: 2.8rem;
    line-height: 1.4;
}

.sect-ttl::after,
.post-ttl::after {
    position: absolute;
    bottom: -3px;
    display: block;
    width: 20%;
    border-bottom: 3px solid #f99408;
    content: " ";
}

.sect-ttl span a,
.post-ttl span a {
    color: #f99408;
}

.sect-body {
    margin-bottom: 40px;
}

.sect-body:last-child,
.sect-body > :last-child {
    margin-bottom: 0;
}

.sect-body-ttl {
    font-weight: 700;
    font-size: 22px;
    font-size: 2.2rem;
}

.sect-ftr {
    padding: 20px 0 0;
    border-top: 1px dotted #ccc;
}

/* SP */
@media only screen and (min-width: 0) and (max-width: 767px) {
    .sect-ttl,
    .post-ttl {
        font-size: 18px;
        font-size: 1.8rem;
    }

    .sect-body {
        padding: 0;
    }
}


/* サブコンテンツ / .cnts-sub
-------------------------------------------------------- */
.cnts-sub-unit-01 {
    margin: 0 0 10px 0;
}

.cnts-sub-unit-02 {
    margin: 0 0 20px 0;
}

.cnts-sub-unit-03 {
    margin: 0 0 30px 0;
}

.cnts-sub-unit-01:last-child,
.cnts-sub-unit-02:last-child,
.cnts-sub-unit-03:last-child {
    margin: 0;
}

.cnts-sub-unit-ttl {
    position: relative;
    margin: 0 0 10px;
    padding: 0 0 0 16px;
    border-radius: 3px;
    /*background: #fff;*/
    background: transparent;
    font-weight: 400;
    font-size: 21px;
    font-size: 2.1rem;
    line-height: 1.4;
}

.cnts-sub-unit-ttl:before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 3px;
    height: 100%;
    border-radius: 2px;
    background: #f99408;
    content: "";
}

/* SP */
@media only screen and (min-width: 0) and (max-width: 767px) {
    .cnts-sub-unit-ttl {
        font-size: 18px;
        font-size: 1.8rem;
    }
}


/* オススメバナー / .special-bnr
-------------------------------------------------------- */
.special-bnr {
    overflow: hidden;
    margin-bottom: 30px;
}

.special-bnr-list-item {
    float: left;
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
            box-sizing: border-box;
    margin-top: 2%;
    margin-right: 2%;
    padding: 0;
    width: 23.5%;
}

/* SP */
@media only screen and (min-width: 0) and (max-width: 479px) {
    .special-bnr-list-item {
        float: none;
        margin-top: 4%;
        margin-right: 0;
        padding: 0;
        width: 100%;
        text-align: center;
    }

    .special-bnr-list-item:nth-child(1) {
        margin-top: 0;
    }
}

/* SP */
@media only screen and (min-width: 480px) and (max-width: 767px) {
    .special-bnr-list-item {
        width: 49%;
    }

    .special-bnr-list-item:nth-child(1),
    .special-bnr-list-item:nth-child(2) {
        margin-top: 0;
    }

    .special-bnr-list-item:nth-child(2n) {
        margin-right: 0;
    }
}

/* Tablet */
@media only screen and (min-width: 768px) and (max-width: 979px) {
    .special-bnr-list-item:nth-child(1),
    .special-bnr-list-item:nth-child(2),
    .special-bnr-list-item:nth-child(3),
    .special-bnr-list-item:nth-child(4) {
        margin-top: 0;
    }

    .special-bnr-list-item:nth-child(4n) {
        margin-right: 0;
    }
}

/* PC */
@media only screen and (min-width: 980px) {
    .special-bnr-list-item {
        float: none;
        margin-top: 15px;
        margin-right: 0;
        padding: 0;
        width: 100%;
        text-align: center;
    }

    .special-bnr-list-item:nth-child(1) {
        margin-top: 0;
    }
}


/* .メインお問い合わせ / .inquiry
-------------------------------------------------------- */
.inquiry {
    margin: 0 auto;
    padding: 0;
    /*min-height: 700px;*/
    background: #fff url(../../assets/img/common/bg_inquiry_sp.jpg) repeat-x 50% 0;
    text-align: center;
}

.inquiry-inner {
    position: relative;
    margin: 0 auto;
    padding: 40px 14px 20px;
    max-width: 1120px;
    width: 100%;
    text-shadow: 0 0 1px rgba(255,255,255,1),
    0 0 10px rgba(255,255,255,1),
    0 0 15px rgba(255,255,255,1);
    font-weight: 700;
}

.inquiry-ttl {
    position: relative;
    margin-bottom: 20px;
    padding-bottom: 10px;
}

.inquiry-ttl-ja {
    display: block;
    margin-bottom: 10px;
    color: #333;
    letter-spacing: .2em;
    font-weight: 400;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.3;
}

.inquiry-ttl-en {
    display: block;
    margin-bottom: 0;
    color: #333;
    letter-spacing: .1em;
    font-weight: 700;
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 1.3;
}

.inquiry-ttl:after {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    display: inline-block;
    margin: auto;
    width: 35px;
    height: 1px;
    background: #000;
    content: "";
}

.inquiry-txt {
    margin: 0 0 20px;
    font-weight: 700;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.57143;
}

.inquiry-num {
    margin: 0 0 15px;
    font-size: 0;
}

.inquiry-num-tel,
.inquiry-num-fax {
    display: block;
    margin-bottom: 12px;
    color: #333;
    letter-spacing: -.01em;
    font-weight: 700;
    font-size: 34px;
    font-size: 3.4rem;
    line-height: 1;
}

.inquiry-num-tel span,
.inquiry-num-fax span {
    font-weight: 700;
    font-size: 24px;
    font-size: 2.4rem;
}

.inquiry-num-tel a:hover {
    color: #333;
    text-decoration: none;
}

.inquiry-btn {
    display: block;
    margin: 0 auto;
    margin-bottom: 20px;
    width: 100%;
}

.inquiry-btn p:not(:first-child) {
    margin-top: 10px;
}

.inquiry-btn-tel,
.inquiry-btn-mail,
.inquiry-btn-access {
    margin: 0;
    text-align: center;
}

.inquiry-btn-tel a,
.inquiry-btn-mail a,
.inquiry-btn-access a {
    display: inline-block;
    padding: 1em;
    width: 100%;
    border-color: #fec895 #be6d20 #985719 #be6d20;
    border-radius: 3px;
    background-color: #f7821f;/* Old Browsers */
    background-image:    -moz-linear-gradient(top, #fe922b 0, #f07313 100%);/* FF3.6+ */
    background-image: -webkit-gradient(linear, left top, left bottom, from(#fe922b), to(#f07313));/* 旧構文 */
    background-image: -webkit-linear-gradient(top, #fe922b 0, #f07313 100%);/* Chrome10+,Safari5.1+ */
    background-image:      -o-linear-gradient(top, #fe922b 0, #f07313 100%);/* Opera 11.10+ */
    background-image:     -ms-linear-gradient(top, #fe922b 0, #f07313 100%);/* IE 10+ */
    background-image:         linear-gradient(to bottom, #fe922b, #f07313);/* W3C */
    background-repeat: repeat-x;
    -webkit-box-shadow: 2px 3px 10px rgba(0,0,0,.15);
       -moz-box-shadow: 2px 3px 10px rgba(0,0,0,.15);
            box-shadow: 2px 3px 10px rgba(0,0,0,.15);
    color: #fff;
    text-shadow: 0 -1px rgba(0,0,0,.15);
    font-weight: 700;
    font-size: 14px;
    font-size: 1.4rem;
    -webkit-transition: all .5s ease;
         -o-transition: all .5s ease;
            transition: all .5s ease;
}

.ie.ie6 .inquiry-btn-tel a,
.ie.ie7 .inquiry-btn-tel a,
.ie.ie6 .inquiry-btn-mail a,
.ie.ie7 .inquiry-btn-mail a,
.ie.ie6 .inquiry-btn-access a,
.ie.ie7 .inquiry-btn-access a {
    display: inline;
    zoom: 1;
}

.inquiry-btn-tel a:hover,
.inquiry-btn-mail a:hover,
.inquiry-btn-access a:hover {
    border-radius: 8px;
    background: #3e91ba;
    text-decoration: none;
}

.inquiry-btn-tel a .ico,
.inquiry-btn-mail a .ico,
.inquiry-btn-access a .ico {
    margin-right: .3em;
}

/* SP */
@media only screen and (min-width: 0) and (max-width: 767px) {
    .inquiry {
        background: #fff url(../../assets/img/common/bg_inquiry_sp.jpg) repeat-x 50% 0;
        background-size: cover;
    }

    .inquiry-txt {
        text-align: left;
    }
}

/* Tablet */
@media only screen and (min-width: 768px) and (max-width: 979px) {
    .inquiry {
        background: #fff url(../../assets/img/common/bg_inquiry_sp.jpg) repeat-x 50% 0;
        background-size: cover;
    }

    .inquiry-num p:first-child {
        margin-right: 4%;
    }

    .inquiry-num-tel,
    .inquiry-num-fax {
        display: inline-block;
        font-weight: 700;
        font-size: 39px;
        font-size: 3.9rem;
    }

    .ie.ie6 .inquiry-num-tel,
    .ie.ie7 .inquiry-num-tel,
    .ie.ie6 .inquiry-num-fax,
    .ie.ie7 .inquiry-num-fax {
        display: inline;
        zoom: 1;
    }
}

/* PC */
@media only screen and (min-width: 980px) {
    .inquiry {
        background: #fff url(../../assets/img/common/bg_inquiry_pc.jpg) repeat-x 50% 0;
    }

    .inquiry-inner {
        padding: 40px 0 30px;
        /*background-color: rgba(255,255,255,0.7);
        border-radius: 5px;*/
    }

    .inquiry-ttl-en {
        font-size: 34px;
        font-size: 3.4rem;
    }

    .inquiry-num p:first-child {
        margin-right: 6%;
    }

    .inquiry-num-tel,
    .inquiry-num-fax {
        display: inline-block;
        font-weight: 700;
        font-size: 48px;
        font-size: 4.8rem;
    }

    .inquiry-btn-tel,
    .inquiry-btn-mail,
    .inquiry-btn-access {
        display: inline-block;
    }

    .ie.ie6 .inquiry-btn-tel,
    .ie.ie7 .inquiry-btn-tel,
    .ie.ie6 .inquiry-btn-mail,
    .ie.ie7 .inquiry-btn-mail,
    .ie.ie6 .inquiry-btn-access,
    .ie.ie7 .inquiry-btn-access {
        display: inline;
        zoom: 1;
    }

    .inquiry-btn p:not(:first-child) {
        margin-left: 2%;
    }

    .inquiry-btn-tel a,
    .inquiry-btn-mail a,
    .inquiry-btn-access a {
        padding: 1em 2.0em;
        font-size: 18px;
        font-size: 1.8rem;
    }
}

/* PC */
@media only screen and (min-width: 1600px) {
    .inquiry {
        background: #fff url(../../assets/img/common/bg_inquiry_pc.jpg) repeat-x 50% 0;
        background-size: cover;
    }
}


/* サイドナビ / .snav
-------------------------------------------------------- */
.snav {
    padding: 0 0 25px;
}

.snav-list-item {
    border-bottom: 1px dotted #ccc;
    font-weight: 700;
    font-size: 15px;
    font-size: 1.5rem;
}

.snav-list-item a {
    position: relative;
    display: block;
    padding: 12px 0 12px 32px;
}

.snav-list-item a:hover {
    background: #fdf0e7;
    color: #fc993f;
    text-decoration: none;
}

.snav-list-item .ico {
    position: absolute;
    top: 18px;
    left: 6px;
    margin-right: 10px;
    background: -webkit-linear-gradient(#fa6, #ff7400);
    -webkit-background-clip: text;
    color: #fc9c43;
    font-size: 13px;
    font-size: 1.3rem;

    -webkit-text-fill-color: transparent;
}

.snav-list-item a:hover .ico {
    left: 7px;
    -webkit-transform: translate(1px, 0);
       -moz-transform: translate(1px, 0);
        -ms-transform: translate(1px, 0);
         -o-transform: translate(1px, 0);
            transform: translate(1px, 0);
}

/* SP */
@media only screen and (min-width: 0) and (max-width: 767px) {
    .snav-list-item {
        float: left;
        -webkit-box-sizing: border-box;
           -moz-box-sizing: border-box;
                box-sizing: border-box;
        margin-right: 2%;
        padding: 0;
        width: 49%;
    }

    .snav-list-item:nth-child(2n) {
        margin-right: 0;
    }
}

/* Tablet */
@media only screen and (min-width: 768px) and (max-width: 979px) {
    .snav-list-item {
        float: left;
        -webkit-box-sizing: border-box;
           -moz-box-sizing: border-box;
                box-sizing: border-box;
        margin-right: 2%;
        padding: 0;
        width: 32%;
    }

    .snav-list-item:nth-child(3n) {
        margin-right: 0;
    }
}

/* PC */
@media only screen and (min-width: 980px) {
    .snav-list-item {
        margin: 0;
        padding: 0;
        font-weight: 700;
        font-size: 14px;
        font-size: 1.4rem;
    }

    .snav-list-item a {
        padding: 12px 0 11px 32px;
        color: #333;
    }

    .snav-list-item .ico {
        top: 17px;
    }

    .snav-list-item a:hover {
        text-decoration: underline;
    }
}


/* ローカルナビ / .lnav
-------------------------------------------------------- */
.lnav {
    padding: 0 0 25px;
}

.lnav-list li {
    margin: 0;
    padding: 0;
    width: 100%;
    border-bottom: 1px dotted #ccc;
    font-weight: 700;
    font-size: 15px;
    font-size: 1.5rem;
}

.lnav-list li a {
    position: relative;
    display: block;
    padding: 12px 0 12px 34px;
}

.lnav-list li a:hover {
    background: #fdf0e7;
    color: #fc993f;
    text-decoration: none;
}

/* SP */
@media only screen and (min-width: 0) and (max-width: 767px) {
    .lnav-list li a:before {
        position: absolute;
        top: 50%;
        left: 10px;
        display: inline-block;
        margin-top: -8px;
        color: #f99408;
        content: "\e88a";
        font-weight: 700;
        font-size: 13px;
        font-size: 1.3rem;
        font-family: "webfont";
    }

    .lnav-list li a:hover:before {
        left: 11px;
        -webkit-transform: translate(1px, 0);
           -moz-transform: translate(1px, 0);
            -ms-transform: translate(1px, 0);
             -o-transform: translate(1px, 0);
                transform: translate(1px, 0);
    }
}

/* Tablet */
@media only screen and (min-width: 768px) and (max-width: 979px) {
    .lnav-list li a:before {
        position: absolute;
        top: 50%;
        left: 10px;
        display: inline-block;
        margin-top: -8px;
        color: #f99408;
        content: "\e88a";
        font-weight: 700;
        font-size: 13px;
        font-size: 1.3rem;
        font-family: "webfont";
    }

    .lnav-list li a:hover:before {
        left: 11px;
        -webkit-transform: translate(1px, 0);
           -moz-transform: translate(1px, 0);
            -ms-transform: translate(1px, 0);
             -o-transform: translate(1px, 0);
                transform: translate(1px, 0);
    }
}

/* PC */
@media only screen and (min-width: 980px) {
    .lnav-list li {
        font-size: 14px;
        font-size: 1.4rem;
    }

    .lnav-list li a {
        padding: 12px 0 11px 34px;
    }

    .lnav-list li a:before {
        position: absolute;
        top: 50%;
        left: 10px;
        display: inline-block;
        margin-top: -8px;
        color: #f99408;
        content: "\e88a";
        font-weight: 700;
        font-size: 13px;
        font-size: 1.3rem;
        font-family: "webfont";
    }

    .lnav-list li a:hover {
        text-decoration: underline;
    }

    .lnav-list li a:hover:before {
        left: 11px;
        -webkit-transform: translate(1px, 0);
           -moz-transform: translate(1px, 0);
            -ms-transform: translate(1px, 0);
             -o-transform: translate(1px, 0);
                transform: translate(1px, 0);
    }
}


/* .画像有サイドナビ / .inav （main.css）
-------------------------------------------------------- */
.inav {
    margin-bottom: 30px;
    /*overflow: hidden;*/
}

.inav > ul > li > a {
    z-index: 0 !important;
}

.inav-list {
    padding: 12px 0 0 0;
    border-top: 1px solid #e3e3e3;
}

.inav-list-item {
    overflow: hidden;
    margin: 0 0 12px 0;
    padding: 0;
    padding: 0 0 12px 0;
    border-color: rgba(56,56,56,.3);
    border-bottom: 1px solid #e3e3e3;
    list-style: none;
}

.inav-list-item a {
    position: relative;
    display: block;
    padding: 0 20px 0 0;
    color: #333;
    text-decoration: none;
    -webkit-transition: color .2s;
            transition: color .2s;
}

.inav-list-item a:hover {
    color: #cd3c5b;
}

.inav-list-item a::after {
    position: absolute;
    top: 50%;
    right: 2px;
    display: block;
    margin-top: -5px;
    width: 7px;
    height: 7px;
    border-top: 2px solid #cd3c5b;
    border-right: 2px solid #cd3c5b;
    content: "";
    -webkit-transform: rotate(45deg) scale(.9);
            transform: rotate(45deg) scale(.9);
}

.inav-list-item a:hover::after {
    right: 1px;
}

.inav-list-item-img {
    display: inline;
    float: left;
    margin: 0 10px 0 0;
    width: 60px;
    border: none;
}

.inav-list-item-box {
    padding-top: 7px;
}

.inav-list-item-box-txt {
    margin-bottom: 5px;
    color: #f99408;
    font-size: 15px;
    font-size: 1.5rem;
    font-family: "Noto Sans JP", sans-serif;
    line-height: 1;
}

.inav-list-item-box-ttl {
    margin: 0;
    font-weight: 700;
    font-size: 19px;
    font-size: 1.9rem;
    font-family: "Noto Sans JP", sans-serif;
    line-height: 1.2;
}


/* .サブお問い合わせ / .sub-contact
-------------------------------------------------------- */
.sub-contact {
    border: 5px solid #ddeef6;
    background-color: #fff;
    text-align: center;
}

.sub-contact-logo {
    padding: 20px 16px;
    border-bottom: 1px solid #ddeef6;
}

.sub-contact-info {
    padding: 20px 16px;
    border-bottom: 1px solid #ddeef6;
}

.sub-contact-info-time {
    margin-bottom: 5px;
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 1.5;
}

.sub-contact-info-tel {
    margin: 0;
    vertical-align: middle;
    letter-spacing: -1px;
    font-weight: 700;
    font-size: 25px;
    font-size: 2.5rem;
    line-height: 1.2;
}

.sub-contact-info-tel .ico {
    position: relative;
    top: -1px;
    margin-right: 5px;
}

.sub-contact-access {
    padding: 20px 16px;
}

.sub-contact-access-txt {
    margin-bottom: 10px;
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 1.35;
}

.sub-contact-access-btn a {
    display: block;
    padding: 0;
    /*width: 160px;*/
    height: 50px;
    color: #fff;
    text-align: center;
    text-decoration: none;
    font-weight: 700;
    line-height: 50px;
}

.sub-contact-access-btn-inner a {
    border-radius: 4px;
    background: #f99408;
    box-shadow: 0 3px 0 #17419f;
}

.sub-contact-access-btn:hover .sub-contact-access-btn-inner a {
    background: #f99408;
}

.sub-contact-access-btn-ico {
    /*display: block;*/
    margin-right: 7px;
    font-size: 22px;
    font-size: 2.2rem;
    line-height: 1;
}

.sub-contact-access-btn-txt {
    /*display: block;*/
    font-size: 15px;
    font-size: 1.5rem;
}


/* フッター / .ftr
-------------------------------------------------------- */
.ftr {
    position: relative;
    width: 100%;
    /*background-color: #f5f5f5;*/
    background-image: url(../../assets/img/common/bg_ftr.jpg);
}

/* SP */
@media only screen and (min-width: 0) and (max-width: 767px) {
    .ftr {
        /*border-top: 1px solid #eee;*/
        margin-top: 0;
        padding: 0;
    }
}

/* Tablet */
@media only screen and (min-width: 768px) and (max-width: 979px) {
    .ftr {
        /*border-top: 1px solid #eee;*/
        margin-top: 0;
        padding: 0;
    }
}

/* PC */
@media only screen and (min-width: 980px) {
    .ftr {
        /*border-top: 1px solid #eee;*/
        margin-top: 0;
        padding: 0;
    }
}


/* .ftr-sitemap
-------------------------------------------------------- */
.ftr-sitemap {
    border-top: 1px solid #e6e6e6;
    background: #f5f5f5;
    /*padding: 0 0 25px;*/
}

.ftr-sitemap-inner {
    width: 100%;
}

.ftr-sitemap-category {
    margin: 0;
}

.ftr-sitemap-category-ttl {
    border-bottom: 1px solid #e6e6e6;
    font-weight: 700;
    font-size: 16px;
    font-size: 1.6rem;
    cursor: pointer;
}

.ftr-sitemap-category-ttl:hover {
    background: #fdf0e7;
}

.ftr-sitemap-category-ttl span {
    position: relative;
    display: block;
    padding: 21px 4%;
    text-decoration: none;
}

.ftr-sitemap-category-list {
    display: none;
}

.ftr-sitemap-category-list-item {
    border-bottom: 1px solid #e8e8e8;
    font-weight: 400;
    font-size: 11px;
    font-size: 1.1rem;
}

.ftr-sitemap-category-list-item a {
    position: relative;
    display: block;
    padding: 15px 4%;
    text-decoration: none;
}

.ftr-sitemap-category-list-item a:hover {
    background: #fdf0e7;
    color: #fc993f;
}

/* SP */
@media only screen and (min-width: 0) and (max-width: 767px) {
    .ftr-sitemap-category-ttl span:after {
        position: absolute;
        top: 50%;
        right: 15px;
        display: block;
        margin-top: -10px;
        width: 8px;
        height: 8px;
        border-right: 4px solid #f99408;
        border-bottom: 4px solid #f99408;
        content: "";
        -webkit-transition: all .5s;
             -o-transition: all .5s;
                transition: all .5s;
        -webkit-transform: rotate(45deg);
           -moz-transform: rotate(45deg);
            -ms-transform: rotate(45deg);
             -o-transform: rotate(45deg);
                transform: rotate(45deg);
    }

    .ftr-sitemap-category-ttl span.open:after {
        position: absolute;
        top: 50%;
        right: 15px;
        display: block;
        margin-top: -5px;
        width: 8px;
        height: 8px;
        border-right: 4px solid #f99408;
        border-bottom: 4px solid #f99408;
        content: "";
        -webkit-transition: all .5s;
             -o-transition: all .5s;
                transition: all .5s;
        -webkit-transform: rotate(225deg);
           -moz-transform: rotate(225deg);
            -ms-transform: rotate(225deg);
             -o-transform: rotate(225deg);
                transform: rotate(225deg);
    }

    .ftr-sitemap-category-list-item a:after {
        position: absolute;
        top: 50%;
        right: 15px;
        display: block;
        margin-top: -4px;
        width: 8px;
        height: 8px;
        border-right: 2px solid #f99408;
        border-bottom: 2px solid #f99408;
        content: "";
        -webkit-transform: rotate(-45deg);
           -moz-transform: rotate(-45deg);
            -ms-transform: rotate(-45deg);
             -o-transform: rotate(-45deg);
                transform: rotate(-45deg);
    }
}

/* Tablet */
@media only screen and (min-width: 768px) and (max-width: 979px) {
    .ftr-sitemap-category-ttl span:after {
        position: absolute;
        top: 50%;
        right: 15px;
        display: block;
        margin-top: -10px;
        width: 8px;
        height: 8px;
        border-right: 4px solid #f99408;
        border-bottom: 4px solid #f99408;
        content: "";
        -webkit-transition: all .5s;
             -o-transition: all .5s;
                transition: all .5s;
        -webkit-transform: rotate(45deg);
           -moz-transform: rotate(45deg);
            -ms-transform: rotate(45deg);
             -o-transform: rotate(45deg);
                transform: rotate(45deg);
    }

    .ftr-sitemap-category-ttl span.open:after {
        position: absolute;
        top: 50%;
        right: 15px;
        display: block;
        margin-top: -5px;
        width: 8px;
        height: 8px;
        border-right: 4px solid #f99408;
        border-bottom: 4px solid #f99408;
        content: "";
        -webkit-transition: all .5s;
             -o-transition: all .5s;
                transition: all .5s;
        -webkit-transform: rotate(225deg);
           -moz-transform: rotate(225deg);
            -ms-transform: rotate(225deg);
             -o-transform: rotate(225deg);
                transform: rotate(225deg);
    }

    .ftr-sitemap-category-list-item a:after {
        position: absolute;
        top: 50%;
        right: 15px;
        display: block;
        margin-top: -4px;
        width: 8px;
        height: 8px;
        border-right: 2px solid #f99408;
        border-bottom: 2px solid #f99408;
        content: "";
        -webkit-transform: rotate(-45deg);
           -moz-transform: rotate(-45deg);
            -ms-transform: rotate(-45deg);
             -o-transform: rotate(-45deg);
                transform: rotate(-45deg);
    }

    /* ftr-sitemap-category-list-item */
    .ftr-sitemap-category-list-item {
        float: left;
        width: 50%;
    }

    .category-01 .ftr-sitemap-category-list-item:nth-child(odd),
    .category-02 .ftr-sitemap-category-list-item:nth-child(odd),
    .category-03 .ftr-sitemap-category-list-item:nth-child(odd),
    .category-04 .ftr-sitemap-category-list-item:nth-child(odd) {
        border-right: 1px solid #e8e8e8;
    }
}

/* PC */
@media only screen and (min-width: 980px) {
    .ftr-sitemap {
        border-bottom: 1px solid #dadada;
        background-color: #f5f5f5;
    }

    .ftr-sitemap-inner {
        overflow: hidden;
        margin: 0 auto;
        padding: 35px 0 35px 0;
        width: 1200px;/*1200px*/
    }

    .ftr-sitemap-category {
        float: left;
        margin-right: 1.7094017094017095%;/*20px*/
        margin-bottom: 1.7094017094017095%;/*20px*/
        padding: 0;
        width: 23.71794871794872%;/*277.5px*/
    }

    .ftr-sitemap-category:nth-child(4n) {
        margin-right: 0;
    }

    .ftr-sitemap-category ul {
        display: block!important;
        padding: 0 0 0 14px;
    }

    .ftr-sitemap-category-ttl {
        margin: 0 0 5px 0;
        border-bottom: none;
        cursor: default;
    }

    .ftr-sitemap-category-ttl:hover {
        background: none;
    }

    .ftr-sitemap-category-ttl .ico {
        padding: 6px 6px 6px 2px;
        color: #f99408;
        font-size: 16px;
        font-size: 1.6rem;
    }

    .ftr-sitemap-category-ttl span {
        position: static;
        display: inline;
        padding: 0;
        border-bottom: none;
        font-size: 15px;
        font-size: 1.5rem;
    }

    .ftr-sitemap-category-list-item {
        border-bottom: none;
        font-weight: 400;
        font-size: 13px;
        font-size: 1.3rem;
        line-height: 180%;
    }

    .ftr-sitemap-category-list-item a {
        position: static;
        display: inline;
        padding: 0;
        text-decoration: none;
    }

    .ftr-sitemap-category-list-item a:hover {
        background: none;
        text-decoration: underline;
    }
}


/* .ftr-bnr
-------------------------------------------------------- */
.ftr-bnr {
    padding: 25px 0 25px;
    background: #f5f5f5;
    /*border-top: solid 1px #ededed;*/
}

.ftr-bnr-inner ul {
    overflow: hidden;
    margin: 0 auto;
}

.ftr-bnr-inner ul li {
    margin: 0;
    padding: 0;
    width: 100%;
    text-align: center;
}

/* SP */
@media only screen and (min-width: 0) and (max-width: 767px) {
    .ftr-bnr-inner ul li {
        float: left;
        padding: 1%;
        width: 50%;
    }
}

/* Tablet */
@media only screen and (min-width: 768px) and (max-width: 979px) {
    .ftr-bnr-inner ul li {
        float: left;
        padding: .5%;
        width: 25%;
    }
}

/* PC */
@media only screen and (min-width: 980px) {
    .ftr-bnr {
        padding: 40px 0 20px;
    }

    .ftr-bnr-inner ul {
        width: 1200px;/*1200px*/
    }

    .ftr-bnr-inner ul li {
        float: left;
        margin-top: 1.7094017094017095%;/*20px*/
        margin-right: 2.3333333333333335%;/*28px*/
        width: 23.25%;/*279px*/
        text-align: left;
    }

    .ftr-bnr-inner ul li:nth-child(1),
    .ftr-bnr-inner ul li:nth-child(2),
    .ftr-bnr-inner ul li:nth-child(3),
    .ftr-bnr-inner ul li:nth-child(4) {
        margin-top: 0;
    }

    .ftr-bnr-inner ul li:nth-child(4n) {
        margin-right: 0;
    }
}


/* .ftr-logo
-------------------------------------------------------- */
.ftr-logo {
    padding: 20px 0 10px;
    background: #f5f5f5;
    text-align: center;
}

.ftr-logo a img {
    width: 380px;
}


/* .ftr-box
-------------------------------------------------------- */
.ftr-box {
    padding-top: 20px;
    padding-bottom: 40px;
    background-color: #f3f3f3;
}

.ftr-box-inner {
    padding-bottom: 10px;
    /*background-color: #f3f3f3;*/
    color: #333;
    font-weight: 700;
    font-size: 10px;
    font-size: 1.0rem;
}

.ftr-box-inner a {
    color: #333;
}

.ftr-box-logo,
.ftr-box-list,
.ftr-box-txt {
    margin-bottom: 15px;
}

/* .ftr-box-logo */
.ftr-box-logo {
    margin: 0 auto;
    padding: 10px 0 10px;
    text-align: center;
}

.ftr-box-logo a img {
    width: 275px;
}

/* .ftr-box-info */
.ftr-box-info {
    margin: 16px 0;
    text-align: center;
    letter-spacing: .05em;
    line-height: 1.82;
}

.ftr-box-info a:hover {
    text-decoration: none;
}

.ftr-box-info-street {
    margin: 0 0 15px;
    font-weight: 700;
    font-size: 13px;
    font-size: 1.3rem;
}

.ftr-box-info-telfax {
    letter-spacing: 0;
    font-weight: 700;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1;
}

.ftr-box-info-telfax-ttl {
    letter-spacing: normal;
    font-size: 68%;
}

.ftr-box-info-telfax-coron {
    margin: 0 3px 0 3px;
}

/* .ftr-box-about */
.ftr-box-about {
    padding: 10px 20px;
    border-radius: 3px;
    background: rgba(100, 100, 100, .1);
    color: #069;
    font-weight: 400;
    font-size: 12px;
    font-size: 1.2rem;
}

/* .ftr-box-list */
.ftr-box-list {
    overflow: hidden;
    border-top: 1px solid #e8e8e8;
    text-align: center;
}

.ftr-box-list li {
    float: left;
    border-right: 1px solid #e8e8e8;
    border-bottom: 1px solid #e8e8e8;
    text-align: center;
}

.ftr-box-list li a {
    position: relative;
    display: block;
    padding: 15px 0;
    width: 100%;
    color: #333;
    text-decoration: none;
    font-weight: 400;
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 140%;
}

.ftr-box-list li a:hover {
    background: #fdf0e7;
}

.ftr-box-list li a span {
    display: none;
}

/* .ftr-box-txt */
.ftr-box-txt {
    margin-bottom: 5px;
    padding: 0 14px;
    color: #333;
    text-align: center;
    font-weight: 400;
    font-size: 12px;
    font-size: 1.2rem;
}

/* .ftr-box-copyright */
.ftr-box-copyright {
    margin-bottom: 30px;
    color: #333;
    text-align: center;
    font-weight: 400;
    font-size: 7px;
    font-size: .7rem;
}

.ftr-box-copyright a {
    color: #333;
    text-decoration: none;
}

/* .ftr-box-produced */
.ftr-box-produced {
    padding: 0;
    text-align: center;
}

.ftr-box-produced a img {
    width: 170px;
}

/* SP */
@media only screen and (min-width: 0) and (max-width: 767px) {
    /* .ftr-box-list */
    .ftr-box-list li {
        width: 50%;
    }

    .ftr-box-list li:nth-child(2),
    .ftr-box-list li:nth-child(4),
    .ftr-box-list li:nth-child(6) {
        border-right: 0;
    }

    .ftr-box-list li a:after {
        position: absolute;
        top: 50%;
        right: 15px;
        display: block;
        margin-top: -4px;
        width: 8px;
        height: 8px;
        border-right: 2px solid #f99408;
        border-bottom: 2px solid #f99408;
        content: "";
        -webkit-transform: rotate(-45deg);
           -moz-transform: rotate(-45deg);
            -ms-transform: rotate(-45deg);
             -o-transform: rotate(-45deg);
                transform: rotate(-45deg);
    }
}

/* Tablet */
@media only screen and (min-width: 768px) and (max-width: 979px) {
    /* .ftr-box-list */
    .ftr-box-list li {
        width: 33.3333333%;
    }

    .ftr-box-list li:nth-child(3),
    .ftr-box-list li:nth-child(6) {
        border-right: 0;
    }

    .ftr-box-list li a:after {
        position: absolute;
        top: 50%;
        right: 15px;
        display: block;
        margin-top: -4px;
        width: 8px;
        height: 8px;
        border-right: 2px solid #f99408;
        border-bottom: 2px solid #f99408;
        content: "";
        -webkit-transform: rotate(-45deg);
           -moz-transform: rotate(-45deg);
            -ms-transform: rotate(-45deg);
             -o-transform: rotate(-45deg);
                transform: rotate(-45deg);
    }
}

/* PC */
@media only screen and (min-width: 980px) {
    .ftr-box {
        padding-bottom: 20px;
        /*padding-top: 25px;*/
        /*background-color: transparent;*/
        /*background-image: url(../../assets/img/common/bg_ftr.jpg);*/
    }

    .ftr-box-inner {
        margin: 0 auto;
        width: 1200px;
        font-weight: 400;
    }

    /* .ftr-box-list */
    .ftr-box-logo a img {
        width: 275px;
    }

    /* .ftr-box-list */
    .ftr-box-list {
        border-top: none;
        background: transparent;
        font-size: 0;
    }

    .ftr-box-list li {
        display: inline-block;
        float: none;
        padding: 0 20px 0;
        border-top: none;
        border-right: 1px solid #ccc;
        border-bottom: none;
    }

    .ftr-box-list li:last-child {
        border-right: none;
    }

    .ie.ie6 .ftr-box-list li,
    .ie.ie7 .ftr-box-list li {
        display: inline;
        zoom: 1;
    }

    .ftr-box-list li a {
        font-size: 14px;
        font-size: 1.4rem;
    }

    .ftr-box-list li a {
        position: static;
        display: inline;
        padding: 0;
        text-decoration: none;
    }

    .ftr-box-list li a {
        color: #543803;
        text-decoration: none;
    }

    .ftr-box-list li a:hover {
        background: none;
        color: #543803;
        text-decoration: underline;
    }

    /* .ftr-box-info */
    .ftr-box-info {
        margin: 0 0 20px 0;
    }

    .ftr-box-info-street {
        margin: 0 0 5px;
        font-weight: 400;
        font-size: 12px;
        font-size: 1.2rem;
    }

    .ftr-box-info-telfax {
        font-weight: 700;
        font-size: 32px;
        font-size: 3.2rem;
    }

    .ftr-box-info-telfax:first-child {
        padding-right: 25px;
    }

    /* .ftr-box-txt */
    .ftr-box-txt {
        color: #543803;
    }

    /* .ftr-box-copyright */
    .ftr-box-copyright {
        color: #543803;
    }

    .ftr-box-copyright a {
        color: #543803;
    }
}


/* 追従バナーリンク / .fixlink-list
-------------------------------------------------------- */
.fixlink-list {
    display: none;
}

/* PC */
@media only screen and (min-width: 980px) {
    .fixlink-list {
        display: block;
    }

    .fixlink-list-item {
        position: fixed;
        right: -168px;
        z-index: 999;
        -webkit-transition: all .3s ease-out;
             -o-transition: all .3s ease-out;
                transition: all .3s ease-out;
    }

    .fixlink-list-item:nth-child(1) {
        top: 240px;
    }

    .fixlink-list-item:nth-child(2) {
        top: 540px;
    }

    .fixlink-list-item:nth-child(1):hover,
    .fixlink-list-item:nth-child(2):hover {
        right: 0;
    }

    .fixlink-list-item img {
        width: 250px;
        height: auto;
    }
}


/* .pagetop-link
-------------------------------------------------------- */
.pagetop-link {
    margin: 0;
    width: 100%;
    height: 55px;
}

.pagetop-link a {
    display: block;
    margin: 0 auto;
    padding: 0;
    width: 100%;
    height: 55px;
    background: #f99408;
    color: #fff;
    text-align: center;
    text-decoration: none;
    font-weight: 700;
    line-height: 55px;
    -webkit-transition: all .5s ease;
         -o-transition: all .5s ease;
            transition: all .5s ease;
}

.pagetop-link a:hover {
    background: #c8161e;
    color: #fff;
    text-decoration: none;
}

.pagetop-link .ico {
    margin: 0 5px 0 0;
}


/* .pagetop-btn
-------------------------------------------------------- */
.pagetop-btn {
    display: none;
    margin: 0;
    padding: 0;
}

.pagetop-btn p {
    position: absolute;
    right: 14px;
    bottom: 60px;
    z-index: 1;
    margin: 0;
    padding: 0;
}

.pagetop-btn-move {
    display: block;
    width: 56px;
    height: 56px;
    border-radius: 0;
    /*background-color: rgba(0, 0, 0, .6);*/
    background-image: url(../../assets/img/common/bg_pagetop-btn.png);
    background-size: 56px 56px;
    /* color: #fff;
    text-align: center;
    text-decoration: none;
    line-height: 54px;
           opacity: 1.0;
    -ms-filter: "alpha(opacity=100)";
        filter: alpha(opacity=100);
    -webkit-transition: all .5s;
       -moz-transition: all .5s;
            transition: all .5s;

    -khtml-opacity: 1.0;
      -moz-opacity: 1.0;*/
}

a.pagetop-btn-move {
    text-decoration: none;
}

/*.pagetop-btn-move:hover {
    background-color: #f99408;
    text-decoration: none;
           opacity: 1.0;
    -ms-filter: "alpha(opacity=100)";
        filter: alpha(opacity=100);
    -webkit-transform: scale(1.1, 1.1);
       -moz-transform: scale(1.1, 1.1);
        -ms-transform: scale(1.1, 1.1);
         -o-transform: scale(1.1, 1.1);
            transform: scale(1.1, 1.1);

    -khtml-opacity: 1.0;
      -moz-opacity: 1.0;
}*/

.pagetop-btn-move .ico {
    color: #fff;
    font-size: 16px;
    line-height: 54px;
}

/* PC */
@media only screen and (min-width: 980px) {
    .pagetop-btn p {
        position: fixed;
        right: 50px;
        bottom: 50px;
        z-index: 100;
    }
    .pagetop-btn-move {
        width: 112px;
        height: 112px;
        background-size: 112px 112px;
    }
    .pagetop-btn-move {
               opacity: 1.0;
        -ms-filter: "alpha(opacity=100)";
            filter: alpha(opacity=100);

        -khtml-opacity: 1.0;
          -moz-opacity: 1.0;
    }
}

/*@media only screen and (min-width: 1400px) {
    .pagetop-btn p {
        right: 50%;
        margin-right: -690px;
    }
}*/


/* reCaptcha
-------------------------------------------------------- */
.grecaptcha-badge {
    /* left: 6px !important; */
    z-index: 200;
    /* width: 70px !important; */
}
/* .grecaptcha-badge:hover {
    left: 6px !important;
    width: 256px !important;
} */


/* GoogleMap / .ggmap
-------------------------------------------------------- */
.ggmap {
    position: relative;
    overflow: hidden;
    margin: 0 auto;
    /*padding-top: 30px;
    padding-bottom: 56.25%;*/
    height: 500px;
}
.ggmap iframe,
.ggmap object,
.ggmap embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/* SP */
@media only screen and (min-width: 0) and (max-width: 767px) {
    .ggmap {
        width: 100%;
    }
}


/* .youtube
-------------------------------------------------------- */
.youtube iframe {
    width: 560px;
    height: 315px;
}

/* SP */
@media only screen and (min-width: 0) and (max-width: 767px) {
    .youtube {
        position: relative;
        overflow: hidden;
        margin-bottom: 20px;
        padding-top: 30px;
        padding-bottom: 56.25%;/*アスペクト比 16:9の場合の縦幅*/
        width: 100%;
        height: 0;
    }
    .youtube iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }
}

/* PC */
@media only screen and (min-width: 980px) {
    .movie .youtube iframe {
        width: 800px;
        height: 450px;
    }
}


/* Facebook(PagePlugin) / .pageplugin
-------------------------------------------------------- */
.pageplugin {
    float: none;
    margin: 0 auto;
    max-width: 260px;
    width: auto;
}


/* opennav-hamburger
-------------------------------------------------------- */
/* .opennav-hamburger */
.opennav-hamburger {
    position: fixed;
    top: 3px;
    right: 0;
    z-index: 1001;
    display: block;
    padding: 0;
    width: 60px;
    height: 57px;
    outline: 0;
    border: 0;
    background-color: rgba(249, 148, 8, 1);
    text-align: center;
    -webkit-transition: all .6s cubic-bezier(.190, 1.000, .220, 1.000);
            transition: all .6s cubic-bezier(.190, 1.000, .220, 1.000);
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}

.opennav-hamburger:hover {
    background-color: rgba(249, 148, 8, 1);
    cursor: pointer;
}

.opennav-hamburger::after {
    position: absolute;
    bottom: calc(50% - 18px);
    left: 50%;
    display: block;
    width: 100%;
    color: #fff;
    content: "MENU";
    text-align: center;
    text-decoration: none;
    font-size: 10px;
    font-size: 1.0rem;
    font-family: sans-serif;
    line-height: 1.6;
    transition: all .4s;
    transform: translateX(-50%);
}

.opennav-hamburger.open::after {
    content: "CLOSE";
}

/* .opennav-hamburger-icon */
.opennav-hamburger-icon {
    position: relative;
    display: block;
    margin: auto;
}

.opennav-hamburger-icon,
.opennav-hamburger-icon::before,
.opennav-hamburger-icon::after {
    top: calc(50% - 9px);
    margin: auto;
    width: 22px;
    height: 2px;
    background-color: #fff;
    -webkit-transition: all .6s cubic-bezier(.190, 1.000, .220, 1.000);
            transition: all .6s cubic-bezier(.190, 1.000, .220, 1.000);
}

.opennav-hamburger-icon::before,
.opennav-hamburger-icon::after {
    position: absolute;
    top: -6px;
    left: 0;
    content: "";
}

.opennav-hamburger-icon::after {
    top: 6px;
}

.opennav-hamburger.open .opennav-hamburger-icon {
    background-color: transparent;
}

.opennav-hamburger.open .opennav-hamburger-icon::before,
.opennav-hamburger.open .opennav-hamburger-icon::after {
    top: 0;
}

.opennav-hamburger.open .opennav-hamburger-icon::before {
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
}

.opennav-hamburger.open .opennav-hamburger-icon::after {
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
}


/* jquery-drawer v3.2.2 sr-only */

/*!
 * Only display content to screen readers
 * See: http://a11yproject.com/posts/how-to-hide-content
 */

.sr-only {
    position: absolute;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    margin: -1px;
    padding: 0;
    width: 1px;
    height: 1px;
    border: 0;
}

/*!
 * Use in conjunction with .sr-only to only display content when it's focused.
 * Useful for "Skip to main content" links; see http://www.w3.org/TR/2013/NOTE-WCAG20-TECHS-20130905/G1
 * Credit: HTML5 Boilerplate
 */

.sr-only-focusable:active,
.sr-only-focusable:focus {
    position: static;
    overflow: visible;
    clip: auto;
    margin: 0;
    width: auto;
    height: auto;
}

/* .opennav-trigger */
.opennav-trigger {
    /* position: absolute; */
    position: fixed;
    top: 3px;
    right: 0;
    z-index: 1001;
    display: block;
    padding: 0;
    width: 60px;
    height: 57px;
    background-color: rgba(249, 148, 8, 1);
    text-align: center;
}

.opennav-trigger-btn {
    position: relative;
    display: block;
    height: 100%;
}

.opennav-trigger-btn::after {
    position: absolute;
    bottom: calc(50% - 18px);
    left: 50%;
    display: block;
    width: 100%;
    color: #fff;
    content: "MENU";
    text-align: center;
    text-decoration: none;
    font-size: 10px;
    font-size: 1.0rem;
    font-family: sans-serif;
    transition: all .4s;
    transform: translateX(-50%);
}

/*.opennav-trigger-btn:not(.open):hover:after {
    content: 'OPEN';
}*/

.opennav-trigger-btn.open::after {
    content: "CLOSE";
}

.opennav-trigger-btn span {
    position: absolute;
    right: 0;
    left: 0;
    z-index: 1;
    margin: auto;
    width: 22px;
    height: 2px;
    background: #fff;
    -webkit-transition: all .5s cubic-bezier(.645, .045, .355, 1);
            transition: all .5s cubic-bezier(.645, .045, .355, 1);
}

.opennav-trigger-btn span:nth-of-type(1) {
    top: calc(50% - 15px);
    -webkit-transition: all .4s;
            transition: all .4s;
}

.opennav-trigger-btn span:nth-of-type(2) {
    top: calc(50% - 9px);
    -webkit-transition: all .2s ease .2s;
            transition: all .2s ease .2s;
}

.opennav-trigger-btn span:nth-of-type(3) {
    top: calc(50% - 3px);
    -webkit-transition: all .4s;
            transition: all .4s;
}

.opennav-trigger-btn.open span:nth-of-type(1) {
    -webkit-transform: translateY(6px) rotate(135deg);
            transform: translateY(6px) rotate(135deg);
}

.opennav-trigger-btn.open span:nth-of-type(2) {
    opacity: 0;
}

.opennav-trigger-btn.open span:nth-of-type(3) {
    -webkit-transform: translateY(-6px) rotate(-135deg);
            transform: translateY(-6px) rotate(-135deg);
}


/* opennav-menu
-------------------------------------------------------- */
.opennav-menu {
    position: fixed;
    top: 60px;
    left: 0;
    z-index: 999;
    width: 100%;
    height: -webkit-calc(100% - 60px);
    height:         calc(100% - 60px);
    -webkit-transition: opacity ease .3s;
            transition: opacity ease .3s;
}

.opennav-menu::after {
    position: absolute;
    top: 0;
    right: auto;
    bottom: auto;
    left: 0;
    z-index: 90;
    display: block;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, .7);
    background: rgba(0, 0, 0, .2);
    background: rgba(0, 0, 0, .4);
    content: "";
}

.opennav-menu {
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
}

.opennav-menu.open {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
}

/* opennav-menu-inner */
.opennav-menu-inner {
    position: absolute;
    z-index: 100;
    overflow: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    padding: 0;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, 1);
    transition: all .6s;
}

/* .opennav-menu-inner-top */
.opennav-menu-inner.opennav-menu-inner-top {
    top: -100%;
    left: 0;
    max-height: 100%;
    height: auto;
}

.opennav-menu.open .opennav-menu-inner.opennav-menu-inner-top {
    top: 0;
}

/* .opennav-menu-inner-right */
.opennav-menu-inner.opennav-menu-inner-right {
    right: -120%;
}

.opennav-menu.open .opennav-menu-inner.opennav-menu-inner-right {
    right: 0;
}

/* .opennav-menu-inner-left */
.opennav-menu-inner.opennav-menu-inner-left {
    left: -120%;
}

.opennav-menu.open .opennav-menu-inner.opennav-menu-inner-left {
    left: 0;
}

/* opennav-menu-sitemap */
.opennav-menu-sitemap {
    padding: 0 0 0;
    background: rgba(255, 255, 255, 1);
}

.opennav-menu-sitemap-list {
    margin: 0 auto;
    padding: 0;
    width: 100%;
}

.opennav-menu-sitemap-list-item {
    display: block;
    width: 100%;
    border-top: 1px solid #e5e5e5;
    color: #333;
    font-size: 2.4rem;
    line-height: 1.75;
}

.opennav-menu-sitemap-list-item:last-child {
    border-bottom: 1px solid #e5e5e5;
}

.opennav-menu-sitemap-list-item ul li {
    background-color: rgba(249, 148, 8, .1);
}

.opennav-menu-sitemap-list-item ul li a {
    padding-left: 7%;
    color: #333;
}

.opennav-menu-sitemap-list-item ul li a::before {
    display: none;
}

.opennav-menu-sitemap-list-item ul li a::after {
    color: #333;
}

.opennav-menu-sitemap-list-item a,
.opennav-menu-sitemap-trigger {
    position: relative;
    display: block;
    padding: 12px 40px;
    color: #333;
    font-size: 1.6rem;
}

.opennav-menu-sitemap-trigger {
    cursor: pointer;
}

.opennav-menu-sitemap-list-item a::before {
    position: absolute;
    top: 50%;
    left: 14px;
    color: rgba(249, 148, 8, 1);
    content: "\e88a";
    font-family: webfont;
    transform: translateY(-50%);
}

/*.opennav-menu-sitemap-list-item a::after {
    content: '\e845';
    color: #fff;
    font-family: webfont;
    position: absolute;
    top: 50%;
    right: 14px;
    transform: translateY(-50%);
}*/

.opennav-menu-sitemap-trigger::before {
    position: absolute;
    top: 50%;
    left: 14px;
    color: rgba(249, 148, 8, 1);
    content: "\e88a";
    font-family: webfont;
    transform: translateY(-50%);
}

.opennav-menu-sitemap-trigger::after {
    position: absolute;
    top: 50%;
    right: 20px;
    display: block;
    margin-top: -6px;
    width: 8px;
    height: 8px;
    border-right: 4px solid rgba(249, 148, 8, 1);
    border-bottom: 4px solid rgba(249, 148, 8, 1);
    content: "";
    -webkit-transition: all .5s;
         -o-transition: all .5s;
            transition: all .5s;
    -webkit-transform: rotate(45deg);
       -moz-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
         -o-transform: rotate(45deg);
            transform: rotate(45deg);
}

.opennav-menu-sitemap-trigger.open::after {
    position: absolute;
    top: 50%;
    right: 20px;
    display: block;
    margin-top: -5px;
    width: 8px;
    height: 8px;
    border-right: 4px solid rgba(249, 148, 8, 1);
    border-bottom: 4px solid rgba(249, 148, 8, 1);
    content: "";
    -webkit-transition: all .5s;
         -o-transition: all .5s;
            transition: all .5s;
    -webkit-transform: rotate(225deg);
       -moz-transform: rotate(225deg);
        -ms-transform: rotate(225deg);
         -o-transform: rotate(225deg);
            transform: rotate(225deg);
}

.opennav-menu-sitemap-list-item ul.open li a::after {
    top: 25%;
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
}

.opennav-menu-sitemap-list-item ul {
    display: none;
}

/* opennav-menu-info */


/* opennav-menu-contact */
.opennav-menu-contact {
    padding: 15px 0 0;
    background: rgba(255, 255, 255, 1);
}

.opennav-menu-contact a {
    display: block;
    color: #333;
    text-align: center;
    text-decoration: none;
}

.opennav-menu-contact-time {
    display: block;
    color: #333;
    font-size: 12px;
    font-size: 1.2rem;
}

.opennav-menu-contact-tel {
    display: block;
    color: #333;
    text-decoration: none;
    font-weight: 700;
    font-size: 28px;
    font-size: 2.8rem;
    line-height: 1.4;
}

.opennav-menu-contact-tel .ico {
    margin-right: 5px;
    color: rgba(249, 148, 8, 1);
}

/* opennav-menu-bnr */
.opennav-menu-bnr {
    padding: 15px;
    /* background: #fff; */
    background: #fff url(../../assets/img/common/bg_opennav-menu-bnr.png);
}

.opennav-menu-bnr > div {
    z-index: 0 !important;
}

.opennav-menu-bnr-inner {
    position: relative;
    z-index: 0;
    margin: 0 auto;
    padding: 0;
    width: 100%;
}

.opennav-menu-bnr-inner ul {
    overflow: hidden;
    margin: 0 auto;
}

/* .opennav-menu-bnr-list {
    overflow: hidden;
    margin-bottom: 0;
} */

.opennav-menu-bnr-list-item {
    margin: 0 auto;
    margin-top: 10px;
    padding: 0;
    width: 100%;
    border: 4px solid #fff;
    /* border-radius: 8px; */
    background: #fff;
    -webkit-box-shadow: 0 0 12px rgba(0, 0, 0, .2);
            box-shadow: 0 0 12px rgba(0, 0, 0, .2);
}

.opennav-menu-bnr-list-item:nth-child(1) {
    margin-top: 0;
}

.opennav-menu-bnr-list li a {
    display: block;
    overflow: hidden;
    padding: 20px 4px;
    /* border-radius: 6px; */
    /*border: 1px solid #999;*/
    color: #8dad32;
    text-decoration: none;
    /* text-shadow: 0 0 1px rgba(255,255,255,1),
    0 0 5px rgba(255,255,255,1),
    0 0 8px rgba(255,255,255,1),
    0 0 10px rgba(255,255,255,1),
    0 0 30px rgba(255,255,255,1); */
    letter-spacing: -.02em;
    transition: all .3s ease;

    -webkit-font-feature-settings: "palt" 1;
       -moz-font-feature-settings: "palt" 1;
        -ms-font-feature-settings: "palt" 1;
            font-feature-settings: "palt" 1;
}

.opennav-menu-bnr-list li a {
    position: relative;
    background-image: url(../../assets/img/common/bg_opennav-menu-bnr-list-item_00.png);
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
}

.opennav-menu-bnr-list li:nth-child(1) a {
    background-image: url(../../assets/img/common/bg_opennav-menu-bnr-list-item_01.png);
}

.opennav-menu-bnr-list li:nth-child(2) a {
    background-image: url(../../assets/img/common/bg_opennav-menu-bnr-list-item_02.png);
}

.opennav-menu-bnr-list li:nth-child(3) a {
    background-image: url(../../assets/img/common/bg_opennav-menu-bnr-list-item_03.png);
}

.opennav-menu-bnr-list li a::before {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    display: block;
    width: 100%;
    height: 100%;
    background: url(../../assets/img/common/bg_overlay_20.png) repeat 0 0;
    content: "";
}

.opennav-menu-bnr-list li a .ja {
    position: relative;
    z-index: 2;
    display: block;
    margin-bottom: 2px;
    color: #fff;
    text-align: center;
    letter-spacing: .1em;
    font-weight: 600;
    font-size: 22px;
    font-size: 2.2rem;
    font-family: "Noto Sans JP",sans-serif;
    line-height: 1.3;
}

.opennav-menu-bnr-list li a .en {
    position: relative;
    z-index: 2;
    display: block;
    color: #fff;
    text-align: center;
    letter-spacing: .1em;
    font-weight: 600;
    font-size: 12px;
    font-size: 1.2rem;
    font-family: "Noto Sans JP",sans-serif;
    line-height: 1.3;
}

/* .opennav-menu-bnr-list li a::after {
    position: absolute;
    top: 50%;
    left: 15px;
    display: inline-block;
    margin-top: 0;
    color: #fff;
    content: "\e848";
    text-align: center;
    font-weight: 700;
    font-size: 14px;
    font-size: 1.4rem;
    font-family: "webfont";
    -webkit-transform: translate(0, -50%);
            transform: translate(0, -50%);
} */

.opennav-menu-bnr-list li a:hover {
    opacity: .5;
}

/* opennav-menu-link */
.opennav-menu-link {
    padding: 10px 2px 20px;
    background: rgba(255, 255, 255, 1);
}

.opennav-menu-link li {
    float: left;
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
            box-sizing: border-box;
    margin-right: 0;
    padding: 0;
    width: 50%;
}

.opennav-menu-link li:nth-child(2n) {
    margin-right: 0;
}

.opennav-menu-link li a {
    position: relative;
    display: block;
    padding: 8px 0 8px 26px;
    color: #333;
    text-decoration: none;
    font-size: 14px;
    font-size: 1.4rem;
}

.opennav-menu-link li a::before {
    position: absolute;
    top: 50%;
    left: 14px;
    color: rgba(249, 148, 8, 1);
    content: "\e848";
    font-family: webfont;
    transform: translateY(-50%);
}

/* Tablet */
@media only screen and (min-width: 768px) and (max-width: 979px) {
    .opennav-menu-inner.opennav-menu-inner-right,
    .opennav-menu-inner.opennav-menu-inner-left {
        min-width: 640px;
        max-width: none;
        width: 50%;
    }
}

/* PC */
@media only screen and (min-width: 980px) {
    .opennav-menu-inner.opennav-menu-inner-right,
    .opennav-menu-inner.opennav-menu-inner-left {
        min-width: 640px;
        max-width: none;
        width: 50%;
    }
}


/* jquery-drawer.ini.css
-------------------------------------------------------- */
/* Base */
.drawer-nav {
    position: fixed;
    top: 60px;
    z-index: 999;
    width: 80%;
    height: 95%;
    height: -webkit-calc(100% - 60px);
    height:         calc(100% - 60px);
    background-color: rgba(255, 255, 255, 1);
    color: #333;
}

/* overlay */
.drawer-overlay {
    z-index: 2;
    background-color: rgba(0, 0, 0, .2);
}

/* Right */
.drawer--right .drawer-nav {
    right: -80%;
}

.drawer--right.drawer-open .drawer-nav,
.drawer--right .drawer-hamburger,
.drawer--right.drawer-open .drawer-navbar .drawer-hamburger {
    right: 0;
}

.drawer--right.drawer-open .drawer-hamburger {
    right: 0;
}

/* Hamburger */
.drawer-hamburger {
    position: fixed;
    top: 3px;
    z-index: 1001;
    padding: 0;
    width: 60px;
    height: 57px;
    background-color: #f99408;
    text-align: center;
}

.drawer-hamburger:hover {
    background-color: #f99408;
    cursor: pointer;
}

.drawer-hamburger:after {
    position: absolute;
    bottom: calc(50% - 18px);
    left: 50%;
    display: block;
    width: 100%;
    color: #fff;
    content: "MENU";
    text-align: center;
    text-decoration: none;
    font-size: 10px;
    font-size: 1.0rem;
    font-family: sans-serif;
    transition: all .4s;
    transform: translateX(-50%);
}

.drawer-open .drawer-hamburger:after {
    content: "CLOSE";
}

.drawer-hamburger-icon {
    margin: auto;
}

.drawer-hamburger-icon,
.drawer-hamburger-icon:before,
.drawer-hamburger-icon:after {
    top: calc(50% - 9px);
    margin: auto;
    width: 22px;
    background-color: #fff;
}

.drawer-hamburger-icon:before,
.drawer-hamburger-icon:after {
    top: -6px;
}

.drawer-hamburger-icon:after {
    top: 6px;
}

/* drawer-menu */
.drawer-menu-item {
    position: relative;
    display: table;
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
            box-sizing: border-box;
    padding: 13px 14px 13px;
    width: 100%;
    border-bottom: 1px solid #c8c8c8;
    color: #333;
    text-decoration: none;
    font-weight: 700;
    font-size: 107.69231%;
    line-height: 100%;
}

.drawer-menu-item:visited,
.drawer-menu-item:hover {
    color: #333;
    text-decoration: none;
}

.drawer-menu-item:after {
    position: absolute;
    top: 50%;
    right: 15px;
    display: block;
    margin-top: -4px;
    width: 8px;
    height: 8px;
    border-right: 2px solid #283764;
    border-bottom: 2px solid #283764;
    content: "";
    -webkit-transform: rotate(-45deg);
       -moz-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
         -o-transform: rotate(-45deg);
            transform: rotate(-45deg);
}

.drawer-menu-item-jp {
    display: table-cell;
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
            box-sizing: border-box;
    vertical-align: middle;
}

.drawer-menu-item-en {
    color: #7f7f7f;
    font-weight: normal;
    font-size: 69.23077%;
    line-height: 100%;
}

/* drawer-info */
.drawer-info {
    margin: 30px 0 30px;
    padding: 0 0 80px;
    width: 100%;
    color: #333;
    text-align: center;
    font-size: 10px;
    font-size: 1.0rem;
}

.drawer-info-logo {
    margin: 0 auto 10px;
}

.drawer-info-logo img {
    width: 230px;
}

.drawer-info-address a:hover {
    text-decoration: none;
}

.drawer-info-address-telfax {
    letter-spacing: 0;
    font-size: 25px;
    font-size: 2.5rem;
    line-height: 1;
}

.drawer-info-address-telfax-ttl {
    letter-spacing: normal;
    font-size: 68%;
}

.drawer-info-address-telfax-coron {
    margin: 0 3px 0 3px;
}

/* Tablet */
@media only screen and (min-width: 768px) and (max-width: 979px) {
    .drawer-info-address-telfax:first-child {
        padding-right: 20px;
    }
}

/* drawer-sns */
.drawer-sns {
    padding: 10px;
    width: 100%;
}

.drawer-sns-list {
    display: table;
    width: 100%;
    height: 70px;
}

.drawer-sns-list li {
    display: table-cell;
    width: 25%;
    table-layout: fixed;
    vertical-align: middle;
    text-align: center;
}

.drawer-sns-list li a {
    display: block;
    padding-top: 7px;
    width: 100%;
    height: 40px;
    text-decoration: none;
    font-size: 20px;
    font-size: 2.0rem;
}

.drawer-sns-list-facebook a:hover {
    color: #305097;
}

.drawer-sns-list-twitter a:hover {
    color: #00aced;
}

.drawer-sns-list-instagram a:hover {
    color: #3f729b;
}

.drawer-sns-list-line a:hover {
    color: #5ae628;
}


/* .scroll-point（ページ内リンクレスポンシブ対応）
-------------------------------------------------------- */
a.scroll-point {
    display: block;
    margin-top: -60px;
    padding-top: 60px;
    height: 1px;
}

/* PC */
@media only screen and (min-width: 980px) {
    a.scroll-point {
        display: block;
        margin-top: -62px;
        padding-top: 62px;
    }
}
