@charset "UTF-8";


body.low {

    overflow-x: hidden;
}


@media screen and (max-width: 767px) {
    body {

    }
}

@media screen and (max-width: 768px) {
    .hidden-pc {
        display: none;
    }
}

@media screen and (min-width: 769px) {
    .hidden-sp {
        display: none;
    }
}

@media screen and (min-width: 769px) {
    .br-sp {
        display: none;
    }
}


.box100 {
    width: 100%;
}

.width40 {
    width: 40%;
}

.topContainer {

    width: 1180px;
    margin: auto;
    padding-top: 30px;
}

.topContainer2 {
    width: 1280px;
    margin: auto;
    padding-top: 20px;
    padding-bottom: 5px;
}

@media screen and (max-width: 1280px) {
    .topContainer2 {
        width: calc(100% - 40px);
    }
}

.boxRow {
    display: flex;
    width: 100%;
    justify-content: space-between;
    flex-wrap: wrap;
}

.flexAC {
    align-items: center;
}

.box-2-Cell {
    width: 48%;
}

.box-3-Cell {
    width: calc(94% / 3);
}

.box-3-Cell-2 {
    width: calc((94% / 3) * 2);
}

.box-4-Cell {
    width: 23%;
}

.box-news-Cell {
    width: 70%;
}

.box-news-Cell2 {
    width: 30%;
}


.topImage {
    width: 100%;
    text-align: center;
    min-width: 1400px;
    margin-bottom: 50px;
    position: relative;
}

.topImage {
    width: 100%;
    text-align: center;
    min-width: 1400px;
    height: 100vh;
    margin-bottom: 50px;
    position: relative;
    overflow: hidden;
}

.topImage img {
    width: 100%;
    height: 100%;;
    display: inline-block;
    max-width: 1920px;
}

.Opening span {
    height: 100%;
}

.Opening .visible-sm {
    display: block !important;
}

.Opening .visible-xs {
    display: none !important;
}

@media screen and (max-width: 1400px) {
    .topContainer {
        width: 1200px;
    }

    .topImage {
        min-width: 1200px;
    }


    .radioBox {
        width: 100% !important;
    }
}

@media screen and (max-width: 1199px) {
    .topContainer {
        width: 970px;
    }

    .topImage {
        min-width: 970px;
    }
}

@media screen and (max-width: 991px) {
    .topContainer {
        width: 750px;
    }

    .topImage {
        min-width: 750px;
    }
}

@media screen and (max-width: 767px) {
    .width40 {
        width: 80%;
    }

    .Opening .visible-sm {
        display: none !important;
    }

    .Opening .visible-xs {
        display: block !important;
    }

    .box-2-Cell {
        width: 100%;

    }

    .box-3-Cell {
        width: 100%;

    }

    .box-3-Cell-2 {
        width: 100%;
        margin-bottom: 0;
    }

    .box-4-Cell {
        width: 100%;
        margin-bottom: 30px;
    }

    .topContainer {
        width: 94%;
        padding: 20px 0;
    }

    .topImage {
        min-width: 100%;
    }

    .spMarB0 {
        margin-bottom: 0;
    }

    footer {
        margin-top: 0;
    }

    .marTB80 {
        margin: 20px 0 !important;
    }

    .marT250 {
        margin-top: 188px !important;
    }

    .marT350 {
        margin-top: 250px !important;
    }

    .marT400 {
        margin-top: 310px !important;
    }

    .an_Title {
        font-size: 20px !important;
    }

    .serviceBoxTit {
        font-size: 28px;
    }

    .cm-Flex {
        display: block !important;
    }

    .Tit_ttl {
        font-size: 24px !important;
        padding-top: 20px;
    }

    .caption {
        margin: 0 !important;
        padding: 20px 0 0 !important;
    }

    .caption > h3 {
        font-size: 24px !important;
        line-height: 44px !important;
    }

    .caption > span {
        font-size: 16px !important;
    }

    .caption > .caption > p {
        font-size: 16px !important;
    }

    .vert {
        font-size: 22px !important;
        position: relative !important;
        bottom: 0 !important;
    }

    .grretingImg {
        margin-top: 100px;
    }

    .grretingImg.list-mv07 {
        margin-top: 20px !important;
    }
}


.marTB80 {
    margin: 80px 0;
}

.marTB120 {
    margin: 120px 0;
}

.marT30 {
    margin-top: 30px;
}

.marT250 {
    margin-top: 250px;
}

.marT350 {
    margin-top: 350px;
}

.marT400 {
    margin-top: 400px;
}

.marT450 {
    margin-top: 450px;
}

.marT50 {
    margin-top: 50px;
}


.marB50 {
    margin-bottom: 50px;
}


.btn01 {
    background: #ff981f;
    display: inline-block;
    position: relative;
    height: 50px;
    line-height: 50px;
    border-radius: 25px;
    width: 156px;
    transition: 0.2s;
}

.btn01:hover {
    opacity: 0.7;
}

.btn01 a {
    color: #fff !important;
    font-size: 16px;
    font-weight: bold;
    padding: 0 30px !important;
    letter-spacing: 0;
}

.btn01 a:hover {
    text-decoration: none;
}

.btn01:after {
    content: "\f0a9";
    font-family: FontAwesome;
    position: absolute;
    right: 10px;
    top: 0;
    color: #fff;
}

.btn02 {
    background: #ff981f;
    display: inline-block;
    position: relative;
    height: 26px;
    line-height: 26px;
    border-radius: 13px;
    width: 156px;
    transition: 0.2s;
}

.btn02:hover {
    opacity: 0.7;
}

.btn02 a {
    color: #fff !important;
    font-size: 16px;
    font-weight: bold;
    padding: 0 30px !important;
    letter-spacing: 0;
}

.btn02 a:hover {
    text-decoration: none;
}

.btn02:after {
    content: "\f0a9";
    font-family: FontAwesome;
    position: absolute;
    right: 10px;
    top: 0;
    color: #fff;
}

.btn03 {
    background: #15599c;
    display: inline-block;
    position: relative;
    height: 50px;
    line-height: 50px;
    border-radius: 3px;
    width: 320px;
    margin: 10px;
    transition: 0.2s;
    text-align: center;
}

.btn03:hover {
    opacity: 0.7;
}

.btn03 a {
    color: #fff !important;
    font-size: 16px;

    font-weight: bold;

    letter-spacing: 0;
}

.btn03 a:hover {
    text-decoration: none;
}

.btn03.prev:after {
    content: unset;
}

.btn03.prev:before {
    content: "\f0a8";
    font-family: FontAwesome;
    position: absolute;
    left: 10px;
    top: 0;
    color: #fff;
}


.btn04 {
    background: #000;
    display: inline-block;
    position: relative;
    height: 50px;
    line-height: 50px;
    border-radius: 3px;
    width: 400px;
    margin: 10px;
    transition: 0.2s;
    text-align: center;
}

.btn04:hover {
    opacity: 0.7;
}

.btn04 a {
    color: #fff !important;
    font-size: 16px;

    font-weight: bold;

    letter-spacing: 0;
}

.btn04 a:hover {
    text-decoration: none;
}

.btn04.prev:after {
    content: unset;
}

.btn04.prev:before {
    content: "\f0a8";
    font-family: FontAwesome;
    position: absolute;
    left: 10px;
    top: 0;
    color: #fff;
}


.headerContact {
    width: auto;
    width: auto !important;
    padding: 0 20px;
    display: flex;
    align-items: center;
}


.titleCatch {
    text-align: center;
    font-size: 22px;
    color: #0068b7;
    letter-spacing: 0;
    margin-bottom: 10px;
}

.title01 {
    font-size: 36px;
    color: #333333;
    font-weight: bold;
    text-align: center;
    letter-spacing: 0;
}

.hissu {
    color: #f00;
    font-weight: bold;
    font-size: 14px;

    box-sizing: border-box;
    border-radius: 4px;
    width: 52px;
    text-align: center;
    display: inline;

    line-height: 22px;
}

.radioBox {
    display: block;
    width: 40%;
    float: left;
}

.radioBox label {
    width: 100%;
}

.checkbox01-parts {
    padding-left: 28px;
    position: relative;
    margin-right: 20px;
    font-size: 14px;
    font-weight: 500 !important;
}

.newsTxt {
    font-size: 16px;
    line-height: 1.6;
    word-break: break-all;
    margin-top: 30px;
}

.navy_midashi {
    color: var(--color-main);
    font-size: 36px;
    font-weight: 500;
    display: flex;
    align-items: center;
    line-height: 1.3;
    border-left: 5px solid var(--color-main);
    padding: 0px 0 5px 5px;
}

@media screen and (max-width: 767px) {

    .navy_midashi {
        font-size: 26px;

    }

}

.midashi_under {
    padding-bottom: 20px;
    border-bottom: 1px solid var(--color-main);
}


.bgColor01 {
    background: #cde8fc;
}

.bgColor02 {
    background-image: url(../img/top_bg1.png), url(../img/top_bg2.png);
    background-position: 40px top, 1530px top;
    background-repeat: no-repeat, no-repeat;
    min-width: 1200px;
}

.topNewsTit {
    text-align: center;
    position: relative;
}

.topNewsTit img {
    display: inline-block;
    vertical-align: text-top;
}

.Tit2 {
    -ms-flex-align: center;
    align-items: center;
}

.Tit_ttl {

    font-size: 20px;
    line-height: 1.31429;
    letter-spacing: .14em;
    font-weight: 900;
    text-align: left;
    padding-bottom: 15px;
}

.Tit_ttl_en {
    font-size: 14px;
    vertical-align: middle;
    margin-left: .7em;
    color: #666666;
    letter-spacing: 1px;
}

.topNewsTitTxt {
    font-size: 22px;
    color: #333333;
    font-weight: bold;
    display: block;
}

.topNewsBtnBox {
    position: absolute;
    top: 0;
    right: 0;
}

.topNewsBox_top {
    border-top: 1px dotted #e5e5e5;
}

.topNewsBox {
    border-bottom: 1px dotted #e5e5e5;
    text-align: left;
}

.topNewsRow {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    padding: 10px 0;
}

.topNewsItem {
    font-size: 15px;
    color: #2d2d2d;
    position: relative;
    margin-top: 10px;
}

.NewsItem {
    padding-top: 10px;
    font-size: 30px;
    color: #2d2d2d;
    position: relative;


    margin-top: 10px;
}

.topNewsTag {
    background: #000;
    color: #fff;
    padding: 4px 20px;
    display: inline-block;
    vertical-align: baseline;
    top: -1px;
    position: relative;
    margin-left: 5px;
    font-size: 14px;
}

.topNewsItem .topNewsTag {
    background: #15599c;
    color: #fff;
    padding: 2px 10px;
    display: inline-block;
    vertical-align: baseline;
    top: -1px;
    position: relative;
    margin-left: 5px;
    font-size: 12px;
}


.topNewsItem .topNewsTag2 {
    background: #3c3c3c;
    color: #fff;
    padding: 2px 10px;
    display: inline-block;
    vertical-align: baseline;
    top: -1px;
    position: relative;
    margin-left: 5px;
    font-size: 12px;
}


.topNewsImg {
    width: 300px;
    padding-right: 20px;
}

.topNewsTxtBox {
    width: calc(100% - 300px);
}

.topNewsTxt {
    font-size: 16px;
    color: #4b4b4b;

}

.topNewsTxt a {
    font-size: 18px;
    color: #262626;

}

.NewsTxt {
    font-size: 32px;
    color: #4b4b4b;
    font-weight: bold;
}

@media screen and (max-width: 767px) {
    .topNewsTxtBox {
        width: calc(100% - 119px);
        width: 100%;

    }

    .topNewsTxt {
        font-size: 16px;
        color: #4b4b4b;

    }

    .topNewsTxt a {
        font-size: 18px;
        color: #262626;

    }

    .NewsTxt {
        font-size: 26px;
        color: #4b4b4b;
        font-weight: bold;
        text-align: center;
    }

    .NewsItem {
        padding-top: 10px;
        font-size: 26px;
        color: #2d2d2d;
        position: relative;
        margin-top: 10px;
    }
}


.topCell1 a {
    display: block;
    height: 100%;
    transition: 0.2s;
}

.topCell1 a:hover {
    opacity: 0.7;
    display: block;
}

.topCellImgBox {
    background-size: cover;
    transition: -webkit-transform 700ms;
    transition: transform 700ms;
    transition: transform 700ms, -webkit-transform 700ms;
    margin-bottom: 15px;
    height: 240px;
}

.tp-item {
    background: url(../img/tp_topic01.jpg) center center no-repeat;
}

.tp-an {
    background: url(../img/tp_topic02.jpg) center center no-repeat;
    transition: 1s;
    background-size: auto 100%;
}

.tp-an:hover {
    background-size: auto 110%;
}

.per_01 {
    padding-top: 20px;
    font-size: 18px;
    border-bottom: solid;
    border-color: #000;
    border-width: 5px;

    display: inline-block;
}

@media screen and (max-width: 1199px) {

    .per_01 {
    }


}

.per_02 {
    padding-top: 10px;
    font-size: 18px;
}


a .tp-kansa {
    transition: all 0.5s ease;


    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
}

a:hover .tp-kansa {
    opacity: 0.7;

    filter: alpha(opacity=70);


}


.tp-genzairyo {
    background: url(../img/tp-genzairyo.jpg) center center no-repeat;
}

.tp-campany {
    background: url(../img/tp-campany.jpg) center center no-repeat;
}

.tp-order {
    background: url(../img/tp-order.jpg) center center no-repeat;
}

.tp-seizou {
    background: url(../img/tp_topic03.jpg) center center no-repeat;
}

.tp-biseibutu {
    background: url(../img/tp-biseibutu.jpg) center center no-repeat;
}

.tp-5s {
    background: url(../img/tp-5s.jpg) center center no-repeat;
}

.topCellImgBox2 {
    text-align: center;
}

.topCellImgBox2 img {
    display: inline-block;
    max-width: 100%;
}

.topCellImgBox img {
    width: 100%;
}

.topTellTit {
    width: 100%;
    font-size: 24px;
    font-weight: bold;
    text-align: center;
    height: 54px;
    line-height: 54px;
    letter-spacing: -0.1em;
}

.topCellClr1 {
    color: #46b0e6;
}

.topCellClr2 {
    color: #8dba00;
}

.topCellClr3 {
    color: #ff8626;
}

.topCellClr4 {
    color: #0068b7;
}

.topCellTxt {
    font-size: 16px;
    line-height: 1.4;
    color: #333333;
    text-align: center;
    letter-spacing: -0.1em;
}

.topCell1 a:hover {
    text-decoration: none;
}


@media screen and (max-width: 1199px) {
    .bgColor02 {
        min-width: 970px;
    }

    .topTellTit {
        font-size: 18px;
    }
}

@media screen and (max-width: 991px) {
    .bgColor02 {
        min-width: 750px;
    }

    .topNewsBox {
        margin: 30px 50px 0;
    }
}

@media screen and (max-width: 767px) {
    .tp-Tit_center {
        width: 100%;
    }

    .bgColor02 {
        min-width: 100%;
    }

    .topNewsBox {
        margin: 30px 5px 0;
    }

    .topTellTit {
        font-size: 20px;
    }

    .topCol .box-2-Cell {
        width: 49%;
    }

    .topCol .topCellImgBox {
        height: 120px;
    }

    .topCol .tp-Tit_center {
        font-size: 16px;
        width: 90%;
    }

    .topCellImgBox {
        height: 120px;
    }

    .Tit.sp-flex {
        width: 100%;
    }

    .Tit.sp-flex .Tit_ttl {
        display: flex;
        justify-content: center;
        align-content: center;
        flex-direction: column;
        text-align: center;
    }

    .Tit.sp-flex .Tit_ttl span {
        margin: 0
    }
}

@media screen and (max-width: 480px) {
    .topNewsTag {
        font-size: 11px;
    }
}


.pankuzuBox {
    width: 100%;
    margin: 15px 0;
}

.pankuzu {
    display: inline-block;
    font-size: 14px;
    color: #fff;
}

.pankuzu a {
    font-size: 14px;
    color: #fff;


}

.pankuzu a:after {
    content: ">";
    padding: 0 10px;
}

.pageTitleBox {
    padding-top: 70px;
    padding-bottom: 30px;
}

.pageTitE {
    font-size: 22px;
    color: #2b2b2b;
    margin-bottom: 20px;
    letter-spacing: 0.1em;
    text-align: center;
}

.pageTit {
    font-size: 36px;
    color: #2b2b2b;
    font-weight: bold;
    text-align: center;
}

.lowBox {
    margin-top: 80px;
}

.lowBoxTit {
    font-size: 36px;
    color: #1a1a1a;
    font-weight: bold;
    text-align: center;
    margin-bottom: 30px;
    background: url(../img/bk-stamp.png) no-repeat center;
    height: 65px;

}

.lowBoxDisc {
    font-size: 16px;
    color: #333333;
    text-align: center;
    line-height: 1.8;
    margin-bottom: 50px;
}


@media screen and (max-width: 767px) {

    .lowBoxDisc {
        font-size: 14px;
        color: #333333;
        text-align: center;
        line-height: 1.8;
        margin-bottom: 30px;
        margin-top: 30px;
    }

}

.serviceCell {
    border: 1px solid #dddddd;
    padding: 20px 14px 30px;
}

.serviceCellTit {
    font-size: 18px;
    color: #0068b7;
    font-weight: bold;
    line-height: 1.6;
    text-align: center;
    margin-bottom: 15px;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.serviceCellImgBox {
    margin-bottom: 15px;
}

.serviceCellImgBox img {
    width: 100%;
}

.serviceCellTxt {
    font-size: 16px;
    color: #333333;
    line-height: 1.4;
}

.serviceStageTit {
    font-size: 36px;
    color: #333333;
    font-weight: bold;
    text-align: center;
    border-bottom: 3px solid #e5e5e5;
    padding-bottom: 20px;
    margin-bottom: 60px;
    position: relative;
    margin-top: 50px;
}

.serviceStageTit:after {
    content: "";
    background: #0068b7;
    position: absolute;
    height: 3px;
    width: 150px;
    bottom: -3px;
    left: 0;
    right: 0;
    margin: auto;
}

.serviceStageTit2 {
    font-size: 20px;
    color: #1a1a1a;
    font-weight: bold;
    margin-bottom: 30px;
    text-align: left;

}

.serviceTbBox {
    width: 100%;
}

.serviceTb {
    width: 100%;
    border: 1px solid #dddddd;
}

.serviceTbRow {
    display: flex;
    border-top: 1px solid #dddddd;
    flex-wrap: wrap;
}

.serviceTbRow:nth-of-type(1) {
    border-top: none;
}

.serviceTbItem {
    background: #0068b7;
    color: #fff;
    font-size: 16px;
    text-align: center;
    width: calc(100% / 3);
    padding: 20px 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.serviceTbTxt {
    font-size: 16px;
    color: #333333;
    padding: 10px 12px;
    width: calc((100% / 3) * 2);
    display: flex;
    align-items: center;
}

.lowBoxCatch {
    font-size: 20px;
    color: #333333;
    font-weight: normal;
    text-align: center;
    line-height: 1.2;
    margin-bottom: 30px;
}

.tbTxtIn {
    font-size: 14px;
    color: #333333;
    width: calc((100% / 3) * 2);
    display: flex;
    align-items: center;
}

.tbTxtInTxt {
    font-size: 16px;
    color: #333333;
    padding: 10px 20px;
    width: calc(100% - 120px);
}

.tbTxtInImg {
    text-align: center;
    border-right: 1px solid #dddddd;
    display: flex;
    align-items: center;
    width: 120px;
    justify-content: center;
    padding: 5px 0;
    height: 100%;
}

.tbTxtInImg img {
    display: inline-block;
}

.serviceTit {
    font-size: 32px;
    color: #333333;
    font-weight: bold;
    position: relative;
    display: flex;
    align-items: center;
    margin-bottom: 50px;
}

.serviceTit:before {
    content: "";
    background: #0068b7;
    width: 6px;
    height: 60px;
    border-radius: 3px;
    display: inline-block;
    margin-right: 30px;
}

.serviceBoxTit {
    font-size: 26px;
    color: #2a2a2a;
    font-weight: bold;
    margin-bottom: 30px;
"ヒラギノ角ゴ Pro W3",
"Hiragino Kaku Gothic Pro",
"メイリオ",
"Meiryo",
"游ゴシック体",
"YuGothic",
"游ゴシック",
"Yu Gothic",
sans-serif;
    line-height: 40px;
}

@media screen and (max-width: 767px) {
    .serviceBoxTit {
        font-size: 30px;
        color: #2a2a2a;
        font-weight: bold;
        margin-bottom: 30px;
    "ヒラギノ角ゴ Pro W3",
    "Hiragino Kaku Gothic Pro",
    "メイリオ",
    "Meiryo",
    "游ゴシック体",
    "YuGothic",
    "游ゴシック",
    "Yu Gothic",
    sans-serif;
        line-height: 40px;
    }
}

.serviceBoxTit2 {
    font-size: 30px;
    color: #2a2a2a;
    font-weight: bold;
    margin-bottom: 10px;
"ヒラギノ角ゴ Pro W3",
"Hiragino Kaku Gothic Pro",
"メイリオ",
"Meiryo",
"游ゴシック体",
"YuGothic",
"游ゴシック",
"Yu Gothic",
sans-serif;
    line-height: 40px;
    margin-top: 10px;
}

.serviceBoxImg {
    background: #ccc;
    height: 100%;
}

.serviceBoxImg img {
    width: 100%;

}

.serviceBoxTxt {
    font-size: 16px;
    color: #2a2a2a;
    line-height: 1.6;
}

.serviceCaseList {
    font-size: 16px;

    color: #333333;
    padding: 20px;
    border-bottom: 1px dashed #e5e5e5;
}

.serviceCaseList:nth-of-type(1) {
    border-top: 1px dashed #e5e5e5;
}

.serviceCaseList i {
    margin-right: 5px;
    color: #0068b7;
}

.serviceBoxCellImg img {
    width: 100%;
}

.serviceBoxCellTit {
    font-size: 24px;
    color: #46b0e6;
    font-weight: bold;
    height: 80px;
    display: flex;
    align-items: center;
    text-align: center;
    justify-content: center;
    margin-top: 5px;
}

.serviceBoxCellTxt {
    font-size: 16px;
    color: #333333;
}


@media screen and (max-width: 767px) {
    .flexCL {
        flex-flow: column-reverse !important;
    }

    .pageTitE {
        font-size: 16px;
    }

    .pageTit {
        font-size: 20px;
    }

    .pageTitleBox {
        padding: 50px 0 0;
    }

    .pageTitBg {
        background-size: 40%;
    }

    .lowBoxTit {
        font-size: 28px;
    }

    .lowBoxCatch {
        font-size: 20px;
    }

    .spOrder1 {
        order: 1;
    }

    .spOrder2 {
        order: 2;
    }

    .serviceStageTit {
        text-align: left;
        font-size: 32px;
    }
}

@media screen and (max-width: 480px) {
    .serviceTbItem {
        width: 100%;
        padding: 10px 0;
    }

    .serviceTbTxt {
        width: 100%;
    }

    .tbTxtIn {
        width: 100%;
    }

    .pageTitBgSerCar,
    .pageTitBgSup,
    .pageTitBgSup1,
    .pageTitBgSup2 {

        background-repeat: no-repeat;
        background-position: bottom center;
        background-size: cover;
    }

    .pageTitBgSup {

        background-repeat: no-repeat;
        background-position: bottom center;
        background-size: cover;
    }
}


.form15 {
    width: 15%;
}

.form20 {
    width: 20%;
}

.form50 {
    width: 50%;
}

.form100 {
    width: 100%;
}

.contactBox {
    width: 100%;
    margin: auto;
}

.contactForm {
    border: 1px solid #ccc;
    padding: 5px 10px;
    font-size: 14px;
    color: #000;
    border-radius: 2px;
}

.contactRow {
    display: flex;


}

.contactItem {
    font-size: 14px;
    font-weight: normal;
    color: #000;
    width: 240px;
    padding: 10px 0;
    text-align: left;
}

.contactTxt {

    padding: 10px 0 15px 10px;
    font-size: 16px;
    width: calc(100% - 240px);
    display: flex;
    align-items: center;
}

.contactTxt span :not(.iti__dial-code) {
    width: 5%;
    text-align: center;
    font-size: 14px;
    font-weight: bold;
}

.pp {
    height: 250px;
    overflow-y: auto;
    padding: 10px 20px;
}

.formCheckBox {
    margin: 20px 0;
    width: 100%;
    text-align: center;
}

.formBtnBox {
    width: 100%;
    text-align: center;
    margin: 20px 0;
}


.checkbox01-input {
    display: none;
}

.checkbox01-parts {
    padding-left: 30px;
    position: relative;
    margin-right: 20px;
    font-size: 15px;
    font-weight: bold;
}

.checkbox01-parts::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 22px;
    height: 22px;
    border: 1px solid #9d9d9d;
    border-radius: 2px;
}

.checkbox01-input:checked ~ .checkbox01-parts {
    color: #000;
    font-weight: bold;
}

.checkbox01-input:checked ~ .checkbox01-parts::after {
    content: "";
    display: block;
    position: absolute;
    top: 4px;
    left: 8px;
    width: 6px;
    height: 13px;
    transform: rotate(40deg);
    border-bottom: 2px solid #000;
    border-right: 2px solid #000;
}

.contactRow select {
    border: 1px solid #ccc;
    padding: 5px 10px;
    font-size: 14px;
    color: #000;
    border-radius: 2px;
}

@media screen and (max-width: 1199px) {
    .contactBox {
        width: 100%;
    }

    .contactForm {
        width: 95%;
    }

    .form50 {
        width: 95%;
    }

    .contactRow {
        flex-wrap: wrap;
    }
}

@media screen and (max-width: 991px) {
}

@media screen and (max-width: 767px) {
    .contactItem {
        width: 100%;
        text-align: left;
        padding: 20px 0 5px;
    }

    .contactTxt {
        width: 100%;
        padding: 0 0 15px 0;
    }

    .form50 {
        width: 95%;
    }
}


.newsPaginationBox {
    width: 100%;
    margin: 10px 0;
    z-index: 100;

    position: relative;
}

.newsPagination {
    display: flex;
    justify-content: flex-end;
}

.pageLink {
    font-size: 18px;
    padding: 0 5px;
}

.pageLink a {
    font-size: 18px;
}

.newsDate {
    font-size: 16px;
    color: #033abc;
    font-weight: bold;
}

.newsTit {
    font-size: 36px;
    margin-bottom: 20px;
}

.newsBox {
    padding: 30px 20px;
    border-bottom: 1px solid #a7a7a7;
}


.ppBox {
    margin-bottom: 30px;
}

.ppTit {
    font-weight: bold;
    font-size: 20px;
    border-bottom: 2px solid #000;
    padding-bottom: 5px;
    margin-bottom: 10px;
}

.ppTxt {
    font-size: 14px;
    line-height: 1.6;
}


.grretingImg {
    width: 100%;
    margin-top: 30px;


}

.grretingImg2 {
    width: 100%;
    margin-top: 30px;
    padding-bottom: 20px;
}


.priBoxTit_en {
    font-size: 20px;
    color: #2a2a2a;
"ヒラギノ角ゴ Pro W3",
"Hiragino Kaku Gothic Pro",
"メイリオ",
"Meiryo",
"游ゴシック体",
"YuGothic",
"游ゴシック",
"Yu Gothic",
sans-serif;
    text-align: center;
    padding-bottom: 20px;
}

.priBoxTit {
    font-size: 28px;
    color: #2a2a2a;
    font-weight: bold;
"ヒラギノ角ゴ Pro W3",
"Hiragino Kaku Gothic Pro",
"メイリオ",
"Meiryo",
"游ゴシック体",
"YuGothic",
"游ゴシック",
"Yu Gothic",
sans-serif;
    line-height: 30px;
    padding-top: 40px;
}

.grretingTxt {
"ヒラギノ角ゴ Pro W3",
"Hiragino Kaku Gothic Pro",
"メイリオ",
"Meiryo",
"游ゴシック体",
"YuGothic",
"游ゴシック",
"Yu Gothic",
sans-serif;
    font-size: 16px;
    line-height: 32px;
    border-bottom: solid 1px #c1c1c1;
    color: #1a1a1a;
    padding-bottom: 40px;
    padding-top: 10px;
}

.grretingTxt:last-child {
    border-bottom: none;
}

.grretingTxt2 {
"ヒラギノ角ゴ Pro W3",
"Hiragino Kaku Gothic Pro",
"メイリオ",
"Meiryo",
"游ゴシック体",
"YuGothic",
"游ゴシック",
"Yu Gothic",
sans-serif;
    font-size: 16px;
    line-height: 32px;
    border-bottom: solid 1px #c1c1c1;
    color: #1a1a1a;
    padding-bottom: 40px;
    padding-top: 10px;
    float: left;
}

.grretingTxt2:last-child {
    border-bottom: none;
}

.grretingTxt3 {
    font-size: 16px;
    line-height: 32px;

    color: #1a1a1a;
    padding-bottom: 40px;
    padding-top: 10px;
    float: left;
}

.grretingTxt3:last-child {
    border-bottom: none;
}


@media screen and (max-width: 767px) {
    .priBoxTit_en {
        font-size: 20px;
        color: #2a2a2a;
        text-align: center;
    }

    .priBoxTit {
        font-size: 28px;
        color: #2a2a2a;
        font-weight: bold;
        line-height: 30px;
        padding-top: 10px;
    }

    .grretingTxt {
        line-height: 30px;
        border-bottom: solid 1px #c1c1c1;
        color: #1a1a1a;
        padding-bottom: 40px;
        padding-top: 10px;
    }

    .grretingTxt:last-child {
        border-bottom: none;
    }

    .grretingTxt2 {
        font-size: 14px;
        line-height: 30px;
        border-bottom: solid 1px #c1c1c1;
        color: #1a1a1a;
        padding-top: 30px;
        float: left;
    }

    .grretingTxt2:last-child {
        border-bottom: none;
    }
}


.keiBoxTit {
    font-size: 20px;
    color: #2a2a2a;
    font-weight: bold;
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic", sans-serif;
    line-height: 30px;
    padding-top: 20px;
    width: 100%;
    display: inline-block;
}

.companyTbBox {
    width: 100%;
}

.companyTbRow {
    display: flex;
    flex-wrap: wrap;
    border-bottom: 1px solid #ddd;
    padding: 20px;
}

.companyTbRow:last-child {
    border-bottom: none;
}

.companyTbItem {
    font-weight: bold;
    font-size: 14px;
    width: 180px;
}

.companyTbTxt {
    font-size: 14px;
    padding: 0 10px;
    line-height: 1.7;
    width: calc(100% - 200px);
}

.companyCol75 {
    width: 74%;
}

.companyCol25 {
    width: 24%;
}


@media screen and (max-width: 800px) {
    .keiBoxTit {
        font-size: 20px;
        color: #2a2a2a;
        font-weight: bold;
        font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic", sans-serif;
        line-height: 30px;
        padding-top: 20px;
        width: 100%;
        display: inline-block;
        padding-left: 10px;
    }

    .companyTbRow {
        padding-right: 0;
        padding-left: 0;
    }

    .companyTbItem {
        font-weight: bold;
        font-size: 14px;
        width: 110px;
        margin-bottom: 10px;
    }

    .companyTbTxt {
        font-size: 14px;
        padding: 0 0px;
        width: calc(100% - 150px);
    }

    .companyCol75 {
        width: 49%;
    }

    .companyCol25 {
        width: 49%;
    }
}

@media screen and (max-width: 480px) {
    .companyTbItem {
        width: 100%;
    }

    .companyTbTxt {
        width: 100%;
    }

    .btn01:after {
        content: "\f0a9";
        font-family: FontAwesome;
        position: absolute;
        right: 4px;
        top: 0;
        color: #fff;
    }

    .btn01 a {
        color: #fff !important;
        font-size: 14px;
        font-weight: bold;
        padding: 0 !important;
        letter-spacing: 0;
    }

    .btn01 {
        background: #ff981f;
        display: inline-block;
        position: relative;
        height: 50px;
        line-height: 50px;
        border-radius: 25px;
        width: 111px;
        transition: 0.2s;
    }
}


@media screen and (max-width: 767px) {
}

.tp-Banner {
    position: relative;
}

.tp-Banner .topNewsTag {
    position: absolute;
    top: 0px;
    right: 0;
}

.topNextTag i {
    color: #fff;
    font-size: 26px;
    margin-top: 12px;
    margin-right: -3px;
}

.topNextTag {
    position: absolute;
    right: 0;
    bottom: 15px;
    width: 50px;
    height: 50px;
    display: block;
    line-height: 1;
    c background: #000;
    color: #fff;
    text-align: center;
}

.cm-Flex {
    display: flex;
    border-top: 1px solid #ddd;

}

.cm-Flex2 {
    display: flex;
    border-top: 1px solid #ddd;
}

.cm-Flex3 {
    display: flex;
    border-bottom: 1px solid #ddd;
}

.cm-Flex5 {
    border-top: 1px solid #ddd;
    margin-top: 200px;
}

.sr-border {
    border-top: solid #e5e5e5 1px;
    border-bottom: solid #e5e5e5 1px;
}

.tp-Tit_left {
    position: absolute;
    bottom: 0;
    display: inline-block;
    top: 44%;
    left: 42px;
    color: #fff;
    font-size: 28px;
    text-shadow: 0px 1px 16px rgba(31, 31, 31, 0.98);
    font-weight: bold;
}

.tp-Link_right {
    position: absolute;
    display: inline-block;
    bottom: 0;
    top: 45%;
    right: 42px;
    color: #fff;
    font-size: 22px;
    text-shadow: 0px 1px 16px rgba(31, 31, 31, 0.98);
}

.tp-Tit_center {
    position: absolute;
    display: inline-block;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    color: #fff;
    text-align: center;
    font-size: 28px;
    text-shadow: 0px 4px 22px rgb(152, 152, 152);
    font-weight: bold;
    letter-spacing: 4px;
}

.fade_img1 {
    position: absolute;
    top: 42%;
    left: 50%;
    z-index: 100;


    z-index: 2;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: 113;
}

.fade_img2 {
    width: 153px;
    position: absolute;
    top: 48%;
    left: 50%;
    z-index: 100;

    margin-left: -162px;
    z-index: 162;
    display: flex;
    -webkit- transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.fade_img0 {
    position: absolute;

    top: 8%;
    z-index: 9999999999999999999;
    top: 54%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 198px;
}

@media screen and (max-width: 767px) {
    .topNextTag {
        width: 25px;
        height: 25px;
    }

    .topNextTag i {
        font-size: 10px;
        margin-top: 7px;
    }
}


.goodsMovieBox {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
}

.goodsMovieBox iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important;
}

.goodsDetailTit {
    font-size: 30px;
    color: #333333;
    margin-top: 20px;

}

.goodsDetailJan {
    font-size: 16px;
    color: #333333;
}

.goodsDetailPrice {
    font-size: 21px;
    color: #333333;
    font-weight: bold;
    margin-top: 10px;
}

.goodsDetailPrice span {
    font-size: 12px;
    color: #333333;
    margin-left: 10px;
}

.goodsDetailTit2 {
    font-size: 16px;
    color: #333333;
    font-weight: bold;
}

.goodsDetailSize {
    font-size: 14px;
    color: #333333;
    font-weight: bold;
    margin-top: 15px;
}

.goodsDetailListBox {
    margin-bottom: 20px;
    margin-top: 5px;
    border-bottom: 1px solid #cccccc;
}

.goodsDetailListRow {
    display: flex;
    border-top: 1px solid #cccccc;
    border-left: 1px solid #cccccc;
    border-right: 1px solid #cccccc;
    flex-wrap: wrap;
}

.goodsDetailListItem {
    background: #ececec;
    padding: 15px;
    width: 160px;
    font-size: 15px;
    color: #333333;
    font-weight: bold;
    border-right: 1px solid #cccccc;
    display: flex;
    align-items: center;
}

.goodsDetailListTxt {
    font-size: 15px;
    color: #333333;
    padding: 15px;
    width: calc(100% - 160px);
}

.goodsDetailTxt {
    color: #262626;
    line-height: 1.6;
    margin-top: 20px;
    font-size: 16px;
}

.goodsDetailIconBox {
    display: flex;
    align-items: center;
    margin-top: 30px;
    flex-wrap: wrap;
}

.goodsDetailIconBox a {
    margin-right: 10px;
    margin-bottom: 10px;
}

.productsList {
    margin-top: 50px;
    border-top: 1px solid #000;
}

.productsListTit {
    font-size: 16px;
    color: #333333;
    font-weight: bold;
    width: 100%;
    margin: 20px 0;
}

.productsListBox {
    position: relative;
    width: 100%;
    border: 1px solid #ccc;
    box-sizing: border-box;
    margin-bottom: 20px;
}

.productsListBox:before {
    content: "";
    display: block;
    padding-top: 100%;
}

.productsListBox a {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
}

.productsListBox a img {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    max-width: 100%;
    max-height: 100%;
}

.disN {
    display: none;
}

.item1Img {


    margin: auto;
}

.item1Img img {

}

.item1Img .sp-slide {

}

.item2Img {
    max-width: 600px;

    margin: auto;
}

.item2Img img {
    width: 100%;
}

.item2Img .sp-slide {
    position: relative;
}


.title01 {
    font-size: 28px;
    font-weight: bold;
    color: #333333;
    display: flex;
    align-items: center;
    position: relative;
}

.title01:after {
    content: "";
    border-bottom: 1px solid #e5e5e5;
    position: absolute;
    width: 100%;
    top: 80%;
    left: 0;
}

.title01Head {
    padding-right: 15px;
    background: #fff;
    z-index: 1;
    line-height: 2;
    font-size: 30px;

    font-weight: bold;
}

.title01Icon {
    padding-right: 25px;
    background: #fff;
    z-index: 1;
}

.title02 {
    font-size: 28px;
    color: #333333;
    display: flex;
    align-items: center;
    position: relative;
}

.title02Icon {
    padding-right: 20px;
}

.title02Txt {
    font-size: 28px;
    color: #333333;
}

.title03 {
    background: #86868d;
    color: #fff;
    font-size: 30px;
    font-weight: bold;
    margin: 0 0 30px;
    padding: 10px 20px;
    position: relative;
    box-sizing: border-box;
}

.title03:before {
    content: "";
    width: 100%;
    position: absolute;
    top: -5px;
    left: 0;
    border: 1px solid #86868d;
}

.title03:after {
    content: "";
    width: 100%;
    position: absolute;
    bottom: -5px;
    left: 0;
    border: 1px solid #86868d;
}

@media screen and (max-width: 767px) {


    .title01 {
        font-size: 18px;
        font-weight: bold;
        color: #333333;
        display: flex;
        align-items: center;
        position: relative;
        margin-top: 50px;
    }

    .title02Txt {
        font-size: 18px;
        color: #333333;
    }

    .title03 {

        background: #86868d;
        color: #fff;
        font-size: 20px;
        font-weight: bold;
        margin: 0 0 30px;
        padding: 10px 20px;

        position: relative;
        box-sizing: border-box;
    }


    .title01Icon {
        padding-right: 25px;
        background: #fff;
        z-index: 1;
        height: 49px;
    }

    .title01Icon img {
        height: 100%;
    }
}


.topGoodsBox {

    margin-bottom: 30px;
}

.topGoodsImgBox {
    position: relative;
    width: 100%;
    border: 1px solid #ccc;
    box-sizing: border-box;
    border: none;
}

.topGoodsImgBox:before {
    content: "";
    display: block;
    padding-top: 100%;
}

.topGoodsImgBox img {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    max-width: 100%;
    max-height: 100%;
}

.topGoodsTit {
    font-size: 18px;
    color: #333333;
    margin: 5px 0;
    text-decoration: underline;
}

.topGoodsSize {
    font-size: 14px;
    color: #747474;
}

.topGoodsPrice {
    font-size: 16px;
    color: #333333;
    margin-top: 13px;
}

.topGoodsPrice span {
    font-weight: bold;
    margin-right: 6px;
}

.topGoodsBox a:hover {
    text-decoration: none;
}

.snapLink {
    position: relative;
}

.snapLinkImg {
    position: absolute;
    width: 100%;
    height: 250px;;
}


@media screen and (max-width: 991px) {
    .topGoodsBox {
        margin-bottom: 30px;
    }
}


.searchStageBox {
    background: #f4f4f4;
    padding: 25px 0;
}

.searchStage {
    text-align: center;
    border-left: 1px solid #e0e0e0;
}

.searchStageBox .searchStage:first-child {
    border-left: none;
}

.searchStageBtn {
    display: inline-block;
    background: #fff;
    border: 1px solid #959595;
    border-radius: 4px;
    box-sizing: border-box;
    width: 206px;
    text-align: center;
    font-size: 14px;
    transition: 0.4s;

}

.searchStageBtn a {
    display: block;
    height: 100%;
    color: #333333;
    padding: 15px 0;
    transition: 0.4s;
    font-size: 16px;
    font-weight: 500;
}

.searchStageBtn a:hover {
    text-decoration: none;
    color: #fff;
}

.searchStageBtn:hover {
    background: #959595;
}

@media screen and (max-width: 1024px) {
    .searchStageBtn {
        display: inline-block;
        background: #fff;
        border: 1px solid #959595;
        border-radius: 4px;
        box-sizing: border-box;
        width: 100%;
        text-align: center;
        font-size: 14px;
        transition: 0.4s;
    }
}

@media screen and (max-width: 767px) {
    .searchStageBtn {
        display: inline-block;
        background: #fff;
        border: 1px solid #959595;
        border-radius: 4px;
        box-sizing: border-box;
        width: 100%;
        text-align: center;
        font-size: 14px;
        transition: 0.4s;
        margin-bottom: 10px;
    }
}

.text-left {
    text-align: left !important;
}

#loading {
    position: absolute;
    left: 50%;
    top: 30%;
}

#loader-bg {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px;

    z-index: 3;
}

.copy-1-1 {
}

.copy-1-2 {
}

.copy-1-3 {
}

.copy-1-4 {
}

.copy-1-5 {
    width: 89px !important;
}

.copy-1-6 {
}

.topCellImgBox {
    background-size: auto 100%;
    transition: 0.3s;
}

.topCellImgBox:hover {
    background-size: auto 110%;
}


@media screen and (max-width: 767px) {
    #block {
        height: 280px !important;
    }

    .fade_img1 {
        margin-left: 0;
        margin-top: -18%;
        width: auto;
        left: 10%;
        top: 44%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
        -moz-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        -o-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
    }

    .fade_img0 {

        top: 96px;
        top: 47%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
        -moz-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        -o-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
    }

    .fade_img2 {
        width: 58px;
        top: 96px;
        margin-top: 8px;
        margin-left: -124px;
        top: 40%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
        -moz-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        -o-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
    }

    .top-logo {
        width: 45px !important;
    }

    .copy-1-1 {
        width: 76px;
        height: 49px;
        margin-top: 24px;
    }

}


.an_Title {
    width: 80px;
    height: auto;
    background-color: #FFF;
    font-size: 30px;
    line-height: 80px;
    padding: 100px 0px 30px;
    position: absolute;
    top: -102px;
    left: 0px;
    right: 0;
    margin: auto;
    z-index: 1;
    background-image: url(../img/header_logo.png);
    background-size: 40px;
    background-position: 50% 30px;
    background-repeat: no-repeat;
    -webkit-writing-mode: vertical-rl;
    -moz-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    -ms-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
}

.vert {
    font-size: 36px;
    line-height: 80px;
    width: 240px;
    height: auto;
    position: relative;
    bottom: 58px;
    left: 0;
    right: 0;
    margin: auto;
    z-index: 1;
    letter-spacing: 5px;
    -webkit-writing-mode: vertical-rl;
    -moz-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    -ms-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
}

.box100 {
    position: relative;
}

.box200 {
    position: relative;
    top: 100px;
}

.caption {
    width: 530px;
    height: auto;
    padding: 20px 40px 0;
    background-color: rgba(255, 255, 255, 0.75);
    position: relative;
    z-index: 2;
    margin: -160px 0 0 688px;
}

.caption > span {
    font-size: 14px;
    margin-bottom: 10px;
    display: block;
}

.caption > h3 {
    font-size: 30px;
    line-height: 44px;
    font-weight: 400;
}

.caption > .caption {
    margin: 30px 0 0 0;
    width: auto;
    padding: 0;
}

.caption > .caption > p {
    line-height: 40px;
    padding: 0;
    font-size: 16px;
}

.list {
    list-style-type: none;
    overflow: hidden;


}

.list-mv07 {
    opacity: 0;
    transform: translate(0, 60px);
    -webkit-transform: translate(0, 60px);
    float: left;
    transition: .8s;

}


.mv07 {
    opacity: 1.0;
    transform: translate(0, 0);
    -webkit-transform: translate(0, 0);

}

.text-combine {
    -webkit-text-combine: horizontal;
    -ms-text-combine-horizontal: all;
    text-combine-upright: all;
    font-size: 30px;
}

#scroll {
    position: absolute;
    bottom: -60px;
    left: 0;
    right: 0;
    margin: auto;
    display: block;
    display: block;
    width: 120px;
    height: 120px;
    background-color: #FFF;

    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transition-duration: 1.5s;
    -moz-transition-duration: 1.5s;
    -o-transition-duration: 1.5s;
    transition-duration: 1.5s;
    cursor: pointer;
    cursor: hand;
}

#scroll > span {


    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
    display: block;
    width: 100%;
    height: 20px;
    text-align: center;
    margin: auto;
    position: relative;
    top: 35px;
    left: -15px;
    font-size: 10px;
    line-height: 20px;
    letter-spacing: 1px;
    padding-left: 1px;
    color: #2a2a2a;
}

#scroll > span:before {
    content: "";
    width: 4px;
    height: 8px;
    position: absolute;
    top: -26px;
    left: 0;
    right: 0;
    margin: auto;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    border-radius: 2px;
    border: 1px solid;
}

#scroll > span:after {
    content: "";
    width: 20px;
    height: 30px;
    position: absolute;
    top: -30px;
    left: 0;
    right: 0;
    margin: auto;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
    border: 1px solid;
}

#scroll:hover {
    opacity: 1;
}

#scroll:hover > span {
    letter-spacing: 3px;
    padding-left: 3px;
}

#scroll:hover > span:before {
    top: -22px;
}

#scroll.on {
    bottom: -150px;
}


.Opening {
    position: relative;
    background-color: #FFF;
}

.Opening ul li {
    position: relative;
    overflow: hidden;
    width: 100%;
    text-align: center;
}

.Opening ul li img.Opening__text {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    z-index: 9;
}

.Opening ul li span {
}

.Opening ul li span img.Opening__img {
    max-width: inherit;
    width: 100%;
    height: auto;
}

#gnavPanel {
    position: absolute;
    top: 40px;
    right: 110px;
    display: block;
    z-index: 1;
}

#gnavPanel > div {
}

#gnavPanel > div > ul {
}

#gnavPanel > div > ul > li {
    float: right;
    padding: 0 10px;
    display: block;
    width: 50px;
    position: relative;
}

#gnavPanel > div > ul > li:first-child {
    display: none;
}

#gnavPanel > div > ul > li > a {
    display: inline-block;
    position: relative;
    width: 100%;
    height: auto;
    color: #fff;
    font-size: 14px;
    text-shadow: 0px 1px 16px rgba(31, 31, 31, 0.12);
}

#gnavPanel > div > ul > li > a:before {
    content: "";
    width: 1px;
    height: 0;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    background-color: #333;
}

#gnavPanel > div > ul > li > a:hover {
    opacity: 1;
}

#gnavPanel > div > ul > li > a:hover:before {
    height: 100%;
}

.Footer-sns {
    justify-content: center;
    margin-top: 20px;
}

.Footer-sns li {
    margin-right: 10px;
    margin-left: 10px;
}

.Footer-sns li i {
    color: #4b0d0e;
}

.top-logo {
    position: absolute;
    left: 35%;
    top: 300px;
    z-index: 1;
}

@media screen and (max-width: 480px) {
    .Main-img04 img {
        margin-left: -440px !important;
    }

    .Main-img05 img {
        margin-left: -580px !important;
    }

    .Main-img02 img {


        margin-left: -366px !important;
    }

    .Main-img01 img {


    }
}

.ttl-copy {

    font-weight: bold;
    text-align: center;
}

.copy-txt {
    font-size: 14px;
    line-height: 30px;
}

.item .topGoodsImgBox {
    transition: opacity 0.3s ease-out;
}

.item .topGoodsImgBox:hover {
    opacity: 0.5;
}

video {
    width: 100%;

}

.sp480 {
    display: none;
}

@media screen and (max-width: 480px) {
    .sp480 {
        display: block;
    }

    .Opening ul li .visible-xs {
        display: none !important;
    }
}

.mapLink {
    margin-left: 10px;
    font-size: 16px;
    color: #4b0d0e !important;
    font-weight: bold;
    text-decoration: underline;
}


.topBnr {
    position: relative;
    z-index: 9;
}

.topBnr a img {
    transition: 0.3s;
}

.topBnr a:hover img {
    opacity: 0.7;
}

.relative {
    position: relative;
}

.absolute {
    position: absolute;
    right: 30px;
    bottom: 30px;
}

.Opening,
.Opening ul,
.Opening ul li {
    width: 100%;
    height: 100%;
}

.Opening ul li span img.Opening__img {
    max-width: inherit;
    width: 100%;
    height: 100%;
}

.Opening__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    font-family: "object-fit: cover;";
}

.per_read {
    font-size: 14px;
    line-height: 30px;
    padding-top: 10px;
    margin-bottom: 80px;
}

.per_sub_title {
    margin-bottom: 20px;
    font-weight: bold;
    font-size: 14px;
    color: #008000;
}

@media screen and (max-width: 800px) {
    .per_read {
        font-size: 14px;
    }
}


table {
    width: 100%;
    border-collapse: collapse;
}

table tr {
    border-bottom: solid 2px white;
}

table tr:last-child {
    border-bottom: none;
}


.news_txtWrap {
    padding-top: 80px;
}

.news_detail .news_date {
    font-size: 14px;
    font-family: sans-serif;
    padding: 0px 5px;
    letter-spacing: .2px;
    display: inline-block;
    margin-right: 20px;
    font-weight: bold;
    color: #525766;
}

.news_detail .news_cate {
    border: 1px solid #008000;
    font-size: 14px;
    padding: 0 5px;
    border-radius: 20px;
    display: inline-block;
    color: #008000;
    transition: .3s;
    letter-spacing: .2px;
    vertical-align: middle;
    line-height: 1.7;
}

.page_newsTit {
    font-size: 20px;
    font-weight: bold;
    margin-top: 20px;
    line-height: 1.5;
}

.news_detail .pageSubTit {
    font-weight: bold;
    font-size: 16px;
    margin-top: 20px;
    line-height: 1.5;
}

@media screen and (max-width: 800px) {
    .news_txtWrap {
        padding-top: 40px;
    }

    .page_newsTit {
        font-size: 18px;
    }

    .news_detail .pageSubTit {
        font-size: 14px;
    }

    .news_detail .news_date {
        font-size: 14px;
    }

    .news_detail .news_cate {
        font-size: 14px;
    }

    .per_sub_title {
        margin-bottom: 10px;
        font-size: 14px;
    }

    .per_read {
        font-size: 14px;
        margin-bottom: 40px;
    }
}