/* 宝飾専門店として・詳細のcss */
.quality {
    position: relative;
    z-index: 2;
    padding-bottom: 0;
    background: #f8f9fa;
    overflow: hidden;
}

.quality .disnon-pc {
    display: none;
  }

.quality .disnon-sp {
    display: block;
  }

.quality__fv {
    position: relative;
    height: 700px;
    background-image: url(/quality/images/fv_pc.jpg);
    background-size: cover;
}

.quality__fv::before {
    position: absolute;
    z-index: 3;
    content: "";
    top: 0;
    left: 0;
    right: 1040px;
    width: 1px;
    height: 100%;
    margin: 0 auto;
    background-color: #c9c9c8;
}

.quality__fvInner {
    display: flex;
    justify-content: space-between;
    width: 1350px;
    margin: 0 auto;
}

.quality__fvLeft {
    width: 125px;
    padding: 165px 0 0;
    text-align: left;
}

.quality .index__icon {
    margin: 0 0 30px;
}

.quality .index__icon img {
    width: 104px;
}

.quality .index__listPc li {
    margin: 0 0 30px;
}

.quality .index__listPc a {
    display: block;
    color: #fff;
    font-size: 1.6rem;
    text-decoration: none;
}

.quality .index__listPc a:hover {
    text-decoration: underline;
}

.quality__fvRight {
    padding: 265px 0 0 0;
}

.quality__title {
    color: #fff;
    font-size: 4.4rem;
    letter-spacing: 0.2em;
}

.quality .headline__sp {
    display: none;
}

.quality .index__listSp {
    display: none;
}

/* top */
.quality__top {
    position: relative;
    z-index: 1;
    width: 1440px;
    margin: 0 auto;
    padding: 120px 0 140px;
}

.quality__top::before {
    position: absolute;
    z-index: 2;
    content: "";
    top: 0;
    left: 0;
    right: 1040px;
    width: 1px;
    height: 100%;
    margin: 0 auto;
    background-color: #c9c9c8;
}

.quality__top .headline__pc {
    width: 780px;
    margin: 0 auto 50px;
}

.quality__top .quality__topImg01 {
    position: relative;
    width: 1150px;
    margin: 0 0 25px auto;
}

.quality__top .quality__topImg02 {
    position: relative;
    z-index: 5;
    margin: 0 auto 25px 0;
}

.quality__sec01 {
    position: relative;
    z-index: 1;
    margin: 0 auto;
    background: linear-gradient(90deg, #fff 0%, #fff 50%, #f8f9fa 50%, #f8f9fa 100%);
}

.quality__sec01::before {
    position: absolute;
    z-index: 2;
    content: "";
    top: 0;
    left: 0;
    right: 1040px;
    width: 1px;
    height: 100%;
    margin: 0 auto;
    background-color: #c9c9c8;
}

.quality__sec01 .sec__inner {
    width: 1440px;
    margin: 0 auto;
    background: linear-gradient(90deg, #fff 0px, #fff 1320px, #f8f9fa 1320px, #f8f9fa 100%);
}

.quality .sec__flex {
    position: relative;
    z-index: 5;
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 1220px;
    margin: 0 0 0 auto;
    padding: 0 0 100px;
}

.quality .sec__flex.flexbox02 {
    flex-flow: row-reverse;
    width: 1100px;
    margin: 0 auto 0 120px;
}

.quality .sec__flex.flexbox03 {
    padding: 0 0 150px;
}

.quality .sec__flexText {
    position: relative;
    width: 510px;
}

.quality__sec01 .sec__flexText .quality__text {
    position: absolute;
    left: -250px;
    bottom: 20px;
    transform: rotate(90deg);
    color: #aea793;
    font-size: 2.4rem;
    line-height: 0;
}

.quality .sec__flex .subtitle {
    display: block;
    margin: 0 0 0;
    color: #aea793;
    line-height: 1;
}

.quality .sec__flex .sec__title {
    margin: 0 0 50px;
    font-weight: normal;
    font-size: 3.2rem;
}

.quality__sec02 {
    position: relative;
    z-index: 1;
    margin: 0 auto;
}

.quality__sec02::before {
    position: absolute;
    z-index: 2;
    content: "";
    top: 0;
    left: 0;
    right: 1040px;
    width: 1px;
    height: 100%;
    margin: 0 auto;
    background-color: #c9c9c8;
}

.quality__sec02 .sec__inner {
    width: 1440px;
    margin: 0 auto;
}

.quality__sec02 .sec__flex.flexbox01 {
    flex-flow: row-reverse;
    margin: 0 auto 0 0;
}

.quality__sec02 .sec__flex.flexbox02 {
    flex-flow: row;
    margin: 0 auto 0 250px;
}

.quality__sec02 .sec__flex.flexbox03 {
    flex-flow: row-reverse;
    margin: 0 auto 0 0;
}

.quality__sec02 .sec__flexText .quality__text {
    position: absolute;
    right: -300px;
    bottom: 20px;
    transform: rotate(90deg);
    color: #aea793;
    font-size: 2.4rem;
    line-height: 0;
}

.quality__sec03 {
    position: relative;
    z-index: 1;
    margin: 0 auto;
    background: linear-gradient(90deg, #fff 0%, #fff 50%, #f8f9fa 50%, #f8f9fa 100%);
}

.quality__sec03::before {
    position: absolute;
    z-index: 2;
    content: "";
    top: 0;
    left: 0;
    right: 1040px;
    width: 1px;
    height: 100%;
    margin: 0 auto;
    background-color: #c9c9c8;
}

.quality__sec03 .sec__inner {
    width: 1440px;
    margin: 0 auto;
    background: linear-gradient(90deg, #fff 0px, #fff 1320px, #f8f9fa 1320px, #f8f9fa 100%);
}

.quality__sec03 .sec__flexText .quality__text {
    position: absolute;
    left: -200px;
    bottom: 20px;
    transform: rotate(90deg);
    color: #aea793;
    font-size: 2.4rem;
    line-height: 0;
}

@media screen and (max-width: 768px) {
    .quality .disnon-pc {
        display: block;
    }

    .quality .disnon-sp {
        display: none;
    }

    .quality {
        position: relative;
        z-index: 2;
        padding-bottom: 0;
        background: #f8f9fa;
        overflow: hidden;
    }

    .quality .disnon-pc {
        display: block;
      }

    .quality .disnon-sp {
        display: none;
    }

    .quality__fv {
        position: relative;
        z-index: 1;
        height: 524px;
        background-image: url(/quality/images/fv_sp.jpg);
        background-size: cover;
    }

    .quality__fv::before {
        display: none;
    }

    .quality__fvInner {
        position: relative;
        z-index: 2;
        display: flex;
        flex-direction: column-reverse;
        justify-content: space-between;
        width: 100%;
        height: 100%;
        margin: 0 auto;
        padding: 15% 5% 0;
    }

    .quality__fvLeft {
        width: 100%;
        padding: 0;
        text-align: left;
    }

    .quality .index__icon {
        position: absolute;
        z-index: 10;
        left: 0;
        right: 0;
        bottom: 3%;
        margin: 0 auto;
    }

    .quality .index__icon img {
        display: block;
        width: 80px;
        margin: 0 auto;
    }

    .quality .index__listPc {
        display: none;
    }

    .quality .index__listPc a {
        display: block;
        color: #fff;
        font-size: 1.6rem;
        text-decoration: none;
    }

    .quality .index__listPc a:hover {
        text-decoration: underline;
    }

    .quality__fvRight {
        padding: 0;
    }

    .quality__title {
        color: #fff;
        font-size: 2.6rem;
        letter-spacing: 0.2em;
    }

    .quality .headline__sp {
        display: block;
        padding: 20% 0 0;
        color: #fff;
        font-size: 1.4rem;
    }

    .quality .index__listSp {
        display: block;
    }

    .quality .index__listSp ul {
        display: flex;
        justify-content: space-between;
        width: 100%;
        border-top: 1px solid #c9c9c8;
        border-bottom: 1px solid #c9c9c8;
    }

    .quality .index__listSp ul li {
        position: relative;
        width: 34%;
        padding: 10px 0 20px;
    }

    .quality .index__listSp ul li::after {
        position: absolute;
        bottom: 7px;
        left: 0;
        right: 0;
        width: 10px;
        height: 10px;
        content: "";
        margin: 0 auto;
        border-top: 2px solid #aea793;
        border-right: 2px solid #aea793;
        -webkit-transform: rotate(135deg);
        transform: rotate(135deg);
    }

    .quality .index__listSp ul li:nth-child(2) {
        width: 30%;
        border-left: 1px solid #c9c9c8;
        border-right: 1px solid #c9c9c8;
    }

    .quality .index__listSp ul li a {
        display: block;
        color: #000;
        font-size: 1.4rem;
        line-height: 1.2;
        text-align: center;
        text-decoration: none;
    }

    /* top */
    .quality__top {
        position: relative;
        z-index: 1;
        width: 100%;
        margin: 0 auto;
        padding: 40px 0 70px;
    }

    .quality__top::before {
        display: none;
    }

    .quality__top .headline__pc {
        display: none;
    }

    .quality__top .quality__topImg01 {
        position: relative;
        width: 100%;
        height: auto;
        margin: 0 0 4%;
    }

    .quality__top .quality__topImg01 figure {
        position: relative;
        left: 0;
    }

    .quality__top .quality__topImg02 {
        position: relative;
        z-index: 5;
        width: 100%;
        height: auto;
    }

    .quality__top .quality__topImg02 figure {
        position: relative;
        left: 0;
    }

    .quality__sec01 {
        position: relative;
        z-index: 1;
        margin: 0 auto;
        background: linear-gradient(90deg, #fff 0%, #fff 95%, #f8f9fa 95%, #f8f9fa 100%);
    }

    .quality__sec01::before {
        display: none;
    }

    .quality__sec01 .sec__inner {
        width: 100%;
        margin: 0 auto;
        padding: 50px 0 30px 5%;
        background: none;
    }

    .quality .sec__flex {
        position: relative;
        z-index: 5;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        align-items: center;
        width: 100%;
        margin: 0 ;
        padding: 0 0 30px;
    }

    .quality .sec__flex.flexbox02 {
        flex-direction: column;
        flex-flow:column;
        width: 100%;
        margin: 0;
    }

    .quality .sec__flex.flexbox03 {
        padding: 0 0 30px;
    }

    .quality .sec__flexText {
        position: relative;
        width: 100%;
        font-size: 1.3rem;
    }

    .quality__sec01 .quality__text {
        position: absolute;
        left: -12%;
        bottom: 15%;
        transform: rotate(90deg);
        color: #aea793;
        font-size: 1.2rem;
        line-height: 0;
    }

    .quality .sec__flex .subtitle {
        display: block;
        margin: 0 0 0;
        color: #aea793;
        font-size: 1.2rem;
        line-height: 1;
    }

    .quality .sec__flex .sec__title {
        margin: 0 0 20px;
        font-weight: normal;
        font-size: 2.1rem;
    }

    .quality__sec01 .flexbox01 .sec__flexText,
    .quality__sec01 .flexbox02 .sec__flexText,
    .quality__sec01 .flexbox03 .sec__flexText {
        margin: 0 0 30px;
        padding: 0 10% 0 0;
    }

    .quality__sec01 .flexbox02 .sec__flexImg {
        padding: 0 25% 0 0;
    }

    .quality__sec01 .flexbox03 .sec__flexImg {
        padding: 0 0 0 5%;
    }

    .quality__sec02 {
        position: relative;
        z-index: 1;
        margin: 0 auto;
        padding: 0 0 30px;
    }

    .quality__sec02::before {
       display: none;
    }

    .quality__sec02 .sec__inner {
        width: 100%;
        margin: 0;
        padding: 50px 5% 30px 0;
    }

    .quality__sec02 .sec__flex.flexbox01 {
        flex-flow:column;
        margin: 0;
    }

    .quality__sec02 .sec__flex.flexbox02 {
        flex-flow:column;
        margin: 0;
    }

    .quality__sec02 .sec__flex.flexbox03 {
        flex-flow:column;
        margin: 0;
    }

    .quality__sec02 .flexbox01 .sec__flexText,
    .quality__sec02 .flexbox02 .sec__flexText,
    .quality__sec02 .flexbox03 .sec__flexText {
        margin: 0 0 30px;
        padding: 0 10% 0 5%;
    }

    .quality__sec02 .flexbox02 .sec__flexImg {
        padding: 0 0 0 25%;
    }

    .quality__sec02 .flexbox03 .sec__flexImg {
        padding: 0 5% 0 0;
    }


    .quality__sec02 .quality__text {
        position: absolute;
        right: -15%;
        bottom: 85px;
        transform: rotate(90deg);
        color: #aea793;
        font-size: 1.2rem;
        line-height: 0;
    }

    .quality__sec03 {
        position: relative;
        z-index: 1;
        margin: 0 auto;
        background: linear-gradient(90deg, #fff 0%, #fff 95%, #f8f9fa 95%, #f8f9fa 100%);
    }

    .quality__sec03::before {
        display: none;
    }

    .quality__sec03 .sec__inner {
        width: 100%;
        margin: 0 auto;
        padding: 50px 0 30px 5%;
        background: none;
    }
    .quality__sec03 .flexbox01 .sec__flexText,
    .quality__sec03 .flexbox02 .sec__flexText,
    .quality__sec03 .flexbox03 .sec__flexText {
        margin: 0 0 30px;
        padding: 0 10% 0 0;
    }

    .quality__sec03 .flexbox02 .sec__flexImg {
        padding: 0 25% 0 0;
    }

    .quality__sec03 .flexbox03 .sec__flexImg {
        padding: 0 0 0 5%;
    }

    .quality__sec03 .quality__text {
        position: absolute;
        left: -5%;
        bottom: 42px;
        transform: rotate(90deg);
        color: #aea793;
        font-size: 1.2rem;
        line-height: 0;
    }
}
