/*sub*/

.sub {
  overflow: hidden;
}
.subtop_title {
  margin-top: 200px;
  text-align: center;
  font-size: 60px;
  color: #333;
}
.mini_inner {
  max-width: 1440px;
  margin: 0 auto;
}
.dot_p {
  font-size: 20px;
  color: #333;
  position: relative;
  padding-left: 10px;
  margin-bottom: 25px;
}
.dot_p::before {
  position: absolute;
  content: '';
  width: 3px;
  height: 3px;
  background: #333;
  top: 13px;
  left: 0;
}
/******서브탑상단******/
.subtop {
  background-repeat: no-repeat;
  background-position: center;
  height: 500px;
  text-align: center;
  color: #fff;
  position: relative;
  animation: bg-zoom 5s 1 normal;
}
@keyframes bg-zoom {
  0% {
    background-size: 120%;
  }
  100% {
    background-size: 102%;
  }
}
.subtop h2 {
  font-size: 60px;
  font-weight: 700;
  position: absolute;
  text-align: center;
  top: 180px;
  width: 100%;
}
.sub .subtop01 {
  background-image: url(/img/subtop01.jpg);
}
.sub .subtop02 {
  background-image: url(/img/subtop02.jpg);
}
.sub .subtop03 {
  background-image: url(/img/subtop03.jpg);
}
.sub .subtop04 {
  background-image: url(/img/subtop04.jpg);
}
.sub .subtop05 {
  background-image: url(/img/subtop05.jpg);
}
.sub .subtop06 {
  background-image: url(/img/subtop06.jpg);
}
/*******서브메뉴*********/
.submenu {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  border-bottom: 1px solid #ddd;
  height: 80px;
  gap: 40px;
}
.submenu a {
  font-weight: 400;
  color: #666;
  font-size: 20px;
  position: relative;
  display: block;
  height: 81px;
  line-height: 80px;
}
.submenu a.active {
  color: var(--main-color);
  border-bottom: 3px solid var(--main-color);
  font-weight: 600;
}
/* 서브공통액자구조 */
.sub_bg {
  background: #f4f4f4;
  padding: 0 70px;
}
.sub_wrap {
  background: #fff;
  border-radius: 5px;
  transform: translateY(-100px);
  box-shadow: 0 6px 30px rgba(0, 0, 0, 0.04);
}
.sub .mini_inner {
  padding: 80px 0;
}
.subtitle {
  text-align: center;
  margin-bottom: 70px;
}
.subtitle h4 {
  color: #e96532;
  font-size: 13px;
  letter-spacing: 5px;
}
.subtitle h2 {
  font-size: 60px;
  margin: 8px 0 15px;
  line-height: 1em;
}
.subtitle .line {
  width: 50px;
  margin: 25px auto;
  height: 1px;
  background: #666;
}
.subtitle p {
  color: #666;
  font-size: 18px;
}
.mini_title {
  font-size: 40px;
  margin-bottom: 30px;
}
.bdbox {
  border-radius: 20px;
  border: 10px solid #f4f4f4;
  text-align: center;
  margin: 50px 0;
}
/****이사장 인사말******/
.sub_about {
  display: flex;
  justify-content: space-between;
  align-items: end;
}
.sub_about .txt h2 {
  font-size: 40px;
  color: #333;
}
.sub_about .txt h2 span {
  color: var(--main-color);
}
.sub_about .txt .line {
  width: 50px;
  height: 1px;
  background: #666;
  margin: 25px 0;
}
.sub_about .txt p {
  margin-bottom: 40px;
  font-size: 18px;
}
.sub_about .ceo {
  text-align: right;
}
.sub_about .ceo > img {
  border-radius: 15px;
}
.sub_about .ceo h3 {
  font-size: 20px;
  margin-top: 15px;
}
/* 미션 */
.sub_miss .sub_cont {
  background: url(/img/missbg.jpg) no-repeat center bottom / 100% fixed;
}
.sub_miss .title {
  font-family: var(--deco);
  font-size: 100px;
  color: var(--main-color);
  font-weight: 400;
  opacity: 0.5;
  margin-bottom: 25px;
}
.sub_miss .item {
  margin-bottom: 100px;
}
.sub_miss01 h3 {
  font-size: 60px;
  text-align: center;
  margin-bottom: 25px;
}
.sub_miss01 p {
  font-size: 18px;
}
.sub_miss01 .bg {
  background: url(/img/sub_miss01bg.jpg) no-repeat center / cover;
  text-align: center;
  color: #fff;
  padding: 100px 0;
  border-radius: 5px;
}
.sub_miss02 ul {
  display: flex;
  justify-content: space-between;
}
.sub_miss02 ul li {
  width: 32%;
  border: 1px solid #ddd;
  padding: 30px;
  text-align: center;
  border-radius: 10px 10px 0 0;
}
.sub_miss02 ul li img {
  border-radius: 10px;
}
.sub_miss02 ul li p {
  font-size: 20px;
  color: #666;
  margin-top: 15px;
}
.sub_miss03 ul {
  display: flex;
  justify-content: center;
  gap: 100px;
}
.sub_miss03 ul li div {
  background: #fff;
  border-radius: 50%;
  box-shadow: 10px 10px 15px rgba(0, 0, 0, 0.05);
  width: 300px;
  height: 300px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.sub_miss03 ul li h3 {
  background: var(--main-color);
  border-radius: 10px;
  padding: 10px 0;
  text-align: center;
  color: #fff;
  font-size: 24px;
  margin: 15px 0;
}
.sub_miss03 ul li p {
  font-size: 20px;
  color: #666;
  text-align: center;
}
/*****임원진소개******/
/* 탭 버튼 스타일 */
.tab-buttons {
  display: flex;
  justify-content: center;
  gap: 30px;
  margin-bottom: 15px;
}
.tab-button {
  padding: 10px 40px;
  cursor: pointer;
  background-color: #f4f4f4;
  transition: background-color 0.3s;
  font-size: 24px;
  border-radius: 5px;
}
.tab-button.active {
  background-color: var(--main-color);
  font-weight: bold;
  color: #fff;
}
/* 탭 콘텐츠 스타일 */
.tab-content {
  display: none; /* 기본적으로 모든 탭 콘텐츠는 숨김 */
  padding: 50px 0;
}
.tab-content.active {
  display: block; /* active 클래스가 있으면 보임 */
}
.sub_team01 ul {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.sub_team01 ul li {
  width: 48%;
  border: 1px solid #ddd;
  padding: 50px;
  border-radius: 15px;
  margin-bottom: 50px;
  background: url(/img/team.jpg) no-repeat center / cover;
}
.sub_team01 ul li:last-of-type {
  width: 100%;
  background: #fff;
  display: flex;
  justify-content: space-between;
}
.sub_team01 ul li:last-of-type p {
  font-size: 18px;
  width: 48%;
}
.sub_team01 .team_photo {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  gap: 50px;
  margin-bottom: 30px;
}
.sub_team01 .team_photo .txt {
  width: 100%;
}
.sub_team01 .team_photo h3 {
  color: #fff;
  border-radius: 4px;
  display: flex;
  justify-content: center;
  align-items: end;
  gap: 5px;
  width: 100%;
  font-size: 30px;
  padding: 13px 0;
  background: #666;
  line-height: 1em;
}
.sub_team01 .team_photo h3 small {
  font-weight: 400;
  font-size: 16px;
  line-height: 1em;
}
.sub_team01 .team_photo .txt span {
  display: block;
  padding: 10px 0;
  border-bottom: 1px solid #ddd;
  border-top: 1px solid #ddd;
  font-size: 20px;
  margin: 10px 0;
  background: #f4f4f4;
}
.team_his h4 {
  font-weight: 500;
  color: #000;
  font-size: 20px;
  margin-bottom: 15px;
  line-height: 1.8em;
  color: var(--main-color);
}
.sub_team01 ul li p {
  position: relative;
  padding-left: 6px;
  font-size: 18px;
  line-height: 1.8em;
  color: #333;
}
.team_his span {
  padding-left: 15px;
  color: #666;
  font-size: 16px;
  line-height: 1.8;
  display: block;
}
.team_table {
  width: 100%;
  border-top: none;
  border-color: #ddd;
  border-radius: 15px;
  overflow: hidden;
}
.team_table tr:first-of-type {
  border-top: 3px solid var(--main-color);
}
.team_table td {
  font-size: 20px;
  text-align: center;
  padding: 20px 0;
}
.team_table tr td:first-of-type {
  background: #f4f4f4;
  font-weight: 700;
}
.team_table tr td:nth-of-type(3) {
  font-weight: 700;
}
.team_table tr td:nth-of-type(4) {
  background: #5eb1cf15;
}
.team_call {
  display: flex;
  align-items: center;
  border: 1px solid #ddd;
  border-radius: 15px;
  margin-top: 10px;
}
.team_call p {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 25px 0;
  font-size: 20px;
}
.team_call p:first-of-type {
  width: 20%;
  background: #f4f4f4;
  font-size: 24px;
  border-right: 1px solid #ddd;
}
.team_call p:first-of-type i {
  padding-right: 5px;
}
.team_call p:last-of-type {
  width: 80%;
}
.team_call p span {
  display: inline-block;
  margin: 0 25px;
}
.sub_partner01 {
  text-align: center;
}
.sub_partner01 img {
  width: 1000px;
}
.sub_partner02 {
  margin-top: 70px;
}
.sub_partner02 h2 {
  background: linear-gradient(to top, var(--main-color), skyblue);
  text-align: center;
  color: #fff;
  padding: 15px;
  font-size: 34px;
  border-radius: 10px;
  margin-bottom: 25px;
}
.sub_partner02 .item {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.sub_partner02 .item a {
  width: 16%;
  border: 1px solid #69b8d3;
  border-radius: 8px;
  padding: 15px 0; 
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  box-shadow: 5px 10px 15px #69b8d350;
  background: linear-gradient(to bottom, #69b8d3, #69b8d335);
  margin-bottom: 25px;
  transition: all .3s;
}
.sub_partner02 .item h3 {
  color: #222;
  font-size: 18px;
}
.sub_partner02 .item small {
  font-size: 14px;
  display: block;
}
.sub_partner02 .item a:hover {
  transform: translateY(-10px);
}
/* 연혁 */
.sub_history01 {
  position: relative;
  display: flex;
  justify-content: center;
  width: 100%;
  flex-direction: column;
}
.sub_history01 .line {
  position: absolute;
  background: #ddd;
  width: 1px;
  height: 100%;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
.sub_history01 .item {
  display: flex;
  width: 100%;
  flex-direction: column;
}
.his_right {
  align-items: start;
  text-align: left;
  padding-left: 100px;
  justify-content: end;
  position: relative;
  right: -720px;
}
.his_left {
  align-items: end;
  text-align: right;
  padding-right: 100px;
  position: relative;
  left: -720px;
}
.his_left .dot {
  position: absolute;
  width: 16px;
  right: 0;
  height: 16px;
  background: #fff;
  border: 3px solid var(--main-color);
  border-radius: 50%;
  bottom: 30px;
  right: -108px;
}
.his_right .dot {
  position: absolute;
  width: 16px;
  height: 16px;
  background: #fff;
  border: 3px solid var(--main-color);
  border-radius: 50%;
  bottom: 30px;
  left: -108px;
}
.his_left .dot::before {
  position: absolute;
  content: '';
  bottom: 4px;
  width: 80px;
  height: 1px;
  border: 1px dashed #666;
  right: 20px;
}
.his_right .dot::before {
  position: absolute;
  content: '';
  bottom: 4px;
  width: 80px;
  height: 1px;
  border: 1px dashed #666;
  left: 20px;
}
.sub_history01 .item h2 {
  font-weight: 300;
  font-size: 70px;
  position: relative;
  padding-top: 100px;
}
.sub_history01 .item ul li {
  display: flex;
  margin-bottom: 20px;
}
.his_left ul li {
  justify-content: end;
}
.sub_history01 .item ul li {
  font-size: 18px;
}
.sub_history01 .item ul li strong {
  color: var(--main-color);
  padding: 0 20px;
}
/* 오시는길 */
.sub_location01 .cont {
  display: none;
}
.sub_location01 .root_daum_roughmap {
  width: 100%;
  height: 600px !important; 
}
.sub_location01 .root_daum_roughmap .wrap_map {
  height: 550px;
}
.sub_location01 .item li {
  border-top: 1px solid #ddd;
  padding: 30px 0;
  display: flex;
  justify-content: start;
  align-items: center;
}
.sub_location01 .item li p {
  margin: 15px 0;
}
.sub_location01 .item li:first-of-type {
  border-top: none;
}
.sub_location01 .item li h3 {
  font-size: 24px;
  margin-bottom: 15px;
}
.sub_location01 .item li i {
  color: var(--main-color);
  font-size: 60px;
  padding-right: 50px;
}
.sub_location01 .item li strong {
  padding: 10px 30px;
  color: #fff;
  text-align: center;
  display: inline-block;
  border-radius: 10px;
}
.sub_location01 .item li b span {
  display: flex;
  justify-content: start;
  align-items: center;
}
.sub_location01 .item li b span p {
  padding-left: 15px;
  font-weight: 500;
}
.sub_location01 .item li strong.orange {
  background: #ff7d01;
}
.sub_location01 .item li strong.blue {
  background: #395cb4;
}
.sub_location01 .item li strong.green {
  background: #50a232;  
}
/* "당나행" 나눔국민운동  */
.sub_dnh .item {
  margin-bottom: 70px;
}
.sub_dnh .item h2 {
  font-size: 40px;
  margin-bottom: 30px;
}
.sub_dnh01 ul {
  display: flex;
  justify-content: space-between;
}
.sub_dnh01 ul li {
  border: 1px solid var(--main-color);
  border-radius: 10px;
  padding: 100px 20px;
  text-align: center;
  width: 18%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  position: relative;
}
.sub_dnh01 ul li h3 {
  color: var(--main-color);
  left: 50%;
  top: 50%;
  position: absolute;
  transform: translate(-50%, -50%);
  font-size: 120px;
  z-index: -1;
  opacity: 0.3;
}
.sub_dnh01 ul li p {
  font-size: 20px;
}
.sub_dnh01 ul li:nth-of-type(odd) h3 {
  color: #666;
}
.sub_dnh01_cont {
  display: flex;
  justify-content: center;
  border: 1px solid #ddd;
  border-radius: 20px;
  overflow: hidden;
  margin-top: 50px;
}
.sub_dnh01_cont div {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  flex-direction: column;
  width: 50%;
}
.sub_dnh01_cont .bg {
  background: url(/img/sub_dnh01bg.jpg) no-repeat center / cover;
  color: #fff;
  padding: 100px 0;
  font-size: 24px;
}
.sub_dnh01_cont .txt h3 {
  font-size: 30px;
  margin-bottom: 20px;
}
.sub_dnh01_cont .txt p {
  font-size: 24px;
  color: var(--main-color);
  padding: 10px 0;
  
}
.sub_dnh02 .box {
  border-radius: 20px;
  border: 10px solid #f4f4f4;
  display: flex;
}
.sub_dnh02 .box .txt {
  padding: 70px;
  font-size: 22px;
  width: 50%;
}
.sub_dnh02 .box div:first-of-type {
  border-right: 1px dashed #ddd;
}
.sub_dnh02 .box .txt p {
  margin: 40px 0;
}
/* 행복,교육,컨설팅 사업 */
.sub_happy .item {
  margin-bottom: 70px;
}
.sub_happy .item > h2 {
  font-size: 40px;
  margin-bottom: 30px;
} 
.sub_happy .item > h2 small {
  font-size: 20px;
  font-weight: 500;
}
.sub_happy01 ul {
  display: flex;
  justify-content: space-between;
  margin-bottom: 50px;
}
.sub_happy01 ul li {
  width: 18%;
  text-align: center;
}
.sub_happy01 ul li div {
  border-radius: 50%;
  background: var(--main-color);
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100px;
  height: 100px;
  margin: 0 auto;
}
.sub_happy01 ul li div img {
  width: 50px;
}
.sub_happy01 ul li h3 {
  color: var(--main-color);
  font-size: 13px;
}
.sub_happy01 ul li:nth-of-type(even) div {
  background: #aaa;
  
}
.sub_happy01 ul li:nth-of-type(even) h3 {
  color: #aaa;
}
.sub_happy01 ul li:nth-of-type(3) div {
  background: #43435d;
}
.sub_happy01 ul li:nth-of-type(3) h3 {
  color: #43435d;
}
.sub_happy01 ul li p {
  border-top: 1px solid #ddd;
  padding-top: 20px;
  margin-top: 30px;
  font-size: 16px;
}
.sub_happy01 .arrow_down {
  text-align: center;
}
.sub_happy01 .arrow_down img {
  width: 100px;
}
.sub_happy01 .box {
  display: flex;
  border-radius: 20px;
  padding: 50px;
  border: 10px solid #ddd;
  margin-top: 50px;
}
.sub_happy01 .box img {
  border-radius: 15px;
  width: 500px;
}
.sub_happy01 .box .txt  {
  padding-left: 100px;
  display: flex;
  justify-content: center;
  flex-direction: column;
}
.sub_happy01 .box .txt h2 {
  margin-bottom: 15px;
  font-size: 40px;
}
.sub_happy01 .box .txt p {
  font-size: 24px;
}
.sub_happy02 .box {
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 20px;
  overflow: hidden;
}
.sub_happy02 .box div {
  width: 50%;
  background: #666;
  padding: 50px 0;
  color: #fff;
  text-align: center;
}
.sub_happy02 .box div h2 {
  font-size: 40px;
}
.sub_happy02 .box div p {
  font-size: 20px;
}
.sub_happy02 .box div:last-of-type {
  background: var(--main-color);
}
.sub_happy03 .box h2 {
  font-size: 40px;
  margin: 20px 0;
}
.sub_happy03 .box h2 small {
  font-size: 20px;
  font-weight: 500;
  padding-left: 15px;
}
.sub_happy03 .box ul {
  display: flex;
  gap: 2%;
  justify-content: start;
  flex-wrap: wrap;
}
.sub_happy03 .box ul li {
  width: 23.5%;
  padding: 30px 0;
  border: 1px solid #ddd;
  border-radius: 10px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 20px;
}
.sub_happy03 .txt {
  display: flex;
  align-items: center;
  border: 1px solid #ddd;
  border-radius: 15px;
}
.sub_happy03 .txt div {
  text-align: center;
  width: 50%;
  padding: 100px 50px;
}
.sub_happy03 .txt div:first-of-type {
  border-right: 1px dashed #ddd;
}
.sub_happy03 .txt div h3 {
  background: var(--main-color);
  color: #fff;
  border-radius: 10px;
  padding: 5px 30px;
  margin-bottom: 20px;
  display: inline-block;
}
.sub_happy03 .txt div p {
  font-size: 20px;
}
.sub_happy04 .box,
.sub_happy05 .box {
  border: 10px solid #ddd;
  border-radius: 20px;
  text-align: center;
  padding: 50px 0;
  margin: 15px 0;
}
.sub_happy04 p {
  font-size: 20px;
  margin-bottom: 15px;
}
.sub_happy06 .box img {
  width: 100%;
}
.sub_happy06 > h2 {
  font-size: 40px;
  margin: 20px 0;
}
.sub_happy06 ul {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.sub_happy06 ul li {
  width: 19%;
  text-align: center;
  border: 1px solid #ddd;
  border-radius: 8px;
  overflow: hidden;
  margin-bottom: 25px;
}
.sub_happy06 ul li h3 {
  color: #fff;
  background: #666;
  padding: 10px 0;
}
.sub_happy06 ul li p {
  padding: 20px;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 70%;
}
.sub_happy06 ul li:nth-of-type(even) h3 {
  background: var(--main-color);
}
/* 봉사활동 */
.sub_bongsa01 h2 {
  font-size: 40px;
  margin-bottom: 20px;
}
.sub_bongsa01 .txt p {
  font-size: 20px;
  color: #666;
  position: relative;
  padding-left: 10px;
  margin: 10px 0;
}
.sub_bongsa01 .txt p::before {
  position: absolute;
  content: '';
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: #666;
  left: 0;
  top: 13px;
}
.sub_bongsa01 ul {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 100px;
}
.sub_bongsa01 ul li {
  width: 48%;
  text-align: center;
  border: 1px solid #ddd;
  border-radius: 20px;
  padding: 30px 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.sub_bongsa01 ul li h3 {
  background: var(--main-color);
  color: #fff;
  display: inline-block;
  border-radius: 5px;
  padding: 10px 30px;
  margin-bottom: 25px;
}

.sub_bongsa01 ul li p {
  font-size: 20px;
  color: #666;
  position: relative;
  padding-left: 10px;
  margin: 10px 0;
}
.sub_bongsa01 ul li h4 {
  font-size: 20px;
}
.sub_bongsa01 ul li a {
  border: 1px solid #ddd;
  padding: 15px;
  border-radius: 10px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50%;
  margin-top: 25px;
}
/*회원 및 후원 안내*/
.donebox {
  display: flex;
  justify-content: center;
  align-items: center;
  background: url(/img/doneboxbg.jpg) no-repeat center / cover;
  border-radius: 20px;
  margin-bottom: 50px;
}
.donebox li {
  width: 50%;
  text-align: center;
  padding: 100px 50px;
  color: #fff;
}
.donebox li h2 {
  margin-bottom: 20px;
  font-size: 30px;
}
.donebox li p {
  font-size: 20px;
}
.donebox li div {
  background: rgba(255,255,255,0.8);
  border-radius: 10px;
  overflow: hidden;
}
.donebox li div h3 {
  background: var(--main-color);
  color: #fff;
  padding: 15px 0;
  font-size: 30px;
}
.donebox li div p {
  color: #000;
  padding: 30px 0;
}
.sub_done01_01 .txt {
  background: url(/img/sub_done01bg.jpg) no-repeat center bottom / 100%;
  text-align: center;
  border: 10px solid #f4f4f4;
  border-radius: 15px;
  padding: 100px 50px;
}
.sub_done01_01 .txt h2 {
  font-size: 34px;
  margin-bottom: 25px;
  color: var(--main-color);
}
.sub_done01_01 .txt p {
  font-size: 20px;
  margin-bottom: 25px;
}
.sub_done01_01 .txt p b {
  color: var(--main-color);
}
.sub_done01_01 .txt h3 {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 24px;
  font-weight: 400;
  gap: 5px;
}
.sub_done05_02 {
  margin-top: 70px;
}
.sub_done05_02 ul {
  display: flex;
  justify-content: space-between;
  margin-bottom: 50px;
}
.sub_done05_02 ul li {
  display: flex;
  text-align: center;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  border-radius: 15px;
  border: 10px solid #f4f4f4;
  padding: 100px 0;
  width: 23%;
}
.sub_done05_02 ul li h3 {
  background: var(--main-color);
  border-radius: 50%;
  color: #fff;
  text-align: center;
  width: 50px;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 30px;
  margin-bottom: 30px;
}
.sub_done05_02 ul li p {
  font-size: 20px;
}
.sub_done05_02 .box {
  border-radius: 20px;
  border: 10px solid #f4f4f4;
  text-align: center;
}
.sub_done06_02 ul {
  display: flex;
  justify-content: space-between;
} 
.sub_done06_02 ul li {
  display: flex;
  width: 12%;
  align-items: center;
  flex-direction: column;
  padding: 30px 0;
  border-radius: 20px;
  background: #f4f4f4;
  text-align: center;
  position: relative;
}
.sub_done06_02 ul li::before {
  position: absolute;
  content: '';
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  right: -23px;
  width: 15px;
  height: 15px;
  border-top: 3px solid var(--main-color);
  border-right: 3px solid var(--main-color);
}
.sub_done06_02 ul li:last-of-type:before {
  display: none;
} 
.sub_done06_02 ul li h3 {
  background: var(--main-color);
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  font-size: 20px;
  width: 50px;
  height: 50px;
  color: #fff;
}
.sub_done06_02 ul li span {
  width: 100px;
  height: 100px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 10px 10px 15px #ddd;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 40px;
  color: var(--main-color);
  margin: 30px 0;
}
.sub_done07_01 {
  display: flex;
  justify-content: center;
  border-radius: 20px;
  overflow: hidden;
  margin-bottom: 70px;
}
.sub_done07_01 img,
.sub_done07_01 .txt {
  width: 50%;
}
.sub_done07_01 .txt {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 50px;
  background: #f4f4f4;
  text-align: left;
}
.sub_done07_01 .txt h2 {
  font-size: 45px;
  text-align: left;
  margin-bottom: 25px;
}
.sub_done07_01 .txt h2 span {
  color: var(--main-color);
}
.sub_done07_01 .txt p {
  font-size: 24px;
  line-height: 2em;
}
.sub_done07_02 ul {
  display: flex;
  gap: 100px;
  margin-bottom: 120px;
}
.sub_done07_02 ul li p {
  font-size: 24px;
}
