@charset "utf-8";
/*
TITLE : 리스펙제대군인 (index)
WORKER : HSG
DATE : 2021.12.29
VERSION : Ver 1.0
- Ver 1.0 : 최초 작업.
*/

/* ****** HEADER ****** */
.outline { margin: 0 auto; width: 100%; height: 100%; max-width: 1280px; }
/* #wrap { border: 1px solid black; } */
header { position: fixed; width: 100%; height: 60px; background-color: rgba(255,255,255,.7); z-index: 1000; }
header .main_head { position: relative; height: 60px; }
header .main_head:after { position: absolute; content:""; right: 0; top: 0; width: 50%; height: 100%; background-color: #231815; z-index: 10; }
header .main_head .outline { position: relative; display: flex; flex-flow: row; justify-content: flex-end; z-index: 1100; }
header .main_head .outline .home { position: absolute; top: 0; left: 0; padding: 5px 0 0; /* width: 170px; */ width: 140px; text-align: center; background-color: #fff; z-index: 2000; }
header .main_head .outline .home .logo { margin-bottom: 5px; width: 94%; height: auto; }
header .main_head .outline .issue { display: flex; flex-flow: row nowrap; align-items: center; background-color: #fff; display: none; }
header .main_head .outline .issue p { width: 50px; text-align: center; font-size: 26px; font-weight: 500; color: #231815; font-family: 'Poppins', sans-serif; }
header .main_head .outline .issue ul { width: calc(100% - 50px); }
header .main_head .outline .issue ul li { font-size: 12px; color: #231815; font-weight: 400; line-height: 16px; font-family: 'Poppins', sans-serif; text-align: left; }
/* main nav */
header .main_head .main_menu { display: flex; flex-flow: row nowrap; align-items: center; background-color: #231815; }
header .main_head .main_menu .nav { display: flex; flex-flow: row nowrap; padding: 0 20px 0 0; }
header .main_head .main_menu .nav li { position: relative; }
header .main_head .main_menu .nav > li:after { position: absolute; content: ""; left: 0; bottom: 0; width: 0; height: 2px; background-color: #fff; transition: width ease-out .3s; }
header .main_head .main_menu .nav > li:hover:after { width: 100%; }
header .main_head .main_menu .nav li > a { display: inline-block; padding: 0 30px; font-size: 17px; color: #fff; line-height: 60px; font-weight: 500; font-family: 'Poppins', sans-serif;/*  border: 1px solid blue;  */ letter-spacing: 0; }
header .main_head .main_menu .nav li .sub_menu { position: absolute; top: 60px; left: 0; padding-top: 0; width: 100%; transform: translateY(10px); height: 0px; overflow: hidden; opacity: 0; transition: opacity ease-in-out .5s, transform ease-in-out .5s; cursor: pointer; }
header .main_head .main_menu .nav li:hover > a + .sub_menu { padding-top: 10px; height: auto; overflow: visible; transform: translateY(0); opacity: 1; }
header .main_head .main_menu .nav li .sub_menu:after { position: absolute; content: ""; top: 0; left: 50%; transform: translateX(-50%); width: 0; height: 0; border-top: 15px solid none; border-bottom: 15px solid #fff; border-right: 15px solid transparent; border-left: 15px solid transparent; z-index: 0;  }
header .main_head .main_menu .nav li .sub_menu li { position: relative; z-index: 10; }
header .main_head .main_menu .nav li .sub_menu li a { display: block; padding: 15px; font-size: 16px; color: #000; font-weight: 700; font-family: 'EliceBaeumR', sans-serif; line-height: 20px; letter-spacing: 0; background-color: #fff; transition: background-color ease-in-out .1s; }
header .main_head .main_menu .nav li .sub_menu li a:hover { background-color: #e9e9e9; }
/* search */
header .main_head .main_menu .search_wrap .in_wrap { position: relative; display: flex; flex-flow: row nowrap; border-bottom: 1px solid #fff; }
header .main_head .main_menu .search_wrap .in_wrap input { padding-right: 40px; width: 160px; background-color: transparent; border: none; border-radius: 0; outline: none; color: #fff; }
header .main_head .main_menu .search_wrap .in_wrap label { font-size: 0; color: transparent; }
header .main_head .main_menu .search_wrap .in_wrap button { position: absolute; right: 0; top: 0; width: 35px; height: 30px; line-height: 30px; padding-left: 20px; border: none; cursor: pointer; background-color: transparent; color: #fff; }
header .main_head .main_menu .search_wrap .in_wrap button i { font-size: 18px; transform: translateY(3px); }
/* hamburger btn */
header .main_head .btn_wrap { position: relative; padding: 24px 10px 10px; margin-left: 20px; width: 50px; height: 100%; background-color: #231815; cursor: pointer; z-index: 2000; }
header .main_head .btn_wrap .menu_btn { position: relative; width: 30px; height: 20px;  overflow: hidden; user-select: none;  }
header .main_head .btn_wrap .menu_btn .move { position: absolute; top: 0; left: 0; width: 60px; transition: left ease .15s; }
header .main_head .btn_wrap .menu_btn.on .move { left: -31px;  }
header .main_head .btn_wrap .menu_btn .bottom { position: absolute; left: 0; bottom: 0; width: 30px; height: auto; }
/* site map */
.site_map { position: fixed; top: 60px; right: -110%; width: 100%; height: calc(100vh - 60px); z-index: 1; background-color: #f9f9f9; transition: right ease-out .3s; }
.site_map.active { right: 0; }
.site_map .outline { position: relative; padding: 100px 20px 50px; overflow: hidden; overflow-y: auto; }
.site_map .outline .search_wrap { display: none; }
.site_map .outline .in_box { display: flex; flex-flow: row nowrap; justify-content: space-between; height: 100%; min-height: 700px; }
.site_map .outline .in_box li { padding: 10px 20px; width: calc(100% / 3 - 10px); opacity: 0; }
.site_map.active .outline .in_box li { animation: site_map_ani 1s forwards; }
.site_map.active .outline .in_box li:nth-child(1) { animation-delay: .2s; }
.site_map.active .outline .in_box li:nth-child(2) { animation-delay: .4s; }
.site_map.active .outline .in_box li:nth-child(3) { animation-delay: .6s; }
@keyframes site_map_ani {
    0% { opacity: 0; transform: translateY(50px); }
    100% { opacity: 1; transform: translateY(0); }
}
.site_map .outline .in_box li .img_wrap img { width: 80%; border-top-left-radius: 40px; border-bottom-right-radius: 20px; }
.site_map .outline .in_box li .category { padding-bottom: 0; font-size: 20px; font-weight: 400; line-height: 30px; letter-spacing: 0; font-family: 'Poppins', sans-serif; border-bottom: 1px solid; }
.site_map .outline .in_box li .category .icon { position: absolute; right: 10px; top: 50%; transform: translateY(-50%); display: none; }
.site_map .outline .in_box li:nth-child(1) .category { color: #ea6175; border-color: #ea6175; }
.site_map .outline .in_box li:nth-child(2) .category { color: #00aa8f; border-color: #00aa8f; }
.site_map .outline .in_box li:nth-child(3) .category { color: #f39800; border-color: #f39800; }
.site_map .outline .in_box li dl dt { margin-bottom: 4px; font-size: 14px; font-weight: 700; color: #000; line-height: 20px; }
.site_map .outline .in_box li dl dd { line-height: 100%; }
.site_map .outline .in_box li dl dd a { display: block; font-size: 18px; font-weight: 400; color: #666; font-family: 'EliceBaeumR', sans-serif; line-height: 1.4; transition: color ease-out .3s; }
.site_map .outline .in_box li dl dd a:hover { color: #000; text-decoration: underline; }
.site_map .outline .in_box li dl dd a span { display: block; font-size: 0.8em; color: #000; }

/* ****** SLIDER ****** */
#slider { height: 100vh; }
#slider .swiper1 { height: 100%; }
#slider .swiper1 .swiper-wrapper { height: 100%; }
#slider .swiper-slide { height: 100%; background: #fff no-repeat center / cover; z-index: 500; }
#slider .swiper-slide:after { position: absolute; content: ""; top: 0; left: 0; width: 50%; height: 100%; background: linear-gradient( to right, rgba(255,255,255,.8) 50%, rgba(255,255,255,.5) 75%, rgba(255,255,255,.0)); }
#slider .swiper-slide.slide01 { background-image: url(../img/index/img_index_slider_01.jpg); }
#slider .swiper-slide.slide02 { background-image: url(../img/index/img_index_slider_02.jpg); }
#slider .swiper-slide.slide03 { background-image: url(../img/index/img_index_slider_03.jpg); }
#slider .swiper-slide .outline { position: relative; /* padding: 150px 20px 0; */ max-width: 1600px; z-index: 100; }
#slider .swiper-slide .outline .slider_img { display: none; }
#slider .swiper-slide .outline .tit_area { position: absolute; left: 0; top: 50%; display: flex; flex-flow: column; justify-content: flex-start; padding: 0 20px; color: #000; transform: translateY(-55%); width: 100%; }
#slider .swiper-slide .outline .tit_area > * { width: 60%; opacity: 0; }
#slider .swiper-slide .outline .tit_area em { align-self: flex-start; padding-left: 15px; padding-right: 15px; color: #fff; font-weight: 500; width: auto; background-color: #1547b9; border-radius: 20px; }
#slider .swiper-slide.swiper-slide-active .outline .tit_area em,
#slider .swiper-slide.swiper-slide-active .outline .tit_area span,
#slider .swiper-slide.swiper-slide-active .outline .tit_area h5 { animation: tit_ani1 1s forwards; }
#slider .swiper-slide.swiper-slide-active .outline .tit_area a { animation: tit_ani2 1s forwards; }
#slider .swiper-slide .outline .tit_area span { position: relative; align-self: flex-start; font-size: 18px; font-weight: 700; color: #333; width: auto; letter-spacing: -1px; }
#slider .swiper-slide .outline .tit_area span:after { position: absolute; content: ""; bottom: 5px; left: 0; width: 0; height: 10px; background-color: rgba(21,71,185,.7); z-index: -1; transition: width ease-in-out .6s 1.5s; }
#slider .swiper-slide.swiper-slide-active .outline .tit_area span:after { width: 100%; }
#slider .swiper-slide.swiper-slide-active .outline .tit_area h3 { animation: tit_ani1 1.5s forwards; }
#slider .swiper-slide.swiper-slide-active .outline .tit_area em { animation-delay: .1s; }
#slider .swiper-slide.swiper-slide-active .outline .tit_area span { animation-delay: .3s; }
#slider .swiper-slide.swiper-slide-active .outline .tit_area h3 { animation-delay: .5s; }
#slider .swiper-slide.swiper-slide-active .outline .tit_area h5 { animation-delay: .7s; }
#slider .swiper-slide.swiper-slide-active .outline .tit_area a { animation-delay: .9s; }
#slider .swiper-slide .outline .tit_area h4 { opacity: 1; }
#slider .swiper-slide .outline .tit_area h3 { line-height: 60px; }
#slider .swiper-slide .outline .tit_area h5 { color: #555; }
#slider .swiper-slide .outline .tit_area a { position: relative; display: block; padding-left: 40px; font-size: 16px; color: #fff; font-weight: 400; width: 180px; line-height: 40px; text-align: left; background-color: #999; transition: background-color ease-out .3s; }
#slider .swiper-slide .outline .tit_area a:hover { background-color: #1547b9;  }
#slider .swiper-slide .outline .tit_area a i { position: absolute; right: 40px; top: 50%; transform: translateY(-60%); }
#slider .swiper1 .swiper-pagination { bottom: 40px; }
#slider .swiper1 .swiper-pagination .swiper-pagination-bullet { width: 16px; height: 10px; border-radius: 7px; transition: width ease-in-out .2s; }
#slider .swiper1 .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active { width: 60px; background-color: #1547b9; transition: width ease-in-out .2s; }
/* slider ani */
@keyframes tit_ani1 {
    0% { opacity: 0; transform: translateY(20px); }
    100% { opacity: 1; transform: translateY(0); }
}
@keyframes tit_ani2 {
    0% { opacity: 0; }
    100% { opacity: 1; }
}
/* ****** FOOTER ****** */
footer { padding: 50px 0 70px; background-color: #000; }
footer .outline { display: flex; flex-flow: row nowrap; justify-content: space-between; align-items: flex-start; }
footer .outline .logo { width: 280px; text-align: left; }
footer .outline .logo img { width: 200px; }

footer .outline .col { padding-top: 10px; width: calc(100% - 640px); }
footer .outline .col li { color: #fff; line-height: 24px; letter-spacing: 0; font-family: 'gmarketSansL', sans-serif; }

footer .outline .link { display: flex; flex-flow: row wrap; justify-content: space-between; align-items: flex-start; padding-top: 5px; width: 360px; }
footer .outline .link .outlink { margin-bottom: 10px; width: 49%; }
footer .outline .link .outlink select { padding-left: 5px; width: 100%; border-radius: 0; border: none; background-color: #1547b9; color: #fff; cursor: pointer; }
footer .outline .link .outlink select option { font-weight: 300; cursor: pointer; }
footer .outline .link .issue { width: 49%; }
footer .outline .link .sns { display: flex; flex-flow: row nowrap; justify-content: flex-start; width: 100%; }
footer .outline .link .sns li { margin-right: 3px; width: 35px; height: 35px; background: url(../img/img_sns.png) no-repeat; }
footer .outline .link .sns li:last-child { margin-right: 0; }
footer .outline .link .sns li:nth-child(1) { background-position: 0 0; }
footer .outline .link .sns li:nth-child(2) { background-position: 0 -50px; }
footer .outline .link .sns li:nth-child(3) { background-position: 0 -100px; }
footer .outline .link .sns li:nth-child(4) { background-position: 0 -149px; }
footer .outline .link .sns li:nth-child(5) { background-position: 0 -199px; }
footer .outline .link .sns li:nth-child(6) { background-position: 0 -249px; }
footer .outline .link .sns li a { display: block; line-height: 35px; font-size: 0; color: transparent; }
@media all and (max-width: 1400px) {
    /* ****** SLIDER ****** */
    #slider { max-height: 927px; min-height: 840px; }
    #slider .swiper-slide .outline .tit_area > * { width: 50%; }
}
@media all and (max-width: 1280px) {
    /* ****** HEADER ****** */
    .outline { padding: 0 20px; }
    header .main_head .outline .home { left: 20px; width: 160px; }
    header .main_head .outline .issue p { font-size: 24px;  }
    /* main nav */
    header .main_head .main_menu .nav { padding: 0 15px 0 0; }
    header .main_head .main_menu .nav li > a {  padding: 0 30px; }
    header .main_head .main_menu .nav li .sub_menu { top: 60px; }
    header .main_head .main_menu .nav li .sub_menu li a { font-size: 15px; }
    /* search */
    header .main_head .main_menu .search_wrap .in_wrap input { width: 150px; }
    header .main_head .main_menu .search_wrap .in_wrap button { width: 25px; line-height: 30px; padding-left: 10px; }
    /* site map */
    .site_map .outline .in_box { min-height: 600px; }
    .site_map .outline .in_box li .category { font-size: 18px; line-height: 28px; }
    .site_map .outline .in_box li dl dt { margin-bottom: 2px; font-size: 13px; }
    .site_map .outline .in_box li dl dd a {  font-size: 16px; line-height: 1.3; }
    /* ****** SLIDER ****** */
    #slider { height: 72.422vw; max-height: auto; min-height: auto; }
    #slider .swiper-slide .outline .tit_area span { font-size: 18px; }
    #slider .swiper-slide .outline .tit_area h3 { line-height: 40px; }
    #slider .swiper-slide .outline .tit_area a { padding-left: 30px; width: 160px; }
    #slider .swiper-slide .outline .tit_area a i { right: 30px;  }
    /* ****** FOOTER ****** */
    footer { padding: 40px 0 60px; }
    footer .outline .logo { width: 240px; }
    footer .outline .logo img { width: 190px; }
    footer .outline .col { width: calc(100% - 560px); }
    footer .outline .link { width: 320px; }
    footer .outline .link .outlink select { font-size: 15px; }
}
@media all and (max-width: 1024px) {
    /* ****** HEADER ****** */
    .outline { padding: 0 10px; }
    header {  height: 50px; }
    header .main_head {  height: 50px; }
    header .main_head .outline .home {  left: 10px; width: 140px; }
    header .main_head .outline .issue p {  font-size: 24px; }
    /* main nav */
    header .main_head .main_menu .nav { padding: 0 15px 0 0; }
    header .main_head .main_menu .nav li > a { padding: 0 25px; font-size: 16px; line-height: 50px; }
    header .main_head .main_menu .nav li .sub_menu { top: 50px; }
    header .main_head .main_menu .nav li .sub_menu li a {  padding: 12px; font-size: 15px; }
    /* search */
    header .main_head .main_menu .search_wrap .in_wrap input { width: 140px; }
    header .main_head .main_menu .search_wrap .in_wrap button { width: 25px;  line-height: 30px; padding-left: 10px; }
    /* hamburger btn */
    header .main_head .btn_wrap { padding: 17px 10px 10px; }
    /* site map */
    .site_map { top: 50px; height: calc(100vh - 50px); }
    .site_map .outline .in_box { min-height: 550px; }
    .site_map .outline .in_box li { padding: 10px 15px; width: calc(100% / 3 - 6px); }
    .site_map .outline .in_box li .category { font-size: 18px; line-height: 28px; }
    /* ****** SLIDER ****** */
    #slider .swiper-slide .outline .tit_area { transform: translateY(-48%);}
    /* ****** FOOTER ****** */
    footer { padding: 40px 0 60px; }
    footer .outline .logo { width: 220px; }
    footer .outline .logo img { width: 180px; }
    footer .outline .col { width: calc(100% - 530px); }
    footer .outline .link { width: 310px; }
    footer .outline .link .outlink select {  font-size: 15px; }
}
@media all and (max-width: 1023px) {
    /* ****** HEADER ****** */
    header .main_head:after { width: 50px; }
    header .main_head .outline .home { width: 130px; }
    header .main_head .outline .issue p { font-size: 22px; width: 40px; }
    header .main_head .outline .issue ul { width: calc(100% - 40px); }
    /* main nav */
    header .main_head .main_menu .nav {  display: none; }
    /* search */
    header .main_head .main_menu .search_wrap { display: none; }
    /* hamburger btn */
    header .main_head .btn_wrap { padding: 17px 10px 10px; margin-left: 10px; }
    /* site map */
    .site_map { top: 50px; width: 80vw; height: calc(100vh - 50px); }
    .site_map .outline { padding: 70px 20px 50px;  }
    .site_map .outline .search_wrap { display: block; position: absolute; top: 20px; right: 20px; width: 260px; }
    .site_map .outline .search_wrap .in_wrap { display: flex; flex-flow: row nowrap; border-bottom: 1px solid #000; }
    .site_map .outline .search_wrap .in_wrap input { padding-right: 30px; width: 260px; background-color: transparent; border: none; border-bottom: 1px solid #000; border-radius: 0; outline: none; color: #000; }
    .site_map .outline .search_wrap .in_wrap label { font-size: 0; color: transparent; }
    .site_map .outline .search_wrap .in_wrap button { position: absolute; right: 0; top: 0; width: 25px; height: 30px; line-height: 30px; padding-left: 10px; border: none; cursor: pointer; background-color: transparent; color: #000; }
    .site_map .outline .search_wrap .in_wrap button i { font-size: 17px; }
    .site_map .outline .in_box { flex-flow: row wrap; justify-content: flex-start; align-items: flex-start; height: auto; min-height: auto; }
    .site_map .outline .in_box li { padding: 10px 15px; width: 100%; }
    .site_map .outline .in_box li .img_wrap { display: none; }
    .site_map .outline .in_box li .sub_list { display: none; padding-left: 10px; }
    .site_map .outline .in_box li .category { position: relative; font-size: 18px; line-height: 28px; }
    .site_map .outline .in_box li .category .icon { position: absolute; right: 10px; top: 50%; transform: translateY(-50%); display: inline; color: #111; transition: transform ease-in-out .6s; }
    .site_map .outline .in_box li .category.on .icon { transform: translateY(-50%) rotate(180deg); color: inherit; }
    .site_map .outline .in_box li .category.on + .sub_list { display: block; }
    /* ****** FOOTER ****** */
    footer { padding: 40px 0 60px; }
    footer .outline { flex-flow: row wrap; }
    footer .outline .logo { order: 2; margin-bottom: 10px; width: 100%; text-align: center; }
    footer .outline .logo img { width: 180px; }
    footer .outline .col { order: 3; width: 100%; }
    footer .outline .col li {text-align: center; }
    footer .outline .link { order: 1; margin-bottom: 30px; width: 100%; }
    footer .outline .link .outlink { width: 49.5%; }
    footer .outline .link .outlink select { font-size: 15px; height: 36px; line-height: 36px; }
    footer .outline .link .sns { justify-content: center; width: 100%; }
    footer .outline .link .sns li { margin-right: 5px; }
}
@media all and (max-width: 768px) {
    /* ****** SLIDER ****** */
    #slider { height: 60vh; }
    #slider .swiper-slide .outline { padding-left: 10px; padding-right: 10px; }
    #slider .swiper-slide.swiper-slide-active .outline .tit_area h5 { margin-bottom: 60px; }
    #slider .swiper1 .swiper-pagination .swiper-pagination-bullet { width: 10px; }
    #slider .swiper1 .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active { width: 40px; }
}
@media all and (max-width: 767px) {
    /* ****** SLIDER ****** */
    #slider { padding-top: 50px; margin-bottom: 6.519vw; height: auto; }
    #slider .swiper1,
    #slider .swiper1 .swiper-wrapper { height: auto; }
    #slider .swiper-slide { height: auto; }
    #slider .swiper-slide:after { display: none; }
    #slider .swiper-slide .outline { position: static; left: auto; top: auto; bottom: auto; display: flex; flex-flow: row wrap; align-items: flex-start; width: 100%; height: auto; padding: 0; }
    #slider .swiper-slide .outline > img,
    #slider .swiper-slide .outline > div { width: 100%; }
    #slider .swiper-slide .outline .tit_area { position: static; left: auto; top: auto; right: auto; bottom: auto; padding-top: 20px; transform: translateY(0); height: 0; background-color: #fff; overflow: hidden; }
    #slider .swiper-slide.swiper-slide-active .outline .tit_area { position: static; left: auto; top: auto; right: auto; bottom: auto; padding-top: 20px; transform: translateY(0); height: auto; }
    #slider .swiper-slide .outline .tit_area > * { width: 100%; }
    #slider .swiper-slide .outline .tit_area span { letter-spacing: -2px; }
    #slider .swiper-slide .outline .tit_area h3 { letter-spacing: -3.5px; }
    #slider .swiper-slide .outline .tit_area h5 { letter-spacing: -2px; }
    #slider .swiper-slide .outline .tit_area .postlink { margin-bottom: 40px; }
    #slider .swiper-slide.swiper-slide-active .outline .tit_area h5 { margin-bottom: 20px; }
    #slider .swiper-slide { background: none; }
    #slider .swiper-slide.slide01 { background-image: none; }
    #slider .swiper-slide.slide02 { background-image: none; }
    #slider .swiper-slide.slide03 { background-image: none; }
    #slider .swiper-slide .outline .slider_img { display: block; }
    #slider .swiper1 .swiper-pagination { bottom: 10px; }
}
@media all and (max-width: 480px) {
    header .main_head .outline .home { width: auto; }
    header .main_head .outline .home img.logo { margin-bottom: 0; width: auto; height: 45px; }
    header .main_head .outline .issue { display: none; }
    /* site map */
    .site_map { width: 100vw; }
    .site_map .outline { padding: 80px 10px 50px;  }
    .site_map .outline .search_wrap { top: 30px; right: 25px; width: 200px; }
    .site_map .outline .search_wrap .in_wrap { width: 200px;  }
    .site_map .outline .search_wrap .in_wrap input { padding-right: 30px; width: 200px; background-color: transparent; border: none; border-bottom: 1px solid #000; border-radius: 0; outline: none; color: #000; }
    .site_map .outline .search_wrap .in_wrap label { font-size: 0; color: transparent; }
    .site_map .outline .search_wrap .in_wrap button { position: absolute; right: 0; top: 0; width: 25px; height: 30px; line-height: 30px; padding-left: 10px; border: none; cursor: pointer; background-color: transparent; color: #000; }
    .site_map .outline .search_wrap .in_wrap button i { font-size: 16px; }
    .site_map .outline .in_box { flex-flow: row wrap; justify-content: flex-start; align-items: flex-start; height: auto; min-height: auto; }
    .site_map .outline .in_box li { padding: 10px 15px 5px; width: 100%; }
    .site_map .outline .in_box li .sub_list { display: none; }
    .site_map .outline .in_box li .category { position: relative; margin-bottom: 10px; font-size: 18px; line-height: 28px; }
    .site_map .outline .in_box li .category .icon { position: absolute; right: 10px; top: 50%; transform: translateY(-50%); display: inline; color: #111; transition: transform ease-in-out .4s; }
    .site_map .outline .in_box li .category.on .icon { transform: translateY(-50%) rotate(180deg); color: inherit; }
    .site_map .outline .in_box li dl { margin-bottom: 10px; }
    .site_map .outline .in_box li dl:last-child { margin-bottom: 0; }
    /* ****** SLIDER ****** */
    #slider .swiper-slide:after { height: 70%; }
    #slider .swiper-slide.swiper-slide-active .outline .tit_area h5 { margin-bottom: 20px; font-size: 17px; }
    #slider .swiper-slide .outline .tit_area { padding: 20px 10px 0; }
    #slider .swiper-slide .outline .tit_area h3 { line-height: 32px; }
    #slider .swiper-slide .outline .tit_area a { padding-left: 20px; font-size: 15px; width: 140px; line-height: 36px; }
    #slider .swiper-slide .outline .tit_area a i { right: 20px; }
    #slider .swiper1 .swiper-pagination { bottom: 0; }
    /* ****** FOOTER ****** */
    footer .outline .col li { letter-spacing: -0.5px; }
}
/* ****** INDEX - CONTENTS ****** */
#index_con .outline { position: relative; padding: 50px 0 100px; z-index: 100; }
#index_con .sec { position: relative; }
/* #index_con .sec.sec_1 { background-color: rgba(252, 232, 235, 0.3); }
#index_con .sec.sec_2 { background-color: rgba(230, 255, 251, 0.3); }
#index_con .sec.sec_3 { background-color: rgba(255, 246, 230, 0.3); } */
#index_con .sec.sec_1:before { position: absolute; content: ""; right: 0; top: 0; width: 80%; height: 60%; background-color: #f1f1f1;  }
#index_con .sec.sec_2:before { position: absolute; content: ""; left: 0; top: 0; width: 50%; height: 40%; background-color: rgba(0,170,143,.4); }
#index_con .sec.sec_2:after { position: absolute; content: ""; right: 0; bottom: 0; width: 70%; height: 10%; background-color: #f1f1f1; }
#index_con .sec.sec_3:before { position: absolute; content: ""; right: 0; top: 0; width: 70%; height: 60%; background-color: #f1f1f1; }
#index_con .sec.sec_3:after { position: absolute; content: ""; }
#index_con .sec h3 { font-size: 50px; letter-spacing: -2px; line-height: 70px; text-align: center; }
#index_con .sec.sec_1 h3 { color: #ea6175; }
#index_con .sec.sec_2 { text-align: right; }
#index_con .sec.sec_2 h3 { padding-right: 50px; text-align: center; }
#index_con .sec.sec_2 h3 span:after { left: auto; right: 0; background-color: #00aa8f; }
#index_con .sec.sec_2 h3 { color: #00aa8f; }
#index_con .sec.sec_2 .post li { text-align: left; }
#index_con .sec.sec_3 h3 { color: #f39800; }
#index_con .sec.sec_3 h3 span:after { background-color: #f39800; }
#index_con .sec .outline .post { display: flex; flex-flow: row nowrap; justify-content: space-between; align-items: flex-start; }
#index_con .sec .outline .post li { width: calc(100% / 3 - 40px); transition: box-shadow ease-in-out .2s; border-top-left-radius: 50px; border-top-right-radius: 10px; overflow: hidden;  }
#index_con .sec .outline .post li:hover { box-shadow: 10px 10px 10px rgba(153,153,153,.5); background-color: #fff; }
#index_con .sec .outline .post li:nth-child(2) { transform: translateY(-50px); }
#index_con .sec.sec_3 .outline .post li:nth-child(2) { transform: translateY(0); }
#index_con .sec .outline .post li .img_wrap { position: relative;  }
#index_con .sec .outline .post li .img_wrap:after { position: absolute; content: ""; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0,0,0,.3); border-bottom-right-radius: 20px; transition: background-color ease-in-out .3s; }
#index_con .sec .outline .post li .img_wrap img {  border-bottom-right-radius: 20px;   }
#index_con .sec .outline .post li:hover .img_wrap:after { background-color: rgba(0,0,0,.1); }
#index_con .sec .outline .post li h4 { color: #666; }
#index_con .sec .outline .post li h5 { color: #333; text-align: left; }
#index_con .sec .outline .post li h6 { color: #999; }
#index_con .sec .outline .post li .detail { display: inline-block; padding: 0 10px; font-size: 15px; color: #333; font-weight: 500; background-color: transparent; line-height: 40px; text-align: center; border-bottom: 1px solid #666; transition: all ease-out .3s; }
#index_con .sec .outline .post li:hover .detail { color: #fff; background-color: #1547b9; }
/* *** all post *** */
#all_post.all_list { position: relative; padding: 20px 80px 30px; background: linear-gradient(to bottom, #f1f1f1, #fff); }
#all_post.all_list .in_box {  overflow: hidden; }
#all_post.all_list .in_box h3 { font-size: 50px; letter-spacing: -1px; line-height: 70px; text-align: center; }
#all_post.all_list .in_box .swiper2 { overflow: visible; }
#all_post.all_list .in_box .swiper2 ul li { position: relative; background-color: transparent; box-shadow: none; transform: translateY(0); transition: background-color .3s ease-out, transform ease-out .3s, box-shadow ease-out .3s; }
#all_post.all_list .in_box .swiper2 ul li:after { position: absolute; content: ""; left: 0; bottom: 0; width: 0; height: 2px; background-color: #00aa8f; transition: width .3s ease-out; }
#all_post.all_list .in_box .swiper2 ul li:hover:after { width: 100%; }
#all_post.all_list .in_box .swiper2 ul li:hover { background-color: #fff; transform: translateY(-10px); box-shadow: 5px 5px 10px 0 #a9a9a9; }
#all_post.all_list .in_box .swiper2 ul li a { display: block; height: 100%; }
#all_post.all_list .in_box .swiper2 ul li .tit_box { padding: 0 5px; }
#all_post.all_list .in_box .swiper2 ul li .tit_box h4 { letter-spacing: 0; }
#all_post.all_list .in_box .swiper2 ul li .tit_box h5 { height: 64px; letter-spacing: 0; white-space: normal; overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; text-align: left; }
#all_post.all_list .btn { position: absolute; top: 56%; transform: translateY(-50%); z-index: 100; color: #555; }
#all_post.all_list .btn i { font-size: 60px; font-weight: 700; cursor: pointer; }
#all_post.all_list .btn.btn_left { left: 10px; }
#all_post.all_list .btn.btn_right { right: 10px; }
/* *** etc_con *** */
#etc_con { position: relative; }
#etc_con:before { position: absolute; content: ""; top: 0; left: 0; width: 50%; height: 100%; background: url(../img/img_ect_1.jpg) no-repeat center right / cover; }
#etc_con:after { position: absolute; content: ""; top: 0; right: 0; width: 50%; height: 100%; background: url(../img/img_ect_2.jpg) no-repeat center left / cover; }
#etc_con .outline { position: relative; display: flex; flex-flow: row nowrap; z-index: 100; }
#etc_con .outline > div { padding: 0 40px; width: 50%; }
#etc_con .outline > div a { display: block; padding: 70px 0; }
#etc_con .outline > div.right a,
#etc_con .outline > div.right a h4,
#etc_con .outline > div.right a h5 { text-align: right; }
#etc_con .outline > div a:hover { text-decoration: underline; }
#etc_con .outline > div a h3 { display: inline-block; color: #333; border-bottom: 1px solid #666; }
#etc_con .outline > div a h4 { color: #000; }
#etc_con .outline > div a h5 { color: #666; }
@media all and (max-width: 1280px) {
    /* ****** INDEX - CONTENTS ****** */
    #index_con .outline { padding-left: 20px; padding-right: 20px; }
    #index_con .sec h3 { font-size: 44px; letter-spacing: -2px; line-height: 56px; }
    #index_con .sec.sec_3 h3 span:after { background-color: #f39800; }
    #index_con .sec .outline .post li { width: calc(100% / 3 - 40px); transition: none;  }
    #index_con .sec .outline .post li:hover { box-shadow: none; background-color: transparent; }
    #index_con .sec .outline .post li .img_wrap:after { display: none; }
    #index_con .sec .outline .post li .detail { background-color: #1547b9; color: #fff; border-bottom: 0px solid #666; transition: none; }
    /* *** all post *** */
    #all_post.all_list .in_box h3 { font-size: 44px; line-height: 56px; }
    #all_post.all_list .in_box .swiper2 ul li:after { display: none; }
    #all_post.all_list .in_box .swiper2 ul li:hover { background-color: transparent; transform: translateY(0); box-shadow: none; }
    #all_post.all_list .in_box .swiper2 ul li .tit_box h5 { height: 60px; }
    #all_post.all_list .btn i { font-size: 50px; color: #555; }
    /* *** etc_con *** */
    #etc_con .outline > div a { padding: 35px 0; }
}
@media all and (max-width: 1024px) {
    /* ****** INDEX - CONTENTS ****** */
    #index_con .outline { padding: 35px 10px 50px; }
    #index_con .sec h3 { font-size: 38px; letter-spacing: -1.5px; line-height: 40px; }
    #index_con .sec .outline .post li { width: calc(100% / 3 - 30px); }
    #index_con .sec .outline .post li h5 { line-height: 24px; }
    /* *** all post *** */
    #all_post.all_list { padding: 20px 70px 30px;  }
    #all_post.all_list .in_box h3 { font-size: 38px; line-height: 40px; }
    #all_post.all_list .btn i { font-size: 48px; }
    /* *** etc_con *** */
    #etc_con .outline > div a { padding: 20px 0; }
}
@media all and (max-width: 768px) {
    /* ****** INDEX - CONTENTS ****** */
    #index_con .sec h3 { font-size: 32px; }
    #index_con .sec .outline .post li { width: calc(100% / 3 - 10px); }
    #index_con .sec .outline .post li h5 { line-height: 24px; }
    .link_btn a { font-size: 14px; line-height: 36px; }
    /* *** all post *** */
    #all_post.all_list .in_box h3 { font-size: 32px; }
    #all_post.all_list .in_box .swiper2 ul li .tit_box h5 { height: 56px;  }
    #all_post.all_list .btn i { font-size: 42px; }
}
@media all and (max-width: 767px) {
    /* ****** INDEX - CONTENTS ****** */
    #index_con .sec h3 { margin-bottom: 60px; font-size: 28px; line-height: 30px; }
    #index_con .sec .outline .post { flex-flow: row wrap; }
    #index_con .sec .outline .post li { margin-bottom: 70px; width: 100%; }
    #index_con .sec .outline .post li:last-child { margin-bottom: 0; }
    #index_con .sec .outline .post li:nth-child(2) { transform: translateY(0); }
    #index_con .sec .outline .post li h5 { line-height: 24px; }
    .link_btn a { font-size: 14px; line-height: 36px; }
    /* *** etc_con *** */
    #etc_con:before { width: 100%; height: 50%; }
    #etc_con:after { top: auto; bottom: 0; right: 0; width: 100%; height: 50%; }
    #etc_con .outline { flex-flow: row wrap; }
    #etc_con .outline > div { padding: 0 10px; width: 100%;  }
    #etc_con .outline > div a { padding: 30px 0; }
    /* *** all post *** */
    #all_post.all_list { padding: 20px 60px 30px;  }
    #all_post.all_list .in_box h3 { font-size: 28px; line-height: 30px; }
    #all_post.all_list .btn i { font-size: 40px; }
}
@media all and (max-width: 480px) {
    /* ****** INDEX - CONTENTS ****** */
    #index_con .sec h3 { margin-bottom: 50px; font-size: 26px; line-height: 30px; }
    #index_con .sec .outline .post li { margin-bottom: 50px; }
    /* *** all post *** */
    #all_post.all_list .in_box h3 { font-size: 26px; }
    #all_post.all_list .btn i { font-size: 38px; }
}
