﻿/* ----------------------------------------------------------------------
CONCEPT
---------------------------------------------------------------------- */
#sec-merchandise .detail {
    margin-bottom: 100px;
}

#sec-merchandise .detail:last-child {
    margin-bottom: 0;
}

@media only screen and (max-width: 960px) {
    .page-l-inner {
        padding-top: 0;
    }
}

@media only screen and (max-width: 600px) {
    #sec-merchandise .detail {
        margin-bottom: 70px;
        border-bottom: 1px solid #eee;
        padding-bottom: 30px;
    }
}

@media only screen and (max-width: 450px) {
    #sec-merchandise {
        padding-bottom: 0;
    }
}

/* ------------------------------
TYPE
------------------------------ */
.page-type .detail {
    display: table;
    width: 100%;
    text-align: left;
}

.page-type .detail h3 {
    width: 35%;
    float: left;
    text-align: right;
    padding: 0 200px 0 0;
    font-weight: normal;
    background: url(../image/dpl_title.svg) no-repeat right top;
    background-size: auto 100%;
    height: 90px;
    line-height: 90px;
}

.page-type .detail .content {
    width: 60%;
    float: left;
    vertical-align: top;
    border-left: 1px solid #ccc;
    padding: 10px 15% 10px 30px;
    margin-left: -1px;
}

.page-type .detail li {
    margin-bottom: 10px;
}

.page-type .list-type li {
    display: table;
    width: 100%;
    margin-bottom: 50px;
}

.page-type .list-type .thumb {
    line-height: 0;
    display: table-cell;
    vertical-align: top;
    width: 80px;
}

.page-type .list-type .thumb img {
    width: 80px;
    height: 80px;
}

.page-type .list-type .txt {
    display: table-cell;
    vertical-align: top;
    padding-left: 30px;
}

.page-type .list-type .txt h4 {
    color: #000;
    font-size: 1.5rem;
}

.page-type .list-type .txt p {
    font-size: 1.3rem;
    text-align: justify;
}

.page-type .list-type h4 {
    font-weight: normal;
}

.page-type .list-type h4 span {
    border-bottom: 1px dotted #ccc;
    padding-bottom: 10px;
    margin-bottom: 10px;
    display: block;
}

@media only screen and (max-width: 960px) {
    .page-type .detail {
        margin-left: 10%;
        border-left: 1px solid #ccc;
        width: 90%;
    }

    .page-type .detail .content {
        width: 100%;
        padding: 0 40px 0 0;
        border: none;
        margin-left: 0;
    }

    .page-type .detail .content>ul {
        padding-left: 25px;
    }

    .page-type .detail h3 {
        background: url(../image/dpl_title_sp.svg) no-repeat -8px top;
        line-height: 43px;
        height: 43px;
        background-size: auto 100%;
        padding: 0 0 0 70px;
        text-align: left;
        width: 100%;
        margin-bottom: 40px;
    }

    .page-type .detail h3 span {
        height: 43px;
    }

    .page-type .detail .thumb {
        display: block;
        float: left;
        margin: 0 25px 15px 0;
    }

    .page-type .detail .txt {
        display: block;
        padding-left: 0;
    }

    .page-type .detail .txt h4 {
        padding-left: 105px;
    }
}

@media only screen and (max-width: 450px) {
    .page-type .detail {
        margin-left: 3%;
        width: 97%;
    }

    .page-type .detail .content {
        padding-right: 25px;
    }

    .page-type .detail h3 {
        padding-left: 55px;
    }
}

/* ------------------------------
TECHNIQUE
------------------------------ */
.page-technique {
    padding-bottom: 0 !important;
}

.page-technique #sec-intro>.img,
.page-technique #sec-intro>.txt-box {
    display: table-cell;
    vertical-align: middle;
}

.page-technique #sec-intro>.img {
    width: 44%;
}

.page-technique #sec-intro>.txt-box {
    width: 56%;
}

.page-technique #sec-intro>.txt-box {
    padding: 0 50px;
}

.page-technique #sec-intro>.txt-box h3 {
    margin-bottom: 10px;
}

.page-technique #sec-intro>.txt-box h3 img {
    width: auto;
    height: 32px;
}

.page-technique #sec-intro>.txt-box .title {
    margin-bottom: 30px;
}

.page-technique #sec-intro>.txt-box .txt {
    text-align: justify;
}

.page-technique #sec-intro .img img {
    width: 100%;
    height: auto;
}

.page-technique #sec-intro a {
    color: #014099;
}

.page-technique .figure img {
    width: 100%;
    height: auto;
}

.page-technique .img {
    line-height: 0;
}

.page-technique .bg-g {
    background: #e7e7e7;
    padding: 65px 0;
}

.page-technique .bg-g .tab {
    margin-bottom: 0;
    border: none;
    background: none;
}

.page-technique .bg-g .tab li {
    width: 29%;
    margin-left: 5.5%;
    border: 1px solid #014099;
    background: none;
}

.page-technique .bg-g .tab li:first-child {
    margin-left: 0;
}

.page-technique .bg-g .tab li a {
    padding: 20px 5px;
}

.page-technique .img.mb50 {
    margin-bottom: 70px;
}

.page-technique .list-flow {
    padding-left: 45px;
    margin-top: 100px;
    background: url(../image/onestep_line.gif) repeat-y 13px 0;
}

.page-technique .list-flow li {
    margin-bottom: 60px;
}

.page-technique .list-flow li:last-child .img {
    margin-bottom: 30px;
}

.page-technique .list-flow h4 {
    margin-bottom: 12px;
    position: relative;
    line-height: 24px;
}

.page-technique .list-flow h4:before {
    content: '';
    width: 24px;
    height: 24px;
    display: inline-block;
    background: #014099;
    border-radius: 12px;
    position: absolute;
    left: -44px;
}

.page-technique .list-flow .img {
    width: 49%;
    float: left;
}

.page-technique .list-flow .img:nth-child(even) {
    margin-left: 2%;
}

.page-technique .img-beforeafter {
    margin-top: 100px;
    background-size: 1px 100px;
}

.page-technique .img-beforeafter .before .img {
    background: url(../image/onestep_line.gif) repeat-x right center;
    padding-right: 21%;
    position: relative;
}

.page-technique .img-beforeafter .before .img img {
    width: 79%;
}

.page-technique .img-beforeafter .after .img {
    width: 100%;
    text-align: right;
    padding-bottom: 60px;
    background: url(../image/cc_line_4.gif) no-repeat left bottom;
    position: relative;
}

.page-technique .img-beforeafter .after .img img {
    width: 79%;
    padding-left: 21%;
    background: url(../image/onestep_line.gif) repeat-x left center, url(../image/cc_line_2.gif) no-repeat left center;
}

.page-technique .img-beforeafter .after .img:first-of-type {
    background: url(../image/cc_line_4.gif) no-repeat left bottom;
}

.page-technique .img-beforeafter .after .img:first-of-type img {
    background: url(../image/onestep_line.gif) repeat-x left center, url(../image/cc_line_1.gif) no-repeat left center;
}

.page-technique .img-beforeafter .after .img:last-child {
    padding-bottom: 0;
    background: none;
}

.page-technique .img-beforeafter .after .img:last-child img {
    background: url(../image/onestep_line.gif) repeat-x left center, url(../image/cc_line_3.gif) no-repeat left center;
}

.page-technique .img-beforeafter .before,
.page-technique .img-beforeafter .after {
    width: 50%;
    float: left;
    position: relative;
}

.page-technique .img-beforeafter .after p {
    padding-left: 21%;
}

.page-technique .img-beforeafter .before .caption,
.page-technique .img-beforeafter .after .caption {
    position: absolute;
    font-size: 12px;
}

.page-technique .img-beforeafter p {
    width: auto;
}

.page-technique .img-beforeafter p img {
    height: 13px;
}

@media only screen and (max-width: 1000px) {
    .page-technique #sec-intro>.img {
        vertical-align: top;
    }

    .page-technique #sec-intro>.txt-box {
        padding: 0 30px;
        vertical-align: top;
    }

    .page-technique #sec-intro>.txt-box .title {
        margin-bottom: 20px;
    }

    .page-technique #sec-intro>.txt-box h3 img {
        width: auto;
        height: 27px;
    }

    .page-technique .bg-g .tab li {
        width: 32%;
        margin-left: 2%;
    }
}

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

    .page-technique #sec-intro>.img,
    .page-technique #sec-intro>.txt-box {
        display: block;
        width: 100%;
    }

    .page-technique #sec-intro>.txt-box {
        padding: 0 20px;
    }

    .page-technique #sec-intro>.img {
        margin-bottom: 35px;
    }

    .page-technique .detail:nth-child(2n+2)>.img {
        margin-top: 35px;
        margin-bottom: 10px !important;
    }

    .page-technique #sec-intro .img-beforeafter .img {
        margin-bottom: 0;
        padding-bottom: 50px;
    }

    .page-technique .img.mb50 {
        text-align: center;
    }

    .page-technique .img.mb50 img {
        width: 270px;
        height: 644px;
    }

    .page-technique .bg-g {
        padding: 40px 0;
    }

    .page-technique .figure {
        width: 310px;
        margin: 0 auto;
    }
}

@media only screen and (max-width: 450px) {
    .page-technique #sec-intro>.txt-box .title p {
        font-size: 1.4rem;
    }

    .page-technique .bg-g .tab {
        border: 1px solid #014099;
    }

    .page-technique .bg-g .tab li {
        width: 33.33333%;
        margin-left: 0%;
        border: none;
    }

    .page-technique .bg-g .tab li:nth-child(2) {
        border-left: 1px solid #014099;
        border-right: 1px solid #014099;
    }

    .page-technique .bg-g .tab li a {
        padding: 11px 5px;
    }

    /*
    .page-technique .bg-g .tab li {
        width:100%;
        margin-left:0;
        float:none;
        border:none;
        background:none;
    }
*/
    .page-technique .list-flow {
        margin-top: 70px;
        background-position: 5.5px 0;
        padding-left: 40px;
    }

    .page-technique .list-flow li {
        margin-bottom: 50px;
    }

    .page-technique .list-flow h4 {
        margin-bottom: 15px;
        line-height: 22px;
    }

    .page-technique .list-flow h4:before {
        width: 20px;
        height: 20px;
    }

    .page-technique .img-beforeafter {
        margin-top: 70px;
    }

    .page-technique .img-beforeafter p img {
        width: auto;
        height: 11px;
    }
}

@media only screen and (max-width: 340px) {
    .page-technique #sec-intro>.txt-box img {
        width: auto;
        height: 27px;
    }
}

.tab {
    width: 900px;
    margin: 0 auto 50px;
    border: 1px solid #014099;
    background: #014099;
}

.tab li {
    width: 33%;
    float: left;
    background: #fff;
}

.tab li.current a {
    background: #014099;
    color: #fff;
}

.tab li:nth-child(2) {
    width: 34%;
    border-left: 1px solid #014099;
    border-right: 1px solid #014099;
}

.tab li a {
    padding: 11px 5px;
    display: block;
    text-align: center;
    color: #014099;
    -webkit-transition: .5s;
    transition: .5s;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 1.3rem;
}

.tab li a:hover {
    background: #014099;
    color: #fff;
}

@media only screen and (max-width: 1000px) {
    .tab {
        width: 94%;
    }
}

@media only screen and (max-width: 768px) {
    .tab {
        margin-bottom: 80px;
    }
}

@media only screen and (max-width: 450px) {
    .page-nav {
        margin-bottom: 50px;
    }

    /*
    .tab {
        border:none;
        margin-bottom:50px;
        background:none;
    }
*/
    /*
    .tab li {
        width:100%;
        float:none;
        text-align:center;
        margin-bottom:10px;
    }
*/
    /*
    .tab li:nth-child(2) {
        width:100%;
        border-left:none;
        border-right:none;
    }
*/
    /*
    .tab li a {
        display:inline-block;
        border-bottom:1px dotted #bbb;
        color:#014099;
        padding:3px 10px !important;
    }
*/
    /*
    .tab li a:after {
        content:'＞';
        margin-left:10px;
    }
    .tab li a:hover {
        background:transparent;
        color:#000;
    }
*/
    /*
    .tab li.current a {
        background:none;
        color:#014099;
    }
    .tab li.current a:hover {
        color:#000;
    }
*/
}

.sec-merit {
    margin: 100px auto;
}

.sec-merit h3 {
    border-top: 1px solid #014099;
    border-bottom: 1px solid #014099;
    padding: 30px 0;
    font-size: 1.8rem;
    text-align: center;
    color: #000;
    font-weight: bold;
}

.sec-merit h4 {
    font-weight: bold;
}

.sec-merit section {
    width: 50%;
    float: left;
}

.sec-merit section ul {
    padding: 20px;
}

.sec-merit section li {
    margin-bottom: 10px;
}

.sec-merit .merit ul {
    border-left: 1px solid #014099;
    border-right: 1px solid #014099;
}

.sec-merit .demerit h4 span {
    border-left: 1px solid #014099;
}

.sec-merit .demerit ul {
    border-right: 1px solid #014099;
}

.sec-merit h4 {
    font-size: 1.8rem;
    border-bottom: 1px solid #014099;
    text-align: center;
    padding: 5px 0;
    margin-bottom: 10px;
}

.sec-merit h4 span {
    padding: 25px 0;
    display: block;
}

@media only screen and (max-width: 600px) {
    .sec-merit {
        margin: 80px auto;
    }

    .sec-merit section {
        width: 100%;
        float: none;
    }

    .sec-merit section h4 {
        border-bottom: none;
        text-align: center;
    }

    .sec-merit section h4 span {
        border-bottom: 1px solid #014099;
        display: inline-block;
        padding-bottom: 10px;
    }

    .sec-merit .merit {
        border-bottom: 1px solid #014099;
        padding-bottom: 50px;
        margin-bottom: 50px;
    }

    .sec-merit .merit ul {
        border: none;
    }

    .sec-merit .demerit ul {
        border-right: none;
    }

    .sec-merit .demerit h4 span {
        border-left: none;
    }

    .figure {
        text-align: center;
    }

    .figure img {
        width: 80%;
        height: auto;
    }

    h3 {
        font-size: 1.7rem;
    }

    h4 {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 450px) {
    .sec-merit section ul {
        padding: 10px;
    }

    .sec-merit h3 {
        font-size: 1.6rem;
    }

    .sec-merit h4 {
        font-size: 1.5rem;
    }
}

/* ------------------------------
QUALITY
------------------------------ */
.page-quality {
    padding-bottom: 0;
}

.page-quality .intro-area {
    margin-bottom: 0;
}

.page-quality h3 {
    text-align: center;
    color: #014099;
    font-weight: normal;
    margin: 0 auto 50px;
    padding: 40px 0;
    vertical-align: middle;
    width: 360px;
    position: relative;
}

.page-quality h3:before {
    content: url(../image/title_l.svg);
    left: 0;
    top: 0;
}

.page-quality h3:after {
    content: url(../image/title_r.svg);
    right: 0;
    top: 0;
}

.page-quality h3:before,
.page-quality h3:after {
    width: 31px;
    height: 88px;
    display: inline-block;
    position: absolute;
}

.page-quality h4 {
    font-size: 1.5rem;
    color: #014099;
    margin-bottom: 10px;
    font-weight: normal;
}

/*試験体制*/
.page-quality #sec-test .box {
    overflow: hidden;
}

.page-quality #sec-test .box:nth-of-type(n + 2) {
    margin-top: 40px;
}

.page-quality #sec-test .box .img {
    width: 280px;
    display: block;
    float: left;
}

.page-quality #sec-test .box .txt {
    float: left;
    box-sizing: border-box;
    padding-left: 30px;
    width: calc(100% - 280px);
}

/*検査体制*/
.page-quality #sec-inspection .item:nth-of-type(n + 2) {
    margin-top: 80px;
}

.page-quality #sec-inspection .box-list {
    margin-top: 25px;
}

.page-quality #sec-inspection .box {
    overflow: hidden;
}

.page-quality #sec-inspection .box:nth-of-type(n + 2) {
    margin-top: 80px;
}

.page-quality #sec-inspection .box .img {
    float: left;
    width: 325px;
}

.page-quality #sec-inspection .box .txt {
    float: left;
    margin-left: 25px;
    width: calc(100% - 350px);
}

.page-quality #sec-inspection a {
    color: #014099;
}

.page-quality #sec-inspection a:hover {
    text-decoration: underline;
}

/*品質教育*/
.page-quality #sec-education .txt li {
    margin-top: 60px;
}

/*ISO*/
.page-quality #sec-iso {
    margin-bottom: 0;
}

.page-quality #sec-iso p {
    letter-spacing: 0.05em;
}

.page-quality .img {
    line-height: 0;
    /*  margin-bottom:15px;*/
}

.page-quality .img img {
    width: 100%;
    height: auto;
}

.page-quality .bg-g {
    background: #e7e7e7;
    padding: 100px 0;
}

.page-quality .iso {
    float: right;
}

.page-quality .iso+.txt {
    margin-left: 0;
}

.page-quality .pdl20 {
    padding-left: 20px;
}

@media only screen and (max-width: 960px) {
    .page-quality .intro-area {
        margin-bottom: 50px;
    }
}

@media only screen and (max-width: 768px) {
    .page-quality .bg-g {
        padding: 70px 0;
    }

    .page-quality .detail {
        margin-bottom: 70px;
    }

    /*検査体制*/
    .page-quality #sec-inspection .box .img {
        width: 225px;
    }

    .page-quality #sec-inspection .box .txt {
        width: calc(100% - 250px);
    }

    /*試験体制*/
    .page-quality #sec-test .box .img {
        width: 200px;
    }

    .page-quality #sec-test .box .txt {
        width: calc(100% - 200px);
    }
}

@media only screen and (max-width: 450px) {
    .page-quality h3 {
        width: 80%;
        padding: 20px 0;
    }

    .page-quality h3:before,
    .page-quality h3:after {
        width: 23px;
        height: 64px;
        display: inline-block;
        position: absolute;
    }

    .page-quality h4 {
        font-size: 1.4rem;
        margin-bottom: 7px;
    }

    .page-quality h4+p {
        font-size: 1.3rem;
    }

    .page-quality .bg-g {
        padding: 60px 0;
    }

    .page-quality .l-row {
        width: 80%;
        margin: 0 auto;
    }

    /*検査体制*/
    /*
    .page-quality #sec-inspection .l-row{
        width: 80%;
        margin: 0 auto;
    }
*/
    .page-quality #sec-inspection .box .img {
        float: none;
        width: 100%;
    }

    .page-quality #sec-inspection .box .txt {
        float: none;
        width: 100%;
        margin-left: 0;
        margin-top: 15px;
    }

    /*試験体制*/
    .page-quality #sec-test .box .img {
        float: none;
        width: 100%;
    }

    .page-quality #sec-test .box .txt {
        float: none;
        padding-left: 0;
        margin-top: 15px;
        width: 100%;
    }

    /*品質教育*/
    /*
    .page-quality .l-row{
        width: 80%;
        margin: 0 auto;
    }
*/
    .page-quality #sec-education .txt {
        padding-bottom: 50px;
    }

    .page-quality #sec-education .txt li {
        margin-top: 50px;
    }

    .page-quality #sec-education .txt li:first-child {
        margin-top: 20px;
    }

    .page-quality .iso {
        text-align: center;
    }

    .page-quality .iso img {
        width: 180px;
        height: auto;
    }

    .page-quality .pdl20 {
        padding-left: 0;
    }

    .page-quality .spmb0 {
        margin-bottom: 0;
    }
}

/* ------------------------------
FACILITIES
------------------------------ */
.page-facilities h3 {
    color: #014099;
    margin-bottom: 30px;
    font-weight: normal;
}

.page-facilities .img {
    line-height: 0;
    margin-bottom: 10px;
}

.page-facilities .title-line {
    padding-bottom: 10px;
    border-bottom: 1px solid #014099;
    display: inline-block;
    width: 300px;
}

.page-facilities table {
    width: 100%;
    border-top: 1px solid #ccc;
    border-collapse: collapse;
}

.page-facilities table tr {
    border-bottom: 1px dotted #ccc;
}

.page-facilities table tr:last-child {
    border-bottom: 1px solid #ccc;
}

.page-facilities table td {
    padding: 15px 10px;
}

@media only screen and (max-width: 768px) {
    .page-facilities table tr {
        display: block;
        padding: 10px;
    }

    .page-facilities table td {
        padding: 0 10px 0 0;
        display: inline-block;
        line-height: 1.2em;
    }
}

@media only screen and (max-width: 450px) {
    .page-facilities .title-line {
        width: 150px;
    }

    .page-facilities table tr {
        padding: 10px 0;
    }

    .page-facilities table td {
        font-size: 1.2rem;
        display: inline-block;
        padding: 0;
    }
}

/* ------------------------------
FEATURE
------------------------------ */
@media (min-width: 768px) {
    .display_pc {
        display: block !important;
    }

    .display_sp {
        display: none !important;
    }
}

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

    .display_sp {
        display: block !important;
    }
}

.page-feature .title-inner {
    max-width: 1000px;
    margin: 0 auto;
    position: relative;
}

.page-feature .title-line {
    height: 226px;
    position: absolute;
    margin: auto;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    color: #fff;
    text-align: center;
}

.page-feature .title-line h3 {
    font-size: 4rem;
    font-family: 'lato', sans-serif;
    font-weight: bold;
    color: #fff;
    letter-spacing: .15em;
    line-height: .9;
    position: relative;
}

.page-feature .title-line h3 span {
    width: 20px;
    height: 40px;
    position: relative;
    display: block;
    margin: 0 auto;
    padding: 10px 0;
}

.page-feature .title-line h3 span::before,
.page-feature .title-line h3 span::after {
    content: '';
    display: block;
    width: 25px;
    height: 1px;
    background-color: #fff;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}

.page-feature .title-line h3 span::before {
    transform: rotate(45deg);
}

.page-feature .title-line h3 span::after {
    transform: translateY(-50%) rotate(90deg);
    transform: rotate(-45deg);
}

.page-feature .title-line>p {
    font-size: 1.2rem;
    padding-top: 17px;
    letter-spacing: .25em;
}

.page-feature .detail>p {
    max-width: 800px;
    margin: 0 auto;
    padding-top: 37px;
}

.page-feature .tabs {
    margin-top: 140px;
    width: 100%;
}

.page-feature .tab_list {
    display: flex;
    justify-content: center;
}

.page-feature .tab_list li {
    max-width: 220px;
    width: 100%;
    height: 70px;
    line-height: 70px;
    font-family: 'lato', sans-serif;
    font-size: 16px;
    font-weight: bold;
    letter-spacing: 0.03em;
    text-align: center;
    color: #014099;
    border-right: 1px solid #dadada;
    border-top: 1px solid #dadada;
}

.page-feature .tab_list li.active {
    background-color: #dadada;
}

.page-feature .tab_list li:first-child {
    border-left: 1px solid #dadada;
}

.page-feature .tab_content {
    background: #DBDBDB;
    padding: 120px 0;
    clear: both;
    display: none;
}

.page-feature .tab_content.active {
    display: block;
}

.page-feature .title {
    margin-bottom: 76px;
    background: none;
    text-align: center;
}

.page-feature .title h3 {
    margin-bottom: 14px;
}

.page-feature .title h3 img {
    width: auto;
    height: 30px;
}

.page-feature .case_detail {
    max-width: 1410px;
    margin: 0 auto;
    padding-left: 20px;
}

.page-feature .case_inner {
    max-width: 1195px;
    display: flex;
    margin-left: auto;
    justify-content: space-between;
    align-items: center;
}

.page-feature .case_detail img {
    width: 56%;
}

.page-feature .case_detail .txt {
    width: 38%;
}

.page-feature .case_detail .txt h4 {
    font-size: 2.5rem;
    line-height: 1.8;
    font-weight: bold;
    padding-bottom: 29px;
}

.page-feature .act {
    max-width: 1040px;
    margin: 0 auto;
    padding: 123px 20px 100px;
}

.page-feature .act .txt {
    max-width: 754px;
    margin: 0 auto;
}

.page-feature .act .txt h4 {
    font-size: 2.5rem;
    font-weight: bold;
    text-align: center;
}

.page-feature .act .txt p {
    padding: 41px 0 70px;
}

.page-feature .act img {
    padding-bottom: 9px;
}

.page-feature .act>p,
h6,
li {
    font-size: 1.2rem;
}

.page-feature .act h6 {
    font-weight: normal;
    color: #014099;
    border: 1px solid #014099;
    padding: 0 7px;
    display: inline-block;
}

.page-feature .act .type {
    padding: 7px 0 36px;
    text-indent: -2px;
}

.page-feature .statement {
    display: flex;
    align-items: flex-start;
}

.page-feature .method {
    width: calc(100% - 300px);
    padding-right: 45px;
    border-right: 1px dotted #014099;
}

.page-feature .method li {
    padding-left: 1.5em;
    text-indent: -1.5em;
}

.page-feature .method p {
    font-size: 1.2rem;
    padding-top: 10px;
    line-height: 1.9;
}

.page-feature .chart {
    font-size: 1.2rem;
    width: 300px;
    padding-left: 35px;
    padding-bottom: 0;
}

.page-feature .chart p {
    font-size: 1.2rem;
    text-indent: -2px;
    margin-top: -6px;
}

.page-feature .chart img {
    padding: 14px 0 0 12px;
}

/*table*/
.page-feature table {
    border-collapse: collapse;
}

.page-feature .act h5 {
    background: #014099;
    color: #fff;
    font-size: 2rem;
    text-align: center;
    padding: 12px 0;
    margin: 20px 0;
}

.page-feature .act table {
    text-align: center;
}

.page-feature .act th {
    position: relative;
    border: 1px solid #014099;
    line-height: 1.6;
    z-index: -1;
}

.page-feature .act tr:nth-child(2) th {
    white-space: nowrap;
}

.page-feature .act tr:nth-child(2) th:not(:nth-of-type(3)) {
    padding: 22px 0;
    background-color: #E8F4EE;
}

.page-feature .act .narrow_col {
    padding: 12px 0;
    background-color: #E8F4EE;
}

.page-feature .act td {
    width: 176px;
    padding: 21px 0;
    border: 1px solid #014099;
    position: relative;
}

.page-feature .act table .narrow {
    width: 120px;
    font-size: 1.4rem;
    line-height: 1.4;
    letter-spacing: .04em;
    border-width: 1px 0 1px 0;
    background-color: #fff;
}

.page-feature .act table .t_b {
    font-weight: bold;
    color: #fff;
}

.page-feature .act .t_b:after {
    content: '';
    width: 94%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    background: repeating-linear-gradient(-45deg, #3FA071, #3FA071 1px, transparent 0, transparent 7px);
    background-color: #61B18A;
    z-index: -1;
}

.page-feature .table_n {
    text-align: right;
    padding-bottom: 14px;
}

.page-feature .act .n_bor {
    border-width: 1px 0 1px 0;
}

.page-feature .act .table_bgst:after {
    content: '';
    width: 94%;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    background: repeating-linear-gradient(-45deg, #BBDDCD, #BBDDCD 1px, transparent 0, transparent 7px);
    background-color: #D2E9DE;
    z-index: -1;
}

_:-ms-lang(x)::-ms-backdrop,
.page-feature .case_detail .txt {
    width: 39%;
}

_:-ms-lang(x)::-ms-backdrop,
.page-feature .display_pc tr:first-child .bg_ie:after {
    height: 118px;
    margin-top: 0px;
}

_:-ms-lang(x)::-ms-backdrop,
.page-feature .display_pc tr:nth-child(2) .bg_ie:after {
    height: 70px;
    margin-top: 0px;
}

_:-ms-lang(x)::-ms-backdrop,
.page-feature .display_sp tr:nth-child(2) .bg_ie:after {
    height: 69px;
    margin-top: 5px;
    z-index: -1;
}

_:-ms-lang(x)::-ms-backdrop,
.page-feature .display_sp tr:nth-child(5) .bg_ie:after {
    height: 57px;
    margin-top: 5px;
    z-index: -1;
}

@media only screen and (max-width: 768px) {
    .page-feature p {
        font-size: 1.2rem;
        line-height: 1.9;
    }

    .page-feature .title-line {
        height: 151px;
    }

    .page-feature .title-line h3 {
        font-size: 3rem;
        line-height: .8;
    }

    .page-feature .title-line h3 span {
        width: 12px;
        height: 24px;
        padding: 7px 0;
    }

    .page-feature .title-line h3 span::before,
    .page-feature .title-line h3 span::after {
        width: 17px;
    }

    .page-feature .title-line p {
        font-size: 1rem;
        padding-top: 11px;
    }

    .page-feature .detail>p {
        padding: 17px 14px 0;
    }

    .page-feature .tabs {
        margin-top: 73px;
    }

    .page-feature .tab_list {
        width: 95%;
        margin: 0 auto;
    }

    .page-feature .tab_list li {
        max-width: initial;
        width: calc(100% / 3);
        font-size: 14px;
        height: 55px;
        line-height: 55px;
    }

    .page-feature .tab_item {
        width: 118px;
        height: 55px;
        font-size: 1.4rem;
    }

    .page-feature .tab_content {
        padding: 83px 0 76px;
    }

    .page-feature .title {
        margin-bottom: 25px;
    }

    .page-feature .title h3 {
        margin-bottom: 9px;
    }

    .page-feature .title h3 img {
        height: 18px;
    }

    .page-feature .case_detail {
        padding-left: 0;
    }

    .page-feature .case_inner {
        padding: 0 20px;
        flex-direction: column-reverse;
        display: flex;
    }

    .page-feature .case_inner img {
        width: 100%;
        height: 100%;
    }

    .page-feature .case_inner .txt {
        width: 100%;
        padding: 24px 0 0;
    }

    .page-feature .case_inner .txt h4 {
        font-size: 1.6rem;
        line-height: 1.75;
        padding-bottom: 20px;
        letter-spacing: .12em;
    }

    .page-feature .act {
        padding: 83px 20px 0;
    }

    .page-feature .act .txt h4 {
        font-size: 1.6rem;
        line-height: 1.75;
        letter-spacing: .12em;
    }

    .page-feature .act .txt p {
        padding: 17px 0 44px;
    }

    .page-feature .act .table_n {
        padding-bottom: 48px
    }

    .page-feature .act .type {
        padding: 8px 0 26px;
        text-indent: -7px;
    }

    .page-feature .statement {
        display: block;
        padding-bottom: 123px;
    }

    .page-feature .method {
        width: 100%;
        padding-right: 0;
        border: none;
    }

    .page-feature .chart {
        padding: 22px 0 0 0;
    }

    .page-feature .chart p {
        text-indent: -7px;
    }

    .page-feature .chart img {
        width: 248px;
        padding: 16px 0 0 0;
        position: absolute;
        left: 0;
        right: 0;
        margin: auto;
    }

    /*table*/
    .page-feature .act h5 {
        font-size: 1.5rem;
        margin: 0 0 20px;
    }

    .page-feature .act {
        font-size: 1.2rem;
    }

    .page-feature .act table {
        letter-spacing: .04em;
    }

    .page-feature .act th {
        line-height: 1.3;
    }

    .page-feature .act td {
        letter-spacing: .04em;
    }

    .page-feature .act .narrow {
        width: 49%;
    }

    .page-feature .act .narrow_t {
        width: 25%;
        padding: 18px 0;
    }

    .page-feature .act .vertical {
        width: 11%;
        -webkit-text-orientation: upright;
        text-orientation: upright;
        white-space: nowrap;
    }

    .page-feature .act .vertical span {
        -ms-writing-mode: tb-rl;
        -webkit-writing-mode: vertical-rl;
        writing-mode: vertical-rl;
        white-space: nowrap;
    }

    .page-feature .act .vertical span .ml {
        writing-mode: horizontal-tb;
        white-space: normal;
    }

    .page-feature .act tr:nth-child(1) th:not(:first-of-type) {
        background-color: #fff;
    }

    .page-feature .act tr:nth-of-type(3) th {
        background-color: #E8F4EE;
    }

    .page-feature .act tr:nth-of-type(4) th {
        background-color: #E8F4EE;
    }

    .page-feature .act tr:nth-of-type(6) th {
        background-color: #E8F4EE;
    }

    .page-feature .act tr:nth-child(2) th:not(:nth-of-type(3)) {
        background-color: transparent;
    }

    .page-feature .act tr:nth-child(2) th:after,
    .page-feature .act tr:nth-child(2) td:after {
        content: '';
        height: 86%;
        position: absolute;
        top: 0;
        left: 0;
        bottom: 0;
        right: 0;
        margin: auto;
        background: repeating-linear-gradient(-45deg, #BBDDCD, #BBDDCD 1px, transparent 0, transparent 7px);
        background-color: #D2E9DE;
        z-index: -1;
    }

    .page-feature .act .t_b:after {
        width: 100%;
        height: 86%;
    }
}

#sec-iso .img_wrap {
    max-width: 350px;
    display: flex;
    justify-content: space-between;
    margin-top: 30px;
}

#sec-iso .img_wrap img {
    width: calc((100% - 10px)/2);
}

.technique-con {
    margin: 10% 0;
}

.page-product .productList {
    display: flex;
    flex-wrap: wrap;
}

.page-product .productList>li {
    width: calc(100% / 4 - 2%);
    margin-right: 2.5%;
    margin-bottom: 5%;
}

.page-product .productList>li:nth-child(4n+4) {
    margin-right: 0;
}

.page-product .productList>li>a {
    display: block;
    border-bottom: 1px solid #eee;
}

.page-product .productList>li>a .pic {
    width: 100%;
}

.page-product .productList>li>a .pic img {
    width: 100%;
}

.page-product .productList>li>a p {
    font-size: 1.8rem;
    color: #666;
    margin-top: 10px;
}

@media only screen and (max-width: 768px) {
    .page-product .productList {
        margin-top: 6%;
    }

    .page-product .productList>li {
        width: 100%;
    }

    .page-product .page-type .detail {
        border: none;
    }

    .page-product .page-type .detail li {
        margin-bottom: 10%;
    }

    #sec-merchandise.page-product .detail {
        border: none;
    }

    .page-product .productList>li {
        width: calc(100% / 2 - 2%);
        margin-right: 3%;
    }

    .page-product .productList>li:nth-child(2n+2) {
        margin-right: 0;
    }

    .page-product .productList>li>a p {
        font-size: 1.3rem;
    }
}