@media screen and (max-width: 767px) {

  /* SECTION TOP */

  .section {
    margin-top: 70px;
  }

  .section-wrapper {
    max-width: initial;
    padding-left: 15px;
    padding-right: 15px;
  }

  .section-top {
    height: initial;
  }

  .section-top .section-top__wrapper {
    padding-left: 0;
    padding-right: 0;
  }

  .section-top__wrapper {
    margin-top: 50px;
  }
  .section-top__left,
  .section-top__right {
    width: 100%;
    min-width: 100%;
    padding-top: 0;
  }

  .section-top__left .title-large {
    padding-left: 15px;
    letter-spacing: 0;
    font-size: 34px;
  }

  .section-top__tag-wrapper {
    padding: 0 15px;
  }

  .section-top__tag {
    font-size: 12px;
  }

  .section-top__tag-text {
    font-size: 16px;
  }

  .section-top__cer {
    max-width: initial;
    position: relative;
    margin-bottom: 20px;
    letter-spacing: 1px;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }

  .section-top__cer .section-top__cer-inner {
    max-width: 95px;
    display: block;
    padding-left: 15px;
  }

  .section-top__cer .section-top__cer-block {
    margin-bottom: 0;
    padding: 10px;
  }

  .section-top__cer .section-top__cer-block {
    background-size: auto 36px;
  }

  .section-top__cer .section-top__cer-block:after {
    background-size: auto 36px;
  }

  .section-top__cer .section-top__cer-block .text-small {
    font-size: 10px;
  }

  .section-top__cer .section-top__cer-block .text-middle {
    font-size: 11px;
  }

  .section-top__cer .section-top__cer-block .text-large {
    font-size: 14px;
  }

  .section-top__cer-image {
    width: calc(100% - 95px - 19px);
  }
  .section-top__cer-image img {
    width: 120%;
  }

  .section-top__btn {
    width: 100%;
    padding: 0 15px;
    text-align: center;
  }

  .btn-second.section-top__btn-item {
    width: 300px;
  }

  .section-small,
  .section-large {
    width: 100%;
    max-width: initial;
  }

  .section-small {
    margin-right: 0;
  }

  .section-introduction__inner {
    width: 100%;
  }

  .introduction-nav {
    max-width: 345px;
    display: block;
  }

  .introduction-nav__item {
    padding: 0 15px 0 5px;
  }

  .introduction-nav__item:not(:first-child) {
    border-left: none;
    border-top: 1px solid #ccc;
  }

  .section-introduction__body {
    padding: 50px 20px 0;
    display: block;
  }

  .section-introduction__image,
  .section-introduction__textwrap {
    width: 100%;
    max-width: initial;
  }

  .section-introduction__textwrap p {
    margin-top: 20px;
    font-size: 20px;
  }

  .section-introduction__image {
    margin-bottom: 50px;
  }

  .introduction-nav__text {
    margin-right: 0;
    padding-right: 15px;
  }

  .section-partner .title-medium {
    padding: 0 25px;
    font-size: 18px;
  }

  .section-function {
    width: 100%;
    padding: 0 15px;
  }

  .function-list {
    margin: 10px auto 40px;
  }

  .function-item {
    width: 33%;
    height: auto;
    padding: 15px 5px 10px;
  }

  .function-item:not(:nth-last-child(-n+3)) {
    margin-bottom: 2px;
  }

  .function-item:hover {
    transform: none;
    background-color: #F3F5FB;
    box-shadow: none;
  }

  .function-item__imagewrap {
    margin-bottom: 8px;
  }

  .function-link {
    text-align: center;
  }

  .section-reason {
    width: 100%;
    margin-top: 80px;
  }

  .reason-list {
    margin-top: 40px;
    display: block;
  }

  .reason-item {
    width: 100%;
  }

  .reason-item__body {
    margin-top: 20px;
  }

  .reason-item__detail {
    width: calc(100% - 120px);
    margin-top: 0;
  }

  .point-list__title {
    border-radius: 2px;
  }

  .point-list__item {
    font-size: 14px;
  }

  .reason-item:not(:last-child) {
    margin-bottom: 30px;
  }

  .reason-img {
    width: 120px;
  }

  .reason-button {
    margin-top: 20px;
  }

  .section-case {
    width: 100%;
  }

  .section-case__bottom {
    padding: 20px;
    display: block;
  }

  .section-case__lead {
    text-align: center
  }

  .section-case__title {
    padding: 10px 30px;
    text-align: center;
    max-width: 185px;
    background: url(../img/index-renewal/sp/icon-flower-blue.png) no-repeat left center;
    margin-bottom: 20px;
    font-size: 17px;
  }

  .section-case__title::after {
    width: 25px;
    background: url(../img/index-renewal/sp/icon-flower-blue.png) no-repeat left center;
  }

  .section-case__text {
    padding: 0 15px;
    text-align: center;
  }

  .section-case__button .btn {
    margin-left: 0;
    margin-right: 0;
  }

  .section-case__button .btn:last-child {
    margin-top: 15px;
  }

  .case-list {
    display: block;
  }

  .case-list__item {
    width: 100%;
    margin-top: 0;
    padding-top: 30px;
    max-width: initial;
  }

  .case-list__item:not(:last-child) {
    border-bottom: 1px solid #E0E0E0;
  }

  .case-list__company {
    margin-bottom: 20px;
  }

  .case-all__title {
    text-align: center;
    margin-bottom: 5px;
  }

  .case-all__item {
    margin-top: 15px;
  }

  .case-all__anchor {
    line-height: 1.2;
  }

  .section-img-sp {
    margin-top: 40px;
  }

  .slide-img-sp {
    display: flex;
  }
  .slide-img-sp .slide-list-sp {
      display: flex;
  flex-wrap: wrap;
      flex: 0 0 1800px;
  }
  .slide-img-sp .slide-list-sp li {
      flex: 0 0 103px;
      display: flex;
    align-items: center;
      height: 70px;
      margin-bottom: 20px;
  margin-right: 20px;
  justify-content: center;
  }
  .slide-img-sp .slide-list-sp li:nth-child(15),
  .slide-img-sp .slide-list-sp li:nth-child(16),
  .slide-img-sp .slide-list-sp li:nth-child(17),
  .slide-img-sp .slide-list-sp li:nth-child(18),
  .slide-img-sp .slide-list-sp li:nth-child(19),
  .slide-img-sp .slide-list-sp li:nth-child(20),
  .slide-img-sp .slide-list-sp li:nth-child(21),
  .slide-img-sp .slide-list-sp li:nth-child(22),
  .slide-img-sp .slide-list-sp li:nth-child(23),
  .slide-img-sp .slide-list-sp li:nth-child(24),
  .slide-img-sp .slide-list-sp li:nth-child(25),
  .slide-img-sp .slide-list-sp li:nth-child(26),
  .slide-img-sp .slide-list-sp li:nth-child(27),
  .slide-img-sp .slide-list-sp li:nth-child(28) {
    transform:translateX(-62px);
  }
  .slide-img-sp .slide-list-sp li img {
    height: 70px;
  }

  .column-list {
    margin-top: 50px;
    display: block;
  }

  .column-list__item {
    width: 100%;
    max-width: initial;
  }

  .column-list__item:not(:last-child) {
    margin-bottom: 30px;
    padding-bottom: 20px;
    border-bottom: 1px solid #E0E0E0;
  }

  .section-cv {
    background: url(../img/index-renewal/banner-top.jpg) no-repeat 50% 0;
    background-size: cover;
  }

  .section-cv__inner {
    max-width: initial;
    padding: 60px 15px;
  }
  .inquire_products_main {
    display: flex;
    flex-direction: column;
  }
  .inquire_products_request {
    width: 100%;
  }

  .inquire_products_heading {
    order: 1;
  }

  .inquire_products_visual {
    order: 2;
  }

  .inquire_products_body {
    order: 3;
    width: 300px;
    margin: 0 auto;
  }

  .inquire_products_title {
    font-size: 26px;
  }

  .inquire_products_nav {
    display: block;
    margin-top: 40px;
  }

  .inquire_products_nav_item {
    border-top: 1px solid #7B95CB;
    width: 100%;
    padding-top: 40px;
    margin-top: 40px;
  }

  .inquire_products_nav_item:first-child {
    border-right: none;
  }

  .inquire_products_nav_title {
    font-size: 20px;
    margin-bottom: 30px;
  }
  .inquire_products_nav_button {
    width: 300px;
  }

  .title-large.phone {
    width: 250px;
    margin: 20px auto 10px;
    height: 50px;
    border: 1px solid #fff;
    border-radius: 50px;
    color: #fff;
    font-size: 24px;
    pointer-events: visible;
  }

  .title-large.phone svg {
    width: 24px;
    height: 24px;
    margin-top: 4px;
    margin-right: 5px;
    fill: #fff;
  }

  .slide-img.sp__appear:nth-child(2) {
    animation: leftsp 50s linear infinite;
    background: url(../img/index-renewal/sp/slide-logo.png) repeat-x;
    width: 2980px;
    height: 96px;
  }
  .slide-img.sp__appear:last-child {
    animation: leftsp2 50s linear infinite;
    background: url(../img/index-renewal/sp/slide-logo-2.png) repeat-x;
    width: 2780px;
    height: 96px;
  }

  @keyframes leftsp {
    0%{
      transform: translate3d(0, 0, 0);
    }
    100%{
      transform: translate3d(-745px, 0, 0);
    }
  }
  @keyframes leftsp2 {
    0%{
      transform: translate3d(0, 0, 0);
    }
    100%{
      transform: translate3d(-695px, 0, 0);
    }
  }

  .section-faqs {
    margin-top: 75px;
  }
  .faqs-list {
    margin-top: 40px;
  }
  .faqs-link {
    font-size: 16px;
    padding: 7px 30px;
  }
  .faqs-link:before {
    top: 7px;
    font-size: 24px
  }
  .faqs-link:after {
    right: 5px;
  }

  .section-go-page {
    margin-top: 40px;
  }

  .section-imglink {
    margin: 0;
    flex-wrap: wrap;
  }

  .imglink-col {
    width: 100%;
    padding: 0;
    margin-bottom: 20px;
  }

  .imglink-col:last-child {
    margin-bottom: 0;
  }

  .section-news {
    margin-top: 95px;
  }
  .news-link {
    flex-wrap: wrap;
    padding: 8px 0;
  }
  .news-date.sp__appear {
    line-height: 26px
  }
  .news-date,
  .news-title {
    font-size: 14px
  }
  .news-title {
    width: 100%;
  }
  .news-tag,
  .news-date {
    margin-bottom: 8px;
  }

  .section-blog {
    padding: 40px 0 80px;
  }

  .section-blog__inner {
    max-width: initial;
    padding: 0 15px;
  }

  .blog-list {
    margin-bottom: 50px;
  }

  .blog-link {
    display: block;
  }

  .blog-item {
    width: 100%;
  }

  .blog-item:not(:last-child) {
    margin-bottom: 30px;
    padding-bottom: 20px;
    border-bottom: 1px solid #E0E0E0;
  }

  .blog-title {
    margin-bottom: 12px;
  }

  .blog-date {
    margin-bottom: 10px;
  }

  .section-seminar {
    padding: 80px 0 40px;
  }
}

@media screen and (max-width : 320px){

  .title-large {font-size: 22px;}
  .title-medium {font-size: 22px;}

  .section-top__wrapper {
    padding-top: 20px
  }

  .section-top__left .title-large {
    font-size: 30px;
    margin-bottom: 10px;
  }

  .section-top__cer img {
    width: 250px;
    right: -70px;
    top: 45px
  }
  .section-top__btn .btn:first-child {
    margin-bottom: 10px;
  }

  .function-link {
    width: 70px;
    height: 70px;
    font-size: 12px
  }

  .faqs-link {
    font-size: 14px
  }
  .faqs-link:before {
    font-size: 20px
  }
}
