:root {
  --p: 1366 * 100;
  --s: 375 * 100;
  --hel: 'Helvetica', sans-serif !important;
}

body {
  font-family: "Noto Sans JP", sans-serif !important;
  font-weight: 400;
  background-color: #E7E7E7;
}

.lp-wrapper {
  padding: 125px 0 0;
}
.lp-container {
}


.lp-header {
  border-bottom: 2px solid #707070;
  display: flex;
  justify-content: center;
  margin-bottom: min(calc(44vw / var(--p)), 44px);
}
.lp-year {
  width: min(calc(130.85vw / var(--p)), 130.85px);
  margin-top: min(calc(77.8vw / var(--p)), 77.8px);
  margin-bottom: min(calc(15.3vw / var(--p)), 15.3px);
}
.-sp-br {
  display: none;
}
.-sp {
  display: none;
}

p {
  letter-spacing: var(--ls-pc);  
}

@media screen and (max-width: 768px) {
  p {
    letter-spacing: var(--ls-sp);  
  }
  .-pc {
    display: none;
  }
  .-sp {
    display: block;
  }
  .-sp-br {
    display: inline;
  }
  .-pc-br {
    display: none;
  }
  .lp-header {
    margin-bottom: min(calc(39.1vw / var(--s)), 39.1px);
  }
  .lp-year {
    /* font-size: calc(23vw / var(--s)); */
    width: min(calc(62.7vw / var(--s)), 62.7px);
    margin-bottom: min(calc(12.3vw / var(--s)), 12.3px);
  }
}

.lp-title {
  width: min(calc(919.39vw / var(--p)), 919.39px);
  margin: auto;
  margin-top: max(calc(73.7vw / var(--p)), -73.7px);
  text-align: center;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .lp-title {
    width: calc(339.12vw / var(--s));
    margin: 0 auto;
  }
}

.hero {
  margin-top: calc(22.28vw / var(--p) * -1);
}
@media screen and (max-width: 768px) {
  .hero {
    margin-top: min(calc(10.81vw / var(--p) * -1), -10.81px);
  }
}

.content1 {
  position: relative;
  max-width: 1366px;
  width: 100%;
  margin: auto;
  padding-bottom: min(calc(113vw / var(--p)), 113px);
  margin-top: min(calc(94.4vw / var(--p)), 94.4px);
}
.content1-content {
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  gap: min(calc(31vw / var(--p)), 31px);
}

.content1-main-image {
  width: min(calc(622vw / var(--p)), 622px);
}
.content1-info {

}
.content1-text p {
  font-size: min(calc(15vw / var(--p)), 15px);
  line-height: 2;
}
.content1-text p:first-child {
  margin-bottom: min(calc(19vw / var(--p)), 19px);
  line-height: 1;
}
.content1-text p em {
  font-size: min(calc(18vw / var(--p)), 18px);
  font-weight: bold;
}
.content1-images {
  margin-top: min(calc(39vw / var(--p)), 39px);
}
.content1-images img {
  width: min(calc(709vw / var(--p)), 709px);
}

@media screen and (max-width: 768px) {
  .content1 {
    padding-bottom: min(calc(100vw / var(--s)), 100px);
    margin-top: min(calc(73vw / var(--s)), 73px);
  }
  .content1-content {
    flex-direction: column-reverse;
    align-items: flex-start;
    gap: min(calc(21vw / var(--s)), 21px);
  }
  .content1-main-image {
    width: min(calc(313vw / var(--s)), 313px);
  }
  .content1-info {
    display: flex;
    align-items: flex-end;
    margin-left: min(calc(17vw / var(--s)), 17px);
    gap: min(calc(19vw / var(--s)), 19px);
  }
  .content1-text {
    flex: 1;
  }
  .content1-text p {
    font-size: min(calc(10vw / var(--s)), 10px);
    line-height: 1.9;
  }
  .content1-text p em {
    font-size: min(calc(13vw / var(--s)), 13px);
    line-height: 1.5;
  }
  .content1-images {
    width: min(calc(195vw / var(--s)), 195px);
    margin: 0;
  }
  .content1-images img {
    width: 100%;
  }
  
}

.content2 {
}
.content2-content {
  max-width: min(calc(1366vw / var(--p)), 1366px);
  width: 100%;
  margin: auto;
  position: relative;
}
.content2-item {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  flex-direction: row-reverse;
  gap: min(calc(27.2vw / var(--p)), 27.2px);
  .content2-item-image {
    width: min(calc(497vw / var(--p)), 497px);
  }

  .content2-item-text {
    .-name {
      font-size: min(calc(20vw / var(--p)), 20px);
      font-weight: 400;
      span {
        font-size: min(calc(15vw / var(--p)), 15px);
      }
    }
    a {
      display: block;
      margin-top: min(calc(11.6vw / var(--p)), 11.6px);
      width: min(calc(113vw / var(--p)), 113px);
      transition: .5s opacity;
      &:hover {
        opacity: .6;
      }
      img {
        width: 100%;
        vertical-align: top;
      }
    }
  }
}


@media screen and (max-width: 767px) {
  .content2-item {
    flex-direction: column-reverse;
    width: min(calc(301vw / var(--s)), 301px);
    margin-left: auto;
    margin-right: 0;
    align-items: flex-start;
  }
  .content2-item:first-child .content2-item-image {
    width: 100%;
  }

  .content2-item:first-child .content2-item-text .-name {
    text-align: left;
    font-size: min(calc(13vw / var(--s)), 13px);
  }
  .content2-item:first-child .content2-item-text .-name span {
    font-size: min(calc(13vw / var(--s)), 13px);
  }
  .content2-item:first-child .content2-item-text a {
    margin-top: min(calc(11.6vw / var(--s)), 11.6px);
    margin-left: 0;
    margin-right: auto;
    width: min(calc(68.71vw / var(--s)), 68.71px);
  }

  .content2-item:last-child {
    flex-direction: column-reverse;
    width: min(calc(293vw / var(--s)), 293px);
    padding: 0;
    margin: auto;
  }
  .content2-item:last-child .content2-item-image {
    width: 100%;
  }
  .content2-item:last-child .content2-item-text .-name {
    text-align: left;
    font-size: min(calc(13vw / var(--s)), 13px);
  }
  .content2-item:last-child .content2-item-text .-name span {
    font-size: min(calc(13vw / var(--s)), 13px);
  }
  .content2-item:last-child .content2-item-text a {
    margin-top: min(calc(11.6vw / var(--s)), 11.6px);
    margin-left: 0;
    margin-right: auto;
    width: min(calc(68.71vw / var(--s)), 68.71px);
  }

}

.content3 {
  margin-top: min(calc(140vw / var(--p)), 140px);
  padding-bottom: min(calc(55vw / var(--p)), 55px);
  border-top: 2px solid #707070;
}
.content3-content {
  max-width: 1366px;
  width: 100%;
  margin: auto;
  position: relative;
}
.content3-title {
  text-align: center;
  margin-top: -2px;
  margin-bottom: min(calc(125.3vw / var(--p)), 125.3px);
  img {
    width: min(calc(650.87vw / var(--p)), 650.87px);
  }
}
.content3-items {
  display: flex;
  justify-content: center;
  gap: min(calc(84vw / var(--p)), 84px);
}
.content3-item {
  width: min(calc(378vw / var(--p)), 378px);

  .-title {
    height: min(calc(33.35vw / var(--p)), 33.35px);
    margin-bottom: min(calc(28.6vw / var(--p)), 28.6px);
  }
  .-title-sp {
    display: none;
  }
  .-img {
    margin-bottom: min(calc(34.4vw / var(--p)), 34.4px);
  }
  .-text {
    font-size: min(calc(15vw / var(--p)), 15px);
    font-weight: 500;
  }
}

@media screen and (max-width: 767px) {
  .content3 {
    margin: 0;
    margin-top: min(calc(61vw / var(--s)), 61px);
    padding: 0 0 min(calc(61vw / var(--s)), 61px);
    border-top: 1px solid #707070;
  }
  .content3-content {
    padding: 0;
    flex-direction: column;
    align-items: center;
    gap: 0;
  }
  .content3-title {
    margin-top: -1px;
  }
  .content3-items {
    flex-direction: column;
    gap: min(calc(117vw / var(--s)), 117px);
  }
  .content3-item {
    width: 100%;
  }
  .content3-item {
    .-title {
      display: none;
    }
    .-title-sp {
      display: block;
      height: min(calc(18.19vw / var(--s)), 18.19px);
      margin: auto;
      text-align: center;
      margin-top: min(calc(26.3vw / var(--s)), 26.3px);
      margin-bottom: min(calc(21.5vw / var(--s)), 21.5px);

      img {
        height: 100%;
        vertical-align: top;
      }
    }
    .-img {
      width: min(calc(248vw / var(--s)), 248px);
      margin: auto;
    }
    .-text {
      width: min(calc(283vw / var(--s)), 283px);
      margin: auto;
      font-size: min(calc(10vw / var(--s)), 10px);
      line-height: 1.9;
    }
  }
}

.profile {
  border-top: 2px solid #707070;
  padding-top: min(calc(129.3vw / var(--p)), 129.3px);
}
.profile-content {
  width: min(calc(645vw / var(--p)), 645px);
  margin: auto;

  .-head {
    display: flex;
    gap: min(calc(30.9vw / var(--p)), 30.9px);
    margin-bottom: min(calc(20.8vw / var(--p)), 20.8px);

    .-img {
      width: min(calc(122.11vw / var(--p)), 122.11px);
    }
    .-names {
      width: min(calc(492vw / var(--p)), 492px);
      .-post {
        margin-bottom: min(calc(12.1vw / var(--p)), 12.1px);
        img {
          width: min(calc(126.65vw / var(--p)), 126.65px);
          vertical-align: top;
        }
      }
      .-name {
        font-size: min(calc(24vw / var(--p)), 24px);
        font-weight: bold;
        letter-spacing: .15em;
        margin-bottom: min(calc(16.1vw / var(--p)), 16.1px);
      }
      .-outline {
        font-size: min(calc(11vw / var(--p)), 11px);
        line-height: 1.9;
      }
    }
  }
  .-body {
    border-top: .5px solid black;
    padding-top: min(calc(23.3vw / var(--p)), 23.3px);
    font-size: min(calc(13vw / var(--p)), 13px);
    line-height: 2.23;
  }
}
@media screen and (max-width: 767px) {
  .profile {
    border-top: 0;
    padding: min(calc(61vw / var(--s)), 61px) 0 0;
    border-top: 1px solid #707070;
  }
  .profile-content {
    width: min(calc(341vw / var(--s)), 341px);
    margin: auto;

    .-head {
      flex-direction: column;
      gap: min(calc(38.4vw / var(--s)), 38.4px);
      margin-bottom: 0;
      padding-bottom: min(calc(18.3vw / var(--s)), 18.3px);
      border-bottom: 1px solid #707070;

      .-img {
        width: min(calc(122.11vw / var(--s)), 122.11px);
        margin: auto;
      }

      .-names {
        width: 100%;
        .-post {
          text-align: center;
          line-height: 0;
          margin-bottom: min(calc(11vw / var(--s)), 11px);
          img {
            width: min(calc(108.56vw / var(--s)), 108.56px);
          }
        }
        .-name {
          font-size: min(calc(20vw/ var(--s)), 20px);
          text-align: center;
          margin-bottom: min(calc(28.3vw/ var(--s)), 28.3px);
        }
        .-outline {
          font-size: min(calc(10vw / var(--s)), 10px);
          width: min(calc(288vw / var(--s)), 288px);
          margin: auto;
        }
      }
    }

    .-body {
      border: 0;
      padding-top: min(calc(23.3vw / var(--s)), 23.3px);
      font-size: min(calc(11vw / var(--s)), 11px);
      width: min(calc(288vw / var(--s)), 288px);
      margin: auto;
      line-height: 2.4;
    }
  }

}

.content-footer {
  margin-top: min(calc(124.3vw / var(--p)), 124.3px);
  border-top: 2px solid #707070;
  padding: min(calc(69.2vw / var(--p)), 69.2px) 0;
  display: flex;
  justify-content: center;
}
.content-footer p {
  line-height: 1;
  img {
    width: min(calc(258.11vw / var(--p)), 258.11px);
  }
}

.global-footer {
  margin-top: 0;
}

@media screen and (max-width: 767px) {
  .content-footer {
    border-width: 1px;
    padding: min(calc(19.4vw / var(--s)), 19.4px) 0 min(calc(30vw / var(--s)), 30px);
    margin-top: min(calc(61vw / var(--s)), 61px);
  }
  .content-footer p {
    line-height: 0;

    img {
      width: min(calc(220vw / var(--s)), 220px);
    }
  }
  
}
.with-border {
  border: 1px solid #707070;
}

.itemall1 {
  display: flex;
  justify-content: center;
  padding: min(calc(160vw / var(--p)), 160px) 0 0;
}
.itemall1 img {
  width: min(calc(200vw / var(--p)), 200px);
}
.itemall2 {
  display: flex;
  justify-content: center;
  padding: min(calc(125vw / var(--p)), 125px) 0 0;
}
.itemall2 img {
  width: min(calc(200vw / var(--p)), 200px);
}
.itemall1 a, .itemall2 a {
  transition: .5s opacity;
}
.itemall1 a:hover, .itemall2 a:hover {
  opacity: .5;
}

@media screen and (max-width: 767px) {
  .itemall1 {
    padding: min(calc(61vw / var(--s)), 61px) 0 0;
  }
  .itemall1 img {
    width: min(calc(94vw / var(--s)), 94px);
  }
  .itemall2 {
    padding: min(calc(61.2vw / var(--s)), 61.2px) 0 0;
  }
  .itemall2 img {
    width: min(calc(94vw / var(--s)), 94px);
  }
  
}

.contentnewcolor {
  margin-top: min(calc(214vw / var(--p)), 214px);
  border-top: 2px solid #707070;

  .contentnewcolor-content {
    max-width: 1366px;
    width: 100%;
    margin: auto;
  }

  .contentnewcolor-title {
    text-align: center;
    margin-top: -2px;
    margin-bottom: min(calc(33.4vw / var(--p)), 33.4px);

    img {
      width: min(calc(1219.86vw / var(--p)), 1219.86px);
    }
  }
  .contentnewcolor-sub {
    text-align: center;
    font-size: min(calc(25vw / var(--p)), 25px);
    font-weight: bold;
    margin-bottom: min(calc(177vw / var(--p)), 177px);
  }

  .contentnewcolor-items {
    display: flex;
    flex-direction: column;
    gap: min(calc(177.5vw / var(--p)), 177.5px);

    .-items {
      display: flex;
      flex-direction: column;
      gap: min(calc(37.2vw / var(--p)), 37.2px);

      .-title {
        font-size: min(calc(20vw / var(--p)), 20px);
        text-align: center;
        line-height: min(calc(28vw / var(--p)), 28px);

        span {
          font-size: min(calc(18vw / var(--p)), 18px);
        }
      }

      .-list {
        display: flex;
        gap: min(calc(46vw / var(--p)), 46px);
        justify-content: center;

        .-item {
          width: min(calc(373vw / var(--p)), 373px);

          display: flex;
          flex-direction: column;
          gap: min(calc(25.5vw / var(--p)), 25.5px);

          .-info {
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: min(calc(18vw / var(--p)), 18px);
            justify-content: center;
          }
          .-name {
            font-size: min(calc(20vw / var(--p)), 20px);
            text-align: center;
          }
          .-btn {
            text-align: center;
            transition: .5s opacity;
            width: min(calc(113vw / var(--p)), 113px);
            line-height: 1;

            &:hover {
              opacity: .5;
            }
          }
        }
      }
    }
  }
}


@media screen and (max-width: 767px) {
  .contentnewcolor {
    .contentnewcolor-title {
      img {
        width: min(calc(333.49vw / var(--s)), 333.49px);
      }
    }

    .contentnewcolor-sub {
      font-size: min(calc(12vw / var(--s)), 12px);
      margin-bottom: min(calc(54.3vw / var(--s)), 54.3px);
    }

    .contentnewcolor-items {
      .-items {
        gap: min(calc(20vw / var(--s)), 20px);
        .-title {
          font-size: min(calc(13vw / var(--s)), 13px);
          line-height: min(calc(17vw / var(--s)), 17px);

          span {
            font-size: min(calc(12vw / var(--s)), 12px);
          }
        }

        .-list {
          gap: min(calc(8vw / var(--s)), 8px);

          .-item {
            width: min(calc(167vw / var(--s)), 167px);
            gap: min(calc(20vw / var(--s)), 20px);

            .-info {
              gap: min(calc(7.4vw / var(--s)), 7.4px);

              .-name {
                font-size: min(calc(13vw / var(--s)), 13px);
              }
              .-btn {
                width: min(calc(51.5vw / var(--s)), 51.5px);
              }
            }
          }
        }

      }
    }
  }
}

