#main .visual img {
  width: 100%;
}

#main .message .body {
  max-width: 1440px;
}

#main .message {
  background: url(../../_images/index/message-bg.jpg) right bottom no-repeat #f4f4f4;
}

@media (max-width:736px) {
  #main .message {
    background-size: contain;
  }
}

#main .message .photo {
  background: url(../../_images/index/message-photo.jpg) 0 0 /auto 100% no-repeat;
}

#main .message .photo img {
  display: none;
}

#main .message .content {
  padding: 70px 0;
  padding-right: 40px;
}

#main .message .content .btn {
  margin-top: 2em;
}

#main .message .content .btn > * {
  width: 240px;
  display: inline-block;
  margin-right: 1em;
}

@media (max-width:736px) {
  #main .message .photo {
    background-image: none;
  }
  #main .message .photo img {
    display: block;
    width: 66.66%;
    margin: 0 auto;
  }
  #main .message .content {
    padding: 0;
    padding-bottom: 50px;
  }
  #main .message .content .btn .btn-1 {
    display: table;
    margin: 10px auto;
  }
}

#main .sample {
  padding: 180px 0;
  background: url(../../_images/index/sample-bg.jpg) center center /cover no-repeat;
  margin-top: 0;
}

#main .sample .body {
  max-width: 1300px;
  font-size: 0;
}

#main .sample .body .item {
  display: inline-block;
  vertical-align: top;
  font-size: 1.4rem;
  color:#fff;
}

#main .sample .body .item p a {
  text-decoration: underline;
}


#main .sample .body .item ~ .item {
  margin-left: 50px;
}

@media (max-width:736px) {
  #main .sample {
    padding: 50px 0;
  }
  #main .sample .body .item ~ .item {
    margin-top: 30px;
    margin-left: 0;
  }
}

#cb-inline {
  font-size: 1.7rem;
  padding: 50px;
}

#cb-inline .title-2 span {
  font-size: 2.5rem;
  padding: 0.5em;
}

#cb-inline .title-2.top {
  background: #008355;
}

#cb-inline .title-2.top span {
  font-size: 3.5rem;
  color: #fff;
  padding: 0.5em;
}

@media (max-width:1024px) {
  #cb-inline {
    font-size: 1.6rem;
    padding: 20px;
  }
}

@media (max-width:768px) {
  #cb-inline {
    padding: 5px;
  }
  #cb-inline .title-2 {
    width: 95%;
  }
  #cb-inline .title-2 span {
    font-size: 1.8rem;
  }
  #cb-inline .title-2.top span {
    font-size: 2.4rem;
  }
}

#main .bnr {
  padding: 40px 0 40px;
  background: #fff;
}
#main .bnr .images {
  text-align:center;
}


#main .strength {
  padding: 100px 0 70px;
  background: url(../../_images/index/strength-bg.jpg) center center /cover no-repeat;
}

#main .strength .title-1 {
  margin-bottom: 1.5em;
}

#main .strength .body {
  max-width: 1300px;
}

#main .strength .list {
  font-size: 0;
  text-align: center;
  margin-top: -3.125%;
}

#main .strength .list .item {
  width: 31.25%;
  display: inline-block;
  vertical-align: top;
  text-decoration: none !important;
  font-size: 1.6rem;
  margin-top: 3.125%;
  margin-left: 3.125%;
}

#main .strength .body .list .item:nth-child(3n+1) {
  margin-left: 0;
}

#main .strength .item .content {
  position: relative;
  z-index: 1;
  width: 85%;
  font-size: 2rem;
  font-style: italic;
  text-align: left;
  line-height: 1.2;
  color: #fff;
  padding: 0.6em 2em;
  padding-left: 70px;
  background: url(../../_images/index/strength-num-1.png) 0.5em center no-repeat #000;
  margin: -1.25em auto 0;
}

#main .strength .item:nth-child(2) .content {
  background-image: url(../../_images/index/strength-num-2.png);
}

#main .strength .item:nth-child(3) .content {
  background-image: url(../../_images/index/strength-num-3.png);
}

#main .strength .item:nth-child(4) .content {
  background-image: url(../../_images/index/strength-num-4.png);
}

#main .strength .item:nth-child(5) .content {
  background-image: url(../../_images/index/strength-num-5.png);
}

#main .strength .body .btn {
  margin-top: 40px;
}

@media (max-width:736px) {
  #main .strength {
    padding-top: 50px;
    padding-bottom: 50px;
  }
  #main .strength .list .item {
    width: 100%;
    margin-left: 0;
  }
  #main .strength .list .item ~ .item {
    margin-top: 30px;
  }
  #main .strength .btn-1 {
    max-width: 240px;
  }
}

#main .investigation .layout-flex-2 .photo {
  width: 45%;
  background: url(../../_images/index/investigation-photo.jpg) center center /cover no-repeat;
}

#main .investigation .layout-flex-2 .content {
  width: 55%;
}

@media (min-width:737px) and (max-width:1330px) {
  #main .investigation .layout-flex-2 .photo {
    width: 35%;
  }
  #main .investigation .layout-flex-2 .content {
    width: 60%;
  }
}

#main .investigation .layout-flex-2 .content > div {
  max-width: 680px;
  padding: 120px 0;
  background: url(../../_images/index/investigation-content-bg.jpg) center bottom /auto 60% no-repeat;
}

#main .investigation .layout-flex-2 .content .box {
  padding: 1em;
  border: 1px solid #000;
  margin: 40px 0;
}

#main .investigation .layout-flex-2 .content .box ul {
  letter-spacing: -0.4em;
  display: flex;
  flex-wrap: wrap;
  gap: 0 40px;
  justify-content: center;
}

#main .investigation .layout-flex-2 .content .box ul li {
  position: relative;
  /* width: 33%; */
  display: inline-block;
  vertical-align: top;
  letter-spacing: normal;
  padding-left: 0.5em;
  margin: 5px 0;
}

#main .investigation .layout-flex-2 .content .box ul li:before {
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -2px;
  display: block;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: #333;
}

@media (max-width:736px) {
  #main .investigation .layout-flex-2 .content {
    width: 100%;
  }
  #main .investigation .layout-flex-2 .content > div {
    padding: 50px 10px;
  }
  #main .investigation .layout-flex-2 .content .box ul li {
    width: auto;
    margin-right: 1em;
  }
  #main .investigation .layout-flex-2 .photo {
    display: none;
  }
}

#main .cost {
  padding: 90px 0;
  background-color: #f1f1f1 !important;
  background: url(../../_images/index/cost-bg-1.jpg) 5% 0 no-repeat,
  url(../../_images/index/cost-bg-2.jpg) right 0 no-repeat;
}

#main .cost .body {
  max-width: 1020px;
  text-align: center;
}

#main .cost .promise {
  font-size: 1.47em;
  font-weight: 500;
  font-style: italic;
  color: #000;
}

#main .cost b {
  font-weight: 500;
  color: #000;
}

#main .cost .layout-flex-3 {
  margin: 30px 0 50px;
}

@media (max-width:736px) {
  #main .cost {
    padding: 50px 0;
    background: url(../../_images/index/cost-bg-1.jpg) 5% 0 /50px auto no-repeat,
    url(../../_images/index/cost-bg-2.jpg) right 0 /50px auto no-repeat;
  }
}

#main .flow {
  width: 50%;
  padding: 90px 0;
  background: #e3e3e3;
}

#main .flow .inner {
  max-width: 650px;
  margin-left: auto;
  padding: 0 10px;
  padding-right: 40px;
}

#main .flow .list {
  position: relative;
  margin-top: 50px;
}

#main .flow .list:before {
  content: '';
  display: block;
  width: 2px;
  height: auto;
  position: absolute;
  top: 0;
  left: 50%;
  bottom: 0;
  background: #000;
  margin-left: -1px;
}

#main .flow .list .item {
  position: relative;
  z-index: 1;
  background-color: #fff;
  transform: skewX(-15deg);
}

@media (min-width:737px) and (max-width:1330px) {
  #main .flow .list .item {
    width: 96%;
  }
}

#main .flow .list .item > * {
  font-size: 2rem;
  font-weight: 500;
  font-style: italic;
  color: #000;
  padding: 1em;
  padding-left: 80px;
  background: url(../../_images/index/flow-num-1.png) 0.5em center no-repeat;
  transform: skewX(15deg);
}

#main .flow .list .item ~ .item {
  margin-top: 60px;
}

#main .flow .list .item:nth-child(2) > * {
  background-image: url(../../_images/index/flow-num-2.png);
}

#main .flow .list .item:nth-child(3) > * {
  background-image: url(../../_images/index/flow-num-3.png);
}

#main .flow .list .item:nth-child(4) > * {
  background-image: url(../../_images/index/flow-num-4.png);
}

#main .flow .list .item:nth-child(5) > * {
  background-image: url(../../_images/index/flow-num-5.png);
}

#main .flow .list .item:nth-child(6) > * {
  background-image: url(../../_images/index/flow-num-6.png);
}

#main .flow .btn {
  margin-top: 50px;
}

@media (max-width:736px) {
  #main .flow {
    width: 100%;
    padding: 50px 0;
  }
  #main .flow .inner {
    padding: 0 10px;
  }
  #main .flow .list .item {
    width: calc(100% - 34px);
    margin-left: auto;
    margin-right: auto;
  }
  #main .flow .list .item ~ .item {
    margin-top: 30px;
  }
  #main .flow .list .item > * {
    font-size: 1.8rem;
    padding: 1em;
    padding-left: 60px;
    background-size: 40px auto;
  }
}

#main .faq {
  width: 50%;
  padding: 90px 0;
}

#main .faq .inner {
  max-width: 650px;
  margin-right: auto;
  padding: 0 10px;
  padding-left: 40px;
}

#main .faq .list {
  margin-top: 50px;
  margin-bottom: 50px;
}

#main .faq .list .item ~ .item {
  margin-top: 50px;
}

#main .faq .list .item dt {
  background-color: #e3e3e3;
  margin-bottom: 1em;
  transform: skewX(-15deg);
}

@media (min-width:737px) and (max-width:1330px) {
  #main .faq .list .item dt {
    width: 97%;
  }
}

#main .faq .list .item dt > * {
  font-size: 2rem;
  font-weight: 500;
  font-style: italic;
  padding: 1em;
  padding-left: 90px;
  background: url(../../_images/index/faq-q.png) 10px center no-repeat;
  transform: skewX(15deg);
}

#main .faq .list .item dd {
  min-height: 80px;
  padding-left: 90px;
  background: url(../../_images/index/faq-a.png) 10px 0 no-repeat;
}

@media (max-width:736px) {
  #main .faq {
    width: 100%;
    padding: 50px 0;
    margin-top: 0;
  }
  #main .faq .inner {
    padding: 0 10px;
  }
  #main .faq .list .item ~ .item {
    margin-top: 30px;
  }
  #main .faq .list .item dt {
    width: 93%;
    line-height: 1.2;
    margin-left: auto;
    margin-right: auto;
  }
  #main .faq .list .item dt > * {
    padding: 1em;
    padding-left: 60px;
    background-size: 40px auto;
  }
  #main .faq .list .item dd {
    width: 93%;
    padding-left: 60px;
    background-size: 40px auto;
    margin-left: auto;
    margin-right: auto;
  }
}

#main .case {
  padding: 80px 0;
  background: url(../../_images/index/case-bg.jpg) right bottom /cover no-repeat;
}

@media (max-width:736px) {
  #main .case {
    padding: 50px 0;
  }
}

#main .blog {
  padding: 80px 0;
}

@media (max-width:736px) {
  #main .blog {
    padding: 50px 0;
  }
}
