/* ----------$Catalog--------
$Wrapper-product
$Wrapper-sitemap
$Wrapper-download
$Wrapper-inquiry
$Wrapper-news
$Wrapper-news_detail
$Wrapper-contact
$Wrapper-search
$Wrapper-company
$Wrapper-faq
$Wrapper-case
$Wrapper-feature
------------------------------ */

.wrapper-product,
.wrapper-sitemap,
.wrapper-download,
.wrapper-inquiry,
.wrapper-news,
.wrapper-news_detail,
.wrapper-contact,
.wrapper-search,
.wrapper-company {
    background-color: #FBFBFB;
}


/* --------------------
/*  $Wrapper-product
----------------------- */

.wrapper-product {
    min-height: 78vh;
    background-color: #fcfcfc;
}

.ridge {
    position: absolute;
    left: 0px;
    height: 60px;
}

.ridge-A {
    background-color: #b2deff;
    top: -21px;
    width: 70%;
}

.ridge-B {
    background-color: #1688dd;
    top: 0px;
    width: 67%;
}

@media(max-width:767px) {
    .ridge-A {
        width: 86%;
    }
    .ridge-B {
        width: 83%;
    }
}

.wrapper-product .heading,
.wrapper-sitemap .heading,
.wrapper-download .heading,
.wrapper-inquiry .heading,
.wrapper-news .heading,
.wrapper-news_detail .heading,
.wrapper-contact .heading,
.wrapper-search .heading,
.wrapper-company .heading,
.wrapper-faq .heading,
.wrapper-replace .heading,
.wrapper-case .heading,
.wrapper-feature .heading {
    height: 60px;
}

.wrapper-product h1,
.wrapper-sitemap h1,
.wrapper-download h1,
.wrapper-inquiry h1,
.wrapper-news h1,
.wrapper-news_detail h1,
.wrapper-contact h1,
.wrapper-search h1,
.wrapper-company h1,
.wrapper-faq h1,
.wrapper-replace h1,
.wrapper-case h1,
.wrapper-feature h1 {
    font-weight: 500;
}

@media(max-width:767px) {
    .wrapper-product h1,
    .wrapper-sitemap h1,
    .wrapper-download h1,
    .wrapper-inquiry h1,
    .wrapper-news h1,
    .wrapper-news_detail h1,
    .wrapper-contact h1,
    .wrapper-search h1,
    .wrapper-company h1,
    .wrapper-faq h1,
    .wrapper-replace h1,
    .wrapper-case h1,
    .wrapper-feature h1 {
        font-size: 24px;
    }
}

.block-productcate {
    padding: 86px 50px;
    padding-bottom: 120px;
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-wrap: wrap;
}

.block-productcate .productbox-A {
    margin-top: 26px;
    margin-bottom: 26px;
}

@media(max-width:375px) {
    .block-productcate {
        padding: 3vw 0 60px 0;
    }
}

.block-productlist {
    padding: 39px 20px;
    padding-bottom: 120px;
}

@media(max-width: 1269px) {
    .block-productlist .productbox-B {
        margin: 40px auto;
    }
}

@media(max-width: 767px) {
    .block-productlist .productbox-B {
        margin: 20px auto;
    }
}

.block-productdetail {
    margin: 72px auto;
    margin-bottom: 140px;
    padding: 27px 59px 66px 59px;
    box-shadow: 1px 1px 3px 1px rgba(0, 0, 0, 0.04);
    background-color: #fff;
}

.block-productdetail__back-fold {
    position: absolute;
    width: 199px;
    height: 101px;
    top: -8px;
    right: -11px;
    font-size: 22px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.block-productdetail__back-fold>a {
    display: none;
}

.block-productdetail__back a {
    cursor: pointer;
    color: #1688dd;
}

.block-productdetail__back a:hover {
    color: #b2deff;
}

@media(min-width: 1270px) {
    .block-productdetail__back-fold {
        position: absolute;
        width: 60px;
        height: 50px;
        top: 27px;
        right: 46px;
        font-size: 22px;
        display: flex;
        justify-content: center;
        align-items: center;
        /* background-image: url('../images/prodetail-fold.jpg');
background-size: cover;
background-repeat: no-repeat;
background-position: center; */
    }
    .block-productdetail__back-fold i {
        margin-left: 4px;
    }
    .block-productdetail__back-fold>a {
        display: inline-block;
        position: absolute;
        color: #7b7a7a;
        font-size: 18px;
        top: 0;
        right: 0;
        cursor: pointer;
    }
    .block-productdetail__back-fold>a:hover {
        color: #7b7a7a;
        opacity: 0.8;
    }
    .block-productdetail__back {
        display: block;
        width: 224px;
        height: 121px;
        top: 5px;
        right: 1px;
        cursor: pointer;
        display: flex;
        justify-content: center;
        align-items: center;
        visibility: visible;
        background-image: url('../images/prodetail-nonefold.jpg');
        background-position: -1px -4px;
        background-size: contain;
        background-repeat: no-repeat;
    }
    .block-productdetail__back:hover {
        visibility: hidden;
        background-color: orange;
    }
    .block-productdetail__back-fold:hover .block-productdetail__back {
        visibility: hidden;
    }
    .block-productdetail__back i {
        font-size: 18px;
        cursor: pointer;
    }
}

@media(max-width:767px) {
    .block-productdetail__back-fold {
        top: -25px;
        right: -40px;
    }
}

.pdcard__leftbar {
    width: 16px;
    height: 406px;
    background-color: #E5AD01;
}

.pdcard__album .sp-wrap {
    width: 428px;
    padding-top: 20px;
}

@media(max-width:767px) {
    .block-productdetail {
        padding-left: 20px;
        padding-right: 20px;
        margin-bottom: 80px;
    }
    .pdcard__leftbar {
        width: 6px;
        height: 294px;
    }
    .pdcard__album .sp-wrap {
        width: 269px;
    }
}

.pdcard__name::before {
    content: "";
    display: block;
    width: 22px;
    height: 22px;
    background-color: #feb680;
    position: absolute;
    left: -32px;
    top: 10px;
}

@media(max-width:1269px) {
    .block-productdetail {
        overflow: hidden;
    }
    .pdcard__name {
        left: 0;
        padding-left: 33px;
    }
    .pdcard__name::before {
        top: 10px;
        left: 3px;
    }
}

@media(max-width:767px) {
    .pdcard__name::before {
        top: 3px;
        left: 3px;
    }
}

.pdcard__model h5 {
    font-family: 'Arial';
    font-weight: 400;
    opacity: 0.7;
}

.pdcard__desc {
    overflow: scroll;
}

.pdcard__desc p {
    font-weight: 300;
    letter-spacing: 1px;
    line-height: 1.5;
    margin: 0;
}

.pdcard__desc img {
    margin: 8px 4px;
    max-width: 100%;
    height: auto;
}

@media(max-width:1269px) {
    .pdcard__desc p {
        min-height: initial;
    }
}

.pdcard__hr {
    margin: 0;
    border-top: 4px solid;
}

.pdcard__hr-1 {
    border-color: #b2deff;
}

.pdcard__hr-2 {
    border-color: #989898;
}

.pdcard__hr-3 {
    border-color: #feb680;
}

.pdcard__table-A {
    margin: 60px 0px 40px 0px;
    padding-left: 20px;
    padding-right: 20px;
}


/* 
.pd-group {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: flex-end;
    flex-wrap: wrap;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
} */

.pd-group {
    display: block;
    width: 100%;
    height: auto;
}

.pdstyle-A {
    display: inline-block;
    max-width: 172px;
    margin: 20px 30px;
    vertical-align: bottom
}

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

.pdstyle-A__name {
    width: 100%;
    color: white;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #a58d45;
    padding: 10px;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    -ms-border-radius: 20px;
    -o-border-radius: 20px;
    letter-spacing: 1px;
    margin-top: 14px;
}

@media(max-width:1269px) {
    .pd-group {
        position: relative;
        top: initial;
        left: initial;
        transform: initial;
        -webkit-transform: initial;
        -moz-transform: initial;
        -ms-transform: initial;
        -o-transform: initial;
    }
}


/* --------------------
/*  $Wrapper-sitemap
----------------------- */

.wrapper-sitemap {
    min-height: 78vh;
}

.block-sitemap {
    margin: 2vw auto;
    padding: 27px 59px 66px 59px;
}

.sitemap-ul {
    width: auto;
    height: auto;
    text-align: center;
    list-style-type: none;
    margin: 28px auto;
}

.sitemap-ul--withbb {
    padding-bottom: 33px;
    margin-bottom: 33px;
    border-bottom: 1px solid #cfcfcf
}

.sitemap-ul h3 {
    width: 197px;
    background-color: white;
    line-height: 51px;
    box-shadow: 1px 3px 4px 2px rgba(0, 0, 0, 0.1)
}

.sitemap-ul h3::before {
    content: "";
    width: 100%;
    height: 5px;
    background-color: #0d6fb8;
    position: absolute;
    bottom: 0;
    left: 0;
}

.sitemap-ul h3>a {
    color: #333333;
    font-weight: 500;
}

.sitemap-ul>li>h4 {
    margin: 16px auto 16px 65px;
    border-left: 4px solid #0d6fb8;
    line-height: 30px;
    text-align: left;
    padding-left: 12px;
}

.sitemap-ul>li>h4>a {
    color: #333333;
    font-weight: 500;
}

.sitemap-ul-SecLayer {
    padding-left: 84px;
    margin-top: 16px;
}

.sitemap-ul-SecLayer>h5 {
    text-align: left;
}

.sitemap-ul-SecLayer>h5>a {
    color: #7b7a7a;
}

.sitemap-ul-SecLayer>li {
    text-align: left;
    list-style-type: none;
    padding: 4px 0px;
}

.sitemap-ul-SecLayer>li>a {
    color: #333333;
}

.sitemap-ul-SecLayer>li::before {
    content: "\f0da";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
    color: #00b2fc;
    margin-right: 4px;
}

@media(max-width:767px) {
    .block-sitemap {
        padding: 27px 12px 66px 12px;
    }
}


/* --------------------
/*  $Wrapper-download
----------------------- */

.wrapper-download {
    min-height: 78vh;
}

.block-download {
    margin: 72px auto;
    margin-bottom: 200px;
    padding: 27px 59px 66px 59px;
}

@media(max-width:767px) {
    .block-download {
        padding: 27px 4px 66px 4px;
    }
}


/* --------------------
/*  $Wrapper-inquiry
----------------------- */

.wrapper-inquiry {
    min-height: 78vh;
}

.block-inquiry {
    margin: 63px auto;
    padding: 27px 59px 66px 59px;
}

@media(max-width:767px) {
    .block-inquiry {
        margin: 63px auto;
        padding: 27px 10px 66px 10px;
    }
}


/* --------------------
/*  $Wrapper-news
----------------------- */

.wrapper-news {
    min-height: 78vh;
}

.block-news {
    margin: 63px auto;
    padding: 27px 59px 132px 59px;
}

.news__newsbox {
    max-width: 100%;
}

@media(max-width:767px) {
    .block-news {
        padding: 10px 20px 132px 20px;
    }
}


/* --------------------
/*  $Wrapper-news_detail
----------------------- */

.wrapper-news_detail {
    min-height: 78vh;
}

.block-news_detail {
    margin: 63px auto;
    padding: 27px 6px 80px 6px;
}

.newscard__date {
    font-size: 14px;
    color: #909da7;
    font-weight: bold;
}

.newscard__pic-outter {
    max-width: 600px;
}

.newscard__pic {
    width: 100%;
    padding-top: calc(100% * 375 / 600);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}


/* --------------------
/*  $Wrapper-contact
----------------------- */

.wrapper-contact {
    min-height: 78vh;
}

.block-contact {
    margin: 63px auto;
    padding: 27px 6px 80px 6px;
}

.block-contact__form-A {
    background-color: rgba(255, 255, 255, 0.2);
    padding: 38px 20px;
    box-shadow: 1px 1px 6px 2px rgba(0, 0, 0, 0.1);
}

.block-contact .compmap iframe {
    width: 515px;
    height: 542px;
    margin: 38px 0px;
    box-shadow: 1px 1px 6px 2px rgba(0, 0, 0, 0.1);
}

.mapdecoline {
    position: absolute;
    height: 618px;
    width: 50%;
    left: 50%;
    border: 1px solid #909da7;
    border-right: 0px;
}

.compmap__bar {
    position: absolute;
    display: block;
    width: calc(515px / 2);
    height: 14px;
}

.compmap__bar1 {
    background-color: #b2deff;
    bottom: 40px;
    left: 0;
}

.compmap__bar2 {
    background-color: #0d6fb8;
    bottom: 40px;
    left: calc(515px / 2);
}

@media(max-width:1269px) {
    .mapdecoline {
        width: 60%;
    }
    .compmap {
        max-width: 100%;
        margin: 0 auto;
    }
    .compmap__bar {
        width: 50%;
    }
    .compmap__bar2 {
        left: 50%;
    }
    .block-contact .compmap iframe {
        margin: 38px auto;
        width: 100%;
    }
    .block-contact__form-A {
        margin: 10px auto;
        padding: 38px 8px;
        width: 100%;
    }
}


/* --------------------
/*  $Wrapper-search
----------------------- */

.wrapper-search {
    min-height: 78vh;
}

.block-search {
    padding: 86px 20px;
    padding-bottom: 160px;
}


/* --------------------
/*  $Wrapper-company
----------------------- */

.wrapper-company {
    min-height: 78vh;
}

.block-company {
    padding: 86px 20px;
    padding-bottom: 160px;
}

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

.promisepic {
    position: absolute;
    top: 102px;
    right: 0;
}

.twpic {
    position: absolute;
    right: 0;
    bottom: 0;
}

.company__context {
    line-height: 24px;
    letter-spacing: 1px;
}

.company__list {
    list-style-type: decimal;
    font-weight: 300;
    line-height: 26px;
    padding-left: 16px;
    margin-bottom: 343px;
}

@media(max-width:1269px) {
    .block-company {
        padding: 86px 4px;
    }
    .company__list {
        margin-bottom: 0;
    }
    .twpic {
        position: relative;
        right: initial;
        bottom: initial;
    }
}

@media(max-width:767px) {
    .block-company {
        padding: 66px 4px;
    }
    .promisepic {
        top: 20px;
        right: 10px;
        width: 60%;
    }
}


/* --------------------
/*  $Wrapper-faq
----------------------- */

.wrapper-faq {
    min-height: 78vh;
    background-color: #fcfcfc;
}

.block-faq {
    padding: 3vw 2vw;
}


/* --------------------
/*  $Wrapper-replace
----------------------- */

.wrapper-replace {
    min-height: 78vh;
    background-color: #fcfcfc;
}

.block-replace {
    padding: 5.7vw 0;
}

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

.replacepic {
    overflow: hidden;
}

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

.replacepic__arrow {
    position: absolute;
    top: 0;
    left: 0;
    animation: replacepicArrowRotate 3s forwards ease-in-out;
    -webkit-animation: replacepicArrowRotate 3s forwards ease-in-out;
}

.replacepic__text {
    position: absolute;
    left: 0;
    bottom: 0;
}

.replacepic__square {
    display: inline-block;
    width: 60%;
    height: 0;
    padding-top: 60%;
    border-radius: 20px;
    position: absolute;
    left: 7%;
    bottom: -120%;
    opacity: 0;
    background-color: #F06C29;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    -ms-border-radius: 20px;
    -o-border-radius: 20px;
    -moz-border-radius: 20px;
    animation: rotate 2s 1s forwards linear;
    -webkit-animation: rotate 2s 1s forwards linear;
}

@keyframes rotate {
    0% {
        bottom: -100%;
        opacity: 0;
        transform: rotate(0deg);
        -webkit-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -ms-transform: rotate(0deg);
        -o-transform: rotate(0deg);
    }
    15% {
        opacity: 0.2;
    }
    50% {
        bottom: -170%;
        transform: rotate(180deg);
        -webkit-transform: rotate(180deg);
        -moz-transform: rotate(180deg);
        -ms-transform: rotate(180deg);
        -o-transform: rotate(180deg);
    }
    100% {
        opacity: 0;
        transform: rotate(360deg);
        -webkit-transform: rotate(360deg);
        -moz-transform: rotate(360deg);
        -ms-transform: rotate(360deg);
        -o-transform: rotate(360deg);
    }
}

@keyframes replacepicArrowRotate {
    0% {
        top: -20%;
        left: -30%;
        transform: rotate(-40deg) scale(0.5);
        -webkit-transform: rotate(-40deg) scale(0.5);
        -moz-transform: rotate(-40deg) scale(0.5);
        -ms-transform: rotate(-40deg) scale(0.5);
        -o-transform: rotate(-40deg) scale(0.5);
        opacity: 0.1;
    }
    100% {
        top: 0;
        left: 0;
        transform: rotate(0deg) scale(1);
        -webkit-transform: rotate(0deg) scale(1);
        -moz-transform: rotate(0deg) scale(1);
        -ms-transform: rotate(0deg) scale(1);
        -o-transform: rotate(0deg) scale(1);
        opacity: 1;
    }
}

.replace__context {
    padding: 0 12vw;
    text-align: center;
    line-height: 26px;
}

@media(max-width: 1269px) {
    .rppic {
        width: 23%;
    }
}

@media(max-width: 767px) {
    .rppic {
        width: 47%;
    }
}

.rpbox-group1,
.rpbox-group2 {
    display: flex;
    justify-content: space-around;
    align-items: flex-start;
    flex-wrap: wrap;
}

.rpbox-group3 {
    display: flex;
    justify-content: start;
    align-items: start;
    flex-wrap: wrap;
    padding-left: 29px;
}

.rpbox-group1>img.yellowarrow,
.rpbox-group2>img.yellowarrow {
    top: 139px;
}

@media(max-width:1269px) {
    .rpbox-group3 {
        padding-left: 14px;
    }
    .rpbox-group1>img.yellowarrow,
    .rpbox-group2>img.yellowarrow {
        top: 80px;
    }
}

@media(max-width: 767px) {
    .rpbox-group1,
    .rpbox-group2 {
        flex-direction: column;
        align-items: center;
    }
    .rpbox-group3 {
        padding-left: 0;
        justify-content: space-around;
    }
    img.yellowarrow {
        display: none;
    }
}

img.yellowarrow--rotate135 {
    transform: rotate(135deg);
    -webkit-transform: rotate(135deg);
    -moz-transform: rotate(135deg);
    -ms-transform: rotate(135deg);
    -o-transform: rotate(135deg);
}

.rpbox {
    display: inline-block;
    width: 40%;
}

@media(max-width: 767px) {
    .rpbox {
        display: inline-block;
        width: 90%;
        margin: 20px 0;
    }
}

.rpbox__pic {
    width: 100%;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    -ms-border-radius: 20px;
    -o-border-radius: 20px;
    overflow: hidden;
}

.rpbox__pic-inner {
    width: 100%;
    padding-top: calc(100% * 428 / 484);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.rpbox__picimg {
    width: 100%;
    height: auto;
    background-color: #029f7a;
}

.rpbox__title {
    color: #fff;
    position: absolute;
    bottom: 0;
    left: 0;
    font-weight: 500;
    padding-left: 73px;
}

.rpbox__num {
    width: 4.843vw;
    height: 4.843vw;
    border-radius: 100%;
    -webkit-border-radius: 100%;
    -moz-border-radius: 100%;
    -ms-border-radius: 100%;
    -o-border-radius: 100%;
    background-color: #645544;
    color: #e5d801;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    font-size: 0.9vw;
    position: absolute;
    top: 363px;
    left: -1.875vw;
}

.rpbox__num::before {
    content: "";
    display: block;
    width: 5.208vw;
    height: 5.208vw;
    border: 1px solid #645544;
    border-radius: 100%;
    -webkit-border-radius: 100%;
    -moz-border-radius: 100%;
    -ms-border-radius: 100%;
    -o-border-radius: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
}

.rpbox__num>div {
    font-size: 1.45vw;
}

.rpbox__desc {
    padding-left: 73px;
    color: #353535;
    margin-top: 10px;
    line-height: 22px;
}

@media(max-width: 1269px) {
    .rpbox__num {
        top: 204px;
        width: 63px;
        height: 63px;
    }
    .rpbox__num::before {
        width: 69px;
        height: 69px;
    }
}

@media(max-width: 767px) {
    .rpbox__title {
        padding-left: 50px;
    }
    .rpbox__desc {
        padding-left: 50px;
    }
    .rpbox__num {
        width: 53px;
        height: 53px;
        top: 226px;
        left: -3.875vw;
        font-size: 13px;
    }
    .rpbox__num::before {
        width: 59px;
        height: 59px;
    }
    .rpbox__num>div {
        font-size: 16px;
    }
}

@media(max-width: 320px) {
    .rpbox__num {
        top: 146px;
    }
}


/* --------------------
/*  $Wrapper-case
----------------------- */

.wrapper-case {
    min-height: 78vh;
    background-color: #fcfcfc;
}

.block-case {
    padding: 3vw 0;
}

.casebox-group {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
}

.casebox {
    max-width: 353px;
    overflow: hidden;
    border-radius: 16px;
    -webkit-border-radius: 16px;
    -moz-border-radius: 16px;
    -ms-border-radius: 16px;
    -o-border-radius: 16px;
    margin: 1.718vw 0;
}

.casebox-group .casebox {
    width: 48%;
}

.casebox:hover .casebox__check {
    opacity: 1;
}

.casebox__pic-inner {
    width: 100%;
    padding-top: calc(100% * 360 / 532);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

.casebox__name {
    position: absolute;
    left: 16px;
    bottom: 0px;
    letter-spacing: 2px;
    background-color: rgba(96, 194, 120, 0.5);
    padding: 5px 12px;
    border-radius: 6px;
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    -ms-border-radius: 6px;
    -o-border-radius: 6px;
}

h5.casebox__name {
    bottom: 8px;
}

.casebox__check {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    color: #E5AD01;
    font-size: 16px;
    backdrop-filter: blur(4px);
    background-color: rgba(0, 0, 0, 0.3);
    transition: 0.4s all;
    -webkit-transition: 0.4s all;
    -moz-transition: 0.4s all;
    -ms-transition: 0.4s all;
    -o-transition: 0.4s all;
    opacity: 0;
}

.casebox__check i {
    font-size: 22px;
    margin-bottom: 4px;
}

@media(max-width: 1269px) {
    .casebox__name {
        left: 15px;
        bottom: 0;
        font-size: 20px;
    }
    h5.casebox__name {
        bottom: 10px;
    }
}

@media(max-width:767px) {
    .block-case {
        padding: 3vw 0 80px 0;
    }
    .casebox-group .casebox {
        width: 95%;
    }
}

.block-caselist {
    padding: 3vw 0;
}

.block-caselist .casebox-group {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: wrap;
}

.block-caselist .casebox {
    width: 30%;
    overflow: hidden;
    border-radius: 16px;
    -webkit-border-radius: 16px;
    -moz-border-radius: 16px;
    -ms-border-radius: 16px;
    -o-border-radius: 16px;
    margin: 1.718vw calc((100% - 30%*3) / 6);
}

@media(max-width: 1269px) {
    .block-caselist .casebox {
        width: 48%;
        margin: 1.718vw calc((100% - 48%*2) / 4);
    }
}

@media(max-width: 767px) {
    .block-caselist {
        padding: 3vw 0 80px 0;
    }
    .block-caselist .casebox {
        width: 98%;
        margin: 1.718vw calc((100% - 98%*1) / 2);
    }
}

.block-casedetail {
    padding: 3vw 0;
}

.casemom {
    width: 100%;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    -ms-border-radius: 20px;
    -o-border-radius: 20px;
    overflow: hidden;
}

.casemom__pic-inner {
    width: 100%;
    padding-top: calc(100% * 680 / 1230);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    transition: 0.3s all;
    -webkit-transition: 0.3s all;
    -moz-transition: 0.3s all;
    -ms-transition: 0.3s all;
    -o-transition: 0.3s all;
}

.casemom__name {
    position: absolute;
    bottom: 1.3vw;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    color: #fff;
}

.casechild-group {
    margin-top: 40px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: wrap;
}

.casechild {
    display: inline-block;
    width: 16%;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    -ms-border-radius: 20px;
    -o-border-radius: 20px;
    overflow: hidden;
    margin: 0.78vw calc(((100% - 16% * 5) / 8) - 1px);
    cursor: pointer;
}

.casechild:hover {
    opacity: 0.7;
}

.casechild:nth-child(10n+1) {
    margin-left: 0;
}

.casechild:nth-child(10n-1) {
    margin-right: 0;
}

.casechild-bar {
    width: 1px;
    height: 97px;
    background-color: #cfcfcf;
}

@media(max-width:1269px) {
    .casechild-bar {
        height: 50px;
    }
}

@media(max-width:767px) {
    .casechild-group {
        margin-top: 20px;
    }
    .casechild-bar {
        height: 20px;
    }
    .casemom__name {
        font-size: 18px;
    }
}

.casechild-bar:nth-child(10n),
.casechild-bar:last-child {
    display: none;
}

.casechild__pic-inner {
    width: 100%;
    padding-top: calc(100% * 149 / 219);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

.casechild__name {
    display: none;
}

.casedetail__info {
    padding: 64px 0;
    background-color: #fcfcfc;
    box-shadow: 1px 0px 20px 2px rgba(0, 0, 0, 0.1) inset;
}

.casedetail__context {
    line-height: 26px;
    margin: 0 3.02vw;
    padding-bottom: 2.44vw;
    border-bottom: 1px solid #cfcfcf;
}

.casedetail__relate {
    padding: 64px 0;
    background-color: #ffffff;
}

.casedetail__relate .casebox {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

@media(max-width:767px) {
    .casedetail__relate {
        padding: 64px 0 108px;
    }
}


/* --------------------
/*  $Wrapper-feature
----------------------- */

.wrapper-feature {
    min-height: 78vh;
    background-color: #fcfcfc;
}

.block-feature {
    padding: 3vw 0 10vw;
}

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

.feature__intropic {
    max-width: 100%;
}

@media(max-width:767px) {
    .feature__intropic {
        display: none;
    }
}

.feature__intro {
    margin: 8px 0;
}

@media(min-width:768px) {
    .feature__intro-group {
        display: none;
    }
}

.feature__intro>img {
    flex: 1
}

.featuretext {
    flex: 2;
    padding-left: 11px;
    letter-spacing: 1px;
}

.box2-feature {
    padding-top: 86px;
}

.box3-feature {
    padding-top: 86px;
}

.box4-feature {
    padding-top: 86px;
}

.box5-feature {
    padding-top: 86px;
    margin-bottom: 94px;
}

.box6-feature {
    padding-top: 86px;
}

.box7-feature {
    padding-top: 56px;
}

@media(max-width:767px) {
    .box1-feature {
        padding-top: 20px;
    }
    .box2-feature {
        padding-top: 40px;
    }
    .box3-feature {
        padding-top: 40px;
    }
    .box4-feature {
        padding-top: 40px;
    }
    .box5-feature {
        padding-top: 86px;
        margin-bottom: 30px;
    }
    .box6-feature {
        padding-top: 40px;
    }
    .box7-feature {
        padding-top: 40px;
    }
}

.numberball-group {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
}

.numberball {
    width: 282px;
    height: 282px;
    border-radius: 100%;
    -webkit-border-radius: 100%;
    -moz-border-radius: 100%;
    -ms-border-radius: 100%;
    -o-border-radius: 100%;
    margin: 20px 35px;
}

.numberball__num {
    color: #fff;
    font-size: 150px;
    position: absolute;
    left: 14px;
    top: -50px;
    font-family: 'Roboto', sans-serif;
    font-style: italic;
    font-weight: 500;
}

.numberball.numberball-1 {
    background-color: #61c278;
}

.numberball.numberball-2 {
    background-color: #8d765c;
}

.numberball.numberball-3 {
    background-color: #1ca13e;
}

.numberball.numberball-4 {
    background-color: #645544;
}

.numberball.numberball-5 {
    background-color: #00795c;
}

.numberball .numberball__num {
    color: #E6DA05;
}

@supports(-webkit-text-stroke: 1px #a58d45) {
    .numberball.numberball-1 .numberball__num {
        -webkit-text-stroke: 1px #61c278;
        color: #fff;
    }
    .numberball.numberball-2 .numberball__num {
        -webkit-text-stroke: 1px #8d765c;
        color: #fff;
    }
    .numberball.numberball-3 .numberball__num {
        -webkit-text-stroke: 1px #1ca13e;
        color: #fff;
    }
    .numberball.numberball-4 .numberball__num {
        -webkit-text-stroke: 1px #645544;
        color: #fff;
    }
    .numberball.numberball-5 .numberball__num {
        -webkit-text-stroke: 1px #00795c;
        color: #fff;
    }
}

.numberball__content {
    position: absolute;
    width: 100%;
    height: 100%;
    padding: 30% 17% 0 17%;
}

.numberball__title {
    color: #fff;
    text-align: center;
}

.numberball__text {
    color: #fff;
}