body .layout-second .second-body{
  padding:0;
}
.entry{
  color:black;
  .cover{
    background: black;
    color:white;
    .title{
      padding:120px 40px 20px 40px;
      margin:0 auto;
      max-width:800px;
      @media screen and (max-width: 767px) {
         padding:80px 40px 40px 40px;
      }
      >.inner{
        margin:0 auto 30px auto;
        max-width:82%;
        @media screen and (max-width: 1100px) {
          max-width: 100%;
        }
        .copy
        {
          margin:0 auto 40px auto;
          display: block;
          width:100%;
          transition: transform 0.1s ease-in-out;
  /*        cursor:pointer;*/
          &:hover {
  /*          animation: shake 0.2s infinite; */
          }
        }
        .mark2{
          &:hover {
  /*          animation: shake 0.2s infinite;*/
          }
        }
        .summary{
          line-height: 1.6;
          font-size:120%;
          display: flex;
          width:100%;
          position:relative;
          margin:40px 0 0 0;
          @media screen and (max-width: 767px) {
            flex-direction: column;
          }
          P{
            flex: 1;
            font-weight: bold;
            font-size:100%;
            line-height:2;
             @media screen and (max-width: 767px) {
               font-size:80%;
            }
          }
          img{
            max-width:40%;
            margin:0 10px -20px auto;
            position: absolute;
            right:30px;
            bottom:0;
            @media screen and (max-width: 767px) {
              position: static;
              max-width:120px;
              margin:30px auto 0 auto;
            }
          }
        }
        .official{
          margin: 30px 0 0 0 ;
          img{
            display: block;
            width:100%;
          }
        }
      }

    }
    .slider {
      position: relative;
      width: 100%;
      overflow: hidden;
      .slides {
        display: flex;
        transition: transform 1s ease-in-out;
        width: calc(30% * 16);
        animation: slide 30s linear infinite;
        .slide {
          width: 30%;
          box-sizing: border-box;
        }

        img {
          width: 100%;
          display: block;
        }
      }
    }
  }
  .nav{
/*    padding: 20px 0 ;*/
    text-align: center;
    .btn{
      display:block;
      max-width:600px;
      background: linear-gradient(90deg, #f51319, #ad0915);
      margin:0 auto;
      text-align:center;
      color: white;
      padding:10px 20px;
      border-radius:12px;
      box-shadow: 4px 4px 1px 4px #f4a6a6;
      position:relative;
      transition: all .3s;
      &:hover{
        transform: scale(1.03);
      }
      .sub{
        display: block;
        font-size:120%;
        @media screen and (max-width: 767px) {
          font-size:100%;
        }
      }
      .main{
        display: block;
        font-weight: bold;
        font-size:200%;
        @media screen and (max-width: 767px) {
          font-size:130%;
        }
      }
      &:after{
        content:'';
        width:30px;
        height:30px;
        background-image: url(/files/user/_/partner/entry/img/arrow.svg);
        background-repeat: no-repeat;
        background-position: top 50% right 10%;
        position: absolute;
        right:20px;
        top:50%;
        transform:translateY(-50%);
        @media screen and (max-width: 767px) {
          width:16px;
          right:10px;
        }
      }
      &.-evessa{
        .character{
          width:80px;
          position:absolute;
          left:5%;
          top:50%;
          transform:translateY(-50%);
          @media screen and (max-width: 767px) {
            width:48px;
            left:-16px;
            top:32%;
          }
          img{
            display: block;
            width:100%;
          }
        }
      }
      &.-min{
        max-width:340px;
        padding: 6px 10px;
        box-shadow: 2px 2px 1px 3px #f4a6a6;
        background: black;
        box-shadow:none;
        .main{
          font-size:130%;
        }
        &:after{
          width:16px;
          height:16px;
        }
      }
    }
    .btn-accordion{
      background-color: black;
      border-radius: 8px;
      display: block;
      text-align: center;
      max-width:340px;
      margin:0 auto 20px auto;
      color:white;
      padding: 6px 10px;
      font-size:120%;
      font-weight: bold;
      position: relative;
      cursor: pointer;
      transition: all .2s;
      @media screen and (max-width: 767px) {
        font-size:110%;
      }
      &:hover{
        opacity: 0.5;
      }
      &:after{
        content:'';
        display: block;
        aspect-ratio: 4 / 2;
        width:40px;
        position: absolute;
        left:50%;
        bottom:-30px;
        transform: translateX(-50%);
        background: url(/files/user/_/partner/entry/img/arrow_under.svg);
        background-repeat: no-repeat;
        background-position: 50%;
        background-size: contain;

      }
      &.-close{
        background-color: transparent;
        color:black;
        margin:20px auto 0 auto;
        &:after{
          content:'';
          display: block;
          aspect-ratio: 4 / 2;
          width:40px;
          position: absolute;
          left:50%;
          bottom:auto;
          top:-20px;
          transform: translateX(-50%) rotate(180deg);
          background: url(/files/user/_/partner/entry/img/arrow_under.svg);
          background-repeat: no-repeat;
          background-position: 50%;
          background-size: contain;

        }
      }
    }
  }
  .section{
    &.-gold{
      background: #b8915a;
      color:white;
      p{
        font-weight: 600;
        font-size:120%;
        @media screen and (max-width: 767px) {
          font-size:110%;
        }
      }
    }
    &.-red{
      background-color: #e6001b;
      color:white;
    }
    &.-gray{
      background-color: #ccc;
    }
    &.-black{
      background-color: black;
      padding-top:40px
    }
    .-padding,
    &.-padding{
      padding:60px 8%;
      @media screen and (max-width: 767px) {
        padding:36px 20px;
      }
      &.-pb20{
        padding-bottom:20px;
      }
      &.-pb0{
        padding-bottom:0px;
      }
    }
    &.-round{
      border-radius: 0 0 40px 40px;
      box-shadow: 0px 16px 16px rgba(0, 0, 0, 0.5);
      margin-bottom:-30px;
      position: relative;
      & + .section.-round{
        padding-top:80px;
        @media screen and (max-width: 767px) {
          padding-top:40px;
        }
      }
    }
    &.z-2{
      z-index: 2;
    }
    &.z-3{
      z-index: 3;
    }
    &.z-4{
      z-index: 4;
    }
    &.z-5{
      z-index: 5;
    }
    &.mb-0{
      margin-bottom:0 !important;
    }
  }
  .wrapper{
    max-width:760px;
    margin:0 auto;
  }
  .heading-section{
    font-size:150%;
    font-weight: 800;
  }
  .heading-item{
    font-size:240%;
    font-weight: 800;
    text-align: center;
    @media screen and (max-width: 767px) {
     font-size:160%;
   }
 }
 .heading-img{
  display:flex;
  justify-content:center;
  margin:0 0 20px 0;
  + p{
    font-weight: bold;
    @media screen and (max-width: 767px) {
     font-size:90%;
    }
  }
  dl{
    display: flex;
    align-items:flex-end;
    dt{
      .logo{
        display: block;
        width:120px;
        margin:0 10px 0px 0 ;
      }
    }
    dd{
      padding:0 0 12px 0;
      .text{
        display: block;
        width:400px;
      }
    }
  }
  .sub{
    font-weight: 800;
    font-size:200%;
    color:black;
    text-align: center;
    @media screen and (max-width: 767px) {
      font-size:140%;
    }
  }
  &.-andyou{
    margin-bottom: 40px;
    @media screen and (max-width: 767px) {
       margin-bottom: 20px;
    }
    .inner{
      max-width:600px;
      margin:0 auto;
      @media screen and (max-width: 767px) {
        max-width:80%;
      }
      img{
        display: block;
        width: 100%;
      }
    }
  }
  &.-andyousub{
    margin-bottom: 40px;
    max-width:800px;
    margin:0 auto 30px auto;
    img{
      display: block;
      width: 100%;
    }
  }
}
.heading-line{
  border-top:2px solid;
  border-bottom:2px solid;
  padding:10px 0;
  font-weight: 800;;
  font-size:160%;
  text-align: center;
  margin: 1em 0 ;
  @media screen and (max-width: 767px) {
    font-size:130%;
  }
  & + p{
    font-weight:bold;
    font-size:120%;
  }
}
.image-full{
  img{
    display: block;
    width:100%;
  }
}
.image-andyou{
  display: flex;
  margin: 30px 0 0 0;
  column-gap: 14px;
  img{
    display: block;
    width:100%;
  }
}
/*.image-3column{
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: auto auto;
  gap: 10px;
  width: 100%;
  .item {
    &:nth-child(1){
      grid-column: 1 / 2;
      grid-row: 1 / 3;
      img{
        aspect-ratio: 3 / 5;
      }
    }
    &:nth-child(2){
      grid-column: 2 / 3;
      grid-row: 1 / 2;
      img{
        aspect-ratio: 4 / 3;
      }
    }
    &:nth-child(3){
      grid-column: 2 / 3;
      grid-row: 2 / 3;
      img{
        aspect-ratio: 4 / 3;
      }
    }
    img{
      width:100%;
      height:100%;
      display: block;
      object-fit: cover;
    }
  }
}*/
.image-3column{
  display: flex;
  flex-wrap:wrap;
  margin:30px 0 0 0;
  img{
    display: block;
    width:100%;
    object-fit: cover;
    height:330px;
    @media screen and (max-width: 767px) {
       height:180px;
    }
  }
  > *{
    &:nth-child(1){
      width:40%;
      padding-right:8px;
      img{
         object-position: 50% top;
      }
    }
    &:nth-child(2){
      width:60%;
    }
    &:nth-child(3){
      padding-top:8px;
      width:100%;
    }
  }

}
.card-menu{
  margin:0 0 20px 0;
  @media screen and (max-width: 767px) {
    display: flex;
    flex-direction: column;
  }
  .title{
    text-align: center;
    margin:0 0 20px 0;
    line-height: 1.3;
    @media screen and (max-width: 767px) {
      display: flex;
      align-items: center;
      text-align: left;
    }
    dt{
      margin:0 0 10px 0;
      @media screen and (max-width: 767px) {
        min-width:40px;
        margin:0 10px 0 0;
      }
      img{
        max-width:80px;
        margin:0 auto;
        display: block;
        @media screen and (max-width: 767px) {
          max-width: 50px;
        }
      }
    }
    dd{
      font-weight: 800;
      font-size:180%;
      color:white;
      @media screen and (max-width: 767px) {
        font-size:160%;
      }
    }
  }
  .thumb{
    margin:0 0 16px 0;
    @media screen and (max-width: 767px) {
      margin-bottom: 12px;
    }
    img{
      display: block;
      width:100%;
    }
  }
  .detail{

    .comment{
      dt{
        font-weight: 800;
        text-align: center;
        font-size:120%;
        line-height: 1.3;
        margin:0 0 6px 0;
        @media screen and (max-width: 767px) {
          font-size:110%;
        }
      }
    }
    .summary{
      dt{
        font-size:120%;
        line-height: 1.3;
        font-weight: 800;
        margin:0 0 6px 0;
        @media screen and (max-width: 767px) {
          font-size:100%;
        }
      }
      dd{
        font-size:120%;
        @media screen and (max-width: 767px) {
          font-size:100%;
        }
      }
    }
    .sdgs{
      margin:20px 0 0 0;
      ul{
        display: flex;
        flex-wrap: wrap;
        margin:0 0 18px 0;
        gap:5px;
        justify-content: center;
        > *{
          width:45px;
          @media screen and (max-width: 767px) {
           width:50px;
         }
         img{
          display: block;
          width:100%;
        }
      }
    }
    p{
      text-align: center;
      font-size:120%;
      @media screen and (max-width: 767px) {
        font-size:100%;
      }
    }
  }
}

}
._center{
  text-align: center;
}
.grid-block{
  display: grid;
  gap:10px;
  margin:30px 0 0 0;
  > .item{
    img{
      display: block;
      max-width: 100%;
    }
  }
  &.-cols3{
    grid-template-columns: 1fr 1fr 1fr;
    @media screen and (max-width: 767px) {
      grid-template-columns: 1fr 1fr;
    }
  }
  &.-colsSp1{
    @media screen and (max-width: 767px) {
      grid-template-columns: 1fr ;
    }
  }
  &.-vision{
    @media screen and (max-width: 767px) {
      grid-template-columns: 1fr ;
      row-gap: 0px;
    }
    .summary{
      margin: 0px 0 0 0;
      transform: translateY(-10%);
      position:relative;
      display: flex;
      align-items: center;
      @media screen and (max-width: 767px) {
        display: flex;
        align-items: center;
        flex:1;
        transform: translateY(0%);
        margin-top:0px;
      }
      p{
        font-weight: 800;
        font-size:120%;
        line-height: 1.2;
/*        height:62px;*/
        flex:1;
        padding:0 0 0 16px;
        @media screen and (max-width: 767px) {
          height: auto;
          padding-left:16px;
          font-size:130%;
          
        }
      }
      .number{
        height:110px;
        box-sizing: content-box;
        margin-left:10px;
        transform: translateY(-10%);
        /*position:absolute;
        bottom:0;
        left:5px;*/
        @media screen and (max-width: 767px) {
          height:80px;
          position: static;
          transform: translateY(-18px);
        }
        img{
          display: block;
          height:100%;
        }
      }
    }
  }
  &.-gap20{
    gap:30px;
    @media screen and (max-width: 767px) {
      gap:12px;
    }
  }
  &.-andyou{
    @media screen and (max-width: 767px) {
      grid-template-columns: 1fr ;
      row-gap: 0px;
    }

    .item{
      @media screen and (max-width: 767px) {
        border-bottom:1px solid #999;
        padding-bottom:20px;
        margin-bottom:20px;
        &:last-child{
          border:none;
        }
      }
    }
    .card-menu{
      @media screen and (max-width: 767px) {
        margin-bottom:0;
      }
      .title {
        justify-content: center;
      }
    }

  }
}
.container-partner{
  margin:20px auto 60px auto;
  max-width:700px;
  @media screen and (max-width: 767px) {
    margin-bottom:36px;
  }
  li{
    pdding:20px;
    background:#999;
    .card{
      display:flex;
      align-items:center;
      @media screen and (max-width: 767px) {
        flex-direction: column;
      }
      .mark2{
        max-width:150px;
        transform:scale(1.5);
        margin-right:20px;
        @media screen and (max-width: 767px) {
          margin-right:0px;
          max-width:100px;
        }
        img{
          display: block;
          width:100%;
        }
      }
      dl{
        padding:30px;
        @media screen and (max-width: 767px) {
          padding:40px 20px;
        }
        dt{
          font-weight: 800;
          font-size:150%;
          @media screen and (max-width: 767px) {
            font-size:130%;
            text-align: center;
          }
        }
        dd{
          font-size:116%;
          font-weight: 600;
          @media screen and (max-width: 767px) {
            font-size:100%;
          }
        }
      }
    }
    &.l-1{
      background-color: #3f3e40;
      color:white;
    }
    &.l-2{
      background-color: white;
      color:black;
    }
    &.l-3{
      background-color: #53c5e5;
      color:black;
    }
    &.l-4{
      background-color: #b8915a;
      color:black;
    }
    &.l-5{
      background-color: #e6001b;
      color:white;
    }
  }
}
.accordion{
  .accordion-trigger{
    .-close{
      display: none;
    }
  }
  .accordion-target{
    margin-bottom: 60px;
    display: none;
  }
}

}

._pc{
  display: block;
  @media screen and (max-width: 767px) {
    display: none;
  }
}
._sp{
  display: none;
  @media screen and (max-width: 767px) {
    display: block;
  }
}
.mt-40{
  margin-top:40px;
}
.pt-40{
  padding-top:40px;
}
.p-40{
  padding:40px 0;
}


@keyframes slide {
  0% {
    transform: translateX(0); /* 最初のスライド */
  }
  100% {
    transform: translateX(calc(-50%)); /* 全スライドを左へ移動 */
  }
}

@keyframes shake {
  0% { transform: translateX(0) translateY(0); }
  25% { transform: translateX(-5px) translateY(-5px); }
  50% { transform: translateX(5px) translateY(5px); }
  75% { transform: translateX(-5px) translateY(-5px); }
  100% { transform: translateX(0)  translateY(0); }
}