@charset "UTF-8";/* 2025.06.03 */

article { position: relative;}
article:not(:nth-child(1)) { margin-top: clamp(7rem, 5.13rem + 5.19vw, 10rem);}
figure{line-height: 1;}

.ttl_main01 { padding-bottom: clamp(7rem, 5.13rem + 5.19vw, 10rem);}
.ttl_01::before,
.ttl_02::before,
.ttl_04 {background-color: var(--text);}
.ttl_04 {
  line-height: 1;
  width: auto;
  padding: 4px;}


.list_01 {
  max-width: 991px;
  margin-left: auto;
  margin-right: auto;
}
.list_01 li {
  border-bottom: dashed 1px var(--gray01);
  padding-bottom: 15px;
  margin-bottom: 30px;}
.list_01 li:nth-child(6) {
  border-bottom: none;
  padding-bottom: 0px;
  margin-bottom: 0px;
}
.list_01 li:nth-child(6) .img_01 {
  padding-bottom: 0;
}
.img_01 {
  padding: 15px 0;
  text-align: center;
  position: relative;
}
@media (min-width: 480px) and (max-width: 767px) {
  .img_01 img {
    max-width: 70%;
  }
}
.img_01 figcaption {
  width: 80%;
  right: 0;
  bottom: -20px;
  text-align: right;
  position: absolute;
  transform: rotate(-10deg);
  filter: invert(1);
  z-index: 2;
}
.img_01 figcaption img {
  filter: drop-shadow(2px 4px 6px #CECECE);
}
.img_04 {
  width: 200px;
  max-width: 50%;
  margin: 20px auto 0;
  display: block;
}
@media (min-width: 768px) {
  .ttl_04 {
    font-size: 2.4rem;
    padding: 7px;
  }
  .list_01 li {
    display: flex;
    justify-content: center;
    padding-bottom: 40px;
    margin-bottom: 40px;
  }
  .list_01 .txtbox {
    max-width: 530px;
    width: 55%;
    padding-right: 60px;
  }
  .list_01 .img_01 {
    max-width: 350px;
    width: 45%;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
  }
}



.list_02 li {
  padding: 20px 4%;
  border-radius: 30px;
  margin-bottom: 30px;
  text-align: center;
}
.list_02-1 {
  background-color: var(--light01);
}
.list_02-2 {
  background-color: #fff;
}
.ttl01 {
  font-size: 19px;
  border-radius: 36px;
  padding: 8px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 20px;
  width: 100%;
  text-align: center;
  font-feature-settings: 'palt';
  background-color: var(--text);
  color: #fff;
}
.list_02 .text_right {
  margin-left: auto;
  margin-right: 0;
  display: block;
}
.list_02-2 {
  background-color: #fff;
}

@media (min-width: 768px) {
  .list_02 {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    column-gap: 30px;
  }
  .list_02 li {
    width: 582px;
    max-width: calc(50% - 15px);
    padding: 30px 15px;
    margin-bottom: 40px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }
  .list_02 li img {
    width: 346px;
  }
}
@media (min-width: 1200px) {
  .list_02 li {
    width: 582px;
    max-width: calc(32.8% - 15px);
    margin-bottom: 0;
  }
}

.box_03 {
  border: solid 10px #eaf2f7;
  margin-bottom: clamp(7rem, 5.13rem + 5.19vw, 10rem);
  padding: 30px 15px;
  display: flex;
  flex-wrap: wrap;
  gap:15px;}
.list_03 {
  width: calc(50% - 7.5px);}
.list_03 li {
  font-size: clamp(1.4rem, 1.026rem + 1.04vw, 2rem);
  font-weight: 500;
  padding-left: 1em;
  position: relative;}
.list_03 li::before {
  background-color: var(--main);
  left: -2px;
  top: 8px;
  width: 12px;
  height: 12px;
  border-radius: 6px;
  display: flex;
  justify-content: center;
  position: absolute;
  content: '';}
@media (max-width: 767px) {
  .list_03:nth-child(1),
  .list_03:nth-child(2) {
    padding-bottom: 10px;
    border-bottom: dashed 1px var(--gray01);
  }
}
@media (min-width: 480px) {
  .list_02 .ttl01 {
    font-size: clamp(1.9rem, 1.339rem + 1.56vw, 2.8rem);
    margin-bottom: 30px;
  }
  .list_02 .f_en {
    font-size:clamp(2.8rem, 2.052rem + 2.08vw, 4rem);
  }
}
@media (min-width: 768px) {
  .box_03 {
    padding-top: 60px;
    padding-bottom: 60px;
    display: flex;
    justify-content: center;
    gap: 30px;
  }
  .box_03 ul {
    width: 230px;
    max-width: 30%;
  }
  .list_03 li {
    padding-top: 3px;
    padding-bottom: 3px;
  }
  .list_03 li::before {
    top: 12px;
    width: 15px;
    height: 15px;
    border-radius: 8px;
  }
}

.img-center { text-align: center;}
.card {position:relative;}
.card-container,
.col-3 .card {
  margin-bottom: 10px;
  display: flex;
  gap: 30px;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;}
.col-3 .card_ttl {
  line-height: 1.4;
  font-feature-settings: 'palt';
  text-align: center;
  letter-spacing: .03em;}
.col-3 .card .img-left {
  width: 40%;
  height: auto;}
.col-3 .card .txt-right {
  width: calc(60% - 15px);}
.col-4 .card-4 {
  width: calc(50% - 7.5px);
  padding-bottom: 25px;}
.card_ttl {
  font-size: clamp(1.6rem, 0.914rem + 1.37vw, 2.2rem);
  padding-top: 15px;
  padding-bottom: 5px;
  margin-bottom: 3px;}
.card p,
.card-container .card-4 p {
  font-size: clamp(1.4rem, 1.171rem + 0.46vw, 1.6rem);}
.card .txt-right.txt1 {
  width: calc(60% - 20px);
  position: absolute;
  right: 0;}
.box_03 .ttl01 {
  font-size: 28px;
  vertical-align: bottom;
}
@media (max-width: 420px) {
  .card-container.box-l {
    margin-bottom: 100px;
  }
}
@media (max-width: 767px) {
  .col-3 .card_ttl {
    padding-top: 0;
  }
}
@media (min-width: 633px) and (max-width: 767px) {
  .col-3 .card_ttl {
    text-align: left;
  }
}
@media (min-width: 480px) {
  .box_03 .ttl01 {
    font-size: clamp(2.8rem, 2.052rem + 2.08vw, 4rem);
    width: 8em;
  }
}
@media (min-width: 768px) {
  .col-3 .card_ttl {
    text-align: center;
  }
  .card-container {
    gap: 30px;
    margin-bottom: clamp(4rem, 1.714rem + 4.57vw, 6rem);
  }
  .card-container:last-child {
    margin-bottom: 0;
  }
  .card-container:last-child .card {
    margin-bottom: 0;
  }
  .col-3 .card,
  .col-4 .card-4 {
    width: calc(32% - 15px);
  }
  .col-3 .card {
    display: block;
  }
  .col-3 .card .img-left,
  .col-3 .card .txt-right {
    width: 100%;
  }
  .card .txt-right.txt1 {
    width: 329%;
    position: relative;
  }
}
@media (min-width: 1024px) {
  .col-4 .card-4 {
    width: calc(24.2% - 15px);
  }
}
@media (min-width: 1200px) {
  .card-container {
    gap: 40px;
  }
  .col-3 .card, .col-4 .card-4 {
    width: calc(32.4% - 20px);
  }
  .box_03 {
    padding: 50px 120px;
  }
  .col-4 .card {
    width: calc(24.3% - 15px);
  }
}















































