section{
    position: relative;
    margin: 0 auto;
}
a {
    color: #000;
    font-weight: bold;
}
.btn a{
    color: #fff;
    display: inline-block;
    width: 100%;
    height: 100%;
    text-align: center;
    line-height: 1.3em;
} 
.kw-str{
    font-size: 90%;
    font-weight: bold;
    color: #003700;
}
.kw-contents{
    max-width: 1090px;
    margin: 0 auto;
    position: relative;
}
.kw-description{
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    max-width: 100%;
}
.blogs{
    max-width: 700px;
    margin: 0 auto;
}
#page_blog_list .blogs{
    max-width:100%;
}
.blogs a, .news a{
    font-weight:normal;
    padding:10px;
    display:block;
}
.blogs .news-title, .news .news-title{
    font-weight:bold;
}
.blogs a:hover, .news a:hover{
    box-shadow: 0 .1rem 1rem rgba(0,0,0,.15);
    text-decoration:none;
    color:#555;
}
.top-mews{
    margin-left: 30%;
}
section.kw-logo{
    overflow: hidden;
    max-width: 100%;
}
.ec-shelfGrid__item a img:hover {
    opacity: 0.8;
}
.blockTopBtn{
    position:fixed;
    right:30px;
    bottom:90px;
    z-index:9999;
}
.blockTopBtn img{
    width:100px;
}


#page_product_detail .kw-logo{
    background: #f2fbe8; /* Old browsers */
    background: -moz-linear-gradient(left, #f2fbe8 0%, #e4f1e8 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(left, #f2fbe8 0%,#e4f1e8 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right, #f2fbe8 0%,#e4f1e8 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f2fbe8', endColorstr='#e4f1e8',GradientType=1 ); /* IE6-9 */
}
#page_product_detail .ec-layoutRole__header{
    background: #f2fbe8; /* Old browsers */
    background: -moz-linear-gradient(left, #f2fbe8 0%, #e4f1e8 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(left, #f2fbe8 0%,#e4f1e8 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right, #f2fbe8 0%,#e4f1e8 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f2fbe8', endColorstr='#e4f1e8',GradientType=1 ); /* IE6-9 */
    margin-bottom: 20px;
}
#page_product_detail .slide-item{
    border-radius: 12px;
    overflow: hidden;
}
#page_product_detail .ec-productRole .ec-productRole__title .ec-headingTitle{
    color: #000;
}
#page_product_detail .ec-productRole__profile{
    display: -ms-flexbox;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 0;
}
#page_product_detail .ec-productRole__profile .slideThumb{
    margin-bottom: 25px;
    width: 28%;
    opacity: .8;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
    cursor: pointer;
    border-radius: 6px;
    margin: 10px;
    overflow: hidden;
}


/*  main_visual  */
.main_visual .slick-slide{
    height: 500px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position:center center; 
}
.slick-dots {
    position: absolute;
    bottom:80px;
    display: block;
    width: 100%;
    padding: 0;
    list-style: none;
    text-align: center;
}

.slick-dots li {
    position: relative;
    display: inline-block;
    width: 60px;
    height: 20px;
    margin: 0 5px;
    padding: 0;

    cursor: pointer;
}

.slick-dots li button {
    font-size: 0;
    line-height: 0;
    display: block;
    width: 60px;
    height: 20px;
    padding: 5px;
    cursor: pointer;
    color: transparent;
    border: 0;
    outline: none;
    background: transparent;
}

.slick-dots li button:hover,
.slick-dots li button:focus {
    outline: none;
}

.slick-dots li button:before {
    content: " ";
    line-height: 20px;
    position: absolute;
    top: 0;
    left: 0;
    width: 58px;
    height: 8px;
    text-align: center;
    background: #fff;
    border-radius: 8px;

}

.slick-dots li.slick-active button:before {
    background: #88DC47;
}

.slick-dots li button.thumbnail img {
    width: 0;
    height: 0;
}

#main_menu{
    position: relative;
    top: -120px;
    width: auto;
    max-width:1000px;
    margin: 0 auto -60px;
    padding: 14px;
}
#main_menu .kw_top_news{
    font-size: 80%;
}
#main_menu .under_logo{
    position: absolute;
    top: -20px;
}
#main_menu .kw_top_navi li{
    display: inline-block;
    padding: 0 12px;
}
#main_menu .menu-btn{
    bottom: -3px;
}
#main_menu .menu-btn a,
footer .menu-btn a{
    display: block;
    width: 86%;
    height: 44px;
    position: absolute;
    
}
#main_menu .menu-tel,
#sp_main_menu  .menu-tel,
.sp-menu-wrapper .menu-tel,
footer .menu-tel{
    background: url('../img/top/icon_tel.png') no-repeat center #44a164;
    bottom: 44px;
}
#main_menu .menu-mail,
#sp_main_menu  .menu-mail,
.sp-menu-wrapper .menu-mail,
footer .menu-mail{
    background: url('../img/top/icon_mail.png') no-repeat center #88DC47;
    bottom: 0;
}

.sp-menu-wrapper .menu-tel,
.sp-menu-wrapper .menu-mail{
    height: 40px;
    display: block;
}
.w-40{
    width: 40%;
}
.open .menu-tel,
.open .menu-mail{
    visibility: hidden;
}
.sec-title{
    position: relative;
    font-size: 300%;
    font-weight: 900;
    width: 300px;
    color: #003700;
}
#kw-about h3,
#kw-sales-request h3{
    position: relative;
    font-size: 300%;
    font-weight: 900;
    width: 300px;
    color: #003700;
}
#kw-about .sec-bg,
#kw-sales-request .sec-bg,
#kw-guide .sec-bg{
    position: absolute;
    top: 40px;
    right: 0;
    height: 360px;
    padding: 40px 280px;
    width: 88%;
    background: #f2fbe8; /* Old browsers */
    background: -moz-linear-gradient(left, #f2fbe8 0%, #e4f1e8 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(left, #f2fbe8 0%,#e4f1e8 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right, #f2fbe8 0%,#e4f1e8 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f2fbe8', endColorstr='#e4f1e8',GradientType=1 ); /* IE6-9 */
}
#kw-sales-request .sec-bg{
    top: 10%;
    right: 3%;
    padding: 0;
    width: 78%;
}
#kw-sales-request .sec-bg .kw-str{
    width: 60%;
    margin: 4% 4% auto auto;
}
#kw-sales-request .sec-bg .kw-str p{
    margin: 20px 0;
    font-size: 150%;
}
#kw-about .card,
#kw-sales-request .card{
    width: 280px;
}
#kw-sales-request .card{
    margin-top: 60px;
}
#kw-about .card h5,
#kw-sales-request .card h5{
    height: 170px;
    margin-top: 14px;
    padding: 80px 20px;
    font-weight: 900;
}
#kw-sales-request .card h5{
    height: 60px;
    padding: 20px 20px 30px 100px;
}
#kw-sales-request .card h5 span{
    color: #88DC47;
    font-weight: 900;
    font-size: 110%;
}
#kw-sales-request .card-body{
    font-size: 80%;
    font-weight: bold;
}
#kw-about .card .feature01{
    background: url('../img/top/img_feature01.png') no-repeat center;
}
#kw-about .card .feature02{
    background: url('../img/top/img_feature02.png') no-repeat center;
}
#kw-about .card .feature03{
    background: url('../img/top/img_feature03.png') no-repeat center;
}
#kw-sales-request .card .img-wrapper{
    position: absolute;
    top: 23px;
    left: -30px;
}
#kw-about .btn,
#kw-guide .btn,
#product-list .btn{
    background: #44a164;
    color: #fff;
}

#product-list,
#category-navi-pc{
    position: relative;
    margin: 40px 0 0;
    z-index: 1;
}
#product-list .bg{
    width: 300px;
    height: 80px;
    position: absolute;
    top: 40px;
    left: 0;
    background: #f2fbe8; /* Old browsers */
    background: -moz-linear-gradient(left, #f2fbe8 0%, #e4f1e8 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(left, #f2fbe8 0%,#e4f1e8 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right, #f2fbe8 0%,#e4f1e8 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f2fbe8', endColorstr='#e4f1e8',GradientType=1 ); /* IE6-9 */
}
#product-list .category-wrapper{
    width: 75%;
    margin-left: auto;
    position: absolute;
    top: 0;
    right: 0;
}
#product-list .category-wrapper li{
    padding: 0 1rem;
}
.product-name{
    font-weight: 600;
}
    

.kw-products{
    margin-top: 160px;
}
.kw-cate{
    margin: 0;
    padding: 16px 10px;
    font-size:110%;
    height: 94px;
    color: #fff;
}
#category-navi-pc .kw-cate{
    padding: 34px;
}
/*#product-list .btn{
    background: #44a164;
    color: #fff;
    position: absolute;
    top: 0;
    right: 40px;
    padding: 12px 40px;
}*/

#page_homepage #kw-guide{
    background: #f7f9f7;
}
#kw-guide{
    padding: 100px 0 40px;
}

#kw-guide .sec-bg{
    margin-top: 90px;
    height: 420px;
}
#kw-guide .guid-icon{
    box-shadow: 0 .5rem 1rem rgba(0,0,0,.15);
}
#kw-guide .guids .px-3{
    width: 20%;
}
#kw-guide .guids .px-3 img{
    width: 100%;
}

#kw-faq{
    background: #f7f9f7;
    padding: 70px 0 20px;
    position: relative;
}
#kw-faq .sec-bg{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    margin-top: 100px;
    background: #fff;
}
#kw-faq .faq{
    width: 23%;
    text-align: center;
}
#kw-faq .sec-title{
    width: 50%;
}
#kw-faq .faq1{
    background:url(../img/top/img_faq1.jpg) no-repeat center/cover;
}
#kw-faq .faq2{
    background:url(../img/top/img_faq2.jpg) no-repeat center/cover;
}
#kw-faq .faq3{
    background:url(../img/top/img_faq3.jpg) no-repeat center/cover;
}
#kw-faq .faq4{
    background:url(../img/top/img_faq4.jpg) no-repeat center/cover;
}
#kw-faq .faq__inner{
    overflow:hidden;
    position:relative;
    height: 200px;
}
#kw-faq .faqs .caption{
    color:#fff;
    font-size: 90%;
}
#kw-faq .faqs .mask{
    width:100%;
    height:100%;
    position:absolute;
    top:0;
    left:0;
    opacity:0;
    background-color:rgba(0,0,0,0.7);
    transition:all 0.6s ease;
}
#kw-faq .faq:hover .mask{
    opacity:1;
    padding-top:50px;
}
#kw-faq .btn__wrapper .btn{
    background: #44a164;
    color: #fff;
}

#kw-news,
#kw-blog{
    padding: 40px 0;
    position: relative;
}
#kw-news .sec-title,
#kw-blog .sec-title{
    padding-left: 50px;
    position: relative;
}
#kw-news .sec-bg,
#kw-blog .sec-bg{
    position: absolute;
    top: 70px;
    left: 0;
    height: 180px;
    width: 30%;
    background: #f2fbe8; /* Old browsers */
    background: -moz-linear-gradient(left, #e4f1e8 0%, #f2fbe8 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(left, #e4f1e8 0%,#f2fbe8 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right, #e4f1e8 0%,#f2fbe8 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e4f1e8', endColorstr='#f2fbe8',GradientType=1 ); /* IE6-9 */
}
#kw-blog .sec-bg{
    top: 30px;
    height: 240px;
}
#kw-news .btn,
#kw-blog .btn{
    background: #44a164;
    color: #fff;
    position: absolute;
    top: 100px;
    left: 80px;
    width: 180px;
    height: 50px;
}
#kw-blog .blog-card{
    width: 220px;
    font-size: 90%;
}
#kw-blog-list .blog-card{
    max-width: 24%;
    font-size: 90%;
}
#kw-blog-list .blog-title{
    font-size: 110%;
    font-weight: 600;
}
#kw-blog-list .blog-img img{
    width: 100%;
}
#kw-blog .blog-img{
    height: 150px;
    overflow: hidden;
}
#kw-blog .blog-img img{
    width: 100%;
}

#kw-contact,
#kw-footer-top{
    padding: 80px 0 40px;
    position: relative;
    margin: 0 0 60px;
}
#kw-contact .sec-bg,
#kw-contact-page .sec-bg,
#kw-footer-top .sec-bg{
    position: absolute;
    top: 110px;
    left: 0;
    height: 100%;
    width: 100%;
    background: #f2fbe8; /* Old browsers */
    background: -moz-linear-gradient(left, #e4f1e8 0%, #f2fbe8 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(left, #e4f1e8 0%,#f2fbe8 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right, #e4f1e8 0%,#f2fbe8 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e4f1e8', endColorstr='#f2fbe8',GradientType=1 ); /* IE6-9 */
}
#kw-footer-top .sec-bg{
    top: 260px;
}
#kw-contact .sec-title{
    width: 100%;
    text-align: left;
}
#kw-contact .btn,
#kw-footer-top .btn,
#kw-footer-top .btn-lg{
    width: 360px;
    line-height: 2.5em;
    color: #fff;
}
#kw-footer-top .btn-lg{
    color: #222;
    display: block;
}
#kw-contact .btn.member,
#kw-footer-top .btn.member{
    background: #44a164;
}
#kw-contact .btn.request,
#kw-footer-top .btn.request{
    background: #88DC47;
}

footer{
    position: relative;
    padding: 40px 0 80px;
    background: #f2fbe8; /* Old browsers */
    background: -moz-linear-gradient(left, #e4f1e8 0%, #f2fbe8 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(left, #e4f1e8 0%,#f2fbe8 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right, #e4f1e8 0%,#f2fbe8 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e4f1e8', endColorstr='#f2fbe8',GradientType=1 ); /* IE6-9 */
}
footer .sec-bg{
    height: 100%;
    width: 100%;
    background: url('../img/top/img_body_foot.jpg') no-repeat center bottom;
    background-size:cover ;
    position: absolute;
    left: 0;
    bottom: 0;
}
footer .footer__inner{
    margin: 10px 6%;
    padding: 3% 5%;
    font-size: 80%;
    position: relative;
    background: #fff;
}
footer .profile{
    border-top: 1px solid #88DC47;
    margin: 20px 10%;
}
footer .profile div{
    margin: auto;
}
footer .company{
    font-size: 90%;
}
footer dt, footer dd{
    display: inline-block;
}
footer .col-5{
    padding: 0;
}
footer .col-2{
    padding: 0;
    height: 120px;
}

/*
    下層レイアウト
*/
#category-navi-pc a{
    display: inline-block;
    color: #fff;
    width: 25%;
}

/*
    products/list
*/
.ec-shelfGrid .ec-shelfGrid__item-image{
    height: 170px;
    margin-bottom: 4px;
}
.ec-shelfGrid .ec-shelfGrid__item img{
    height: 170px;
    width: 100%;
    object-fit: cover;
    border-radius: 8px;
}
.ec-shelfGrid .ec-shelfGrid__item .product-list-icon{
    width: 40px;
    height: 22px;
    object-fit: cover;
    border-radius: 2px;
}
.ec-productRole__categor{
    flex:100%;
    max-width: 100%;
    padding:6px 0 0;
}
.price02-default{
    flex:100%;
    max-width: 100%;
    padding:0;
}
.ec-shelfGrid__item .item_name{
    margin:6px 0 0;
}
.ec-shelfGrid__item .row{
    margin: 0;
}


/*
    products/detail
*/
#kw-recommend{
    margin: 100px 0 0;
}
#kw-recommend .sec-bg{
    width: 40%;
    height: 90px;
    position: absolute;
    top: -10px;
    left: 0;
    background: #f2fbe8; /* Old browsers */
    background: -moz-linear-gradient(left, #f2fbe8 0%, #e4f1e8 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(left, #f2fbe8 0%,#e4f1e8 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right, #f2fbe8 0%,#e4f1e8 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f2fbe8', endColorstr='#e4f1e8',GradientType=1 ); /* IE6-9 */
}
#kw-recommend .sec-title{
    margin: 20px 0;
}

/*
    help/about
*/
#kw-help-about{
    position: relative;
    padding-bottom: 50px;
}
#kw-help-about .btns{
	margin: 16px 24% 20px;
}
#kw-help-about .btns .btn{
    color: #fff;
    width: 160px;
    height: 50px;
    line-height: 2.2em;
    background: #baea98; /* Old browsers */
    background: -moz-linear-gradient(left, #baea98 0%, #71ba89 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(left, #baea98 0%,#71ba89 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right, #baea98 0%,#71ba89 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#baea98', endColorstr='#71ba89',GradientType=1 ); /* IE6-9 */
}
.faq #kw-help-about .btns{
    margin: 16px 20% 20px;
}
.faq #kw-help-about .btns .btn{
    width: 140px;
}
#kw-help-about .sec-bg{
    width: 100%;
    height: 100%;
    position: absolute;
    top: 220px;
    left: 0;
    background: #f2fbe8; /* Old browsers */
    background: -moz-linear-gradient(left, #f2fbe8 0%, #e4f1e8 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(left, #f2fbe8 0%,#e4f1e8 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right, #f2fbe8 0%,#e4f1e8 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f2fbe8', endColorstr='#e4f1e8',GradientType=1 ); /* IE6-9 */
}
#kw-help-about .logo-wrapper{
    background: #fff;
    padding: 10px;
    width: 45%;
    min-width: 340px;
    text-align: center;
    margin: 130px auto 0;
}
#kw-help-about .sec-title{
    margin: 40px 20%;
    width: auto;
    text-align: center;
    font-size: 250%;
}
#kw-help-about .kw-str{
    width: 50%;
}

#kw-about-feature{
    position: relative;
    background: #fff;
}
#kw-about-feature .feat{
    color: #fff;
    background: #118b35;
    font-size: 150%;
    font-weight: 700;
    padding: 10px 20px;
    text-align: right;
    letter-spacing: 0.2em;
}
#kw-about-feature .sub-title{
    font-size: 150%;
    font-weight: 700;
    padding: 10px 20px;
}
#kw-about-feature .feature{
    padding: 50px 44px 56px;
    font-size: 90%;
    width: 60%;
    background: #fff;
    margin: 1.5rem;
}
#kw-about-feature .img-feat01{
    background: url('../img/top/icon_feature_large_01.png')no-repeat top right;
}
#kw-about-feature .img-feat02{
    background: url('../img/top/icon_feature_large_02.png')no-repeat top right;
}
#kw-about-feature .img-feat03{
    background: url('../img/top/icon_feature_large_03.png')no-repeat top right;
}

#kw-mission{
    position: relative;
    background: #f7f9f7;
    padding: 80px 0 40px;
}
#kw-mission .sec-bg{
    width: 72%;
    height: 90px;
    position: absolute;
    top: 120px;
    left: 0;
    right: 0;
    margin: 0 auto;
    background: #f2fbe8; /* Old browsers */
    background: -moz-linear-gradient(left, #f2fbe8 0%, #e4f1e8 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(left, #f2fbe8 0%,#e4f1e8 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right, #f2fbe8 0%,#e4f1e8 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f2fbe8', endColorstr='#e4f1e8',GradientType=1 ); /* IE6-9 */
}
#kw-mission h3{
    color: #003700;
    font-size: 160%;
    font-weight: 700;
    margin-left: 30px;
}
#kw-mission .mission{
    font-size: 80%;
    margin: 70px auto;
    width: 75%;
}

#kw-company{
    margin: 80px 0;
    position: relative;
    
}
#kw-company .sec-bg{
    width: 27%;
    height: 260px;
    position: absolute;
    top: 40px;
    left: 0;
    background: #f2fbe8; /* Old browsers */
    background: -moz-linear-gradient(left, #e4f1e8 0%, #f2fbe8 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(left, #e4f1e8 0%,#f2fbe8 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right, #e4f1e8 0%,#f2fbe8 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f2fbe8', endColorstr='#f2fbe8',GradientType=1 ); /* IE6-9 */
}
#kw-company .row{
    font-size: 90%;
    margin: 4px 0;
}
.text-justify{
    -moz-text-align-last: justify;
    text-align-last: justify;
    text-align: justify;
    text-justify: inter-ideograph;
}
#kw-company img{
    width: 100%;
}

#kw-step-guide{
    position: relative;
}
#kw-step-guide .sec-bg{
    width: 50%;
    height: 90px;
    position: absolute;
    top: 40px;
    left: 0;
    background: #f2fbe8; /* Old browsers */
    background: -moz-linear-gradient(left, #f2fbe8 0%, #e4f1e8 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(left, #f2fbe8 0%,#e4f1e8 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right, #f2fbe8 0%,#e4f1e8 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f2fbe8', endColorstr='#e4f1e8',GradientType=1 ); /* IE6-9 */
}
#kw-step-guide .top-btn{
    background: #87da4c url('../img/top/icon_btn_arrow.png') no-repeat center;
    width: 350px;
    height: 75px;
    color: #fff;
    position: absolute;
    top: 40px;
    right: 10px;
}
#kw-step-guide .top-btn span{
    padding-top: 10px;
    display: inline-block;
    font-weight: 500;
}
#kw-step-guide .sec-title{
    margin: 30px 0 150px;
}
#kw-step-guide .step{
    margin: 30px 20px;
    padding-bottom: 40px;
}
#kw-step-guide .step .ht{
    background: #44a164;
    font-size: 180%;
    font-weight: 600;
    color: #fff;
    margin-left: 30px;
    padding: 4px 100px 4px;
}
#kw-step-guide .step .ht span{
    font-size: 80%;
    font-weight: 600;
    padding: 4px 30px;
}
#kw-step-guide .step .mb{
    font-weight: 500;
    padding: 60px 60px;
    margin: 40px 0 60px auto;
    width: 60%;
    background: #fff;
}
#kw-step-guide .step01{
    background: url('../img/top/icon_step_bg01.png') no-repeat left 26px;
}
#kw-step-guide .step02{
    background: url('../img/top/icon_step_bg02.png') no-repeat left 26px;
}
#kw-step-guide .step03{
    background: url('../img/top/icon_step_bg03.png') no-repeat left 26px;
}
#kw-step-guide .step04{
    background: url('../img/top/icon_step_bg04.png') no-repeat left 26px;
}
#kw-step-guide .step05{
    background: url('../img/top/icon_step_bg05.png') no-repeat left 26px;
}

#kw-step-guide-other .sec-bg{
    background: #f2fbe8; /* Old browsers */
    background: -moz-linear-gradient(left, #f2fbe8 0%, #e4f1e8 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(left, #f2fbe8 0%,#e4f1e8 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right, #f2fbe8 0%,#e4f1e8 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f2fbe8', endColorstr='#e4f1e8',GradientType=1 ); /* IE6-9 */
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
#kw-step-guide-other .wrapper{
    margin:10px auto;
    padding: 40px 0;
    width: 55%;
}
#kw-step-guide-other .text-shadow{
    color: #44a164;
    text-shadow:2px 2px 10px rgba(0,0,0,0.5);
}
#kw-step-guide-other dd{
    font-size: 80%;
    padding-left: 20px;
    font-weight: 500;
}

#kw-step-guide .sales-request .step .mb{
    font-weight: 700;
}
#kw-step-guide .sales-request .step .mb p{
    text-align: right;
    font-size: 80%;
}
#kw-step-guide .sales-request .step01{
    background: url('../img/top/icon_step_bg_01.png') no-repeat left 26px;
}
#kw-step-guide .sales-request .step02{
    background: url('../img/top/icon_step_bg_02.png') no-repeat left 26px;
}
#kw-step-guide .sales-request .step03{
    background: url('../img/top/icon_step_bg_03.png') no-repeat left 26px;
}
#kw-step-guide .sales-request .step04{
    background: url('../img/top/icon_step_bg_04.png') no-repeat left 26px;
}
#kw-step-guide .sales-request .step05{
    background: url('../img/top/icon_step_bg_05.png') no-repeat left 26px;
}
#kw-step-guide .sales-request .step06{
    background: url('../img/top/icon_step_bg_06.png') no-repeat left 26px;
}
#kw-step-guide .sales-request .step07{
    background: url('../img/top/icon_step_bg_07.png') no-repeat left 26px;
}
#kw-step-guide .sales-request .step08{
    background: url('../img/top/icon_step_bg_08.png') no-repeat left 26px;
}
#kw-step-guide .sales-request .step09{
    background: url('../img/top/icon_step_bg_09.png') no-repeat left 26px;
}
#kw-step-guide .sales-request .step10{
    background: url('../img/top/icon_step_bg_10.png') no-repeat left 26px;
}

.faq #kw-help-about .sec-bg{
    top: 30px;
    height: 100px;
}
.faq-item{
    margin: 50px 0 100px;
}
.faq-item .sec-bg{
    background: #f2fbe8; /* Old browsers */
    background: -moz-linear-gradient(left, #f2fbe8 0%, #e4f1e8 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(left, #f2fbe8 0%,#e4f1e8 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right, #f2fbe8 0%,#e4f1e8 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f2fbe8', endColorstr='#e4f1e8',GradientType=1 ); /* IE6-9 */
    position: absolute;
    top: 0;
    margin: 0 auto;
    left: 25%;
    right: 25%;
    height: 80%;
}
.faq-item .sec-title{
    background: #44a164;
    font-size: 180%;
    font-weight: 600;
    color: #fff;
    padding: 4px 10%;
    width: 62%;
}
.faq-item .kw-contents{
    max-width: unset;
}
.faq-item .step{
    width: 50%;
    margin: 20px 0 20px 10%;
    padding: 3%;
    background: #fff;
}
.faq-item .step .ht{
    font-weight: 800;
    font-size: 120%;
    margin: 0 0 10px;
}
.faq-item .step .mb{
    font-weight: 600;
    font-size: 80%;
}
.faq-item .img-wrapper{
    position: absolute;
    top: -30px;
    width: 100%;
    right: 0;
    height: 100%;
}
#kw-faq-item .img-wrapper{
    background: url(../img/top/img_faq4.jpg) no-repeat 80% 0;
    background-size: 50%;
}
#kw-faq-pay .img-wrapper{
    background: url(../img/top/img_faq2.jpg) no-repeat 80% 0;
    background-size: 50%;
}
#kw-faq-ship .img-wrapper{
    background: url(../img/top/img_faq1.jpg) no-repeat 80% 0;
    background-size: 50%;
}
#kw-faq-deliv .img-wrapper{
    background: url(../img/top/img_faq3.jpg) no-repeat 80% 0;
    background-size: 50%;
}

#kw-contact-page .sec-bg{
    top: 30px;
}
#kw-contact-page .sec-title{
    margin: 40px 20%;
    width: auto;
    text-align: center;
    font-size: 250%;
}
#kw-contact-page .kw-str p{
    font-size: 180%;
    font-weight: 800;
}
#kw-contact-page .kw-str{
    width: 64%;
    margin: 3% auto;
    padding: 2%;
}
#kw-contact-btns{
    margin: 8% 0 4%;
}
#kw-contact-btns .d-flex{
    margin: 50px 10%;
}
#kw-contact-btns .kw-contents{
    text-align: center;
    font-size: 130%;
}
#kw-contact-btns .str{
    font-weight: 800;
    font-size: 120%;
    color: #44a164;
}
#kw-contact-btns .btn{
    display: block;
    width: 30%;
}
#kw-contact-btns .btn-tel{
     margin: 20px auto;
     background: #44a164;
     color: #fff;
     font-weight: 600;
 }
 #kw-contact-btns .btn-tel img{
     width: 26px;
     margin-right: 20px;
 }
 #kw-contact-btns .btn-active{
     background: #44a164;
     font-size: 90%;
     width: 42%;
 }
 #kw-contact-btns .btn-nonactive{
     background: #fff;
     border: 1px solid #88DC47;
     font-size: 90%;
     width: 42%;
 }
 #kw-contact-btns .btn-nonactive a{
     color: #88DC47;
 }
 #kw-contact-btns .sec-title{
     margin: 0 auto;
     font-size: 170%;
     text-align: center;
 }
 #kw-form{
     width: 70%;
 }
 #kw-form dl{
     border: 0;
     border-bottom: 1px solid #44a164;
 }
 #kw-form .ec-borderedDefs{
     border: 0;
 }
#kw-blog-list .sec-title,
#kw-news-list .sec-title,
#kw-blog-detail .sec-title{
    text-align: center;
    line-height: 2.4em;
    width: 100%;
    background: #f2fbe8; /* Old browsers */
    background: -moz-linear-gradient(left, #f2fbe8 0%, #e4f1e8 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(left, #f2fbe8 0%,#e4f1e8 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right, #f2fbe8 0%,#e4f1e8 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f2fbe8', endColorstr='#e4f1e8',GradientType=1 ); /* IE6-9 */
}
#kw-news-list .news,
#kw-blog-detail .kw-contents{
    width:80%;
    margin:0 auto;
}
#kw-blog-detail .blog-img{
    text-align:center;
}
#kw-news-list .news-title{
    font-size: 200%;
    font-weight:600;
    padding-bottom: 10px;
}
/*
 * Pager
 */
.ec-pager .ec-pager__item{
    background: #88DC47;
}
.ec-pager .ec-pager__item--active{
    background: #44a164;
}
.ec-blockTopBtn{
    z-index: 999;
}
/*
 * smart phone
 */
.only-sp{
    display: none;
}
#sp_main_menu span a{
    display: block;
    width: 60px;
    height: 60px;
    font-size: 60%;
    color: #fff;
}
#sp_main_menu .row{
    margin: 0;
}
#sp_main_menu .menu-tel,
#sp_main_menu .menu-mail{
    height: 40px;
}

#sp_menu_btn{
    position: absolute;
    top: 24px;
    right: 24px;
    height: 60px;
    width: 60px;
    background: #055;
    color: #fff;
    text-align: center;
    font-size:60%;
}
.sp-main-btns .menu_wrap{
    display: none;
}
.sp-main-btns .inline-show{
    display: inline-block;
}
.sp-main-btns .menu{
    height: 90px;
    background: #055;
    color: #fff;
    text-align: center;
}
#sp_menu_btn .menu i,
.sp-main-btns .menu i{
    font-size: 340%;
    padding-top:10px;
}
#sp_main_menu .sp-main-btns.open{
    z-index: 99991;
    position:fixed;
    top:3%;
    right:5%;
}
#sp_menu{
    display: none;
    width: 100%;
    height: 100%;
    background: rgba(255,255,255,0.9);
    position: fixed;
    top: 0;
    left: 0;
    z-index: 99990;
}
#sp_menu .sp-menu-wrapper{
    background: #fff;
    width: 90%;
    position:relative;
    top:10%;
    padding: 10%;
}
#sp_menu ul{
    list-style: none;
    padding: 0;
}
#sp_menu .gran-menu{
    width: 100%;
    margin: 14px 0 30px;
}
#sp_menu .gran-menu li{
    margin: 8px 0;
    position:relative;
}
#sp_menu .gran-menu li i{
    position: absolute;
    right: 0;
    
}
#sp_menu .s-text{
    font-size: 80%;
    font-weight: 600;
}
@media screen and (max-width:767px){
    .only-pc{
        display: none!important;
    }
    .only-sp{
        display: block;
    }
    .main_visual .slick-slide{
        height: 300px;
    }
    #page_product_detail .slick-slider div{
        height: 300px;
    }
    
    .slick-dots{
        bottom:0;
    }
    
    .slick-active{
        z-index: 999;
    }
    .ec-sliderRole{
        padding: 0;
    }
    .top-logo-icon{
        position: absolute;
        top: 20px;
        left: 20px;
    }
    .top-logo-icon img{
        width: 60px;
    }
    .ec-sliderRole{
        margin-bottom: 0;
    }
    #sp_main_menu .sub{
        position: initial;
        width: 50%;
        line-height: 1.6em;
        padding-left:10%;
        text-align: left;
        height: auto;
        padding-top: 14px;
    }
    #sp_main_menu .length{
        writing-mode: initial;
    }
    #kw-about h3,
    .sec-title{
        font-size: 220%;
        width: auto;
        margin-left: 20px;
    }
    #kw-about h3{
        margin-bottom: 80px;
    }
    #kw-about h3 br,
    .sec-title h3{
        display: none;
    }
    #kw-about .sec-bg{
        padding: 8% 2% 10% 10%;
        height: 600px;
        top: 20px;
    }
    #kw-about{
        margin-top: 30px;
    }
    #kw-about .card{
        width: 80%;
        margin-bottom: 30px;
    }
    #product-list .category-wrapper{
        position:relative;
        margin: 50px auto;
        width: 95%;
    }
    #product-list .category-wrapper ul{
        padding: 0;
    }
    #product-list .category-wrapper li{
        width: 25%;
        padding: 0 6px 0 4px;
        font-size: 90%;
        margin-bottom: 10px;
    }
    #product-list .category-wrapper img{
        width: 100%;
    }
    #product-list  .kw-products{
        margin-top: 0;
    }
    #product-list .kw-cate{
        width: 50%;
    }
    #product-list .btn{
        position: initial;
        margin: 30px auto;
        padding: .5rem 1rem;
        display: block;
    }
    #kw-guide .guids .px-3{
        margin:10px 2px;
        width: 32%;
        background: #fff;
        box-shadow: 0 .5rem 1rem rgba(0,0,0,.15);
        padding: 0!important;
    }
    #kw-guide .guids .px-3 .guid-icon{
        box-shadow: none;
    }
    #kw-guide .guids .px-3 .kw-str{
        font-size: 70%;
        margin: auto 0;
    }

    #kw-faq .faq{
        width: 24%;
    }

    #kw-news .sec-bg, #kw-blog .sec-bg {
        height: 50px;
        width: 70%;
    }
    #kw-news .btn, #kw-blog .btn{
        display: block;
        margin: auto;
        position: initial;
    }

    .faq #kw-help-about .btns{
        margin: 0;
    }
    #kw-help-about .btns{
        margin: 5%;
    }
    #kw-help-about .btns .btn{
        margin: 10px;
    }
    #kw-help-about .sec-title{
        margin: 30px 5%;
        font-size:160%;
    }
    .faq-item .step{
        width: 80%;
    }
    .faq-item .sec-title{
        font-size: 150%;
    }
    #kw-help-about .kw-str{
        width:80%;
    }
    #kw-about-feature .feature{
        margin: 100px auto 0;
        width: 100%;
    }
    
    #category-navi-pc .kw-cate{
        padding: 32px 0;
    }
    
    #kw-step-guide .sec-title{
        margin: 30px;
    }
    #kw-step-guide .top-btn{
        position:relative;
        top: 0;
        right: 0;
        left: 20%;
    }
    #kw-step-guide .step .ht{
        padding: 4px 0 4px 10px;
        font-size: 130%;
    }
    #kw-step-guide .step .mb{
        margin: 230px 0 0px 0;
        width: 100%;
        padding:5%;
        width: 100%;
    }
    
    #kw-sales-request h3{
        margin-left:5%;
    }
    #kw-sales-request .sec-bg {
        right: 0;
        top: 5%;
        height: 560px;
        width: 70%;
    }
    #kw-sales-request .sec-bg .kw-str{
        margin: 25% 4% auto -50px;
        width: 110%;
    }
    #kw-sales-request .card:first-child{
        margin-top: 130px;
    }
    #kw-sales-request .card{
        margin-top: 20px;
        width: 100%;
    }
    .blog-card{
        border:1px solid #eee;
        border-radius: 4px;
    }
    .news img{
        width: 100%;
    }
    .top-mews{
        margin-left: 5%
    }
    .top-mews a {
        margin: 0 10px;
        font-weight: normal;
    }
    .top-mews .col-img,
    .top-mews .col-date{
        flex: 0 0 23.666667%;
        max-width: 23.666667%;
    }
    .top-mews .col-title{
        flex: 0 0 43.666667%;
        max-width: 43.666667%;
    }
    #kw-blog-list .blog-card{
        width: 46%;
        max-width: 46%;
    }
    
    #kw-contact-page .sec-title{
        margin: 30px 10px;
    }
    #kw-contact-page .kw-str{
        width: 90%;
    }
    #kw-contact-btns .str{
        font-size: 90%;
    }
    #kw-contact-btns .btn{
        width: 70%;
    }
    #kw-contact-btns .btn-active,
    #kw-contact-btns .btn-nonactive{
        width:50%;
    }
    #kw-contact-btns .d-flex{
        margin: 50px 0;
    }
    .ec-sliderRole{
        padding: 0!important;
    }
    #kw-faq .sec-title{
        width: 100%;
        margin-bottom:50px;
    }
    #kw-faq .faq__inner{
        height: 100px;
    }
    #kw-contact .btn.member,
    #kw-footer-top .btn.member,
    #kw-contact .btn.request,
    #kw-footer-top .btn.request{
        font-size: 90%;
    }
    #kw-blog .blog-card {
        width: 46%;
    }
    footer .footer__inner{
        margin: 10px 4%;
        padding: 3% 3%;
    }
    .btn a{
        font-size:80%;
    }
    #kw-about-feature .sub-title{
        font-size: 120%;
    }
    #kw-mission h3{
        font-size: 120%;
    }
}