@charset "utf-8";
/* CSS Document */

/*--------------------------------------
　Main Index
---------------------------------------*/
#contents {
    width: 100%;
    margin: -30px auto 19rem;
    overflow: hidden;
}

.addInner {
    margin: 0 auto;
    width: min(100%, 1100px);

}

header .headTopArea .rightTxt {
    text-align: right;
}

/*--------------------------------------
　visArea TOPページ
---------------------------------------*/
#visArea {
    margin: 0 auto;
    overflow: hidden;
}

#visArea .mainArea {
    display: block;
    max-width: 100%;
    height: auto;
    padding: 0 1.5rem;
}

#visArea .mainArea .mainAreaInner {
    max-width: 1350px;
    display: block;
    position: relative;
    z-index: 0;
    margin: 0 auto;
    padding: 2.8rem 0;
}

#visArea .mainArea .mainAreaInner::after {
    content: "";
    width: calc(100% - 10vw);
    height: 100%;
    position: absolute;
    background: url(img/mv_pic_pc.jpg) no-repeat right top;
    background-size: 100%;
    left: 13.5vw;
    z-index: -1;
    top: 0;
}

#visArea .mainArea__item {
    margin: 0 auto 0 0;
    width: 650px;
    max-width: 100%;
}

#visArea .mainArea .siteNameArea {
    margin: 0 0 30px;
}

#visArea .mainArea .siteName {
    margin: 0 auto 3rem;
    text-align: left;
}

#visArea .mainArea .siteName img {
    margin: 0 auto 0 20px;
    width: 16%;
}

#visArea .mainArea .siteNameSmall {
    font-size: 1.6rem;
}

#visArea .mainArea .mainTxtBox {
    width: 100%;
    padding: 0;
    margin-top: 1rem;
    padding-bottom: 1.5rem;
    background-color: rgb(215 244 222 / 70%);
}

#visArea .mainArea .catchArea {
    position: relative;
    z-index: 0;
}

.btn-web4 {
    margin: 2.2rem auto 0;
    width: 460px;
}

.btn-web4 a {
    background: #000000;
    color: #fff;
    position: relative;
}

.btn-web4 a:before {
    position: absolute;
    content: url("img/arrow_white02.png");
    right: 5%;
    top: 35%;
    transform: rotateZ(90deg);
    background-size: 19px auto;
}

.btn-internal a,
.btn-web a,
.btn-web4 a {
    display: block;
    padding: 1rem 4.5rem 1.4rem;
    font-size: 1.7rem;
    line-height: 2.7rem;
    text-align: center;
    border-radius: 100px;
    z-index: 10;
    font-weight: bold;
}

#visArea .mainArea .catchArea::after {
    content: "";
    width: 100%;
    height: calc(100% - 3.5rem);
    background-size: 232px auto;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1;
}

#visArea .mainArea .catchArea .catch {
    font-size: 3.2rem;
    font-weight: bold;
    line-height: 1.6;
    text-align: left;
    color: #010101;
    margin: 0 auto;
    padding: 2rem 2.7rem;
    letter-spacing: 1.5px;
}

.catch__emp--blue01,
.catch__emp--blue02 {
    border: none;
}

.catch__emp--blue01 {
    color: #fa7406;
}

.catch__emp--blue02 {
    color: #1875e9;
}

#visArea .mainArea .txtArea {
    width: 95%;
    margin: 0 auto;
    border-top: 2px solid #111;
}

#visArea .mainArea .txtArea p {
    font-size: 1.4rem;
    color: #010101;
    line-height: 2;
    max-width: 100%;
    padding: 10px;
}

#visArea .mainArea .txtArea p+p {
    margin-top: 1.5rem;
}

/*--------------------------------------
　float img
---------------------------------------*/
.float-wrap .fl {
    width: 400px;
    margin: 0 40px 10px 0;
    text-align: center;
}

.float-wrap .fr {
    width: 400px;
    margin: 0 0 10px 40px;
}

.float-wrap .ct {
    width: 600px;
}

/*--------------------------------------
　box-wrap
---------------------------------------*/
#contents .box-wrap .box {
    width: 519px;
}

#index .box__list__item--area h3 {
    font-size: 3rem;
}

/*type-a*/
#contents .box-wrap .type-a .box-body p {
    width: 100%;
    float: none;
    color: #333;
    margin: 0 auto;
}

/*type-b*/
#contents .box-wrap .type-b {
    padding: 30px 20px 0;
}

/*type-b1*/
#contents .box-wrap .type-b1 {
    padding: 30px 20px 0;
}


/*--------------------------------------
　frame-wrap
---------------------------------------*/


#contents .frame .frame-body {
    padding: 0 30px 35px;
}

/*type-a*/
#contents .frame-wrap .type-a .frame-catch {
    padding: 20px 40px 20px;
}

#contents .frame-wrap .type-a .frame-head {
    padding: 20px 30px 20px;
}

#contents .frame-wrap .type-a .thumb {
    width: 250px;
}

#contents .frame-wrap .type-a ul.icoArea {
    width: 288px;
}

#contents .frame-wrap .type-a ul.icoArea li {
    width: 88px;
    margin: 0 0 0 12px;
}

#contents .frame-wrap .type-a ul.icoArea li:first-child {
    margin: 0 0 0 0;
}

#contents .frame-wrap .type-a ul.icoArea li:nth-child(3n + 1) {
    margin: 0 0 0 0;
}

#contents .frame-wrap .type-a ul.icoArea li:nth-child(n + 4) {
    margin-top: 18px;
}

/*type-b*/
#contents .frame-wrap .type-b .frame-head {
    padding: 20px 30px 20px;
}

#contents .frame-wrap .type-b .thumb {
    width: 250px;
}

/*type-b1*/
#contents .frame-wrap .type-b1 .frame-head {
    padding: 20px 30px 20px;
}

#contents .frame-wrap .type-b1 .thumb {
    width: 250px;
}

/*btn-web*/
#contents .frame .frame-body .btn-web {
    width: 88%;
}

/*--------------------------------------
オリジナル
---------------------------------------*/

/***** addParts01 *****/

.addParts01 {
    width: 100%;
    margin: 0 0 90px;
}

.addParts01 .addInner {
    width: 1100px;
    margin: 0 auto;
}

.addParts01 p {
    margin: 0;
}

.addParts01 .aadPartsTit {
    text-align: center;
}

.addParts01 .block {
    width: 352px;
    margin: 0 0 0 22px;
    float: left;
}

.addParts01 .block:first-child {
    margin: 0;
}

.addParts01 .block:nth-child(3n + 1) {
    margin: 0;
}

.addParts01 .block:nth-child(n + 4) {
    margin-top: 22px;
}

.addParts01 .block .catch {
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 1.5;
    text-align: center;
    border-top: 1px solid #333;
    border-bottom: 1px solid #333;
    padding: 12px 10px;
    margin: 0 0 10px;
    display: table;
    width: 100%;
}

.addParts01 .block .catch span {
    display: table-cell;
    vertical-align: middle;

    color: inherit;
    border-bottom: none;
    font-weight: inherit;
}

.addParts01 .block a {
    display: block;
}

.addParts01 .scrollArea {
    background-color: #f5f5dc;
    padding: 20px 20px 25px;
    position: relative;
}

.addParts01 .scrollArea::after {
    content: "";
    width: 30px;
    height: 30px;
    background: url("img/scroll_arrow.png") no-repeat;
    background-size: 100% auto;
    position: absolute;
    left: calc(50% - 15px);
    bottom: -15px;
}

.addParts01 .scrollArea .priceArea {
    display: table;
    margin: 0 0 12px;
}

.addParts01 .scrollArea .priceArea .priceTit {
    display: table-cell;
    vertical-align: middle;
    width: 56px;
    font-size: 1.3rem;
    line-height: 1.2;
    text-align: center;
    color: #fff;
    background-color: #333;
    padding: 7px 10px 8px;
}

.addParts01 .scrollArea .priceArea .price {
    display: table-cell;
    vertical-align: middle;
    width: 256px;
    font-size: 2.8rem;
    font-weight: bold;
    line-height: 1.2;
    letter-spacing: 0.03em;
    text-align: center;
    color: #8c8200;
    background-color: #fff;
    padding: 7px 10px 8px;
}

.addParts01 .scrollArea .priceArea .price span {
    font-size: 1.4rem;
    color: #333;
    padding: 0 0 0 5px;
    font-weight: inherit;
    border-bottom: none;
}

.addParts01 .scrollArea .companyName {
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.5;
    text-align: center;
}

/***** addParts02 *****/

.addParts02 {
    width: 100%;
    background: #a4ebb5;
    background-size: cover;
    padding: 10rem 0 15rem;
    position: relative;
}

.addParts02 .addInner {
    width: min(100%, 1100px);
    margin: 0 auto;
}

.addParts02 p {
    margin: 0;
}

/*addTopArea*/
.addParts02 .addTopArea {
    padding: 0 150px;
    margin: 0 auto 70px;
}

/*sttl*/
#index .addParts02 .sttl {
    display: block;
    font-size: 3rem;
    font-weight: bold;
    line-height: 1.5;
    text-align: center;
    background: url("img/parts02_tit_ico.png") center bottom no-repeat;
    background-size: 43px auto;
    padding: 0 0 70px;
    margin: 0 0 30px;
    position: relative;
}

/*block*/
.addParts02 .block {
    background-color: #fff;
    padding: 6.2rem 0 2.5rem;
    margin: 0 auto;
    position: relative;
    z-index: 0;
}

.addParts02 .block+.block {
    margin-top: 12rem;
}

.addParts02 .block::before {
    content: "";
    width: 14px;
    height: 438px;
    background-size: 100% auto;
    position: absolute;
    top: -18px;
    left: 64px;
    z-index: 1;
}

.addParts02 .blockTitArea {
    text-align: center;
    padding: 0 12rem;
    margin: 0 auto 5rem;
}

.addParts02 .blockTitSub {
    font-size: 2.8rem;
    line-height: 1.5;
    text-align: center;
    margin: 0px auto 3rem;
    display: inline-block;
    font-weight: bold;
    border: 1px solid #1f1f1f;
    border-radius: 8px;
    padding: 0.8rem 3.2rem;
    position: relative;
}

.addParts02 .blockTitSub::before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: -9px;
    left: -11px;
    background-image: linear-gradient(135deg, #BDF3CA 25%, #fff 25%, #fff 50%, #BDF3CA 50%, #BDF3CA 75%, #fff 75%);
    background-size: 10px 10px;
    z-index: -1;
    border-radius: 8px;
}

.addParts02 .blockTitSub::after {
    content: "";
    width: 30px;
    height: 12px;
    background: url(img/detail_catch_deco.png) no-repeat;
    background-size: contain;
    position: absolute;
    bottom: -12px;
    left: 0;
    right: 0;
    margin: 0 auto;
}

#index .addParts02 .blockTit {
    display: block;
    font-size: 2.2rem;
    font-weight: bold;
    line-height: 1.5;
    text-align: center;
    padding: 0;
    position: relative;
}

#index .addParts02 .blockTit span {
    border: none;
    display: inline;
    color: inherit;
    font-weight: inherit;
    background: linear-gradient(transparent 75%, rgba(255, 234, 0, 0.4) 75%);
}

/*slideTxtArea*/
.addParts02 .slideTxtArea {
    width: calc(100% - 40px);
    border-left: 1px solid #333;
    padding: 45px 0 15px 35px;
    margin: -30px auto 0;
    position: relative;
    z-index: 2;
}

.addParts02 .slideTxtArea::before {
    content: "";
    width: 30px;
    height: 1px;
    background: #333;
    position: absolute;
    left: 0;
    bottom: 0;
}

.addParts02 .caption {
    margin: 0 0 14px;
}

.addParts02 .slideTit {
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.5;
    margin: 0 0 8px;
}

.addParts02 .slideTxt {
    line-height: 1.6;
}

/*テキスト動き*/
.addParts02 .slideTxtArea {
    opacity: 0;
    transition: all 1s 0s ease;
    transition-delay: 300ms;
}

.addParts02 .slick-slide.slick-current .slideTxtArea,
.addParts02 .slick-slide.is-active-next .slideTxtArea {
    opacity: 1;
}

.addParts02 .slideTxtInner {
    opacity: 0;
    margin-left: -15px;
    transition: all 0.5s 0s ease;
    transition-delay: 600ms;
}

.addParts02 .slick-slide.slick-current .slideTxtInner,
.addParts02 .slick-slide.is-active-next .slideTxtInner {
    opacity: 1;
    margin-left: 0;
}

.addParts02 .priceIcoArea {
    width: calc(100% - 80px);
    height: 100%;
    padding: 50px 0;
    margin: 0 auto 50px;
    position: relative;
}

.addParts02 .priceIcoArea .priceArea {
    padding: 0 1.5rem 2rem;
    display: inline-block;
    margin: 6rem auto 0;
    border-bottom: 2px solid #000;
}

#contents .addParts02 .priceIcoArea .priceArea .priceTit {
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 1.5;
    max-width: inherit;
    padding: 0;
    margin-right: 2rem;
}

.addParts02 .priceIcoArea .priceArea .price {
    font-size: 3.6rem;
    font-weight: bold;
    line-height: 1.2;
    color: #ff6b3d;
    padding: 0;
}

.addParts02 .priceIcoArea .priceArea .price span {
    font-size: 1.8rem;
    color: #000;
    padding: 0 0 0 1rem;
    font-weight: inherit;
    border-bottom: none;
}

#contents .addParts02 .priceIcoArea .priceArea ul li {
    line-height: 1.5;
    padding: 0 0 12px 18px;
    position: relative;
}

#contents .addParts02 .priceIcoArea .priceArea ul li::before {
    content: "・";
    position: absolute;
    top: 0;
    left: 0;
}

#index .addParts02 .priceIcoArea .icoArea {
    width: 100%;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
}

#index .addParts02 .priceIcoArea .icoArea li {
    width: 141px;
    flex-shrink: 0;
    margin: 0;
    max-width: calc((100% - 17rem) / 6);
    text-align: center;
    position: relative;
}

#index .addParts02 .priceIcoArea .icoArea li .icoTtl {
    text-align: center;
    margin: 0 auto 2rem;
    height: 151px;
    padding: 7.2rem 1.5rem 4.5rem;
    color: #fffefe;
    font-size: 2rem;
    font-weight: normal;
}

#index .addParts02 .priceIcoArea .icoArea li:nth-of-type(1) .icoTtl {
    background: url(img/detail_icoarea_list_bg01.png) no-repeat top center;
    background-size: 141px auto;
}

#index .addParts02 .priceIcoArea .icoArea li:nth-of-type(1) .icoTtl:hover {
    background: url(img/detail_icoarea_list_bg01_hover.png) no-repeat top center;
    background-size: 141px auto;
}

#index .addParts02 .priceIcoArea .icoArea li:nth-of-type(2) .icoTtl {
    background: url(img/detail_icoarea_list_bg02.png) no-repeat top center;
    background-size: 141px auto;
}

#index .addParts02 .priceIcoArea .icoArea li:nth-of-type(2) .icoTtl:hover {
    background: url(img/detail_icoarea_list_bg02_hover.png) no-repeat top center;
    background-size: 141px auto;
}

#index .addParts02 .priceIcoArea .icoArea li:nth-of-type(3) .icoTtl {
    background: url(img/detail_icoarea_list_bg03.png) no-repeat top center;
    background-size: 141px auto;
}

#index .addParts02 .priceIcoArea .icoArea li:nth-of-type(3) .icoTtl:hover {
    background: url(img/detail_icoarea_list_bg03_hover.png) no-repeat top center;
    background-size: 141px auto;
}

#index .addParts02 .priceIcoArea .icoArea li:nth-of-type(4) .icoTtl {
    background: url(img/detail_icoarea_list_bg04.png) no-repeat top center;
    background-size: 141px auto;
}

#index .addParts02 .priceIcoArea .icoArea li:nth-of-type(4) .icoTtl:hover {
    background: url(img/detail_icoarea_list_bg04_hover.png) no-repeat top center;
    background-size: 141px auto;
}

#index .addParts02 .priceIcoArea .icoArea li:nth-of-type(5) .icoTtl {
    background: url(img/detail_icoarea_list_bg05.png) no-repeat top center;
    background-size: 141px auto;
}

#index .addParts02 .priceIcoArea .icoArea li:nth-of-type(5) .icoTtl:hover {
    background: url(img/detail_icoarea_list_bg05_hover.png) no-repeat top center;
    background-size: 141px auto;
}

#index .addParts02 .priceIcoArea .icoArea li:nth-of-type(6) .icoTtl {
    background: url(img/detail_icoarea_list_bg06.png) no-repeat top center;
    background-size: 141px auto;
}

#index .addParts02 .priceIcoArea .icoArea li:nth-of-type(6) .icoTtl:hover {
    background: url(img/detail_icoarea_list_bg06_hover.png) no-repeat top center;
    background-size: 141px auto;
}

#index .addParts02 .priceIcoArea .icoArea li .icoTtl a {
    text-decoration: none;
    pointer-events: none;
}

#index .addParts02 .priceIcoArea .icoArea li .icoTtl span {
    border: none;
    color: inherit;
    font-weight: inherit;
    font-size: 1.4rem;
}

.addParts02 .infoArea {
    clear: both;
    width: 100%;
    padding: 0 40px;
    margin: 0 0 60px;
}

#contents .addParts02 .infoArea .infoTit {
    font-size: 2.6rem;
    font-weight: bold;
    line-height: 1.5;
    text-align: center;
    margin: 0 0 45px;
}

.addParts02 .infoArea .infoBox .mapArea {
    width: 380px;
    float: left;
}

#contents .addParts02 .infoArea .infoBox table {
    margin: 0;
}

#contents .addParts02 .infoArea .infoBox table th {
    width: 25%;
    background: #747474;
    color: #fffefe;
    font-weight: normal;
}

#contents .addParts02 .infoArea .infoBox table td {
    background: #f5f5f5;
}


/***** addParts02 *****/

.addParts03 {
    width: 100%;
    margin: 100px 0 125px;
}

.addParts03 .addInner {
    width: min(100%, 1100px);
    margin: 0 auto;
}

.addParts03 p {
    margin: 0;
}

.addParts03 .addTopArea {
    width: 100%;
    margin: 0 auto 6.6rem;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: self-start;
    justify-content: space-between;
}

.addParts03 .addTopArea .addTopPic {
    width: 570px;
    margin: 9rem 0 0 0;
    position: relative;
    order: 2;
    flex-shrink: 0;
    max-width: 100%;
}

.addParts03 .addTopArea .addTopPic img {
    display: block;
    margin: 0 auto;
    box-shadow: 20px -18px 0 0 #BDF3CA;
}

.addParts03 .addTopArea .addTopPic2 {
    width: 570px;
    margin: 7rem 0 0 0;
    position: relative;
    order: 2;
    flex-shrink: 0;
    max-width: 100%;
}

.addParts03 .addTopArea .addTopPic2 img {
    display: block;
    margin: 0 auto;
    box-shadow: 20px -18px 0 0 #f8d3b4;
}

.addParts03 .addTopArea .addTopTxt {
    width: calc(100% - 570px);
    order: 1;
}

#contents .addParts03 .addTopArea .sttl {
    display: block;
    font-size: 2.9rem;
    font-weight: bold;
    line-height: 1.5;
    text-align: left;
    background: url("img/parts03_tit_ico.png") center bottom no-repeat;
    background-size: 40px auto;
    padding: 0 0 60px;
    margin: 0 0 25px;
    position: relative;
}

.addParts03 .addTopArea .addTxt span {
    font-weight: bold;
    color: #333;
    border-bottom: 2px solid #e6dc14;
}

.addParts03 .personMainArea {
    width: 100%;
    padding: 3.5rem 22.2rem 3.3rem;
    margin: 0 auto 6.2rem;
    position: relative;
    background: #dbf6ff;
    min-height: 200px;
}

.addParts03 .personMainArea .subTxt {
    display: inline-block;
    font-size: 1.3rem;
    font-weight: bold;
    line-height: 1;
    background-color: #f5f5dc;
    background: url("img/parts03_sub_dot01.png") left top repeat-x,
                url("img/parts03_sub_dot01.png") left bottom repeat-x,
                url("img/parts03_sub_dot02.png") left top repeat-y,
                url("img/parts03_sub_dot02.png") right top repeat-y #f5f5dc;
    padding: 15px 20px;
    position: absolute;
    top: -20px;
    right: 20px;
}

.addParts03 .personMainArea .personBox {
    display: block;
}

.addParts03 .personMainArea .personBox .pic {
    display: table-cell;
    vertical-align: middle;
    width: 150px;
}

.addParts03 .personMainArea .personBox .pic img {
    border-radius: 100px;
}

.addParts03 .personMainArea .personBox dl {
    display: table-cell;
    vertical-align: middle;
    width: calc(100% - 190px);
    padding: 0 0 0 40px;
}

.addParts03 .personMainArea .personBox dl dt {
    font-size: 2rem;
    font-weight: bold;
    line-height: 1.4;
    color: #8c8200;
    margin: 0 0 20px;
}

.addParts03 .personMainArea .personBox dl dt span {
    font-size: 1.6rem;
    color: #333;
    font-weight: inherit;
    border-bottom: none;
}

.addParts03 .interviewTitArea {
    display: table;
    position: relative;
    margin: 0;
    border: 2px solid #000;
    border-left: none;
}

.addParts03 .interviewTitArea::before {
    content: "";
    position: absolute;
    top: 0;
    right: 100%;
    bottom: 0;
    margin: auto 0;
    width: 9999px;
    border-top: 2px solid #000;
    border-bottom: 2px solid #000;
    height: 100%;
}

@media all and (-ms-high-contrast: none) {
    /* IE対策 */
    .addParts03 .interviewTitArea::before {
        height: calc(100% - 4px);
    }
}

@supports (-ms-ime-align: auto) {
    /* Edge対策 */
    .addParts03 .interviewTitArea::before {
        height: calc(100% - 4px);
    }
}

@-moz-document url-prefix() {
    /* Firefox対策 */
    .addParts03 .interviewTitArea::before {
        height: calc(100% - 4px);
    }
}

.addParts03 .interviewTitArea::after {
    content: "";
    width: 9999px;
    height: 100%;
    background-image: linear-gradient(135deg, #d4f7dc 25%, #fff 25%, #fff 50%, #d4f7dc 50%, #d4f7dc 75%, #fff 75%);
    background-size: 10px 10px;
    position: absolute;
    top: 20px;
    right: 22px;
    z-index: -1;
}

#contents .addParts03 .interviewTitArea .interviewTit {
    display: table-cell;
    vertical-align: middle;
    width: 410px;
    font-size: 4rem;
    font-weight: bold;
    line-height: 1.3;
    padding: 4.8rem 0;
    position: relative;
    color: #010101;
    box-sizing: border-box;
    letter-spacing: 5px;
    font-feature-settings: "palt";
}

#contents .addParts03 .interviewTitArea .interviewTit2 {
    display: table-cell;
    vertical-align: middle;
    width: 410px;
    font-size: 4rem;
    font-weight: bold;
    line-height: 1.3;
    padding: 4.8rem 0;
    position: relative;
    color: #010101;
    box-sizing: border-box;
    letter-spacing: 5px;
    font-feature-settings: "palt";
}

.interviewTit__small {
    color: inherit;
    border: none;
    font-size: 2.5rem;
}


#contents .addParts03 .interviewTitArea .interviewTit a,
#contents .addParts03 .interviewTitArea .interviewTit2 a{
    position: relative;
    display: block;
}

#contents .addParts03 .interviewTitArea .interviewTit a::after,
#contents .addParts03 .interviewTitArea .interviewTit2 a::after{
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    width: 16px;
    height: 16px;
    margin: auto;
    content: "";
    background: url(img/arrow_black.png) no-repeat right center / contain;
}

#contents .addParts03 .interviewTitArea .interviewTit:after {
    content: "";
    width: 149px;
    height: 24px;
    background: url("img/parts03_eng.png") no-repeat;
    background-size: 100% auto;
    position: absolute;
    top: 0;
    left: 10px;
    z-index: inherit;
    transform: none;
}

.addParts03 .interviewTitArea .interviewTxt {
    display: table-cell;
    vertical-align: middle;
    width: auto;
    font-size: 1.8rem;
    padding: 5.2rem 4.5rem 5.2rem 3.5rem;
    color: #010101;
}

.image-alignment-area {
    margin-bottom: 5rem;
}

.image-alignment-area-box {
    margin: 80px 40px;
    display: flex;
}

.image-alignment-area-box dt {
    flex: 0 0 200px;
}

.image-alignment-area-box dt img {
    display: block;
    margin: 0 auto;
}

.image-alignment-area-box dd {
    padding-left: 3rem;
}

#index .image-alignment-area-box dd h3 {
    font-size: 2.2rem;
    font-weight: bold;
    line-height: 1.4;
    margin: 0 auto 2rem;
}

#index .image-alignment-area-box dd h3 a {
    background: url(img/arrow_black02.png) right center no-repeat;
    background-size: 19px auto;
    padding-right: 2.5rem;
}

#index .image-alignment-area-box dd p {
    margin: 0;
}

.image-alignment-area-box h3 {
    font-size: 2rem;
}


.addParts03 .personArea {
    margin: 80px 0;
}

.addParts03 .personArea .personBox {
    display: table;
    padding: 3.5rem 4rem 2.5rem;
    position: relative;
    background: #fff;
    width: 100%;
}

.addParts03 .personArea .personBox2 {
    display: table;
    padding: 2.5rem 4rem 2.5rem;
    position: relative;
    background: #4cbe68;
    border-radius: 10px;
    width: 100%;
}

.addParts03 .personArea .personBox2 span {
    color: #fff;
}

.addParts03 .personArea .personBox+.personBox {
    margin-top: 2rem;
}

.addParts03 .personArea .personBox2+.personBox2 {
    margin-top: 2rem;
}

.addParts03 .personArea .personBox .pic {
    display: table-cell;
    vertical-align: top;
    width: 200px;
}

.addParts03 .personArea .personBox2 .pic {
    display: table-cell;
    vertical-align: top;
    width: 200px;
}

.addParts03 .personArea .personBox .pic img {
    display: block;
    margin: 0 auto;
}

.addParts03 .personArea .personBox2 .pic img {
    display: block;
    margin: 15% auto;
}

.addParts03 .personArea .personBox dl {
    display: table-cell;
    vertical-align: middle;
    width: calc(100% - 130px);
    padding: 0 0 0 3rem;
}

.addParts03 .personArea .personBox2 dl {
    display: table-cell;
    vertical-align: middle;
    width: calc(100% - 130px);
    padding: 0 0 0 3rem;
}

.addParts03 .personArea .personBox dl dt {
    font-size: 2.2rem;
    font-weight: bold;
    line-height: 1.4;
    color: #000000;
    margin: 0 auto 2rem;
}

#index .addParts03 .personArea .personBox dl dt a {
    background: url(img/arrow_black.png) right 1.2rem no-repeat;
    background-size: 9px auto;
    padding-right: 2.5rem;
}

.addParts03 .personArea .personBox2 dl dt {
    font-size: 2rem;
    font-weight: bold;
    line-height: 1.4;
    color: #ffffff;
    margin: 0 auto 1.5rem;
}

.addParts03 .personArea .personBox dl dd {
    position: relative;
    margin: 0 auto;
    color: #333;
    line-height: 2;
}

.addParts03 .personArea .personBox2 dl dd {
    position: relative;
    margin: 0 auto;
    color: #fff;
    line-height: 2;
}

.addParts03 .personArea .personBox dl dd+dd {
    margin-top: 2rem;
}

.addParts03 .personArea .personBox2 dl dd+dd {
    margin-top: 2rem;
}

.addParts03 .personArea .personBox dl dd.caption--voices {
    text-align: right;
    font-size: 1.4rem;
    color: #9a9a9a;
    line-height: 1.6;
}

.addParts03 .personArea .personBox2 dl dd.caption--voices {
    text-align: right;
    font-size: 1.4rem;
    color: #9a9a9a;
    line-height: 1.6;
}

.addParts03 .summaryArea {
    width: 100%;
    background: url("img/parts03_summary_bg.png") left top repeat;
    padding: 50px 50px 50px;
    margin: 0 0 60px;
}

#contents .addParts03 .summaryArea .summaryTit {
    font-size: 3rem;
    font-weight: bold;
    line-height: 1.5;
    text-align: center;
    background: url("img/parts03_summary_ico.png") center bottom no-repeat;
    background-size: 70px auto;
    padding: 0 150px 80px;
    margin: 0 0 30px;
    position: relative;
}

#contents .addParts03 .summaryArea .summaryTit span {
    font-size: 2.6rem;
    padding: 0 8px;

    font-weight: inherit;
    color: inherit;
    border-bottom: none;
}

.addParts03 .summaryArea .txtArea {
    width: 100%;
    background-color: #fff;
    padding: 40px;
}

.addParts03 .summaryArea .txtArea .catch {
    font-size: 2rem;
    font-weight: bold;
    line-height: 1.5;
    text-align: center;
    margin: 0 0 25px;
}

.addParts03 .btnArea {
    width: 1020px;
    margin: 0 auto;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
}

#contents .addParts03 .btnArea .btn-internal {
    margin: 0 auto;
}

#contents .addParts03 .btnArea .btn-internal a {
    padding: 22px 70px 22px;
}

#contents .addParts03 .btnArea .btn-internal:nth-of-type(1) a {
    background: url("img/arrow_black.png") right 15px center no-repeat,
                url("img/parts03_summary_num01.png") 25px center no-repeat;
    background-size: 7px auto, auto 24px;
}

#contents .addParts03 .btnArea .btn-internal:nth-of-type(2) a {
    background: url("img/arrow_black.png") right 15px center no-repeat,
                url("img/parts03_summary_num02.png") 25px center no-repeat;
    background-size: 7px auto, auto 24px;
}

/* addParts--recommended */
.addParts--recommended {
    padding: 0;
}

@media screen and (max-width: 480px) {
    .addParts--recommended {
        margin: 0 auto;
        padding: 0;
        width: 100%;
    }
}

.addTopArea {
    margin: 0 auto 3.5rem;
}

.addTxt {
    max-width: 1280px;
    width: 90%;
    margin: 0 auto;
    line-height: 2;
}

.addTxt+.addTxt {
    margin-top: 1.5rem;
}

.addInner_bg {
    background: #f5f5f5;
    padding: 7.2rem 0 13rem;
}

.addParts--recommended .addParts__title {
    text-align: center;
    padding: 0 0 1.8rem;
    position: relative;
    letter-spacing: 5px;
    z-index: 3;
}

.addParts__title--recommened {
    background: url(img/recommended_h2_deco.png) no-repeat bottom 3rem center;
    background-size: 228px auto;
    font-size: 4.2rem;
    font-weight: bold;
    line-height: 1.54;
    color: #010101;
    text-align: center;
    padding: 0 0 9.8rem;
    position: relative;
    margin: 0 auto 5rem;
    letter-spacing: 5px;
}

.addParts--recommended .addParts__title::after {
    content: "";
    width: 100%;
    height: 126px;
    position: absolute;
    background-image: linear-gradient(135deg, #BDF3CA 25%, #fff 25%, #fff 50%, #BDF3CA 50%, #BDF3CA 75%, #fff 75%);
    background-size: 10px 10px;
    left: 0;
    right: 0;
    bottom: 25px;
    margin: 0 auto;
    z-index: -1;
}

.addParts--recommended .addParts__title::before {
    width: auto;
    height: 126px;
    position: absolute;
    top: 55%;
    z-index: 1;
}

.addParts--recommended .addParts__title__emp01--recommended {
    color: #26b8ea;
}

/* addParts--detail */
.addParts--detail {
    margin: 0 auto;
    position: relative;
}

.addParts--detail::before {
    content: "";
    width: 708px;
    max-width: 80%;
    height: 98px;
    background: url(img/addparts_detail_deco.png) no-repeat;
    background-size: contain;
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    top: -48px;
}

.addParts--detail .addTopArea {
    margin: -11.5rem auto 7.5rem;
    display: block;
    padding: 11.5rem 0 0;
}

#contents .addParts--detail .addTopArea .sttl {
    text-align: center;
    background: none;
    font-size: 4.2rem;
    line-height: 1.45;
    font-weight: bold;
    padding: 0;
    margin: 0 auto 7rem;
    letter-spacing: 5px;
}

#contents .addParts--detail .addTopArea .sttl a {
    display: block;
}

.addParts--detail .sttl__small {
    display: block;
    border: none;
    font-size: 3rem;
    margin: 0 auto 1rem;
    color: inherit;
}

#index .addParts--detail .personMainArea__title {
    background: #fff;
    position: absolute;
    right: 26px;
    top: 0;
    font-size: 1.5rem;
    font-weight: bold;
    color: #010101;
    padding: 1.4rem 3.6rem;
    line-height: 1.5;
}

#index .addParts--detail .personBox__item--detail {
    padding: 1.7rem 1.5rem 1.7rem 6.5rem;
    font-size: 1.6rem;
    font-weight: bold;
    color: #000;
    border-bottom: 1px solid #fff;
    background: url(img/detail_list_icon.png) no-repeat left 1rem center;
}

.addParts--detail .sliderArea {
    margin: 0 auto 6rem;
    max-width: 1100px;
}

#index .addParts--detail .slick-counter span {
    font-size: 1.2rem;
    color: #000;
}

.addParts--detail .sliderArea .slider .slidePic {
    height: auto;
    background: #fff;
}

.addParts--detail .sliderArea .slider .slidePic img {
    height: 458px;
    width: auto;
    display: block;
    margin: 0 auto;
}

.addParts--detail .sliderArea .caption {
    font-size: 1rem;
    color: #999;
    display: block;
    position: relative;
    top: 0;
    z-index: 1;
    padding: 0 1rem;
    margin: 1.2rem auto 0;
    text-align: center;
}

.addParts--detail .block__item--performance {
    overflow: visible;
    width: 100%;
    padding: 4.5rem 4.5rem 0;
    background: url(img/detail_performance_deco.png) no-repeat left 10px top;
    text-align: center;
    margin: 0 auto;
}

#index .addParts--detail .block__item__title {
    text-align: center;
    font-size: 2.6rem;
    font-weight: bold;
    color: #010101;
    margin: 6rem 0 3.5rem 0;
    padding-top: 4%;
}

.addParts--detail .icoTxt {
    text-align: center;
    font-size: 3.8rem;
    color: #010101;
    line-height: 1;
    font-weight: bold;
}

.addParts--detail .icoTxt__small {
    font-weight: inherit;
    font-size: 2.4rem;
    border: none;
}

.addParts--detail .icoTxt__emp {
    border: none;
    font-weight: inherit;
    color: #ff6b3d;
}

.block__modal-contents {
    display: none;
    position: absolute;
    bottom: 219px;
    left: 0;
    background: #8d8d8d;
    width: 308px;
    border: 2px solid #f3f3f3;
    border-radius: 10px;
    padding: 2rem 2.4rem 2.2rem;
    text-align: left;
    color: #fff;
    font-size: 1.6rem;
    line-height: 1.6875;
}

.addParts--detail .priceAreaInner {
    display: flex;
    align-items: baseline;
}

.addParts--detail .block__item--feature {
    margin: 8rem auto 0;
    padding: 0 4.5rem 0 4.5rem;
    background: url(img/detail_feature_deco.png) no-repeat left 10px top;
}

#index .addParts--detail .frame-wrap {
    margin-top: 4.5rem;
    padding: 4rem 0 0;
    flex-wrap: nowrap;
}

.addParts--detail .block__item--voices {
    padding: 0 4.5rem 0;
    background: url(img/detail_voices_deco.png) no-repeat left 10px top;
}

.addParts--detail .personArea--voices {
    margin: 4rem auto 0;
}

.addParts--detail .infoArea--information {
    background: url(img/detail_information_deco.png) no-repeat left 10px top;
}

.addParts--detail .infoArea--information .block__item__title {
    color: #000;
}


/* addParts--comparison */
.addParts--comparison {
    margin: 9rem auto 0;
}

.addParts--comparison .addTopArea {
    margin: 0 auto 6rem;
}

#index h2.addParts__title--comparison {
    background: url(img/comparison_h2_deco.png) no-repeat bottom 3rem center;
    background-size: 228px auto;
    font-size: 4.2rem;
    font-weight: bold;
    line-height: 1.54;
    color: #010101;
    text-align: center;
    padding: 0 0 9.8rem;
    position: relative;
    margin: 0 auto 5rem;
    letter-spacing: 5px;
}

#index .addParts03 .personArea .personBox dl dt a {
    background: url(img/arrow_black02.png) right center no-repeat;
    background-size: 19px auto;
    padding-right: 2.5rem;
}

#index h2.addParts__title--case {
    background: url(img/case_h2_deco.png) no-repeat bottom 3rem center;
    background-size: 228px auto;
    font-size: 4.2rem;
    font-weight: bold;
    line-height: 1.54;
    color: #010101;
    text-align: center;
    padding: 0 0 9.8rem;
    position: relative;
    margin: 0 auto 5rem;
    letter-spacing: 5px;
}

.addParts--comparison .addParts__title__small {
    font-size: 3rem;
    border: none;
    color: inherit;
    display: inline-block;
    margin: 0 auto 1rem;
}

#index h2.addParts__title--comparison::after {
    content: "";
    width: 100%;
    height: 126px;
    position: absolute;
    background-image: linear-gradient(135deg, #BDF3CA 25%, #fff 25%, #fff 50%, #BDF3CA 50%, #BDF3CA 75%, #fff 75%);
    background-size: 10px 10px;
    left: 0;
    right: 0;
    bottom: 0;
    margin: 0 auto;
    z-index: -1;
}

#index h2.addParts__title--case::after {
    content: "";
    width: 100%;
    height: 126px;
    position: absolute;
    background-image: linear-gradient(135deg, #BDF3CA 25%, #fff 25%, #fff 50%, #BDF3CA 50%, #BDF3CA 75%, #fff 75%);
    background-size: 10px 10px;
    left: 0;
    right: 0;
    bottom: 0;
    margin: 0 auto;
    z-index: -1;
}

#index .addParts__table--comparison {
    margin: 0 auto;
}

#index .addParts__table__blank--comparison {
    background: inherit;
}

#index .addParts__table--comparison th {
    padding: 2.2rem 1.5rem;
    font-size: 1.8rem;
}

#index .addParts__table--comparison tr:first-of-type th {
    padding: 2.7rem 1.5rem;
}

#index .addParts__table--comparison th:first-of-type {
    width: 22.6%;
}

#index .addParts__table--comparison td {
    text-align: center;
    color: #010101;
    font-size: 2.8rem;
    padding: 1.2rem 1.5rem;
    line-height: 1.6;
    font-weight: bold;
}

.addParts__table__emp01--comparison,
.addParts__table__emp02--comparison,
.addParts__table__small--comparison {
    border: none;
    font-weight: inherit;
    color: inherit;
}

.addParts__table__emp01--comparison {
    color: #3fc0ed;
    font-size: 2.4rem;
}

.addParts__table__emp02--comparison {
    color: #ff6b3d;
}

.addParts__table__small--comparison {
    font-size: 1.6rem;
}

#index .btn-internal--comparison {
    margin: 9.5rem auto 0.6rem;
}

.btn-internal--comparison a {
    background: url(img/arrow_white02_up.png) no-repeat right 22px center #18b3e9;
    background-size: 6px auto;
    color: #fff;
}

/* addParts--list */
.addParts--list {
    margin: 9rem auto 0;
}

#index .addParts--list .addTopArea .sttl {
    position: relative;
    margin: 0 auto 9rem;
    font-size: 3.2rem;
    letter-spacing: 2.5px;
    background: none;
    border-bottom: 2px solid #111;
    padding: 0 0rem 1rem 2rem;
    font-weight: bold;
    line-height: 1.6;
}

.addParts--list .addTopArea .deco {
    position: relative;
    top: -7rem;
    left: 2.5rem;
}

.addParts--list .addParts__title__small {
    font-size: 3rem;
    border: none;
    color: inherit;
}

#index .addParts--list .addTopArea .sttl::after {
    content: "";
    width: calc(100% - 3rem);
    height: 90px;
    background-image: linear-gradient(135deg, #BDF3CA 25%, #fff 25%, #fff 50%, #BDF3CA 50%, #BDF3CA 75%, #fff 75%);
    background-size: 10px 10px;
    position: absolute;
    bottom: -55px;
    left: -3px;
    z-index: -1;
}

#index .addParts--list .addTopArea .sttl a {
    display: block;
}

#index .addParts--list .addTopArea .sttl2 {
    position: relative;
    margin: 0 auto 9rem;
    font-size: 3.2rem;
    letter-spacing: 2.5px;
    background: none;
    border-bottom: 2px solid #111;
    padding: 0 0.5rem 1rem 2rem;
    font-weight: bold;
    line-height: 1.6;
}

.addParts--list .addParts__title__small {
    font-size: 2.8rem;
    border: none;
    color: inherit;
}

#index .addParts--list .addTopArea .sttl2::after {
    content: "";
    width: calc(100% - 3rem);
    height: 90px;
    background-image: linear-gradient(135deg, #ffbc86 25%, #fff 25%, #fff 50%, #ffbc86 50%, #ffbc86 75%, #fff 75%);
    background-size: 10px 10px;
    position: absolute;
    bottom: -55px;
    left: -3px;
    z-index: -1;
}

#index .addParts--list .addTopArea .sttl2 a {
    display: block;
}

#index .addParts--list .addTopArea .sttl2 a {
    background: url(img/arrow_black02.png) right center no-repeat;
    background-size: 23px auto;
}

.addParts--list .addTxt {
    color: #333;
    max-width: calc(100% - 3rem);
}

.addParts--list .addTopArea .addTxt span {
    font-weight: bold;
    color: #333;
    border-bottom: 3px solid #e3f27f;
}

#index .frame-wrap--list {
    margin: 6.5rem auto 0;
}

#index .frame-wrap .frame--list {
    width: calc((100% - 4.6rem) / 3);
    margin-right: 2.3rem;
    padding: 3rem 2.5rem 4.3rem;
    margin: 8rem auto;
}

#index .frame-wrap .frame--list::after {
    width: calc((100% - 4.6rem) / 3);
    content: "";
    display: block;
}

#index .frame-wrap .type-b .frame-head--list {
    padding: 0 0 2.5rem 0.3rem;
    border-bottom: 1px solid #000;
    margin: 0 auto 2rem;
}

#index .frame-wrap .type-b .frame-head--list::after {
    content: none;
}

#index .frame-wrap .type-b .frame-head--list a {
    width: 100%;
    margin: 0 auto;
}

#index .frame-wrap .type-b .frame-body--list {
    margin: 0 auto;
    padding: 0;
}

#index .frame-wrap .type-b .frame__table--list th {
    background: #747474;
    border: none;
    color: #fefefe;
    width: 27%;
}

#index .frame-wrap .type-b .frame__table--list td {
    padding: 1.2rem 1.5rem;
}

/* type-b1 */
#index .frame-wrap .type-b1 .frame-head--list {
    padding: 0 0 2.5rem 0.3rem;
    border-bottom: 1px solid #000;
    margin: 0 auto 2rem;
}

#index .frame-wrap .type-b1 .frame-head--list::after {
    content: none;
}

#index .frame-wrap .type-b1 .frame-head--list a {
    width: 100%;
    margin: 0 auto;
    color: #20b724;
}

#index .frame-wrap .type-b1 .frame-body--list {
    margin: 0 auto;
    padding: 0;
}

#index .frame-wrap .type-b1 .frame__table--list th {
    background: #747474;
    border: none;
    color: #fefefe;
    width: 27%;
}

#index .frame-wrap .type-b1 .frame__table--list td {
    padding: 1.2rem 1.5rem;
}

/* addParts--area */
.addParts--area {
    margin: 16rem auto;
    padding: 5rem 0 0;
}

#index .addParts--area .interviewTitArea .interviewTit::after {
    width: 540px;
    height: 51px;
    background: url(img/area_h2_deco.png) no-repeat;
    top: -51px;
    left: 0;
}

@media screen and (min-width: 481px) and (max-width: 1400px) {
    #index .addParts--area .interviewTitArea .interviewTit::after {
        left: 10px;
    }
}

#index .box-wrap--area {
    margin: 5rem auto 18rem;
}

#index .box-wrap--area.is-show {
    margin: 5rem auto 5rem;
}

#index .box-wrap--area.is-accordion {
    margin: 0 auto 5rem;
}

#index .box-wrap2--area {
    margin: 5rem auto 18rem;
    position: relative;
    z-index: 0;
    display: flex;
}

@media screen and (max-width: 480px) {
    #index .box-wrap2--area {
        display: block;
    }

    #index .box-wrap--area.is-accordion {
        margin: 0 auto 5rem;
    }


    #index .box-wrap--area.is-show::after {
        content: none;
        width: 474px;
        height: 941px;
        position: absolute;
        z-index: -1;
        background: url(img/area_bg.png) no-repeat;
        background-size: contain;
        right: -340px;
        top: -430px;
    }
}

@media screen and (min-width: 481px) and (max-width: 1199px) {
    #index .box-wrap--area::after {
        right: 0;
        bottom: 960px;
    }
}

@media screen and (min-width: 1200px) and (max-width: 1484px) {
    #index .box-wrap--area::after {
        right: calc(50% - 49vw);
    }
}

@media screen and (max-width: 480px) {
    #index .box-wrap--area::after {
        width: 100%;
    }
}


#index .box-wrap .box--area {
    padding: 4.2rem 0 0;
    width: calc((100% - 8.2rem) / 2);
    position: relative;
}

#index .box-wrap .box--area:nth-child(n + 3) {
    margin-top: 6.3rem;
}

#index .box-wrap .box--area::before,
#index .box-wrap .box--area:nth-child(even)::before {
    content: "";
    width: 119px;
    height: 51px;
    position: absolute;
    background: url(img/area_box_ikoma.png) no-repeat;
    background-size: contain;
    top: -15px;
    left: 7px;
}

#index .box-wrap .box--area:nth-child(2)::before {
    width: 131px;
    background: url(img/area_box_ikoma.png) no-repeat;
    background-size: contain;
}

#index .box-wrap .box--area:nth-child(3)::before {
    width: 188px;
    background: url(img/area_box_ikoma.png) no-repeat;
    background-size: contain;
}

#index .box-wrap .box--area:nth-child(4)::before {
    width: 155px;
    background: url(img/area_box_ikoma.png) no-repeat;
    background-size: contain;
}

#index .box-wrap .box--area .box-head {
    margin: 3rem auto;
    padding: 0 2.2rem;
}

#index .box-wrap .box--area .box-body p {
    width: 100%;
    float: none;
    color: #333;
    margin: 0 auto;
}

#index .box-wrap .box--area .box-body p+p {
    margin-top: 1.5rem;
}

#index .addParts--area .box__list--area .box__list--area {
    margin: 3rem auto 0;
    background: #f5f5f5 url(img/area_list_deco.png) no-repeat left 23px center;
    min-height: 129px;
    padding: 2.8rem 1.5rem 2.8rem 7.7rem;
}

#index .addParts--area .box__list__item--area {
    font-size: 1.6rem;
    padding: 0 0 0.4rem 3rem;
    background: url(img/area_list_icon.png) no-repeat left center;
    background-size: 16px auto;
    line-height: 1.75;
}

#index .addParts--area .box__list__item--area+.box__list__item--area {
    margin-top: 1rem;
}

/* addParts--points */
.addParts--points {
    margin: 16rem auto 0;
    padding: 5.3rem 0 0;
}

#index .addParts--points .interviewTitArea .interviewTit::after {
    width: 480px;
    height: 53px;
    background: url(img/points_h2_deco.png) no-repeat;
    top: -53px;
    left: 10px;
}

@media screen and (min-width: 481px) and (max-width: 1400px) {
    #index .addParts--points .interviewTitArea .interviewTit::after {
        left: 10px;
    }
}

#contents .addParts--points .interviewTitArea .interviewTit {
    line-height: 1.45;
}

#index .frame-wrap--points {
    margin: 8.5rem auto 0;
}

#index .frame-wrap.is-show .frame--points {
    margin-bottom: 0;
}

#index .frame-wrap.is-show {
    margin-bottom: 8rem;
}

#index .frame-wrap.is-accordion,
#index .frame-wrap.is-accordion .frame--points {
    margin-top: 0;
}

#index .addParts03 .frame-accordion__button {
    margin-top: 2.4rem;
    cursor: pointer;
}

#index .addParts03 .frame-accordion__button:hover {
    opacity: .7;
}

#index .frame-wrap .frame--points {
    width: calc((100% - 4.8rem) / 2);
    margin-right: 2.4rem;
    background: #f6f6f6;
    border: none;
    padding: 0 10px;
    /* margin: 8rem auto; */
}

@supports (-ms-ime-align: auto) {

    /* Edge対策 */
    #index .frame-wrap .frame--points {
        width: calc((100% - 4.81rem) / 2);
    }
}

#index .frame-wrap .frame--points .frame-head {
    font-size: 2rem;
    font-weight: bold;
    padding: 2.8rem 2rem 2.8rem 3rem;
    display: table;
    width: 100%;
    vertical-align: middle;
}

#index .frame-wrap .frame--points .frame-head a {
    display: table-cell;
    vertical-align: middle;
    background: url(img/arrow_black02.png) right center no-repeat;
    background-size: 19px auto;
    padding-right: 2.5rem;
}

#index .frame-wrap .frame--points .thumb {
    width: 75%;
    padding: 0 3rem;
    text-align: center;
    margin: 0 auto 2rem;
}

#index .frame .frame-body--points {
    padding: 0 3rem 3rem;
}

.addParts03 .box__list--area {
    min-height: 129px;
    display: -webkit-flex;
    display: -ms-flex;
    display: flex;
    flex-direction: column;
    text-align: left;
    justify-content: center;
    align-items: flex-start;
}

#index .frame-wrap .frame--list.type-b1 {
    width: 32%;
    margin: 0;
    margin-right: 2%;
    margin-bottom: 24px;
}

#index .frame-wrap .frame--list.type-b1:nth-of-type(3n) {
    margin-right: 0;
}

.frame-wrap--recommended .btn-web2 a {
    position: relative;
    background: #000;
    padding: 1rem 4.5rem 1.4rem;
}

.frame-wrap--recommended .btn-web2 a::after {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 23px;
    width: 19px;
    height: 19px;
    margin: auto;
    background: url("img/arrow_white02.png") no-repeat 0 / contain;
    content: '';
    transform: rotate(90deg);
}

@media screen and (max-width: 480px) {
    /* SP */
    /*------------
    Index
    ------------*/

    #contents {
        width: 100%;
        margin: 0 auto 0;
    }

    /*--------------------------------------
    　visArea
    ---------------------------------------*/
    #visArea {
        margin: 0 auto 4rem;
    }

    #visArea .mainArea {
        background: none;
        width: 100%;
        margin: 0 auto;
        padding: 0;
    }

    #visArea .mainArea .mainAreaInner {
        max-width: 100%;
        padding: 39.625vw 0px 0px;
        background: url(img/mv_pic_pc.jpg) no-repeat top center;
        background-size: 100% auto;
        position: relative;
    }

    #visArea .mainArea .mainAreaInner::after {
        content: none;
    }

    #visArea .mainArea .siteNameArea {
        display: table;
        background: url("img/mv_pic_sp.jpg") center top no-repeat;
        background-size: cover;
        height: 130px;
        width: 100%;
        margin: 0 auto;
    }

    #visArea .mainArea .siteName {
        margin: 0 auto;
        text-align: left;
        position: absolute;
        top: 10vw;
        left: 14.375vw;
        width: 18.75vw;
    }

    #visArea .mainArea .mainTxtBox {
        width: 100%;
        padding: 0;
        margin: 3.2rem auto 0px;
    }

    #visArea .mainArea .catchArea {
        padding: 7px 0 1rem;
        margin: 0 auto;
    }

    #visArea .mainArea .catchArea::after {
        background-size: contain;
        width: 165px;
        height: 11px;
        left: 4%;
        bottom: 0;
    }

    #visArea .mainArea .catchArea .catch {
        font-size: 2rem;
        padding: 2px 0px 0.5rem 7%;
        max-width: 96%;
        margin: 0 auto 0 0;
    }


    #visArea .btn-web4 {
        width: 270px;
    }


    #visArea .mainArea .txtArea {
        max-width: 92%;
        margin: 0 auto;
    }

    #visArea .mainArea__item {
        margin: 0 auto;
        width: 100%;
    }

    #visArea .mainArea .siteNameArea {
        margin: 0 0 30px;
    }

    #visArea .mainArea .siteName img.sp {
        margin: 38px 0 0 -39px;
        width: auto;
    }

    #visArea .mainArea .txtArea p {
        color: #333;
        line-height: 1.71;
        width: 100%;
        padding-bottom: 20px;
    }

    /*--------------------------------------
    　box-wrap
    ---------------------------------------*/
    #contents .box-wrap .box {
        width: 100%;
    }

    #index .box__list__item--area h3 {
        font-size: 2.2rem;
    }


    /*type-b*/
    #contents .box-wrap .type-b {
        padding: 3rem 0 3rem;
    }

    /*type-b1*/
    #contents .box-wrap .type-b1 {
        padding: 3rem 0 3rem;
    }

    /*--------------------------------------
    　frame-wrap
    ---------------------------------------*/
    #contents .frame {
        width: 100%;
        margin: 0 0 2rem;
    }

    #contents .frame-wrap .frame:nth-child(n + 4) {
        margin-top: 0;
    }

    #contents .frame .frame-body {
        padding: 0 1.5rem 3rem;
    }

    /*type-a*/
    #contents .frame-wrap .type-a .frame-catch {
        padding: 1.5rem 2.5rem;
    }

    #contents .frame-wrap .type-a .frame-head {
        padding: 1.8rem 1.5rem;
    }

    #contents .frame-wrap .type-a .thumb {
        width: 80%;
    }

    #contents .frame-wrap .type-a ul.icoArea {
        width: 100%;
    }

    #contents .frame-wrap .type-a ul.icoArea li {
        width: calc(100% / 3);
        margin: 0 0 0 0;
    }

    #contents .frame-wrap .type-a ul.icoArea li:first-child {
        margin: 0 0 0 0;
    }

    #contents .frame-wrap .type-a ul.icoArea li:nth-child(3n + 1) {
        margin: 0 0 0 0;
    }

    #contents .frame-wrap .type-a ul.icoArea li:nth-child(n + 4) {
        margin-top: 1.6rem;
    }

    /*type-b*/
    #contents .frame-wrap .type-b .frame-head {
        padding: 1.8rem 1.5rem;
    }

    #contents .frame-wrap .type-b .thumb {
        width: 80%;
    }

    /*type-b1*/
    #contents .frame-wrap .type-b1 .frame-head {
        padding: 1.8rem 1.5rem;
    }

    #contents .frame-wrap .type-b1 .thumb {
        width: 80%;
    }

    /*btn-web*/
    #contents .frame .frame-body .btn-web {
        width: 85%;
    }

    /*--------------------------------------
    オリジナル
    ---------------------------------------*/

    /***** addParts01 *****/

    .addParts01 {
        width: 85%;
        margin: 0 auto 90px;
    }

    .addParts01 .addInner {
        width: 100%;
        margin: 0 auto;
    }

    .addParts01 p {
        margin: 0;
    }

    .addParts01 .aadPartsTit {
        text-align: center;
    }

    .addParts01 .block {
        width: 100%;
        margin: 0 0 2.5rem;
        float: none;
    }

    .addParts01 .block:first-child {
        margin: 0 0 2.5rem;
    }

    .addParts01 .block:nth-child(3n + 1) {
        margin: 0 0 2.5rem;
    }

    .addParts01 .block:nth-child(n + 4) {
        margin: 0 0 2.5rem;
    }

    .addParts01 .block:last-child {
        margin: 0 0 0;
    }

    .addParts01 .block .catch {
        font-size: 1.4rem;
        font-weight: 500;
        line-height: 1.5;
        text-align: center;
        border-top: 1px solid #333;
        border-bottom: 1px solid #333;
        padding: 12px 10px;
        margin: 0 0 0;
    }

    .addParts01 .block a {
        display: block;
    }

    .addParts01 .scrollArea {
        background-color: #f5f5dc;
        padding: 1rem 4rem 2rem 1.5rem;
        position: relative;
    }

    .addParts01 .scrollArea::after {
        content: "";
        width: 20px;
        height: 20px;
        background: url("img/scroll_arrow.png") no-repeat;
        background-size: 100% auto;
        position: absolute;
        top: calc(50% - 10px);
        left: auto;
        right: 10px;
        bottom: auto;
    }

    .addParts01 .scrollArea .priceArea {
        display: table;
        width: 100%;
        margin: 0 0 1.5rem;
    }

    .addParts01 .scrollArea .priceArea .priceTit {
        display: table-cell;
        vertical-align: middle;
        width: 30%;
        font-size: 1.2rem;
        line-height: 1.2;
        text-align: center;
        word-wrap: break-word;
        color: #fff;
        background-color: #333;
        padding: 0.7rem 1rem 0.8rem;
    }

    .addParts01 .scrollArea .priceArea .priceTit br {
        display: none;
    }

    .addParts01 .scrollArea .priceArea .price {
        display: table-cell;
        vertical-align: middle;
        width: 70%;
        font-size: 2.4rem;
        font-weight: bold;
        line-height: 1.2;
        letter-spacing: 0.03em;
        text-align: center;
        color: #8c8200;
        background-color: #fff;
        padding: 0.7rem 1rem 0.8rem;
    }

    .addParts01 .scrollArea .priceArea .price span {
        font-size: 1.2rem;
        color: #333;
        padding: 0 0 0 5px;
    }

    .addParts01 .scrollArea .companyName {
        font-size: 1.7rem;
        font-weight: bold;
        line-height: 1.5;
        text-align: center;
    }

    /***** addParts02 *****/

    .addParts02 {
        width: 100%;
        padding: 5rem 0 6rem;
    }

    .addParts02 .addInner {
        width: 92%;
        margin: 0 auto;
    }

    .addParts02 p {
        margin: 0;
    }

    /*addTopArea*/
    .addParts02 .addTopArea {
        padding: 0 0;
        margin: 0 auto 3rem;
    }

    /*sttl*/
    #index .addParts02 .sttl {
        display: block;
        font-size: 1.9rem;
        font-weight: bold;
        line-height: 1.5;
        text-align: center;
        background: url("img/parts02_tit_ico.png") center bottom no-repeat;
        background-size: 29px auto;
        padding: 0 3.5rem 4.5rem;
        margin: 0 auto 2rem;
        position: relative;
    }

    /*block*/
    .addParts02 .block {
        padding: 3rem 0 3rem;
        margin: 0 auto;
        position: relative;
    }

    .addParts02 .block+.block {
        margin-top: 5rem;
    }

    .addParts02 .blockTitArea {
        padding: 0 4rem;
        margin: 0 0 2.5rem;
    }

    .addParts02 .blockTitSub {
        font-size: 1.4rem;
        margin: 0 auto 2.5rem;
        padding: 1.5rem 2.5rem;
    }

    .addParts02 .blockTitSub::before {
        left: -6px;
        top: -6px;
    }

    .addParts02 .blockTitSub::after {
        width: 20px;
        height: 10px;
        bottom: -10px;
    }

    #index .addParts02 .blockTit {
        font-size: 2rem;
    }

    /*slideTxtArea*/
    .addParts02 .slideTxtArea {
        width: calc(100% - 30px);
        border-left: 1px solid #333;
        padding: 2.5rem 0 1.5rem 1.5rem;
        margin: -1.5rem auto 0;
        position: relative;
        z-index: 2;
    }

    .addParts02 .slideTxtArea::before {
        content: "";
        width: 15px;
        height: 1px;
        background: #333;
        position: absolute;
        left: 0;
        bottom: 0;
    }

    .addParts02 .caption {
        margin: 0 0 1.2rem;
    }

    .addParts02 .slideTit {
        font-size: 1.5rem;
        font-weight: bold;
        line-height: 1.5;
        margin: 0 0 8px;
    }

    .addParts02 .slideTxt {
        line-height: 1.6;
    }

    /*テキスト動き*/
    .addParts02 .slideTxtArea {
        opacity: 0;
        transition: all 1s 0s ease;
        transition-delay: 300ms;
    }

    .addParts02 .slick-slide.slick-current .slideTxtArea,
    .addParts02 .slick-slide.is-active-next .slideTxtArea {
        opacity: 1;
    }

    .addParts02 .slideTxtInner {
        opacity: 0;
        margin-left: -15px;
        transition: all 0.5s 0s ease;
        transition-delay: 600ms;
    }

    .addParts02 .slick-slide.slick-current .slideTxtInner,
    .addParts02 .slick-slide.is-active-next .slideTxtInner {
        opacity: 1;
        margin-left: 0;
    }

    .addParts02 .priceIcoArea {
        width: 92%;
        height: 100%;
        overflow: hidden;
        padding: 3rem 0;
        margin: 0 auto 3rem;
        position: relative;
    }

    .addParts02 .priceIcoArea .priceArea {
        width: auto;
        padding: 0 3% 1.5rem;
        margin: 3rem auto 0;
        float: none;
    }

    #contents .addParts02 .priceIcoArea .priceArea .priceTit {
        font-size: 1.4rem;
        line-height: 1.2;
        text-align: center;
        word-break: break-all;
        margin-right: 1rem;
        font-feature-settings: "palt";
        min-width: 58px;
    }

    .addParts02 .priceIcoArea .priceArea .price {
        font-size: 3.2rem;
        font-feature-settings: "palt";
    }

    .addParts02 .priceIcoArea .priceArea .price span {
        font-size: 1.6rem;
        padding: 0 0 0 0.4rem;
        font-feature-settings: "palt";
    }

    #contents .addParts02 .priceIcoArea .priceArea ul li {
        line-height: 1.5;
        padding: 0 0 12px 18px;
        position: relative;
    }

    #contents .addParts02 .priceIcoArea .priceArea ul li::before {
        content: "・";
        position: absolute;
        top: 0;
        left: 0;
    }

    .addParts02 .priceIcoArea .icoArea {
        width: 100%;
        float: none;
    }

    .addParts02 .priceIcoArea .icoArea li {
        width: 100%;
        margin: 0 0 3rem;
        float: none;
    }

    .addParts02 .priceIcoArea .icoArea li:first-child {
        margin: 0 0 3rem;
    }

    .addParts02 .priceIcoArea .icoArea li:nth-child(3n + 1) {
        margin: 0 0 3rem;
    }

    .addParts02 .priceIcoArea .icoArea li:nth-child(n + 4) {
        margin: 0 0 3rem;
    }

    .addParts02 .priceIcoArea .icoArea li:last-child {
        margin: 0 0 0;
    }

    #index .addParts02 .priceIcoArea .icoArea {
        width: 100%;
        display: block;
    }

    #index .addParts02 .priceIcoArea .icoArea li {
        width: 100%;
        margin: 0;
        max-width: 100%;
        text-align: left;
        display: flex;
        justify-content: space-between;
    }

    #index .addParts02 .priceIcoArea .icoArea li+li {
        margin-top: 1.1rem;
    }

    #index .addParts02 .priceIcoArea .icoArea li .icoTtl {
        width: 180px;
        flex-shrink: 0;
        margin: 0 1.5rem 0 0;
        color: #fff;
        font-size: 1.6rem;
        border-radius: 10px;
        position: relative;
        display: flex;
        align-items: center;
        padding: 0;
        height: auto;
    }

    #index .addParts02 .priceIcoArea .icoArea li .icoTtl::after {
        content: "";
        width: 32px;
        height: 3px;
        position: absolute;
        background: url(img/recommended_frame_list_deco.png) no-repeat;
        top: 0;
        bottom: 0;
        right: -12px;
        margin: auto 0;
    }

    #index .addParts02 .priceIcoArea .icoArea li:nth-of-type(-n + 4) .icoTtl {
        background: url(img/question_mark01.png) no-repeat right 2.8rem center #18b3e9;
    }

    #index .addParts02 .priceIcoArea .icoArea li:nth-of-type(-n + 4) .icoTtl:hover {
        background: url(img/question_mark02.png) no-repeat right 2.8rem center #18b3e9;
    }

    #index .addParts02 .priceIcoArea .icoArea li:nth-of-type(n + 5) .icoTtl {
        background: url(img/question_mark01.png) no-repeat right 2.8rem center #1875e9;
    }

    #index .addParts02 .priceIcoArea .icoArea li:nth-of-type(n + 5) .icoTtl:hover {
        background: url(img/question_mark02.png) no-repeat right 2.8rem center #1875e9;
    }

    #index .addParts02 .priceIcoArea .icoArea li .icoTtl a {
        text-decoration: none;
        pointer-events: auto;
        display: flex;
        padding: 0.7rem 5.5rem 0.7rem 2rem;
        width: 100%;
        align-items: center;
        height: 100%;
    }

    #index .addParts02 .priceIcoArea .icoArea li .icoTtl:focus,
    #index .addParts02 .priceIcoArea .icoArea li .icoTtl a:focus {
        outline: none;
    }

    #index .addParts02 .priceIcoArea .icoArea li .icoTtl a:hover {
        opacity: 1;
    }

    #index .addParts02 .priceIcoArea .icoArea li .icoTtl span {
        border: none;
        color: inherit;
        font-weight: inherit;
        font-size: 1.4rem;
    }

    .addParts02 .infoArea {
        clear: both;
        width: 92%;
        padding: 0 0;
        margin: 0 auto 3rem;
    }

    #contents .addParts02 .infoArea .infoTit {
        width: 100%;
        font-size: 1.8rem;
        font-weight: bold;
        line-height: 1.5;
        text-align: center;
        margin: 0 auto 2.5rem;
    }

    .addParts02 .infoArea .infoBox .mapArea {
        width: 100%;
        overflow: hidden;
        margin: 0 0 2.5rem;
        float: none;
    }

    .addParts02 .infoArea .infoBox .mapArea .map iframe {
        display: block;
        width: 100.2% !important;
    }

    #contents .addParts02 .infoArea .infoBox table {
        display: table;
        width: 100%;
        margin: 0;
        float: none;
    }

    #contents .addParts02 .infoArea .infoBox table th {
        display: table-cell;
        width: 35%;
        border-right: 1px solid #fff;
        padding: 1rem;
    }

    #contents .addParts02 .infoArea .infoBox table td {
        display: table-cell;
        padding: 1rem;
    }

    /*btn*/
    #contents .addParts02 .btn-web,
    #contents .addParts02 .btn-tel {
        width: 75%;
        margin: 3rem auto 4rem;
    }

    #contents .addParts02 .btn-web a {
        background-image: url(img/arrow_white02.png);
        background-repeat: no-repeat;
        background-size: 14px auto;
        background-position: right 9px center;
        line-height: 1.6;
    }

    /***** addParts02 *****/

    .addParts03 {
        width: 100%;
        margin: 6.5rem auto 7rem;
    }

    .addParts03 .addInner {
        width: 95%;
        margin: 0 auto;
    }

    .addParts03 p {
        margin: 0;
    }

    .addParts03 .addTopArea {
        width: 100%;
        margin: 0 0 4rem;
        display: block;
    }


    .addParts03 .addTopArea .addTopPic2 {
        width: 100%;
    }

    .addParts03 .addTopArea .addTopPic {
        width: 100%;
        margin: 0 0 2rem;
        position: relative;
    }

    .addParts03 .addTopArea .addTopPic img {
        width: 80%;
        box-shadow: 8px -10px 0 #20b724;
    }

    .addParts03 .addTopArea .addTopTxt {
        width: 100%;
        padding-right: 0;
    }

    #contents .addParts03 .addTopArea .sttl {
        display: block;
        font-size: 1.9rem;
        font-weight: bold;
        line-height: 1.5;
        text-align: center;
        background: url("img/parts03_tit_ico.png") center bottom no-repeat;
        background-size: 30px auto;
        padding: 0 0 4rem;
        margin: 0 auto 1.5rem;
        position: relative;
    }

    .addParts03 .personMainArea {
        padding: 4.5rem 2rem 2rem 4.8rem;
        margin: 0 auto 2.5rem;
        position: relative;
    }

    .addParts03 .personMainArea .subTxt {
        display: inline-block;
        font-size: 1.2rem;
        font-weight: bold;
        line-height: 1;
        background-color: #f5f5dc;
        background: url("img/parts03_sub_dot01.png") left top repeat-x,
                    url("img/parts03_sub_dot01.png") left bottom repeat-x,
                    url("img/parts03_sub_dot02.png") left top repeat-y,
                    url("img/parts03_sub_dot02.png") right top repeat-y #f5f5dc;
        padding: 10px 18px;
        position: absolute;
        top: -15px;
        right: 8px;
    }

    .addParts03 .personMainArea .personBox {
        display: block;
    }

    .addParts03 .personMainArea .personBox2 {
        display: block;
    }

    .addParts03 .personMainArea .personBox .pic {
        display: block;
        width: 100px;
        position: absolute;
        top: 25px;
        left: 8px;
    }

    .addParts03 .personMainArea .personBox2 .pic {
        display: block;
        width: 100px;
        position: absolute;
        top: 25px;
        left: 8px;
    }

    .addParts03 .personMainArea .personBox .pic img {
        border-radius: 100px;
    }

    .addParts03 .personMainArea .personBox2 .pic img {
        border-radius: 100px;
    }

    .addParts03 .personMainArea .personBox dl {
        display: block;
        width: 100%;
        padding: 0 0 0 0;
    }

    .addParts03 .personMainArea .personBox2 dl {
        display: block;
        width: 100%;
        padding: 0 0 0 0;
    }

    .addParts03 .personMainArea .personBox dl dt {
        display: table-cell;
        vertical-align: middle;
        width: calc(100% - 15px);
        height: 100px;
        font-size: 1.7rem;
        font-weight: bold;
        line-height: 1.6;
        color: #8c8200;
        padding: 0 0 0 12.5rem;
        margin: 0 0 1.5rem;
    }

    .addParts03 .personMainArea .personBox2 dl dt {
        display: table-cell;
        vertical-align: middle;
        width: calc(100% - 15px);
        height: 100px;
        font-size: 1.7rem;
        font-weight: bold;
        line-height: 1.6;
        color: #8c8200;
        padding: 0 0 0 12.5rem;
        margin: 0 0 1.5rem;
    }

    .addParts03 .personMainArea .personBox dl dt span {
        display: block;
        font-size: 1.3rem;
        color: #333;
    }

    .addParts03 .personMainArea .personBox2 dl dt span {
        display: block;
        font-size: 1.3rem;
        color: #333;
    }

    .addParts03 .personMainArea .personBox dl dd {
        display: block;
        width: 100%;
        margin: 1.5rem 0 0;
    }

    .addParts03 .personMainArea .personBox2 dl dd {
        display: block;
        width: 100%;
        margin: 1.5rem 0 0;
    }

    .addParts03 .interviewTitArea {
        display: block;
        padding: 0 4% 2.5rem 0;
        margin: 0 0 1rem;
    }

    .addParts03 .interviewTitArea::before {
        right: 0;
        width: 480px;
    }

    .addParts03 .interviewTitArea::after {

        top: 15px;
        right: 15px;
        width: 100%;
    }

    #contents .addParts03 .interviewTitArea .interviewTit {
        display: block;
        width: 100%;
        font-size: 2.2rem;
        padding: 3rem 0 2rem;
        position: relative;
        max-width: inherit;
        letter-spacing: normal;
        line-height: 1.4;
    }

    #contents .addParts03 .interviewTitArea .interviewTit a::after,
    #contents .addParts03 .interviewTitArea .interviewTit2 a::after{

        right: 20px;
    }

    .interviewTit__small {
        font-size: 1.8rem;
    }

    #contents .addParts03 .interviewTitArea .interviewTit:after {
        content: "";
        width: 116px;
        height: 18px;
        background: url("img/parts03_eng.png") no-repeat;
        background-size: 100% auto;
        top: -10px;
        left: calc(50% - 58px);
    }

    .addParts03 .interviewTitArea .interviewTxt {
        display: block;
        width: 100%;
        font-size: 1.4rem;
        border-left: none;
        padding: 0;
    }

    .image-alignment-area-box {
        margin: 4rem 4%;
        display: block;
    }

    .image-alignment-area-box dt {
        float: left;
        width: 150px;
        padding: 0 10px 5px 0;
    }

    .image-alignment-area-box dd {
        padding-left: 0;
    }

    #index .image-alignment-area-box dd h3 {
        font-size: 1.5rem;
        margin: 0 auto 1.2rem;
        padding: 1rem 0 0;
    }

    .addParts03 .personArea {
        margin: 0 0 4rem;
    }

    .addParts03 .personArea .personBox {
        padding: 2rem 4%;
    }

    .addParts03 .personArea .personBox2 {
        padding: 2rem 4%;
    }

    .addParts03 .personArea .personBox .pic {
        display: block;
        width: 150px;
        float: left;
        margin: 0 1.5rem 1rem 0.8rem;
    }

    .addParts03 .personArea .personBox2 .pic {
        display: block;
        width: 80px;
        float: left;
        margin: 0 1.5rem 1rem 0.8rem;
    }

    .addParts03 .personArea .personBox dl {
        display: block;
        width: 100%;
        padding: 1rem 0 0;
    }

    .addParts03 .personArea .personBox2 dl {
        display: block;
        width: 100%;
        padding: 1rem 0 0;
    }

    .addParts03 .personArea .personBox dl dt {
        font-size: 1.5rem;
        margin: 0 auto 1.2rem;
    }

    .addParts03 .personArea .personBox2 dl dt {
        font-size: 1.5rem;
        margin: 0 auto 1.2rem;
    }

    .addParts03 .personArea .personBox dl dd {
        margin: 0 auto;
        word-break: break-all;
    }

    .addParts03 .personArea .personBox2 dl dd {
        margin: 0 auto;
    }

    .addParts03 .personArea .personBox dl dd+dd {
        margin-top: 1.5rem;
    }

    .addParts03 .personArea .personBox2 dl dd+dd {
        margin-top: 1.5rem;
    }

    .addParts03 .personArea .personBox dl dd.caption--voices {
        font-size: 1rem;
    }

    .addParts03 .personArea .personBox2 dl dd.caption--voices {
        font-size: 1rem;
    }

    .addParts03 .summaryArea {
        width: 100%;
        background: url("img/parts03_summary_bg.png") left top repeat;
        padding: 2.5rem 1.5rem 1.5rem;
        margin: 0 0 4rem;
    }

    #contents .addParts03 .summaryArea .summaryTit {
        font-size: 1.9rem;
        font-weight: bold;
        line-height: 1.5;
        text-align: center;
        background: url("img/parts03_summary_ico.png") center bottom no-repeat;
        background-size: 35px auto;
        padding: 0 0 4rem;
        margin: 0 auto 1.5rem;
        position: relative;
    }

    #contents .addParts03 .summaryArea .summaryTit span {
        font-size: 1.5rem;
        padding: 0 0.5rem;
    }

    .addParts03 .summaryArea .txtArea {
        width: 100%;
        background-color: #fff;
        padding: 2rem 1.5rem;
    }

    .addParts03 .summaryArea .txtArea .catch {
        font-size: 1.6rem;
        font-weight: bold;
        line-height: 1.5;
        text-align: center;
        margin: 0 0 2rem;
    }

    .addParts03 .btnArea {
        width: 100%;
        margin: 0 auto;
        display: block;
    }

    #contents .addParts03 .btnArea .btn-internal {
        margin: 0 auto 2rem;
    }

    #contents .addParts03 .btnArea .btn-internal:last-child {
        margin: 0 auto;
    }

    #contents .addParts03 .btnArea .btn-internal a {
        padding: 1.8rem 5rem 1.8rem;
    }

    #contents .addParts03 .btnArea .btn-internal:nth-of-type(1) a {
        background: url("img/arrow_black.png") right 15px center no-repeat,
                    url("img/parts03_summary_num01.png") 20px center no-repeat;
        background-size: 6px auto, auto 15px;
    }

    #contents .addParts03 .btnArea .btn-internal:nth-of-type(2) a {
        background: url("img/arrow_black.png") right 15px center no-repeat,
                    url("img/parts03_summary_num02.png") 20px center no-repeat;
        background-size: 6px auto, auto 15px;
    }


    .addInner_bg {
        padding: 3rem 0 6rem;
    }

    /* addParts--detail */
    .addParts--detail {
        margin: 6rem auto 0;
        padding: 3.5rem 0 6rem;
    }

    .addParts--detail::before {
        width: 220px;
        height: 31px;
        top: -11px;
    }

    .addParts--detail .addInner {
        max-width: 92%;
    }

    .addParts--detail .addTopArea {
        margin: -10rem auto 3.5rem;
        padding: 10rem 0 0;
    }

    #contents .addParts--detail .addTopArea .sttl {
        text-align: center;
        background: none;
        font-size: 2.2rem;
        line-height: 1.45;
        font-weight: bold;
        padding: 0;
        margin: 0 auto 3rem;
        letter-spacing: normal;
    }

    #contents .addParts--detail .addTopArea .sttl a {
        display: block;
    }

    .addParts--detail .sttl__small {
        font-size: 1.8rem;
        margin: 0 auto 0.5rem;
    }

    .addTxt {
        max-width: 100%;
        line-height: 1.8;
        width: 100%;
    }

    #index .addParts--detail .personMainArea__title {
        right: 20px;
        font-size: 1.2rem;
        padding: 1rem 2rem;
    }

    #index .addParts--detail .personBox__item--detail {
        padding: 1.5rem 0 1.5rem 2.5rem;
        font-size: 1.4rem;
        background-size: 16px auto;
        background-position: left 2px center;
        line-height: 1.4;
    }

    .addParts--detail .sliderArea {
        margin: 0 auto 2rem;
    }

    .addParts--detail .sliderArea .slider .slick-prev {
        left: 0;
        top: 45%;
    }

    .addParts--detail .sliderArea .slider .slick-next {
        right: 0;
        top: 45%;
    }

    #index .addParts--detail .slick-counter span {
        font-size: 1rem;
    }

    .addParts--detail .sliderArea .slider .slidePic {
        height: auto;
    }

    .addParts--detail .sliderArea .slider .slidePic img {
        height: auto;
        width: auto;
        display: block;
        margin: 0 auto;
    }

    .addParts--detail .sliderArea .caption {
        margin: 1rem auto 0;
    }

    .addParts--detail .block__item--performance {
        overflow: visible;
        width: 100%;
        padding: 1.2rem 4% 0;
        background-size: auto 31.5px;
        margin: 0 auto;
        height: auto;
    }

    #index .addParts--detail .block__item__title {
        font-size: 1.8rem;
        margin: 0 auto 3rem;
    }

    #index .modal-description--detail {
        margin: 0 auto 2rem;
        text-align: center;
    }

    .addParts--detail .icoTxt {
        width: 100%;
        text-align: center;
        display: flex;
        justify-content: center;
        align-items: center;
        font-size: 3rem;
        line-height: 1;
        color: #010101;
    }

    .addParts--detail .icoTxt__small {
        font-weight: inherit;
        font-size: 1.8rem;
        border: none;
        padding: 0.7rem 0 0 0.3rem;
    }

    .addParts--detail .icoTxt__emp {
        border: none;
        font-weight: inherit;
        color: #ff6b3d;
    }

    .block__modal-contents {
        display: none;
        position: absolute;
        bottom: 219px;
        left: 0;
        background: #8d8d8d;
        width: 308px;
        border: 2px solid #f3f3f3;
        border-radius: 10px;
        padding: 2rem 2.4rem 2.2rem;
        text-align: left;
        color: #fff;
        font-size: 1.6rem;
        line-height: 1.6875;
    }

    .addParts--detail .priceAreaInner {
        align-items: baseline;
    }

    .addParts--detail .block__item--feature {
        margin: 3rem auto 0;
        padding: 1.5rem 4% 0;
        background-size: auto 31.5px;
    }

    #index .addParts--detail .frame-wrap {
        margin: 3rem auto 4rem;
        padding: 2rem 0 0;
        display: block;
    }

    .addParts--detail .block__item--voices {
        margin: 2rem auto 0;
        padding: 1.5rem 4% 0;
        background-size: auto 31.5px;
    }

    .addParts--detail .personArea--voices {
        margin: 3rem auto 0;
    }

    .addParts--detail .infoArea--information {
        padding: 0 4% 0;
        background-size: auto 31.5px;
        width: 100%;
    }

    .addParts--detail .infoArea--information .block__item__title {
        color: #000;
    }

    .addParts--detail .infoBox--information {
        margin: 3rem auto 0;
    }

    /* addParts--comparison */
    .addParts--comparison {
        margin: 6rem auto 0;
    }

    .addParts--comparison .addTopArea {
        margin: 0 auto 3rem;
    }


    .btn-webpr {
        margin: 3.5rem auto 3rem auto;
    width: 270px;}

    #index h2.addParts__title--comparison {
        letter-spacing: normal;
        background-size: auto 20px;
        background-position: bottom 1.2rem center;
        font-size: 2.2rem;
        padding: 0 0 4.5rem;
        margin: 0 auto 2rem;
    }

    #index h2.addParts__title--case {
        letter-spacing: normal;
        background-size: auto 20px;
        background-position: bottom 1.2rem center;
        font-size: 2.2rem;
        padding: 0 0 5.5rem;
        margin: 0 auto 2rem;
    }

    .addParts--comparison .addParts__title__small {
        font-size: 1.8rem;
        margin: 0 auto 0.5rem;
    }

    #index h2.addParts__title--comparison::after {
        height: 60px;
    }

    #index h2.addParts__title--case::after {
        height: 60px;
        background-size: 8px 8px;
    }

    #index .addParts__table--comparison {
        margin: 0 auto;
        display: table;
    }

    #index .addParts__table__blank--comparison {
        background: inherit;
    }

    #index .addParts__table--comparison th {
        padding: 1rem 0.5rem;
        font-size: 1.3rem;
        display: table-cell;
        width: auto;
        border-right: solid 1px #fff;
        font-feature-settings: "palt";
    }

    #index .addParts__table--comparison tr:first-of-type th {
        padding: 1.2rem 0.5rem;
    }

    #index .addParts__table--comparison th:first-of-type {
        width: 20%;
    }

    #index .addParts__table--comparison td {
        font-size: 1.4rem;
        padding: 1rem 0.8rem;
        display: table-cell;
        border-right: solid 1px #fff;
    }

    .addParts__table__emp01--comparison {
        font-size: 1.3rem;
    }

    .addParts__table__emp02--comparison {
        color: #ff6b3d;
    }

    .addParts__table__small--comparison {
        font-size: 1rem;
    }

    #index .btn-internal--comparison {
        margin: 4rem auto 0.6rem;
    }

    .btn-internal--comparison a {
        background-size: 4px auto;
        background-position: right 15px center;
    }

    /* addParts--list */
    .addParts--list {
        margin: 0 auto 0;
    }

    #index .addParts--list .addTopArea .sttl {
        position: relative;
        margin: 0 auto 2rem;
        font-size: 2.2rem;
        letter-spacing: normal;
        background: none;
        border-bottom: 2px solid #111;
        padding: 0 2rem 1rem;
        font-weight: bold;
        line-height: 1.5;
        font-feature-settings: "palt";
        text-align: left;
    }

    .addParts--list .addParts__title__small {
        font-size: 1.8rem;
    }

    #index .addParts--list .addTopArea .sttl::after {
        width: calc(100% - 2rem);
        height: 55px;
        background-position: bottom 1rem left 3rem, center;
        bottom: -30px;
    }

    .addParts--list .addTopArea .deco {
        top: -1.3rem;
    }



    .addParts--list .addTxt {
        max-width: 100%;
    }

    .addParts--list .addTopArea .addTxt span {
        background: linear-gradient(transparent 60%, rgba(255, 234, 0, 0.4) 60%);
        font-weight: inherit;
        color: inherit;
        border: none;
    }

    #index .frame-wrap--list {
        display: block;
        margin: 3.5rem auto 0;
        width: 100%;
        max-width: 100%;
    }

    #index .frame-wrap .frame--list {
        width: 100%;
        margin: 0 auto;
        padding: 2rem 5% 2.5rem;
    }

    #index .frame-wrap .type-b .frame-head--list {
        padding: 0 0 2rem;
        margin: 0 auto 1.5rem;
        display: block;
    }

    #index .frame-wrap .type-b .frame-head--list::after {
        content: none;
    }

    #index .frame-wrap .type-b .frame-head--list a {
        width: 100%;
        margin: 0 auto;
    }

    #index .frame-wrap .type-b .frame-body--list {
        margin: 0 auto;
        padding: 0;
    }

    /* type-b1 */
    #index .frame-wrap .type-b1 .frame__table--list th {
        background: #747474;
        border: none;
        color: #fefefe;
        width: 27%;
    }

    #index .frame-wrap .type-b1 .frame__table--list td {
        padding: 1.2rem 1.5rem;
    }

    #index .frame-wrap .type-b1 .frame-head--list {
        padding: 0 0 2rem;
        margin: 0 auto 1.5rem;
        display: block;
    }

    #index .frame-wrap .type-b1 .frame-head--list::after {
        content: none;
    }

    #index .frame-wrap .type-b1 .frame-head--list a {
        width: 100%;
        margin: 0 auto;
    }

    #index .frame-wrap .type-b1 .frame-body--list {
        margin: 0 auto;
        padding: 0;
    }

    #index .frame-wrap .type-b1 .frame__table--list th {
        background: #747474;
        border: none;
        color: #fefefe;
        width: 27%;
    }

    #index .frame-wrap .type-b1 .frame__table--list td {
        padding: 1.2rem 1.5rem;
    }

    /* addParts--area */
    .addParts--area {
        margin: 8rem auto 0;
        padding: 2.5rem 0 0;
    }

    #index .addParts--area .interviewTitArea .interviewTit::after {
        width: 152px;
        height: 25px;
        top: -25px;
        left: 0;
        background: url(img/area_h2_deco.png) no-repeat;
        background-size: contain;
    }

    #index .box-wrap--area {
        margin: 4rem auto 0;
    }

    #index .box-wrap--area.is-show::after {
        content: none;
        width: 60%;
        height: 96vw;
        right: -8%;
        bottom: -40px;
    }

    #index .addParts--area .box-wrap .box--area {
        padding: 3rem 0 0;
        width: 100%;
        border: none;
    }

    #index .box-wrap .box--area:nth-child(n + 2),
    .margin-align {
        margin-top: 3.5rem;
    }

    #index .box-wrap .box--area::before,
    #index .box-wrap .box--area:nth-child(2)::before,
    #index .box-wrap .box--area:nth-child(3)::before,
    #index .box-wrap .box--area:nth-child(4)::before {
        height: 33px;
    }

    #index .box-wrap .box--area .box-head {
        margin: 1.5rem auto;
        padding: 0 4%;
    }

    #index .box-wrap .box--area .box-body p {
        width: 100%;
    }

    #index .box-wrap .box--area .box-body p+p {
        margin-top: 1.5rem;
    }

    #index .addParts--area .box__list--area {
        margin: 2rem auto 0;
        background-size: 15px auto;
        background-position: left 10px center;
        min-height: 80px;
        padding: 1.5rem 4% 1.5rem 4rem;
    }

    #index .addParts--area .box__list__item--area {
        padding: 0 0 0.2rem 2.5rem;
        line-height: 1.6;
    }

    #index .addParts--area .box__list__item--area+.box__list__item--area {
        margin-top: 1rem;
    }

    /* addParts--points */
    .addParts--points {
        margin: 8rem auto 0;
        padding: 2.5rem 0 0;
    }

    #index .addParts--points .interviewTitArea .interviewTit::after {
        width: 133px;
        height: 25px;
        background: url(img/points_h2_deco.png) no-repeat;
        background-size: contain;
        top: -25px;
        left: 0%;
    }

    #contents .addParts--points .interviewTitArea .interviewTit {
        line-height: 1.45;
    }

    #index .frame-wrap.is-show {
        margin-bottom: 3rem;
    }

    #index .frame-wrap--points {
        margin: 4.5rem auto 0;
        width: 100%;
        max-width: 100%;
    }

    #index .frame-wrap .frame--points {
        width: 100%;
        margin: 0 auto;
    }

    #index .frame-wrap .frame--points .frame-head {
        font-size: 1.8rem;
        padding: 1.8rem 5%;
        display: block;
        width: 100%;
        max-width: 100%;
    }

    #index .frame-wrap .frame--points .frame-head a {
        display: block;
    }

    #index .frame-wrap .frame--points .thumb {
        width: auto;
        padding: 0 5%;
        margin: 0 auto 1.5rem;
    }

    #index .frame .frame-body--points {
        padding: 0 5% 2.5rem;
    }

    #index .frame-wrap .frame--list.type-b1 {
        width: 100%;
    }

    #contents .addParts03 .interviewTitArea .interviewTit2 {
        display: table-cell;
        vertical-align: middle;
        width: 410px;
        font-size: 2.2rem;
        font-weight: bold;
        line-height: 1.3;
        padding: 4.8rem 0;
        position: relative;
        color: #010101;
        box-sizing: border-box;
        letter-spacing: 5px;
        font-feature-settings: "palt";
    }

    #index .addParts--list .addTopArea .sttl2 {
        position: relative;
        margin: 2rem auto 7rem;
        font-size: 2.2rem;
        letter-spacing: 5px;
        background: none;
        border-bottom: 2px solid #111;
        padding: 0 0.5rem 1rem 2rem;
        font-weight: bold;
        line-height: 1.5;
    }

    .addParts--recommended .addParts__title {
        padding: 0;
    }

    .frame-wrap--recommended .btn-web2 a::after {
        top: 8px;
        right: 16px;
        width: 9px;
        height: 9px;
        margin: auto;
        background-image: url("img/arrow_white.png");

    }
}