html { scroll-behavior: smooth;}
body {
    background-image: linear-gradient(120deg, rgba(247, 188, 51, 1), rgba(243, 176, 46, 1) 48%, rgba(210, 66, 5, 1));
}
.main {
    background-image: url("../../images/etc/about_jakokatsu/main_back.webp");
    background-repeat: repeat;
    overflow: hidden;
}

.kv {
    position: relative;
}
.kv_title-image {
    width: 100%;
}
.kv_product {
    position: absolute;
    top: 31.17%;
    left: 10.5%;
    @media screen and (max-width:767px) {
        top: auto;
        left: 0;
        bottom: -6.63%;
    }
}
.kv_product-image{
    width: 36.3vw;
    @media screen and (max-width:767px) {
        width: 62.45vw;
    }
}

.button {
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: flex-end;
    gap: 50px;
    flex-wrap: wrap;
    margin: 75px 100px 0;
    @media screen and (max-width:767px) {
        margin: 55px auto 0;
        gap: 20px 20px;
    }
}
.button_image {
    @media screen and (max-width:767px) {
        img {
            width: 240px;
        }
    }
}
.button_image:hover {
    opacity: 0.8;
  }

.point {
    padding: 80px 100px 0;
    @media screen and (max-width:767px) {
        padding: 55px 0 0;
    }
}
.point_head {
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    @media screen and (max-width:767px) {
        position: relative;
        width: 190px;
        margin: 0 auto;
    }
}
.point_head-left {
    width: 12.91vw;
    max-width: 250px;
    @media screen and (max-width:767px) {
        width: 110px;
        position: absolute;
        left: -125px;
    }
}
.point_head-right {
    width: 12.91vw;
    max-width: 250px;
    @media screen and (max-width:767px) {
        width: 110px;
        position: absolute;
        right: -125px;
    }
}
.point_head-title {
    width:50vw;
    max-width: 1100px;
    @media screen and (max-width:767px) {
        text-align: center;
        width: 190px;
    }
}
.point_box {
    margin: 50px auto 0;
    padding: 60px 0 90px;
    background: rgba(255,255,255,0.8);
    max-width: 1380px;
    @media screen and (max-width:767px) {
        margin: 45px 15px 0;
        padding: 30px 0 40px;
    }
}
.point_box_title {
    text-align: center;
}
.point_box_title-image {
    @media screen and (max-width:767px) {
        width: 170px;
    }
}
.point_box_list {
    margin: 20px 0px 0;
    display: flex;
    justify-content: center;
    gap: 0 3vw;
    flex-wrap: nowrap;
    @media screen and (max-width:767px) {
        flex-wrap: wrap;
        gap: 10px 0;
        margin: 16px auto 0;
        max-width: 400px;
    }
}
.point_box_list-item {
    img {
        max-width: 320px;
        width: 22vw;

    }
    @media screen and (max-width:767px) {
        img {
            width: 265px;
        }
    }
}
.point_box_label {
    margin-top: 70px;
    padding: 0 10px 0;
    text-align: center;
    position: relative;
}
.point_box_label-back-image {
    width: 100%;
}
.point_box_label-product {
    position: absolute;
    top:35.8%;
    left: 50%;
    transform: translateX(-50%);
    width: 30.43%;
    @media screen and (max-width:767px) {
        top:53%;
        width:42%;
    }
}
.point_box_label-product-image {
    width: 100%;
}
.cm{
    padding: 80px 100px 0;
    width: 100%;
    @media screen and (max-width:1500px) {
        padding: 0 100px 0;
    }
    @media screen and (max-width:767px) {
        height: auto;
        padding: 120px 0 0;
    }
}
.cm_area {
    margin: 0 auto;
    position: relative;
    max-width: 1380px;
    height: 1140px;
    @media screen and (max-width:1500px) {
        height: auto;
    }
}
.cm_area_model {
    position: absolute;
    top: 0;
    right: 55%;
    @media screen and (max-width:1500px) {
        top: auto;
        right: 55%;
        bottom: 0;
        width: 500px;
        @media screen and (max-width:767px) {
            display: none;
        }
    }
}
.cm_area_model-image {
    position: relative;
    pointer-events: none;
    width: 873px;
    @media screen and (max-width:1500px) {
        width: 500px;
    }
}

.cm_list-model {
    position: relative;
}
.cm_list_model-back {
    position: absolute;
    top: -300px;
    left: 50%;
    width: 600px;
    transform: translateX(-50%);
    opacity: 0.5;
    filter: blur(1px);
    pointer-events: none;
    @media screen and (min-width:767px) {
        display: none;
    }
}
.cm_list-model-image{
    position: absolute;
    top: -242px;
    left: 50%;
    transform: translateX(-50%);
    width: 320px;
    z-index: 1;
    @media screen and (min-width:767px) {
        display: none;
    }
}
.cm_area_model-back {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 2000px;
    height: 2000px;
    opacity: 0.5;
    filter: blur(1px);
    @media screen and (max-width:1500px) {
        width: 1200px;
        height: 1200px;
    }
    @media screen and (max-width:767px) {
        display: none;
    }
}

.cm_area_list {
    position: relative;
    padding-top: 140px;
    margin-left: auto;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    width: 840px;
    gap:70px 40px;
    text-align: center;
    @media screen and (max-width:1500px) {
        width: 520px;
        padding-bottom: 70px;
        gap: 60px 40px;
        @media screen and (max-width:767px) {
            margin: 0 auto;
            text-align: center;
            width: 325px;
            gap: 35px 0;
        }
    }
}
.cm_list-image {
    margin-top: 30px;
    margin-bottom: 20px;
    @media screen and (max-width:1500px) {
        margin: 0px auto 10px;
        width: 240px;
        .cm_list-image-image{
            width: 100%;
        }
        @media screen and (max-width:767px) {
            margin: 17px auto 0;
        }
    }
    @media screen and (max-width:767px) {
        margin: 0 auto 20px;
        width: 265px;
        .cm_list-image-image {
            text-align: center;
            position: relative;
            z-index: 10;
        }
    }
}
.cm_list-title {
    @media screen and (max-width:1500px) {
        img{
            width: 50%;
            z-index: 3;
            position: relative;
            margin-bottom: 10px;
        }
    }
}
.cm_list-button {
    margin-top: 30px;
    @media screen and (max-width:1500px) {
        margin-top: 10px;
        img{
            width: 180px;
        }
        @media screen and (max-width:767px) {
            img{
                width: 180px;
            }
        }
    }
}
#modal-video {
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
    position: fixed;
    z-index: 8;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background-color: rgba(#000,.75);
    transition: .5s;
    &.close {
      filter: opacity(0);
      visibility: hidden;
    }
    &.open {
      filter: opacity(1);
      visibility: visible;
      background-color: rgba(0,0,0, 0.75);
      z-index: 10000;
    }
    &.open::after{
        content: '';
        display: inline-block;
        width: 50px;
        height: 50px;
        background-image: url(/"../../images/etc/about_jakokatsu/x.svg");
        background-repeat: no-repeat;
        background-size: contain;
        vertical-align: middle;
        z-index: 100;
        padding-bottom: 41vw;
    }
    @media screen and (max-width:767px) {
        &.open::after{
            width: 25px;
            height: 25px;
        }
    }
    iframe {
      width: 73vw;
      height: 41vw;
    }
  }
 .cm_list-button:hover {
    opacity: 0.8;
    cursor: pointer;
}
.cm_list-image-image:hover {
    opacity: 0.8;
    cursor: pointer;
}
.banner {
    position: relative;
}
.banner_back-image {
    width: 100%;
    height: auto;
    display: block;


}
.banner_button {
    position: absolute;
    top:70%;
    left: 50%;
    transform: translateX(-50%);
    width: 19.63vw;
    min-width: 200px;
    img {
        width: 100%;
    }
    @media screen and (max-width:767px) {
        min-width: 0px;
        width: 100%;
        top: 50%;
        text-align: center;
        img {
            width: 37.333vw;
            text-align: center;
        }
    }
}
.banner_button:hover {
    opacity: 0.8;
}
.share {
    text-align: center;
    background-image: linear-gradient(120deg, rgba(247, 188, 51, 1), rgba(243, 176, 46, 1) 48%, rgba(210, 66, 5, 1));
}
.share-area {
    padding: 80px 0 90px;
    background-image: url("/../../images/etc/about_jakokatsu/main_back.webp");
    background-repeat: repeat;
    overflow: hidden;
    @media screen and (max-width:767px) {
        padding: 60px 0 70px;
    }
}
.share_image {
    @media screen and (max-width:767px) {
        img {
            width: 150px;
            text-align: center;
        }
    }
}
.share_list {
    display: flex;
    justify-content: center;
    margin-top: 30px;
    gap: 0 80px;
    @media screen and (max-width:767px) {
        gap: 0 40px;
        justify-content: center;
        align-items: flex-end;
    }
}
.share_list-item {
    @media screen and (max-width:767px) {
        width: 57px;
    }
}
.share_list-item {
    @media screen and (max-width:767px) {
        display: block;
        .share_list-item-img {
            width: 57px;
            text-align: center;
            img {
                width: 50px;
            }
        }
        .share_list-item-fb {
            img {
                width: 57px;
            }
        }
    }
}
.share_list-sns:hover {
    opacity: 0.8;
  }


.__intersection-target {
    opacity: 0;
    transform: scale(0.3);
}
.__intersection-appearance {
    opacity: 1;
    transform: scale(1);
    transition: all 1s;
}
.l-header {
    background-color: #ffa500;
    padding: 1.8666666667% 0;
    width: 100%;
  }
  @media screen and (min-width: 768px) {
    .l-header {
      padding: 14px 0;
    }
  }
  
  .l-header__logo {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 100%;
  }
  .l-header__logo a {
    display: inline-block;
    width: 21.3333333333%;
  }
  @media screen and (min-width: 768px) {
    .l-header__logo a {
      width: 160px;
    }
  }
  .l-header__logo img {
    width: 100%;
  }
  
  @media only screen and (min-width: 320px) {
    #footer, #footer * {
      margin: 0;
      padding: 0;
      letter-spacing: normal;
    }
    #footer {
      min-width: 320px;
      width: 100%;
      margin: 0 auto;
      overflow: hidden;
      position: relative;
      background: #fed631;
      text-align: left;
      padding: 0;
    }
    #footer * {
      font-size: 11px;
      line-height: 1.8;
    }
    #footer article, #footer aside, #footer details, #footer figcaption, #footer figure, #footer footer, #footer header, #footer nav, #footer section {
      display: block;
    }
    #footer img {
      border: 0;
      vertical-align: middle;
    }
    #footer ul {
      list-style: none;
    }
    #footer a {
      color: #e60012;
      text-decoration: none;
    }
    #footer a:hover {
      text-decoration: underline;
    }
    #footer .footer-content {
      margin: 0 auto;
      padding: 0 20px 20px;
      max-width: 1120px;
    }
    #footer .footer-bottom {
      color: #e60012;
      padding: 20px 0;
    }
    #footer .copyright {
      white-space: nowrap;
      font-size: 8px;
      letter-spacing: 1px;
      text-align: center;
    }
    #footer .footer-bottom-legal-links {
      padding-bottom: 10px;
      text-align: center;
    }
    #footer .footer-bottom-legal-links a {
      border-right: 1px solid #e60012;
      font-weight: 700;
      margin-right: 10px;
      padding-right: 12px;
      line-height: 1;
      white-space: nowrap;
    }
    #footer .footer-bottom-legal-links a:last-child {
      border: none;
      margin: 0;
      padding: 0;
    }
    #footer .yasuoka-logo {
      position: relative;
      display: block;
      width: 100px;
      margin: 0 auto 20px;
    }
    #footer .yasuoka-logo img {
      display: block;
      width: 100%;
    }
  }
  @media only screen and (min-width: 768px) {
    #footer .copyright {
      margin-right: 16px;
      font-size: 8px;
      float: right;
      text-align: left;
    }
    #footer .footer-bottom-legal-links {
      float: left;
      padding-bottom: 0;
      margin-left: 70px;
      text-align: left;
    }
    #footer .yasuoka-logo {
      position: absolute;
      left: 0;
      top: 10px;
      width: 52px;
    }
  }
  @media screen and (min-width: 768px) {
    .footer-content {
      padding: 0 20px 20px;
    }
  }
  .footer-content .footer-bottom {
    position: relative;
  }
  @media screen and (min-width: 768px) {
    .footer-content .yasuoka-logo {
      position: absolute;
    }
  }