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

/*--------------------------------------
　Main Index
---------------------------------------*/
#contents {
  width: 100%;
  margin: 0 auto 0rem;
}

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

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

#visArea .mainArea {
  display: block;
  max-width: 100%;
  height: auto;
  padding: 0 1.5rem;
  background: url(img/mv.jpg) no-repeat center top;
  background-size: cover;
}

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

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

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

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

#visArea .mainArea .siteName img {
  margin: 0;
  padding: 3.5rem 0 0 0;
}

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

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

#visArea .mainArea .catchArea {
  position: relative;
  z-index: 0;
  padding: 0 0 5.6rem;
  margin: 0 auto 3.2rem;
  background: #0f509b;
  color: #fff;
}

#visArea .mainArea .catchArea::after {
  content: "";
  width: 100%;
  height: calc(100% - 3.5rem);
  background: url(img/main-text.png) no-repeat bottom 2.4rem left;
  background-size: 240px auto;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
}

#visArea .mainArea .catchArea .catch {
  font-size: 3.6rem;
  font-weight: bold;
  line-height: 1.4;
  text-align: left;
  color: #fff;
  margin: 0 3.2rem auto 0;
  padding: 1.6rem 0;
  border-bottom: 2px solid #fff;
  letter-spacing: 3px;
}

#visArea .mainArea .catchArea::before {
  content: "";
  position: absolute;
  right: 100%;
  top: 0px;
  width: 100vw;
  height: 100%;
  background: #0f509b;
  content: "";
}

#visArea .mainArea .mainTxtBox .txtArea {
  font-size: 2.4rem;
  color: #2e4fcb;
  font-weight: bold;
  line-height: 1.3;
}

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

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

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

#visArea .mainArea .txtArea p {
  font-size: 1.6rem;
  color: #010101;
  line-height: 2;
  width: 578px;
  font-weight: 400;
  max-width: 100%;
  margin: 1.2rem 0;
}

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

#visArea .btn-internal a {
  background: url(img/arrow_black02-1.png) right 16px center no-repeat #eabb04;
  background-size: 7px auto;
  color: #333;
}

/*--------------------------------------
　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;
}

/*type-a*/
#contents .box-wrap .type-a .box-body p {
  width: 399px;
}

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

/*--------------------------------------
　frame-wrap
---------------------------------------*/
#contents .frame-wrap .frame:nth-child(n + 4) {
  margin-top: 25px;
}

#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;
}

/*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: bold;
  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-color: #f5f5f5;
  padding: 9rem 0 17rem;
  position: relative;
}

.addParts02 .addInner {
  width: min(100%, 1200px);
  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 2rem;
  margin: 0 auto;
  position: relative;
  z-index: 0;
  border: 1px solid #0f509b;
}

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

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

.addParts02 .blockTitSub {
  font-size: 2.6rem;
  line-height: 1.5;
  text-align: center;
  margin: 0 auto 3rem;
  display: inline-block;
  font-weight: bold;
  padding: 1.5rem 3.2rem;
  position: relative;
  background: #0f509b;
  border-radius: 8px;
  color: #fff;
  width: 600px;
}

.addParts02 .blockTitSub::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 9px;
  left: 11px;
  z-index: -1;
  border-radius: 8px;
  border: 1px solid #0f509b;
}

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

#index .addParts02 .blockTit {
  display: block;
  font-size: 3.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%, rgb(234 187 4) 75%);
}

/*slideTxtArea*/
.addParts02 .slideTxtArea {
  width: calc(100% - 40px);
  border-left: 1px solid #999;
  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: 1rem 0;
  color: #9a9a9a;
}
*/

.addParts02 .caption {
  margin: 1rem auto 0;
  color: #999;
  max-width: 1280px;
  width: 90%;
  font-size: 1.2rem;
}

.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: wrap;
  /* justify-content: space-between; */
  gap: 2.8rem;
}

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

#index .addParts02 .priceIcoArea .icoArea li .icoTtl {
  text-align: center;
  margin: 0 auto 2rem;
  height: 151px;
  padding: 11rem 0.5rem 0;
  color: #05135a;
  font-size: 1.6rem;
  font-weight: normal;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

#index .addParts02 .priceIcoArea .icoArea li:nth-of-type(11) .icoTtl:hover {
  background: url(img/parts11.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 {
  width: calc(100% - 420px);
  margin: 0;
  float: right;
}

#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;
  position: relative;
}

.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: 4rem 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 #ffffff;
}

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

#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;
}

#index .addParts--detail .addTopArea .addTxt span {
  font-weight: bold;
  color: #c32f94;
  border-bottom: none;
}

.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: 1px solid #1dadaa;
  border-left: none;
}

.addParts03 .interviewTitArea::before {
  content: "";
  position: absolute;
  top: 0;
  right: 100%;
  bottom: 0;
  margin: auto 0;
  width: 9999px;
  border-top: 1px solid #1dadaa;
  border-bottom: 1px solid #1dadaa;
  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%;
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: -1;
  background: #edfafa;
}

#contents .addParts03 .interviewTitArea .interviewTit {
  display: table-cell;
  vertical-align: middle;
  width: 45%;
  font-size: 4.2rem;
  font-weight: bold;
  line-height: 1.4;
  padding: 4.8rem 0;
  position: relative;
  color: #0f509b;
  box-sizing: border-box;
  letter-spacing: 2px;
  font-feature-settings: "palt";
}

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

#contents .addParts03 .interviewTitArea .interviewTit a {
  display: inline-block;
}

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

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

.addParts03 .personArea .personBox {
  display: block;
  position: relative;
  background: #fff;
  width: 100%;
}

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

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

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

.addParts03 .personArea .personBox dl {
  display: block;
  padding: 0;
  margin: 4rem 0 3.2rem;
}

.addParts--detail .infoArea--information.info .catch,
.addParts03 .personArea .personBox dl dt {
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.4;
  color: #2e4fcb;
  margin: 0 auto 0.8rem;
}

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

.addParts03 .personArea .personBox 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 .summaryArea {
  width: 100%;
  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-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: 6.5rem 0 12.5rem;
}

.addTopArea {
  margin: 0 auto 0rem;
}

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

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

.addParts--recommended .addParts__title {
  text-align: center;
  padding: 0 0 10.8rem;
  background: url(img/main-text02.png) no-repeat bottom 6rem center;
  background-size: 227px auto;
  position: relative;
  letter-spacing: 5px;
  line-height: 1.25;
}

.addParts--recommended.Parts01 .addParts__title {
  text-align: center;
  padding: 0 0 10.8rem;
  background: url(img/problem.png) no-repeat bottom 6rem center;
  background-size: 228px auto;
  position: relative;
  letter-spacing: 5px;
  line-height: 1.25;
}

.addParts--recommended.Parts01 .addParts__title::after {
  content: "";
  width: 92%;
  height: 147px;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 3px;
  margin: 0 auto;
  z-index: -1;
  background: #f3f3f7;
}

.addParts--recommendedParts02 .addParts__title::after {
  content: "";
  width: 92%;
  height: 126px;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 16px;
  margin: 0 auto;
  z-index: -1;
  background: #172151;
}

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

/* addParts--detail */
.addParts--detail {
  margin: 0 auto;
  position: relative;
  background: url(img/recommended-bg.jpg) center top;
  background-size: cover;
}

.addParts--detail .float-wrap {
  max-width: calc(100% - 18rem);
}

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

.addParts--detail .addTopArea {
  margin: -3.5rem auto 5.6rem;
  display: block;
  padding: 8.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 4rem;
  letter-spacing: 5px;
  color: #0f509b;
}

#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 .sttl__small {
  display: block;
  border: none;
  font-size: 2.8rem;
  margin: 0 auto;
  color: inherit;
  color: #0f509b;
}

#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;
}

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

#contents .addParts--detail .block__item--performance p {
  max-width: calc(100% - 16rem);
  margin: 0 auto 5rem;
  text-align: left;
}

#index .addParts--detail .block__item__title {
  text-align: center;
  font-size: 2.8rem;
  font-weight: bold;
  color: #333333;
  margin: 0 auto 3.5rem;
}

.addParts--detail .icoTxt {
  text-align: center;
  font-size: 3.8rem;
  color: #333333;
  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: 4.5rem 4.5rem 0;
  background: url(img/detail_function_deco.png) no-repeat left 10px top;
}

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

.addParts--detail .block__item--voices {
  margin: 10.2rem auto 0;
  padding: 6.5rem 0;
  background: url(img/detail_function_deco.png) no-repeat left 10px top;
}

.addParts--detail .personArea--voices {
  margin: 6rem auto 0;
  width: calc(100% - 18rem);
}

.addParts--detail .infoArea--information {
  margin: 7rem auto;
  padding: 6.5rem 4.5rem 0;
  background: url(img/company.png) no-repeat left 10px top;
}

.addParts--detail .infoArea--information.info {
  margin: 0 auto 6rem;
  padding: 0;
  background: url(img/price.png) no-repeat left 10px top;
}

.addParts--detail .infoArea--information.info p {
  padding: 0;
}

#contents .addParts--detail .infoArea--information.info ul {
  padding: 0rem 6rem 0;
}

#contents .addParts--detail .infoArea--information.company ul {
  padding: 0rem 6rem 2.5rem;
}

#contents .addParts--detail .infoArea--information.info ul p {
  padding: 0;
}

#contents .addParts--detail .infoArea--information.info ul li {
  font-weight: bold;
  color: #2e4fcb;
  font-size: 2rem;
  line-height: 26px;
  margin-bottom: 0.8rem;
}

#index .infoArea--information.company .block__item__title {
  text-align: center;
  font-size: 2.8rem;
  font-weight: bold;
  color: #333333;
  margin: 0 auto 6rem;
}

#contents .addParts--detail .infoArea--information.info ul li::before,
#contents .addParts--detail .infoArea--information.company ul li::before {
  content: url(img/green-icon.png);
  position: absolute;
  top: 0px;
  left: -2%;
}

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

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

/* addParts--comparison */
.addParts--comparison {
  margin: 0rem auto 10rem;
  background: linear-gradient(330deg, rgba(231, 252, 252, 0.4) 0%, rgba(226, 226, 249, 0.4) 35%, rgba(244, 244, 253, 0.4) 65%, rgba(237, 250, 250, 0.4) 100%);
  position: relative;
  z-index: 0;
  background-size: cover;
  padding: 5rem 0 9.5rem;
}

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

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

#index .addParts__title--comparison a {
  display: block;
}

#index .addParts__title--comparison a::before {
  content: "";
  position: absolute;
  background: url(img/blue-arrow.png) no-repeat;
  width: 22px;
  height: 10px;
  margin: auto;
  top: -26px;
  bottom: 0;
  right: 33%;
}

#index .btn-link {
  margin: 10rem auto;
  text-align: right;
  width: min(100%, 1100px);
}

.addParts--comparison .addParts__title__small {
  font-size: 2.8rem;
  border: none;
  color: inherit;
  display: inline-block;
  margin: 0 auto;
  color: #093d82;
}

.addParts__title--comparison::after {
  content: "";
  width: 92%;
  height: 126px;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  margin: 0 auto;
  z-index: -1;
  background: #edfafa;
}

#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;
}

#index .addParts--comparison .ct {
  margin: 6.5rem auto 4.5rem;
  text-align: left;
}

/* addParts--list */
.addParts--list {
  margin: 14rem auto 0;
  background: #f3f9fa;
  padding: 8rem;
}

#index .addParts--list .addTopArea .sttl {
  position: relative;
  margin: 0 auto 4rem;
  font-size: 4.2rem;
  letter-spacing: 5px;
  background: #edfafa;
  border-bottom: 2px solid #1dadaa;
  box-shadow: 0px 32px 0px #edfafa;
  padding: 0 0.5rem 1rem 2rem;
  font-weight: bold;
  line-height: 1.5;
  color: #0f509b;
  z-index: 1;
}

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

#index .addParts--list .addTopArea .sttl a::before {
  content: "";
  position: absolute;
  background: url(img/blue-arrow.png) no-repeat;
  width: 22px;
  height: 10px;
  bottom: 34px;
  left: 54%;
}

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

.addParts--list .addTxt {
  color: #333;
  max-width: calc(100% - 3rem);
  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 {
  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;
}

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

#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: #f0f0f0;
  border: none;
  color: #172151;
  width: 27%;
}

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

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

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

#index .box-wrap--area {
  margin: 9rem auto 0;
  position: relative;
  z-index: 0;
}

#index .box-wrap--area::after {
  content: "";
  width: 771px;
  height: 968px;
  position: absolute;
  z-index: -1;
  background: url(img/ability_bg.jpg) no-repeat;
  background-size: auto;
  right: -306px;
  bottom: 158px;
}

#toc li.chapter-h.chapter-h-three {
  display: none;
}

.toc_parts {
  max-width: 600px;
  margin: 0rem auto 0;
}

#contents #index .toc_parts {
  max-width: 600px;
  margin: 4.8rem auto 0;
}

#toc .chapter .chapter-h {
  margin: 1.5rem 0 0;
  font-size: 1.6rem;
  line-height: 1.75;
}

#index #toc .chapter .chapter-h:first-child {
  display: none;
}

.addParts--recommended.Parts02 {
  background: linear-gradient(330deg, rgba(231, 252, 252, 0.4) 0%, rgba(226, 226, 249, 0.4) 35%, rgba(244, 244, 253, 0.4) 65%, rgba(237, 250, 250, 0.4) 100%);
  position: relative;
  z-index: 0;
  padding: 14.4rem 0 14.4rem;
  background-size: cover;
  margin: 4.5rem 0 0 0;
}

#index .addParts03.addParts--area .addInner h3 {
  font-size: 3.2rem;
  font-weight: bold;
  width: auto;
  margin: 2.5rem auto 2.5rem;
  line-height: 1.4;
  padding: 0;
  position: relative;
  color: #123066;
}

#index .addParts03.addParts--area .addInner .box-head--area a {
  background: url(img/blue-arrow.png) right center no-repeat;
  background-size: 19px auto;
}

.addParts03.feature .addInner::before {
  content: "";
  position: absolute;
  width: 308px;
  height: 51px;
  background: url(img/feature.png) no-repeat;
  top: -47px;
  left: -110px;
}

.addParts03 .interviewTitArea--area a {
  position: relative;
}

.addParts03.feature .interviewTitArea--area a::before {
  content: "";
  position: absolute;
  background: url(img/blue-arrow.png) no-repeat;
  width: 19px;
  height: 7px;
  margin: auto;
  top: 0;
  bottom: 0;
  right: 5%;
}

#contents .addParts03.addParts--area .addInner p:not([class]) {
  margin: 0 0 0 5rem;
  font-size: 1.6rem;
}

.addParts03 .link-area a {
  position: relative;
}

.addParts03 .link-area a::before {
  content: "";
  position: absolute;
  background: url(img/blue-arrow.png) no-repeat;
  width: 19px;
  height: 7px;
  top: 30px;
  right: 2%;
}

.addParts03.kowledge .addInner::before {
  content: "";
  position: absolute;
  width: 206px;
  height: 90px;
  background: url(img/ability.png) no-repeat;
  top: -73px;
  left: -110px;
}

#index .addParts03.addParts--area.kowledge .addInner h3 {
  border: none;
}

#contents .addParts03.addParts--area.kowledge .addInner p:not([class]) {
  margin: 0 0 0 0rem;
}

.addParts03.difference .addInner::before {
  content: "";
  position: absolute;
  width: 350px;
  height: 51px;
  background: url(img/difference.png) no-repeat;
  top: -47px;
  left: -110px;
}

#index .addParts03.kowledge .interviewTitArea--area a::before {
  content: "";
  position: absolute;
  background: url(img/blue-arrow.png) no-repeat;
  width: 22px;
  height: 10px;
  margin: auto;
  top: 61px;
  bottom: 0;
  right: 5%;
}

.addParts03.difference .interviewTitArea--area a::before {
  content: "";
  position: absolute;
  background: url(img/blue-arrow.png) no-repeat;
  width: 19px;
  height: 7px;
  margin: auto;
  top: 0;
  bottom: 0;
  right: 5%;
}

#index .btn-internal.difference-btn a {
  background: url(img/arrow_white02.png) right 16px top 75px no-repeat #123066;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 1.6rem 2.4rem;
}

#index .btn-internal.difference-btn a:hover {
  opacity: 1;
}

#index .btn-internal.difference-btn h2 {
  font-size: 2.2rem;
  text-align: center;
  padding: 2rem 0;
}

#index .btn-internal.difference-btn {
  width: 350px;
}

.addParts03.system .addInner::before {
  content: "";
  position: absolute;
  width: 212px;
  height: 90px;
  background: url(img/system.png) no-repeat;
  top: -74px;
  left: -110px;
}

.addParts03.system.knowledge .addInner::before {
  content: "";
  position: absolute;
  width: 319px;
  height: 90px;
  background: url(img/knowledge.png) no-repeat;
  top: -74px;
  left: -110px;
}

#contents .addParts03.system .interviewTitArea .interviewTit {
  display: table-cell;
  vertical-align: middle;
  width: 48%;
  font-size: 4.2rem;
  font-weight: bold;
  line-height: 1.4;
  padding: 4.8rem 0;
  position: relative;
  color: #0f509b;
  box-sizing: border-box;
  letter-spacing: 2px;
  font-feature-settings: "palt";
}

.addParts03.system .interviewTitArea--area a::before {
  content: "";
  position: absolute;
  background: url(img/blue-arrow.png) no-repeat;
  width: 22px;
  height: 10px;
  margin: auto;
  top: 56px;
  bottom: 0;
  right: 7%;
}

#index .addParts03.system.knowledge .frame-wrap .frame--points {
  width: calc((100% - 4.8rem) / 3);
  background: #123066;
  border: none;
  box-shadow: 0 0 0 0px #123066, 10px 10px 0 0 #fff, 11px 11px 0 0px #123066;
}

#index .addParts03.addParts--area.system.knowledge .addInner h3 {
  margin: 1rem auto 1rem;
  line-height: 1.4;
  padding: 0 0 1.6rem;
  border: none;
  color: #fff;
  font-size: 2.8rem;
}

#contents .addParts03.addParts--area.system.addParts03.system.knowledge .addInner p:not([class]) {
  color: #fff;
  font-weight: 400;
  text-align: left;
}

#index .addParts03.addParts--area.system.knowledge .frame-head a {
  display: table-cell;
  vertical-align: middle;
  background: url(img/arrow_white.png) right center no-repeat;
  background-size: 19px auto;
  padding-right: 2.5rem;
  text-align: center;
}

#contents .addParts03.addParts--area.system .addInner p:not([class]) {
  margin: 0 0 0 0rem;
}

#index .addParts03.addParts--area.system .addInner h3 {
  margin: 1rem auto 1rem;
  line-height: 1.4;
  padding: 1.5rem 3rem 1.2rem;
  border: none;
  color: #007f84;
  font-size: 2rem;
}

.addParts03.example .addInner::before {
  content: "";
  position: absolute;
  width: 294px;
  height: 90px;
  background: url(img/catalogue.png) no-repeat;
  top: -73px;
  left: -110px;
}

.addParts03.example .interviewTitArea--area a::before {
  content: "";
  position: absolute;
  background: url(img/blue-arrow.png) no-repeat;
  width: 22px;
  height: 10px;
  margin: auto;
  top: 63px;
  bottom: 0;
  right: 5%;
}

#index .example .frame-wrap .frame--points {
  width: calc((100% - 6.8rem) / 2);
  margin: 0 auto 5rem;
  border: 1px #252f69 solid;
  background: #fff;
}

#index .addParts03.addParts--area.example .addInner h3 {
  margin: 0rem auto 0rem;
  border: none;
  padding: 2.5rem;
  font-size: 2.4rem;
  color: #123066;
}

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

#contents .addParts03.addParts--area.example .addInner p:not([class]) {
  margin: 0 0 0 0rem;
}

#index .addParts02 .priceIcoArea .icoArea li .icoTtl a::after {
  width: 21px;
  height: 22px;
  content: "";
  position: absolute;
  background: url(img/q-icon.png) center no-repeat;
  bottom: 1.3rem;
  right: 0rem;
  margin: auto;
}

#index .addParts02 .priceIcoArea .icoArea li .icoTtl:hover a:after {
  background: url(img/hover-q-icon.png) center no-repeat;
}

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

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

#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: 104px;
  height: 61px;
  position: absolute;
  background: url(img/ability_01.png) top left no-repeat;
  background-size: contain;
  top: -20px;
  left: 0;
}

#index .box-wrap .box--area:nth-child(2)::before {
  width: 106px;
  height: 61px;
  background: url(img/ability_02.png) top left no-repeat;
  background-size: contain;
  top: -20px;
}

#index .box-wrap .box--area:nth-child(3)::before {
  width: 105px;
  height: 61px;
  background: url(img/ability_03.png) no-repeat;
  background-size: contain;
  top: -20px;
}

#index .box-wrap .box--area:nth-child(4)::before {
  width: 107px;
  height: 61px;
  background: url(img/ability_04.png) no-repeat;
  background-size: contain;
  top: -20px;
}

#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 {
  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: 279px;
  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 .frame--points {
  width: calc((100% - 4.8rem) / 3);
  margin-right: 2.4rem;
  background: #f3f9fa;
  border: none;
}

@supports (-ms-ime-align: auto) {
  /* Edge対策 */
  #index .frame-wrap .frame--points {
    width: calc((100% - 4.81rem) / 3);
  }
}

#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_green.png) right center no-repeat;
  background-size: 19px auto;
  padding-right: 2.5rem;
  text-align: center;
}

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

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

.addParts--recommended .addTopTxt {
  max-width: calc(100% - 18rem);
  margin: 0 auto;
  font-size: 1.6rem;
  margin: 0 auto 6rem;
}

#index .addParts--recommended .addTopTxt p {
  max-width: 100%;
}

.float-wrap {
  max-width: calc(100% - 35rem);
}

#index .sankaku {
  margin: 5rem 0 11rem;
  position: relative;
  text-align: center;
  font-size: 1.6rem;
  font-weight: bold;
  color: #fff;
  z-index: 1;
}

#index .sankaku::before {
  content: url(img/sankaku.png);
  position: absolute;
  top: -17px;
  left: 0;
  right: 0;
  margin: auto;
  z-index: -1;
}

#index .check-box::before {
  content: url(img/check.png);
  position: absolute;
  top: -45px;
  left: -2%;
}

#index .check-box-wrap {
  background: #f0f0f0;
  padding: 0 0 3rem;
}

#index .check-box .check-box-title {
  position: absolute;
  font-size: 2.8rem;
  background: #081242;
  border-radius: 5px;
  color: #fff;
  top: -20px;
  left: 13%;
  padding: 0.5rem 6rem;
}

#index .check-box .check-box-title:before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 9px;
  left: 11px;
  z-index: 0;
  border-radius: 8px;
  border: 1px solid #000;
}

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

#index .check-box-wrap .check-box-whitetext {
  background: #ffffff;
  margin: 2rem 3rem 0;
}

#index .check-box-wrap .check-box-whitetext .check-title {
  text-align: center;
  font-size: 2rem;
  font-weight: bold;
  margin: 0;
  padding: 1.5rem 0;
  color: #081242;
}

#index .check-box-wrap .check-box-whitetext p:not([class]) {
  margin: 0;
  padding: 0 3rem 2rem;
}

#index .check-box-wrap .check-box-text {
  padding: 8rem 11rem 0;
}

#index .check-box {
  max-width: calc(100% - 17rem);
  margin: 0 auto;
  position: relative;
}

#index .list-wrap--recommended {
  background: #f0f4f4;
  margin: 0rem 0rem 0rem;
  position: relative;
}

#index .list-wrap--recommended::before {
  content: none;
}

#index .list-wrap--recommended ul {
  padding: 3rem 2rem 3rem 4rem;
  margin: 0;
}

#index .list-wrap--recommended ul li {
  position: relative;
  padding: 0;
  text-align: center;
  font-size: 1.8rem;
  font-weight: bold;
}

/* #index .list-wrap--recommended ul li::before {
  content: url(img/blue.png);
  position: absolute;
  top: 3px;
  left: -6%;
} */

#index .list-wrap--recommended ul li:first-child {
  margin: 0 0 1rem;
  padding: 0;
}

#index .list-wrap2--recommended {
  background: #edfafa;
  margin: 2rem 0 2.5rem;
  position: relative;
}

#index .list-wrap2--recommended.second {
  margin: 2rem 0rem 4rem;
}

#index .list-wrap2--recommended ul {
  padding: 1rem 2rem 3rem 4rem;
  margin: 0;
}

#index .list-wrap2--recommended ul li {
  position: relative;
  padding: 0;
  font-size: 1.6rem;
}

#index .list-wrap2--recommended ul li::before {
  content: url(img/green-icon.png);
  position: absolute;
  top: 0px;
  left: -5%;
}

#index .list-wrap2--recommended ul li:first-child {
  margin: 0 0 1.5rem;
}

#index .list-wrap2--recommended ul li:nth-child(3) {
  margin: 1.5rem 0 0rem;
}

#index .list-wrap2-name {
  padding: 2.5rem 0 0;
  text-align: center;
  font-size: 2rem;
  font-weight: bold;
  color: #2e4fcb;
}

#index .list-wrap2-name.absolute {
  /* position: absolute; */
  top: 0%;
  right: 0;
  left: 0;
  margin: auto;
  /* width: fit-content; */
  display: block;
  color: #fff;
  background: #0f509b;
  padding: 5px 20px;
}

#index .list-wrap--recommended ul {
  padding: 1rem 2.8rem 0.3rem 3.4rem;
  margin: 0;
  height: 60px;
}

#index .tag-wrap--recommended {
  margin: 1rem 0rem 3rem;
}

#index .tag-wrap--recommended ul {
  display: flex;
  flex-wrap: wrap;
  gap: 3px;
  margin: 0;
  padding: 0;
}

#index .tag-wrap--recommended ul li {
  background: #172151;
  color: #fff;
  width: 49%;
  text-align: center;
  margin: 0.5rem 0;
  border-radius: 7px;
  padding: 0.5rem 0;
}

#index .frame--recommended .btn-web {
  width: 380px;
}

#index .btn-internal {
  width: 380px;
}

#index .btn-internal a {
  background: url(img/arrow_black02-1.png) right 16px center no-repeat #eabb04;
  color: #141414;
}

#index .list-wrap--recommended .recommended-text {
  position: absolute;
  background: #172151;
  color: #fff;
  padding: 0 0.5rem;
  letter-spacing: 1.2px;
  font-size: 1.5rem;
  top: -11px;
  left: 0;
  right: 0;
  margin: 0 auto;
  height: 30px;
  width: 110px;
  text-align: center;
}

#index .addParts--comparison .float-wrap .btn-internal a {
  background: url(img/arrow_white02.png) right 16px center no-repeat #172151;
  color: #fff;
  background-size: 16px auto;
}

.frame--list .frame-tag-list .tag-list-name {
  text-align: center;
  font-size: 1.6rem;
  font-weight: bold;
  color: #182252;
}

.frame--list .frame-tag-list .tag-list ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

#index .frame--list .frame-tag-list .tag-list ul li {
  width: auto;
  text-align: center;
  padding: 0.5rem 1.5rem;
  margin: 0.4rem;
  background: #172151;
  color: #fff;
}

#index .frame--list .frame-tag-list .tag-list ul li:nth-of-type(5) {
  background: #d9d9d9;
  color: #ffffff;
}

#index .frame--list .frame-tag-list .tag-list ul li:nth-of-type(6) {
  background: #d9d9d9;
  color: #ffffff;
}

#contents .frame--list .frame__table--list {
  max-width: 100%;
}

#contents ul li::before {
  background-color: unset;
}

.addParts--recommended.Parts01 .addParts__title__small {
  color: #3b4477;
}

.addParts--recommended.Parts01 .addParts__title {
  color: #000;
}

.addParts--detail .addInner .float-img {
  text-align: center;
}

.addParts--recommended .addParts__title::after {
  content: "";
  width: 92%;
  height: 126px;
  position: absolute;
  background: #edfafa;
  left: 0;
  right: 0;
  bottom: 35px;
  margin: 0 auto;
  z-index: -1;
}

.frame--recommended,
#contents .frame--recommended {
  width: calc((100% - 3rem) / 3);
  background: #fff;
  padding: 0 0 2.5rem;
  word-break: break-all;
  margin: 0;
}

.frame-wrap--recommended,
#contents.frame-wrap--recommended {
  display: flex;
  justify-content: space-between;
  width: 92%;
  margin: 0 auto;
}

.notes--recommended,
#contents .notes--recommended {
  width: 92%;
  color: #fff;
}

#index .addParts03.addParts--area .addInner .difference-btn h3 {
  color: #fff;
  text-align: center;
  border: none;
  margin: 0 0 2rem;
  padding: 0;
}

#index .addParts03.addParts--area .addInner .difference-btn .btn-text p {
  margin: 0;
}

#index .addParts--recommended.Parts02 .btn-web {
  width: 400px;
  margin: 4rem 0 0;
}

#index .addParts--recommended.Parts02 .btn-web a {
  padding: 2.1rem 3.5rem;
}

#index .addParts--recommended.Parts02 .btn-internal {
  width: 400px;
  max-width: 100%;
  text-align: center;
  margin: 3.5rem auto;
  padding: 0;
  position: relative;
  cursor: pointer;
  z-index: 0;
}

#index .addParts--recommended.Parts02 .btn-internal a {
  background: url(img/arrow_white02_down.png) right 16px center no-repeat #123066;
  background-size: 8px auto;
  color: #fff;
}

#contents .addInner .sttl--detail {
  color: #172151;
}

#contents .addInner .sttl--detail .sttl__small {
  color: #0f509b;
}

#contents .personBox .personBox-caption {
  color: #9a9a9a;
  text-align: right;
  line-height: 1.4;
  font-size: 1rem;
}

.addParts03.system .thumb img {
  width: 100%;
}

#index .frame-wrap .frame--points .thumb img {
  width: 100%;
}

#index .mv-lower.btn-internal a {
  background: url(img/arrow_white02_down.png) right 16px center no-repeat #123066;
  background-size: 9px auto;
  color: #fff;
}

/* テーブル */

#index .scroll-text {
  margin: 6rem 0 0;
}

#index .scroll-table {
  overflow: auto;
}

#index .scroll-table table {
  width: fit-content;
  max-width: unset;
  margin: 0rem 0rem 0rem;
}

#index .scroll-table th {
  padding: 4px;
  text-align: center;
  font-weight: bold;
  font-size: 1.2rem;
  line-height: 1.2;
  color: #fff;
  background: #123066;
  border: solid 1px #fff;
}

#index .scroll-table th .btn-link {
  max-width: 95%;
  text-align: left;
  margin: 0.4rem auto 0;
}
#index .scroll-table th .btn-link a {
  display: block;
  padding: 0.8rem;
  font-size: 1.2rem;
  font-weight: bold;
  text-align: left;
  text-decoration: none;
  color: #123066;
  background-position: right 1rem center;
  border: 1px solid #333333;
  background-color: #fff;
}
#index .scroll-table th .btn-link a:hover {
  opacity: 0.6;
  text-decoration: none;
}
#index .scroll-table td {
  padding: 4px;
  text-align: center;
  font-size: 1.2rem;
  line-height: 1.2;
  background: #eaf2f2;
  border: solid 1px #fff;
}
#index .scroll-table td span {
  font-weight: bold;
  color: #e6368e;
}

#index .scroll-table table th.width01 {
  width: 160px;
}
#index .scroll-table table th.width01 span {
  color: #fff;
  display: block;
  padding: 12px 0;
}
#index .scroll-table table th.width00 {
  width: 180px;
  position: sticky;
  top: 0;
  left: 0;
  z-index: 1;
}
#index .scroll-table table td.red {
  background: #f2e6ec;
}
#index .scroll-table table tbody th {
  background: #00499d;
  position: sticky;
}
#index .scroll-table table tbody th.th-left {
  position: sticky;
  left: 0;
}
#index .scroll-table table tbody th.th-right {
  left: 90px;
}

#index .list-wrap--recommended ul li .big {
  font-size: 2.4rem;
  color: #333;
  line-height: 1.5;
}

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

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

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

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

  #visArea .mainArea .mainAreaInner {
    max-width: 100%;
    padding: 13rem 0 0;
    background: url(img/mv_pic_sp.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: 1rem;
    left: 1rem;
    width: 20rem;
  }

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

  #visArea .mainArea .catchArea {
    padding: 0 0 4.8rem;
    margin: 0 auto 2.5rem;
    background: #0f509b;
  }

  #visArea .mainArea .catchArea::after {
    background: url(img/main-text.png) no-repeat top -5px left;
    background-size: contain;
    width: 228px;
    height: 23px;
    left: 4%;
    bottom: 1.8rem;
  }

  #visArea .mainArea .catchArea .catch {
    font-size: 2.2rem;
    padding: 1.6rem 0 0.5rem 4%;
    border-bottom: 1px solid #fff;
    max-width: 96%;
    margin: 0 auto 0 0;
    color: #fff;
    line-height: 1.4;
  }

  #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: 0 auto 0 0;
    width: 80%;
  }

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

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

  /*type-a*/
  #contents .box-wrap .type-a .box-body p {
    width: calc(100% - 95px);
  }

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

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

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

  #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%;
  }

  /*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: bold;
    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 .block::before {
    width: 10px;
    height: 313px;
    background-size: contain;
    top: -10px;
    left: 16px;
  }

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

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

  .addParts02 .blockTitSub::before {
    left: 6px;
    top: 8px;
    background-size: 13px auto;
  }

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

  #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: 1.2rem 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: flex;
    justify-content: space-between;
    gap: unset;
  }

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

  #index .addParts02 .priceIcoArea .icoArea li .icoTtl {
    width: 100%;
    flex-shrink: 0;
    margin: 0 1.5rem 1.5rem 0;
    color: #182252;
    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 #c6c9df;
  }

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

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

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

  #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: 85%;
    margin: 3rem auto 4rem;
  }

  #index .addParts--detail .infoArea--information.info .btn-web {
    width: 92%;
    margin: 3rem auto 4rem;
  }

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

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

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

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

  .addParts03 p {
    margin: 0;
  }

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

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

  .addParts03 .addTopArea .addTopPic img {
    box-shadow: 8px -10px 0 #fff;
  }

  .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 .personBox .pic {
    display: block;
    width: 100px;
    position: absolute;
    top: 25px;
    left: 8px;
  }

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

  .addParts03 .personMainArea .personBox 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 .personBox 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 .interviewTitArea {
    display: block;
    padding: 0 4% 2.5rem 0;
    margin: 0 0 1rem;
  }

  .addParts03 .interviewTitArea::before {
    right: 100%;
  }

  .addParts03 .interviewTitArea::after {
    background-size: 12px auto;
    top: 15px;
    right: 10px;
  }

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

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

  .interviewTit__small {
    font-size: 1.8rem;
  }

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

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

  .addParts03 .personArea .personBox {
    padding: 0 1rem;
  }

  .addParts03 .personArea .personBox .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;
  }

  .addParts--detail .infoArea--information.info .catch,
  .addParts03 .personArea .personBox dl dt {
    font-size: 1.5rem;
    margin: 0 auto 1.2rem;
  }

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

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

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

  .addParts03 .summaryArea {
    width: 100%;
    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-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;
  }

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

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

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

  .addParts--detail .addTopArea {
    margin: -9rem 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 6rem;
  }

  .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 .infoArea--information.company .block__item__title {
    font-size: 1.8rem;
    margin: 0 auto 3rem;
  }

  #contents .addParts--detail .infoArea--information.company ul {
    padding: 0rem 2rem 2.5rem;
  }

  #contents .addParts--detail .infoArea--information.company ul li::before {
    content: url(img/green-icon.png);
    position: absolute;
    top: 0px;
    left: -5%;
  }

  #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: 6rem 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: 6rem auto 0;
    padding: 1.5rem 4% 0;
    background-size: auto 40.5px;
  }

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

  .addParts--detail .infoArea--information {
    margin: 6rem auto 4rem;
    padding: 1.5rem 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;
    padding: 4rem 0 1rem;
  }

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

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

  #index .addParts--comparison .ct {
    margin: 3.2rem auto 4rem;
  }

  #index .addParts__title--comparison a::before {
    content: "";
    position: absolute;
    background: url(img/blue-arrow.png) no-repeat;
    width: 22px;
    height: 10px;
    margin: auto;
    top: -6px;
    bottom: 0;
    right: 17%;
  }

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

  .addParts__title--comparison::after {
    height: 60px;
    background-size: 12px auto;
  }

  #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: 10rem auto 0;
    padding: 4rem 2rem;
  }

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

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

  #index .addParts--list .addTopArea .sttl::after {
    width: calc(100% - -1rem);
    height: 70px;
    background-size: 417px auto, 12px auto;
    background-position: bottom 1rem left 0rem, center;
    bottom: -56px;
  }

  .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 {
    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 .frame--list + .frame--list {
    margin-top: 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;
  }

  #index .frame-wrap .type-b .frame__table--list th {
    border: none;
    width: 100%;
    display: block;
  }

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

  /* 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::after {
    content: "";
    width: 60%;
    height: 96vw;
    right: -8%;
    bottom: -40px;
  }

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

  #index .box-wrap .box--area:nth-child(n + 2) {
    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: 30px;
  }

  #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--points {
    margin: 4.5rem auto 0;
    width: 100%;
    max-width: 100%;
    display: block;
  }

  #index .addParts03.system.knowledge .frame-wrap .frame--points {
    width: 100%;
    background: #123066;
    border: none;
  }

  #index .addParts03.addParts--area.system.knowledge .addInner h3 {
    font-size: 2rem;
  }

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

  #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;
  }

  .toc_parts {
    width: 85%;
    margin: 0 auto;
  }

  #contents #index .toc_parts {
    margin: 1rem auto;
  }

  #toc {
    display: none;
    margin: 0.5rem 0 0 0;
    padding: 1.5rem 2rem;
    position: relative;
  }

  #toc .chapter .chapter-h {
    font-size: 1.5rem;
  }

  .addParts--recommended .addTopTxt {
    max-width: calc(100% - 4rem);
  }

  .float-wrap {
    max-width: calc(100% - 4rem);
  }

  #index .check-box {
    max-width: calc(100% - 4rem);
    margin: 0 auto;
    position: relative;
  }

  #index .check-box-wrap .check-box-text {
    padding: 3rem 5rem 0;
  }

  #index .check-box .check-box-title {
    position: absolute;
    font-size: 1.8rem;
    background: #081242;
    border-radius: 5px;
    color: #fff;
    top: -53px;
    left: 14%;
    padding: 0.5rem 1rem;
    margin: 0 1rem 0 6rem;
  }

  #index .check-box::before {
    content: url(img/check.png);
    top: -60px;
  }

  #index .check-box-wrap .check-box-whitetext p:not([class]) {
    margin: 0;
    padding: 0 2rem 1rem;
  }

  .addParts--recommended {
    padding: 6.5rem 0 3.5rem;
    margin: 0rem 0;
  }

  .addParts--recommended.Parts02 {
    padding: 2rem 2rem 4rem;
  }

  #index .addParts--recommended .addParts__title {
    padding: 0 0 8rem;
    background: none;
    margin: 0 0 0rem;
    position: relative;
    z-index: 9;
  }

  .frame--recommended,
  #contents .frame--recommended:last-of-type {
    margin-top: 2rem;
  }

  #index .list-wrap--recommended ul li::before {
    left: -8%;
  }

  #contents .addParts--detail .block__item--performance p {
    max-width: calc(100% - 4rem);
  }

  #index .addParts02 .priceIcoArea .icoArea li .icoTtl a::after {
    content: "";
    background: none;
  }

  #index .addParts02 .priceIcoArea .icoArea li .icoTtl:hover a:after {
    background: none;
  }

  .addParts--detail .infoArea--information.info {
    margin: 3rem auto 3rem;
    padding: 2.5rem 2rem 0;
    background-size: auto 40.5px;
    background-position: left 10px top 10px;
  }

  .addParts--detail .infoArea--information.info p {
    padding: 0 1rem;
  }

  #contents .addParts--detail .infoArea--information.info ul {
    padding: 0rem 1rem 0;
  }

  #contents .addParts--detail .infoArea--information.info ul li::before {
    left: -5%;
  }

  .addParts03.feature .addInner::before {
    left: 0%;
    background-size: 50%;
    top: -28px;
  }

  .addParts03.feature .interviewTitArea--area a::before {
    top: 55px;
    left: 25%;
  }

  #index .addParts03.addParts--area .addInner h3 {
    padding: 1.5rem 3rem 1.2rem;
    font-size: 1.8rem;
    margin: 2rem auto 1rem;
  }

  .addParts03 .link-area a::before {
    top: 22px;
    right: 4%;
  }

  #contents .addParts03.addParts--area .addInner p:not([class]) {
    margin: 0;
    font-size: 1.4rem;
  }

  .addParts03.kowledge .addInner::before {
    background-size: 50%;
    top: -36px;
    left: 0%;
  }

  .addParts03.kowledge .interviewTitArea--area a::before {
    top: 55px;
    left: 25%;
  }

  #index .addParts03.kowledge .interviewTitArea--area a::before {
    content: "";
    position: absolute;
    background: url(img/blue-arrow.png) no-repeat;
    width: 22px;
    height: 10px;
    margin: auto;
    top: 31px;
    bottom: 0;
    right: -25%;
  }

  #index .box-wrap .box--area:nth-child(3)::before {
    width: 188px;
  }

  .addParts03.difference .addInner::before {
    background-size: 50%;
    top: -25px;
    left: 0%;
  }

  .addParts03.difference .interviewTitArea--area a::before {
    top: 52px;
    left: 44%;
  }

  #index .btn-internal.difference-btn h2 {
    font-size: 2rem;
    padding: 1rem 0;
  }

  .addParts03.system .addInner::before {
    background-size: 50%;
    top: -36px;
    left: 0%;
  }

  .addParts03.system.knowledge .addInner::before {
    background: url(img/knowledge.png) no-repeat;
    top: -39px;
    left: 0;
    background-size: 50%;
  }

  .addParts03.system .interviewTitArea--area a::before {
    top: 32px;
    left: 36%;
  }

  .addParts03.example .addInner::before {
    background-size: 50%;
    left: 0%;
    top: -36px;
  }

  .addParts03.example .interviewTitArea--area a::before {
    left: 50%;
    top: 35px;
  }

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

  .addParts--recommended.Parts01 .addParts__title::after {
    height: 90px;
    bottom: 14px;
  }

  #index .addParts--recommended.Parts01 .addParts__title::before {
    content: url(img/main-text01.png);
    position: absolute;
    top: 60px;
    left: 0;
    right: 0;
  }

  #index .addParts--recommended.Parts02 .addParts__title::before {
    content: url(img/main-text02.png);
    position: absolute;
    top: 23px;
    left: 0;
    /* width: 226px; */
    display: block;
    bottom: 0;
    right: 0;
    scale: 0.8;
  }

  #index .addParts--recommended .addTopTxt p {
    max-width: 100%;
    margin: 2rem auto 3rem;
  }

  .addParts--recommended .addParts__title::after {
    content: "";
    width: 100%;
    height: 90px;
    position: absolute;
    background: #edfafa;
    left: 0;
    right: 0;
    bottom: 11px;
    margin: 0 auto;
    z-index: -1;
  }
  #index .addParts--recommended.Parts02 .btn-internal {
    width: 100%;
  }

  #index .btn-internal {
    width: 82.5%;
  }

  #index .frame--recommended .btn-web {
    width: 82.5%;
  }

  .frame--recommended,
  #contents .frame--recommended {
    width: 100%;
    margin: 0 0 2rem;
    padding: 0 0 0rem;
  }

  .frame-wrap--recommended,
  #contents.frame-wrap--recommended {
    width: 100%;
  }

  #index .addParts--recommended.Parts02 .btn-tel {
    width: 400px;
  }

  #visArea .btn-internal {
    width: 92%;
  }

  #index .check-box .check-box-title:before {
    left: 8px;
  }

  #contents .addParts03.difference .interviewTitArea {
    display: block;
  }

  #index .btn-internal.difference-btn a {
    background: url(img/arrow_white02.png) right 23px top 62px no-repeat #123066;
  }

  #contents .personBox .personBox-caption {
    font-size: 1rem;
  }

  #index .list-wrap--recommended {
    background: #f0f4f4;
    margin: 0rem 0rem 0rem;
    position: relative;
  }

  #index .list-wrap2-name {
    padding: 2rem 0 0;
    text-align: center;
    font-size: 2rem;
    font-weight: bold;
    color: #2e4fcb;
    line-height: 1.4;
  }

  #index .list-wrap2--recommended {
    margin: 2rem 0;
  }

  #index .list-wrap--recommended ul {
    padding: 4.5rem 2rem 0.1rem 2rem;
    margin: 0;
    font-size: 1.6rem;
    padding: 1rem 2.8rem 0.3rem 3.4rem;
  }

  #index .addParts03.addParts--area.example .addInner h3 {
    font-size: 2rem;
  }

  #index .btn-link {
    max-width: 92%;
    text-align: left;
    margin: 5rem auto;
  }

  #index .scroll-table table {
    width: 1600px;
    position: relative;
    /* border-collapse: separate; */
  }

  #index .scroll-table th,
  #index .scroll-table td {
    display: table-cell;
  }

  #index .mv-lower.btn-internal {
    margin: 3rem auto 4rem;
  }

  #index .scroll-table table thead {
    position: sticky;
    top: 0px;
    left: 0px;
    z-index: 1;
  }
  #index .scroll-table {
    height: 450px;
  }
  #index .scroll-table table th.width00 {
    width: 150px;
  }
  #index .scroll-table table tbody th.th-right {
    left: 75px;
  }
  #index .scroll-table table th.width01 {
    position: relative;
  }
  #index .scroll-table table th.width01::before {
    content: "";
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    /* border-top: 1px solid #f00; */
    border-right: 1px solid #fff;
    /* border-bottom: 1px solid #f00; */
    /* background: #123066; */
    z-index: -1;
  }
}
