:root {
  --top-left-radius: 0%;
  --top-right-radius: 0%;
  --bottom-left-radius: 0%;
  --bottom-right-radius: 0%;
  --window-width-1: 78vw;
  --window-left-1: 11vw;
  --window-left-2: 10vw;
}
p {
  margin: 0;
}
video {
  vertical-align: middle;
}
h2 {
  font-size: 2.34375vw;
  line-height: 1.3;
  color: #000;
  margin: 0;
  padding-bottom: 0.4em;
}
p,
.text {
  font-size: 1.171875vw;
  color: #000;
}
ul,
li {
  list-style: none;
  margin: 0;
  padding: 0;
}
.flex {
  display: flex;
}
.nowrap {
  white-space: nowrap;
}
.content {
  margin: 0 auto;
}
.slim-box {
  width: 100%;
  background-color: #fff;
}
.slim-box-1 {
  width: 100%;
  position: relative;
}
.slim-box-1 img {
  width: 100%;
}
.slim-box-1 h1 {
  visibility: hidden;
  opacity: 0;
  display: none;
}
.slim-box-1 .slim-box-1-1 {
  position: absolute;
  left: 13.203125vw;
  top: 14.8828125vw;
  width: 24.53125vw;
}
.slim-box-2 {
  text-align: center;
  width: 100%;
}
.slim-box-2 .content {
  width: var(--window-width-1);
  padding: 6.640625vw 0 6.25vw;
}
.slim-box-2 .content > p {
  text-align: center;
  padding: 0 5.625vw 4.6875vw;
}
.slim-box-2 .content .flex {
  justify-content: space-around;
}
.slim-box-2 .content .flex img {
  width: 13.359375vw;
}
.slim-box-3 {
  width: 100%;
  position: relative;
  padding: 0 9.765625vw 4.921875vw;
}
.slim-box-3 .content {
  width: 100%;
  background: #f8f7f5;
  border-radius: 3em;
  padding-left: 4.6484375vw;
}
.slim-box-3 .slim-box-3-1 {
  width: 31.0546875vw;
  flex-direction: column;
  padding-top: 5.46875vw;
}
.slim-box-3 .slim-box-3-1 img.slim-box-03-txt {
  width: 22.4609375vw;
  margin-left: 1em;
}
.slim-box-3 .slim-box-3-1 .img-slim-box-03-1 {
  width: 100%;
}
.slim-box-3 .slim-box-3-1 p {
  padding-left: 1em;
  padding-top: 1em;
  font-size: 1.35em;
}
.slim-box-3 .slim-box-3-2 {
  width: 34.1015625vw;
  align-items: center;
  margin-left: 2.734375vw;
}
.slim-box-4 {
  width: 100%;
  position: relative;
  padding: 0 17vw 6.4453125vw;
}
.slim-box-4 img {
  width: 100%;
}
.slim-box-4 h2 {
  padding-bottom: 2em;
  text-align: center;
}
.slim-box-5 {
  width: 100%;
  position: relative;
}
.slim-box-5 .slim-box-5-1 {
  position: absolute;
  left: 60vw;
  top: 14.0625vw;
  width: 35.15625vw;
}
.slim-box-6 {
  width: 100%;
  position: relative;
}
.slim-box-6 img {
  width: 100%;
}
.slim-box-6 .slim-box-6-1 {
  position: absolute;
  width: 100%;
  left: 0;
  top: 4.296875vw;
}
.slim-box-6 .slim-box-6-1 h2 {
  color: #fff;
  text-align: center;
}
.slim-box-6 .slim-box-6-1 p {
  color: #fff;
  text-align: center;
}
.slim-box-7 {
  width: 100%;
  position: relative;
  padding: 6.25vw var(--window-left-1);
}
.slim-box-7 img {
  width: 100%;
  margin-top: 3.046875vw;
}
.slim-box-7 .slim-box-7-1 h2,
.slim-box-7 .slim-box-7-1 p {
  color: #010000;
  text-align: center;
}
.slim-box-8 {
  position: relative;
  width: 100%;
}
.slim-box-8 .slim-box-8-1 {
  position: absolute;
  left: 11.5234375vw;
  top: 16.796875vw;
}
.slim-box-8 .slim-box-8-1 h2 {
  color: #000;
  text-align: left;
}
.slim-box-8 .slim-box-8-1 p {
  color: #000;
  text-align: left;
}
.slim-box-9 {
  width: 100%;
  position: relative;
}
.slim-box-9 img {
  width: 100%;
}
.slim-box-9 .slim-box-9-1 {
  position: absolute;
  right: var(--window-left-1);
  width: 31.25vw;
  top: 9.765625vw;
}
.slim-box-9 .slim-box-9-1 h2 {
  color: #fff;
}
.slim-box-9 .slim-box-9-1 p {
  color: #fff;
}
.slim-box-9 .slim-box-9-1 ul {
  padding-top: 2em;
}
.slim-box-9 .slim-box-9-1 ul li {
  color: #fff;
  line-height: 1.7;
  position: relative;
  font-size: 0.93em;
}
.slim-box-9 .slim-box-9-1 ul li:before {
  content: '';
  display: inline-block;
  margin-right: 1em;
  width: 0.6em;
  height: 0.6em;
  border-radius: 50%;
  background: linear-gradient(0deg, #9afcc2, #f5f588);
}
.slim-box-10 {
  width: 100%;
  padding: 4.6875vw var(--window-left-1) 5.859375vw;
}
.slim-box-10 h2,
.slim-box-10 p {
  color: #000;
  text-align: center;
}
.slim-box-10 .slim-box-10-2 {
  width: 100%;
  justify-content: space-between;
  align-items: center;
  padding-top: 4.296875vw;
}
.slim-box-10 .slim-box-10-2 > img {
  width: 3em;
  margin-bottom: 3%;
}
.slim-box-10 .slim-box-10-2 div {
  width: 46%;
}
.slim-box-10 .slim-box-10-2 div img {
  width: 100%;
  margin-bottom: 1em;
}
.slim-box-11 {
  width: 100%;
  position: relative;
  background: url(slim-box-11-bg.webp) no-repeat center;
  background-size: cover;
  padding: 4.296875vw 0 5.859375vw calc(var(--window-left-1) * 1.7);
}
.slim-box-11 h2 {
  position: absolute;
  right: var(--window-left-1);
  top: 5.859375vw;
}
.slim-box-11 img {
  width: 53.203125vw;
}
.slim-box-12 {
  width: 100%;
  background-color: #f7f7f7;
  position: relative;
  padding: 6.25vw var(--window-left-1) 7.8125vw;
  text-align: center;
}
.slim-box-12 h2 {
  padding-bottom: 1.3em;
}
.slim-box-12 .content {
  width: 100%;
}
.slim-box-12 .flex {
  justify-content: space-between;
}
.slim-box-12 .slim-box-12-1 {
  position: relative;
  width: 11.484375vw;
}
.slim-box-12 .slim-box-12-1 img {
  width: 100%;
}
.slim-box-12 .slim-box-12-1 p {
  position: absolute;
  width: 100%;
  bottom: 1.3em;
  left: 0;
  text-align: center;
}
.slim-box-12 .slim-box-12-1 p span {
  font-size: 0.8em;
  color: #333333;
}
.slim-box-12 .slim-box-12-1:nth-child(5) p span {
  color: #adadad;
}
.slim-box-13 {
  width: 100%;
  position: relative;
  background-color: #f7f7f7;
  padding-bottom: 5.6640625vw;
}
.slim-box-13 h2 {
  text-align: center;
  color: #191919;
  padding-bottom: 2.9296875vw;
}
.slim-box-13 .content {
  width: var(--window-width-1);
  position: relative;
}
.slim-box-13 .content .slim-box-13-1 {
  padding-bottom: 1vw;
  justify-content: space-between;
}
.slim-box-13 .content .slim-box-13-1 .slim-box-13-1-L {
  width: calc(25% - 0.5vw);
  background-color: #fff;
  text-align: center;
  border-radius: 1em;
}
.slim-box-13 .content .slim-box-13-1 .slim-box-13-1-L img {
  width: 6.8359375vw;
  margin: 2vw auto;
}
.slim-box-13 .content .slim-box-13-1 .slim-box-13-1-R {
  width: calc(75% - 0.5vw);
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
}
.slim-box-13 .content .slim-box-13-1 .slim-box-13-1-R-1 {
  width: calc(33.3% - 0.5vw);
  background-color: #fff;
  text-align: center;
  height: calc(50% - 0.5vw);
  display: flex;
  justify-content: center;
  flex-direction: column;
  border-radius: 1em;
}
.slim-box-13 .content .slim-box-13-1 .slim-box-13-1-R-1 img {
  width: 3.59375vw;
  margin: 0 auto 0.5vw;
}
.slim-box-13 .content .slim-box-13-1 .slim-box-13-1-R-1 p span:first-child {
  font-size: 0.87em;
  color: #858585;
}
.slim-box-13 .content .slim-box-13-1 .slim-box-13-1-R-1 p span:last-child {
  font-size: 1.13em;
  color: #191919;
  font-weight: bold;
}
.slim-box-13 .content>p span{
    font-size: 0.87em;
    color: #858585;
}
.slim-box-14 {
  width: 100%;
  position: relative;
}
.slim-box-14 img {
  width: 100%;
}
.slim-box-14 .slim-box-14-1 {
  position: absolute;
  left: 24.0625vw;
  width: 56.640625vw;
  top: 28.75vw;
  text-align: left;
  display: flex;
}
.slim-box-14 .slim-box-14-1 p {
  color: #272727;
  line-height: 1;
}
.slim-box-14 .slim-box-14-1 p b {
  color: #000000;
  font-size: 0.8em;
  display: block;
  padding-bottom: 0.4em;
  line-height: 1.3;
}
.slim-box-14 .slim-box-14-1 p span {
  font-size: 0.8em;
}
.slim-box-14 .slim-box-14-1 .p1 {
  width: 30%;
}
.slim-box-14 .slim-box-14-1 .p2 {
  width: 27%;
}
.slim-box-14 .slim-box-14-1 .p3 {
  width: 21%;
}
@media (max-width: 767px) {
  :root {
    --window-width-1: 85%;
    --window-left-1: 7.5%;
    --window-left-2: 5%;
  }
  h2 {
    font-size: 5.98958333vw;
  }
  p,
  .text {
    font-size: 3.90625vw;
  }
  .slim-box-1 .slim-box-1-1 {
    left: 13.80208333vw;
    width: 73.828125vw;
    top: 5.078125vw;
  }
  .slim-box-1 .slim-box-1-1 img {
    width: 100%;
  }
  .slim-box-2 {
    padding-top: 10vw;
    background-color: #fff;
  }
  .slim-box-2 .content {
    display: flex;
    flex-direction: column-reverse;
  }
  .slim-box-2 .content .flex {
    flex-wrap: wrap;
    justify-content: space-between;
    padding-bottom: 1.5em;
  }
  .slim-box-2 .content .flex img {
    width: 47%;
    margin-bottom: 5.46875vw;
  }
  .slim-box-3 {
    padding: 0 var(--window-left-1) 10vw;
  }
  .slim-box-3 .content {
    flex-direction: column;
    padding: 2em 0 0;
    overflow: hidden;
  }
  .slim-box-3 .slim-box-3-1 {
    width: 100%;
    padding: 0 5%;
  }
  .slim-box-3 .slim-box-3-1 img.slim-box-03-txt {
    width: 100%;
    margin: 0 auto;
  }
  .slim-box-3 .slim-box-3-1 p {
    padding-left: 0;
    padding-top: 1.5em;
    font-size: 1em;
    text-align: center;
    padding-bottom: 1.5em;
  }
  .slim-box-3 .slim-box-3-2 {
    width: 92%;
    margin: 0 auto 2em;
  }
  .slim-box-3 .slim-box-3-2 img {
    width: 100%;
  }
  .slim-box-4 {
    padding: 0 0 13vw;
  }
  .slim-box-4 h2 {
    padding-bottom: 1.5em;
  }
  .slim-box-4 .slim-box-4-1 {
    position: relative;
    top: auto;
    padding: 5vw var(--window-left-2) 1em;
  }
  .slim-box-5 {
    padding: 0;
  }
  .slim-box-5 .slim-box-5-1 {
    left: 0;
    top: 12vw;
    width: 100%;
    padding: 0 1%;
  }
  .slim-box-5 .slim-box-5-1 h2,
  .slim-box-5 .slim-box-5-1 p {
    text-align: center;
  }
  .slim-box-6 .slim-box-6-1 {
    top: 12vw;
  }
  .slim-box-7 {
    padding: 0;
  }
  .slim-box-7 img {
    margin: 0;
  }
  .slim-box-7 .slim-box-7-1 {
    position: absolute;
    top: 12vw;
    left: 0;
  }
  .slim-box-7 .slim-box-7-1 h2,
  .slim-box-7 .slim-box-7-1 p {
    color: #fff;
  }
  .slim-box-8 {
    padding: 0;
  }
  .slim-box-8 .slim-box-8-1 {
    padding: 0 var(--window-left-1);
    left: 0;
    width: 100%;
  }
  .slim-box-8 .slim-box-8-1 h2,
  .slim-box-8 .slim-box-8-1 p {
    text-align: center;
  }
  .slim-box-8 .slim-box-8-1 .slim-box-8-2 .slim-box-8-2-1 img {
    width: 25vw;
  }
  .slim-box-9 .slim-box-9-1 {
    position: absolute;
    right: var(--window-left-1);
    width: var(--window-width-1);
    top: 14vw;
    text-align: center;
  }
  .slim-box-9 .slim-box-9-1 ul {
    display: flex;
    flex-wrap: wrap;
  }
  .slim-box-9 .slim-box-9-1 ul li {
    width: 50%;
    text-align: left;
    padding-left: 5%;
  }
  .slim-box-10 {
    padding: 12vw var(--window-left-1) 12vw;
  }
  .slim-box-10 .slim-box-10-2 {
    flex-direction: column;
  }
  .slim-box-10 .slim-box-10-2 div {
    width: 100%;
  }
  .slim-box-10 .slim-box-10-2 > img {
    transform: rotate(90deg);
    margin-bottom: 8%;
    margin-top: 6%;
  }
  .slim-box-11 {
    padding: 10vw 0;
  }
  .slim-box-11 h2 {
    position: relative;
    right: auto;
    top: auto;
    text-align: center;
    padding-bottom: 1em;
  }
  .slim-box-11 img {
    width: 100%;
  }
  .slim-box-12 {
    background-color: #fff;
    padding-top: 10vw;
  }
  .slim-box-12 .flex {
    flex-wrap: wrap;
    justify-content: center;
  }
  .slim-box-12 .flex .slim-box-12-1 {
    width: 31.333%;
    padding-bottom: 1.5em;
  }
  .slim-box-12 .flex .slim-box-12-1 p {
    bottom: 2em;
  }
  .slim-box-12 .flex .slim-box-12-1:nth-child(1) {
    margin-right: 1%;
  }
  .slim-box-12 .flex .slim-box-12-1:nth-child(2) {
    margin-left: 0.5%;
    margin-right: 0.5%;
  }
  .slim-box-12 .flex .slim-box-12-1:nth-child(3) {
    margin-left: 1%;
  }
  .slim-box-12 .flex .slim-box-12-1:nth-child(4) {
    margin-right: 1%;
  }
  .slim-box-12 .flex .slim-box-12-1:nth-child(5) {
    margin-left: 1%;
  }
  .slim-box-13 {
    background-color: #f1f1f1;
    padding: 8vw 5% 6vw;
  }
  .slim-box-13 h2 {
    padding-bottom: 1em;
  }
  .slim-box-13 .content {
    width: 100%;
    padding: 0;
  }
  .slim-box-13 .content .slim-box-13-1 .slim-box-13-1-L {
    display: flex;
    align-items: center;
    width: calc(30% - 1vw);
  }
  .slim-box-13 .content .slim-box-13-1 .slim-box-13-1-L img {
    width: 70%;
    margin: 10vw auto;
  }
  .slim-box-13 .content .slim-box-13-1 .slim-box-13-1-R {
    display: flex;
    width: calc(70% - 1vw);
  }
  .slim-box-13 .content .slim-box-13-1 .slim-box-13-1-R .slim-box-13-1-R-1 {
    height: calc(33.3% - 1vw);
    width: calc(50% - 1vw);
  }
  .slim-box-13 .content .slim-box-13-1 .slim-box-13-1-R-1 img {
    width: 2.5em;
  }
  .slim-box-13 .content .slim-box-13-1 .slim-box-13-1-R-1 p span:first-child {
    font-size: 0.7em;
  }
  .slim-box-13 .content .slim-box-13-1 .slim-box-13-1-R-1 p span:last-child {
    font-size: 0.8em;
  }
  .slim-box-14 > h2 {
    position: absolute;
    width: 100%;
    top: 10vw;
    left: 0;
    text-align: center;
  }
  .slim-box-14 .slim-box-14-1 {
    left: 0;
    top: 71%;
    width: 100%;
    padding-left: 8%;
  }
  .slim-box-14 .slim-box-14-1 p {
    font-size: 2.60416667vw;
  }
  .slim-box-14 .slim-box-14-1 p b,
  .slim-box-14 .slim-box-14-1 p span {
    font-size: 1;
  }
  .slim-box-14 .slim-box-14-1 p b {
    padding-bottom: 0.8em;
  }
  .slim-box-14 .slim-box-14-1 .p1 {
    width: 28%;
  }
  .slim-box-14 .slim-box-14-1 .p2 {
    width: 23%;
  }
  .slim-box-14 .slim-box-14-1 .p3 {
    width: 26%;
  }
}
