.index_main {
  width: 100%;
  height: 100dvh;
  display: flex;
  justify-content: center;
  align-items: center;
}
.index_main img {
  width: 100%;
  height: 100%;
  object-fit: cover;

}

/* 상단 배너 섹션 */
.home_main {
  overflow: hidden;
}
.home_main h1 {
  padding: 2rem 0;
}
.home_main h1 a {
  font-size: 2.4rem;
  font-weight: 700;
}
.home_main .hero_banner {
  background: var(--brand-color2);
  border-radius: 1rem;
}
.home_main .hero_banner > a {
  display: block;
  padding: 3rem 2rem;
}
.home_main .hero_banner a p {
  font-size: 1.6rem;
  color: #555555;
  font-weight: 500;
}
.home_main .hero_banner .row {
  display: flex;
  justify-content: space-between;
}
.home_main .banner_title h3 {
  font-size: 2.4rem;
  font-weight: 800;
  line-height: 1.2;
  margin-top: 1rem;
}
.home_main .banner_title b {
  color: var(--brand-color);
}
.home_main .hero_banner a img {
  width: 50%;
  margin-top: 1.5rem;
  object-fit: contain;
}
.home_main .info_button {
  display: block;
  background: #fff;
  border: 1px solid #ccc;
  color: var(--brand-color);
  padding: 0.8rem 2rem;
  border-radius: 5rem;
  font-size: 1.6rem;
  font-weight: 700;
  width: fit-content;
  margin-top: 1.5rem;
}

/* 카테고리 카드 섹션 */
.home_main .category_wrap {
  margin-top: 2rem;
}
.home_main .category_grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.5rem;
}
.home_main .category_card {
  display: block;
  position: relative;
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 1.5rem;
  min-height: 12rem;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.home_main .category_card a {
 display: block;
 padding: 2rem;
}
.home_main .category_card .card_content {
  flex: 1;
}
.home_main .category_card .card_title {
  font-size: 2rem;
  font-weight: 700;
  color: #000;
  margin-bottom: 1rem;
}
.home_main .category_card .card_subtitle {
  font-size: 1.6rem;
  color: #555;
  font-weight: 400;
}
.home_main .category_card .card_icon {
  margin-left: auto;
  margin-top: 1rem;
  width: 30%;
}
.home_main .category_card .card_icon img {
  width: 100%;
  height: auto;
}
.home_main .category_card .icon_q {
  color: #fff;
  font-size: 2.4rem;
  font-weight: 700;
}
.home_main .category_card .icon_info {
  color: #fff;
  font-size: 2.4rem;
  font-weight: 700;
  font-style: italic;
}
.home_main .category_card .icon_doc {
  color: #fff;
  font-size: 2rem;
}

/* Swiper 섹션 */
.home_main .swiper_section {
  margin-top: 2rem;
}
.home_main .info_swiper {
  overflow: visible;
}
.home_main .info_swiper .swiper-slide {
  width: calc(50% - 0.75rem);
  height: auto;
}
.home_main .info_card {
  position: relative;
  border-radius: 1.5rem;
  padding: 2rem;
  min-height: 14rem;
  overflow: hidden;
  text-decoration: none;
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.home_main .info_card.faq_card {
  background: #E0F7FA;
}
.home_main .info_card.news_card {
  background: #FCE4EC;
}
.home_main .info_card .card_label {
  display: inline-block;
  padding: 0.5rem 1.2rem;
  border-radius: 2rem;
  font-size: 1.4rem;
  font-weight: 400;
  color: #fff;
  text-transform: uppercase;
  margin-bottom: 1rem;
}
.home_main .faq_card .card_label {
  background: #00ACC1;
}
.home_main .news_card .card_label {
  background: #E91E63;
}
.home_main .info_card .card_text {
  position: relative;
  z-index: 2;
}
.home_main .info_card .card_desc {
  font-size: 1.4rem;
  font-weight: 400;
  margin-bottom: 0.5rem;
}
.home_main .faq_card .card_desc {
  color: #00838F;
}
.home_main .news_card .card_desc {
  color: #C2185B;
}
.home_main .info_card .card_title {
  font-size: 2rem;
  font-weight: 700;
  color: #000;
  line-height: 1.3;
}
.home_main .info_card .card_icon {
  width: 6rem;
  height: 6rem;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1;
}
.home_main .info_card .card_icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}


/* info.php */
.cont_box {
  margin : 2rem 0 3rem 0;
}
.cont_box p {
  color: #555;
  font-size: 1.4rem;
  line-height: 1.6;
}

.title {
  padding: 2rem 1.6rem;
  background: var(--brand-color2);
  font-weight: 700;
  font-size: 1.6rem;
}
.emphasis {
  font-weight: 700;
  font-size: 1.6rem;
  margin: 1rem 0;
}
/* bank.php */
.bank_main ul {
  display: grid;
  grid-template-columns: repeat(2,1fr);
  gap: 1.5rem;
}
.bank_main ul li img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.bank_main h4 {
  font-weight: 700;
  font-size: 1.6rem;
  margin: 3rem 0 1rem 0;
}
.bank_main p {
  font-size: 1.4rem;
  color: #555;
}
/* FAQ 스타일 */
.faq_list {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.faq_item {
  transition: all 0.25s;
}

.faq_question {
  padding: 2rem 1.6rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  background: var(--brand-color2);
}
.question_text {
  flex: 1;
  font-weight: 700;
  font-size: 1.6rem;
  line-height: 1.3;
}
.faq_question .triangle {
  display: block;
  color: var(--brand-color);
  font-size: 1.8rem;
  transition: all 0.25s;
}
.faq_item.active .faq_question .triangle {
  transform: rotate(180deg);
}
.faq_question .triangle img {
  width: 2rem;
}
.faq_answer {
  padding: 2rem 1.6rem;
  display: none;
}

.faq_item.active .faq_answer {
  display: flex;
  gap: 1rem;
}

.answer_text {
  flex: 1;
}
.answer_text p{
  font-size: 1.4rem;
  line-height: 1.3;
  line-height: 1.6;
  color: #555;
}

.pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  padding-top: 6rem;
}

.pagination a {
  font-size: 1.6rem;
  color: #555;
}
.pagination a img {
  width: 1.5rem;
}

.goods_wrap .goods_list {
  display: flex;
  flex-direction: column;
}
.goods_wrap .goods_item {
  padding: 2rem 1.6rem;
  border-bottom: 1px solid var(--brand-color);
}
.goods_wrap .goods_item a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
}
.goods_wrap .goods_item .goods_img {
  width: 45%;
  height: 10rem;
  border-radius: 1.5rem;
  overflow: hidden;
  box-shadow: rgba(0, 0, 0, 0.02) 0px 1px 3px 0px, rgba(27, 31, 35, 0.15) 0px 0px 0px 1px;
}
.goods_wrap .goods_item .goods_img  img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.goods_wrap .goods_item .goods_info {
  flex: 1;
  overflow: hidden;
}
.goods_wrap .goods_item .goods_info h4 {
  font-size: 1.8rem;
  font-weight: 600;
  margin-bottom: 1rem;
  line-height: 1.3;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}
.goods_wrap .goods_item .goods_info p {
  font-size: 1.8rem;
  font-weight: 600;
  color: var(--brand-color);
  line-height: 1.3;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* 뉴스 섹션 스타일 */
#news {
  background: #fff;
}
#news .list_wrap {

}
#news .list_wrap ul {
  display: flex;
  flex-direction: column;
  gap: 0;
  list-style: none;
  padding: 0;
  margin: 0;
}

#news .list_wrap li a {
  display: flex;
  gap: 1.5rem;
  padding: 2rem 0rem;;
}

#news .list_wrap li a img {
  width: 14rem;
  height: 12rem;
  min-width: 14rem;
  object-fit: cover;
  border-radius: 0.5rem;
}
#news .list_wrap li a .article_wrap {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 12rem;
}
#news .list_wrap li a .article_wrap h3 {
  font-size: 1.8rem;
  font-weight: 700;
  color: #333;
  margin: 0 0 0.8rem 0;
  line-height: 1.4;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}
#news .list_wrap li a .article_wrap p {
  font-size: 1.4rem;
  font-weight: 400;
  color: #666;
  margin: 0 0 1rem 0;
  line-height: 1.5;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}
#news .list_wrap li a .article_wrap span {
  font-size: 1.2rem;
  font-weight: 400;
  color: #999;
  margin-top: auto;
}