@charset "utf-8";

/******************** skipnavigation ********************/
#skipnavigation {position:relative; background:#02a388; width:100%; min-width:1240px; font-size:0; line-height:0; z-index:9999999999;}
#skipnavigation ul {margin:0 auto; width:1200px; text-align:center;}
#skipnavigation a {display:block; overflow:hidden; height:0px; color:#fff; font-size:0; line-height:0;}
#skipnavigation a:focus {padding:10px; height:auto; font-weight:bold; font-size:15px; line-height:1.2;}





/******************** wrapper ********************/
#wrapper {
    position:relative;
    width:100%;
    min-width:1240px;
}
#container {
    position: relative;
}

.inner {
    max-width:1200px;
    margin:0 auto;
    padding:0 20px;
    box-sizing: content-box;
}



/******************** header ********************/
#header {
    width:100%; 
    text-align:center;
}
#head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position:relative;
    z-index:310;
    margin:0 auto;
    width:100%;
    height:120px;
    text-align:left;
}

/***** logo *****/
#logo {
    width:170px; 
    height:70px; 
    background:url("../image/common/logo.svg") 0 0 no-repeat; 
    text-indent:-99999px;
}
#logo a {
    display:block; 
    height:100%;
}

/***** nav *****/
nav.navi {
    display: flex;
    gap:80px;
    position:relative; 
}

/***** util *****/
.util {
    display: flex;
    gap:50px;
    align-items: center;
}

.util li.gnb_sitemap {
    width:30px;
    height:23px;
    padding:2px;
    font-size: 0;
    color:#1d1d1d;
}
.util li.gnb_sitemap a {
    display:block;
}
.util li.gnb_sitemap span {
    display:block;
    height:5px;
    margin:4px 0;
    width:23px;
    margin-left:7px;
    background-color: #232323;
}
.util li.gnb_sitemap a::before{
    content: '';
    display: block;
    width:30px;
    height:5px;
    background-color: #037a4e;
}
.util li.gnb_sitemap a::after{
    content: '';
    display: block;
    width:30px;
    height:5px;
    background-color: #232323;
}

/***** lnb *****/
#gnb {
    display: flex;
    gap:70px;
    align-items: center;
    z-index:301;
}
#gnb > li {
    font-size:21px; 
    font-weight: 500;
}

#gnb > li a {
    position:relative; 
    color:#1d1d1d;
}

#gnb > li.on a {
    color: #037a4e;
}
#gnb > li.on a span {
    position:absolute; 
    left:-10px; 
    bottom:-48px; 
    z-index:700; 
    display:block; 
    padding:0 10px; 
    width:100%; 
    height:4px; 
    background:#037a4e;
}

/* depth2 */
#gnb .depth2 {
    position:absolute; 
    top:90px; 
    left:0; 
    z-index:500; 
    overflow:hidden;
    gap:30px;
}
#gnb .depth2 li {
    float:left; 
    font-size:17px; 
    font-weight: 400;
}

#gnb .depth2 li a {
    color:#333;
}
#gnb .depth2 li a:hover, #gnb .depth2 li a:focus {
    font-weight:bold; 
    color:#111;
}
/* lay_menu_bg */
#gnb #lay_menu0 {left:0;}
#gnb #lay_menu1 {left:0;}
#gnb #lay_menu2 {left:-60px;}
#gnb #lay_menu3 {left:365px;}
#gnb #lay_menu4 {left:540px;}
#gnb #lay_menu5 {left:645px;}
#lay_menu_back {position:absolute; top:120px; left:0; z-index:305; border-top:1px solid #ddd; background:#fff; width:100%; min-width:1200px; height:55px;}
a .ic_blank {
    display: inline-block;
    margin: 0 0 2px 5px;
    width: 15px;
    height: 15px;
    background: url('../image/common/icon_blank.gif') no-repeat 0 0;
    vertical-align: middle;
}

/***** sitemap *****/
.sitemap {
    position:absolute; 
    z-index:999999999999999; 
    top:0; 
    left:0; 
    display:none; 
    width:100%; 
    min-width:1200px; 
    height:540px !important; 
    background:#fff; 
    border-bottom:3px solid #037a4e; 
    text-align:center;
}
.sitemap_opened .sitemap {
    display:block;
}
.sitemap .sitemap_box {
    position:relative; 
    z-index:550; 
    margin:0 auto; 
    width:1200px; 
    height:100%; 
    text-align:left;
}
.sitemap .line {
    position:absolute; 
    z-index:560; 
    top:120px; 
    left:0; 
    width:100%; 
    min-width:1200px; 
    border-top:1px solid #ddd;
}
.full_menu_close {
    position:absolute; 
    z-index:600; 
    right:0; 
    top:44px; 
    display:block; 
    overflow:hidden; 
}
.full_menu_close i {
    font-size: 29px;
    color: #1d1d1d;

}
/* subMenu */
.subMenu {
    height:100%;
    display: flex;
}
.subMenu > li {
    flex:1;
    padding:0 38px; 
    height:100%; 
    border-right:1px solid #eee;
}
.subMenu > li:hover {
    background-color: #f9f9f9;
}
.subMenu > li:hover dt a {
    color:#037a4e;
}
.subMenu > li:last-child {
    border-right: none;
}
.subMenu > li dt {
    padding:44px 0;
    margin-bottom:32px;
}
.subMenu > li dt a {
    font-size:21px; 
    font-weight:700; 
    color:#000;
}
.subMenu > li dd {
    margin-bottom:20px;
}
.subMenu > li dd a {
    display: block;
    color:#333;
    word-break: keep-all;
}
.subMenu > li dd a i {
    display: none;
    font-size: 15px;
}
.subMenu > li dd.openWin a i {
    display: inline-block;
    margin-left: 3px;
    color:#037a4e;
}
.subMenu > li dd a:hover, .subMenu > li dd a:focus {
    color:#037a4e; 
    font-weight:bold;
}

/* subMenu depth2 */
.subMenu li dd ul {
    margin:6px 0; 
    padding:10px 20px 15px; 
    background:#f1f4f7; 
    border-radius:10px;
}
.subMenu li dd li {
    position: relative;
    line-height: 2;
}
.subMenu li dd li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width:3px;
    height:3px;
    border-radius: 5px;
    background: #333;
}
.subMenu li dd li a {
    padding-left:10px;
    color:#555; 
    font-size:15px;
}
.subMenu li dd li a:hover, .subMenu li dd li a:focus {
    color:#000; 
    font-weight:bold;
}



/******************** footer ********************/
.footer {
    position:relative;
    z-index:9999;
    width:100%;
    padding-bottom:157px;
    background:#1b1b1b url("../image/common/foot_bg.png") center bottom no-repeat;
    background-size: contain;
}

.footer .inner {
    position:relative;
    padding-top:60px;
    padding-bottom:80px;
    width: 100%;
}

.fnb {
    display: flex;
    gap:40px;
    margin-bottom: 50px;   
}
.fnb a {
    color:#fff;
}

/***** address  *****/

.footer address {
    display:flex;
    gap:40px;
    color:#fff;
}
.footer p {
    padding-top:10px;
    color:#999999;
    font-size:15px;
    text-transform: uppercase;
}





/******************** email_popup ********************/
#email_popup {display:none; position:absolute; z-index:999999; top:0; left:0; right:0; bottom:0; width:100%; height:100%; background:url("../image/main/bg70.png") 0 0 repeat;}
.email_popup {position:absolute; z-index:9999999; top:50%; left:50%; margin-left:-350px; padding:40px 50px 50px; width:600px; height:130px; background:#fff; border:3px solid #02a388;}
.email_popup h4 {padding-bottom:8px; color:#222; font-size:30px;}
.email_popup p {color:#222; font-size:16px; word-break:break-all; text-align:justify;}
.email_popup p span {color:#02a388; font-weight:bold;}
.email_popup .close {position:absolute; z-index:9999999; top:30px; right:30px; display:block; overflow:hidden; width:25px; height:28px; background:url(../image/main/gnb_close_on.png) 0 0 no-repeat; text-indent:-500px;}





/******************** sub_layout ********************/
/***** sub_visual *****/
#sub_visual {
    position:relative; 
    z-index:250; 
    min-width:1200px; 
    height:300px;
    display: flex;
    align-items: center;
}
#sub_visual > div {
    margin:0 auto; 
    width:1200px;
    text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);
}
.sub_title {
    overflow:hidden; 
    text-align: center;
    color: #fff;
}
.sub_title h2 {
    font-size: 48px;
    letter-spacing: -0.75px;

}
.sub_title p{
    letter-spacing: 1.5px;
    font-weight: 300;
    font-size: 14px;
    margin-bottom: 60px;
}

/* important_notice */
#sub_visual .important_notice {
    bottom: 30px;
    font-size: 14px;
    width:max-content;
    text-shadow: none;
}
#sub_visual .important_notice p {
    height:45px;
    padding: 0 20px;
    color:#fff;
    background-color: rgba(0, 0, 0, 0.7) !important;
}

#sub_visual .important_notice p:first-child strong:nth-child(1) {
    margin-right:20px;
    font-weight: 600;
}
#sub_visual .important_notice p:first-child strong:nth-child(2) {
    margin-right:10px;
    font-weight: 600;
    color:#ffe61b;
}
#sub_visual .important_notice p:first-child span{
    background-color: transparent !important;
    justify-content: flex-start !important;
}
#sub_visual .important_notice p:last-child {
    width:max-content;
}
#sub_visual .important_notice p:last-child strong {
    color:#ffe61b !important;
}


/***** sub_menu *****/
#sub_content {
    position:relative;
    z-index:260;
    margin:0 auto 120px;
    display: flex;
    flex-direction: column;
    gap:80px;
}
#sub_menu {
    display: flex;
    justify-content: center;
    background-color: #037a4e;
}
#side_menu {
    display: flex;
    justify-content: center;
    width:1200px;
}

#side_menu > li {
    background-color: #037a4e;
}


#side_menu > li > a {
    display:flex;
    align-items: center;
    justify-content: center;
    gap:8px;
    padding:20px 42px;
    color:#fff;
    font-size:19px;
}
#side_menu > li >  a i {
    font-size: 15px;
    color:#8e8e8e;
}
#side_menu .side_menu_1death_on {
    background-color: #fff;
    /*border-top-left-radius: 15px;
    border-top-right-radius: 15px;*/
}
#side_menu .side_menu_1death_on a {
    font-weight:bold;
    color:#000;
}
#side_menu .side_menu_1death_on a i {
    color:#037a4e;
}
#side_menu > li.openWin img {
    margin-left:10px;
}
/* side_menu depth2 */
#side_menu ul {
    padding:24px 30px;
    background:#f1f4f7;
    border-radius: 5px;
}
#side_menu ul > li {
    padding:0 0 10px 10px;
    background:url("../image/main/menu_bullet.gif") left 10px no-repeat;
}
#side_menu ul > li:last-child {
    padding:0 0 0 10px;
}
#side_menu ul > li a {
    display: block;
    font-weight:700;
    color:#555;
    font-size:15px;
}
#side_menu ul > li a:hover, #side_menu ul > li a:focus {
    color:#037a4e !important;
}

#side_menu ul > li.side_menu_2death a {
    font-weight: 400;
}



/* side_menu depth3 */
.side_menu_3death {margin:30px 0 56px; text-align:center;}
.side_menu_3death ul {display:inline-block; margin-top:-1px; }
.side_menu_3death ul > li {display:inline-block; z-index:1; position:relative; margin:0 0 0 -1px; border:1px solid #ddd; background:#fff;}
.side_menu_3death ul > li:first-child {border-radius:12px 0 0 12px;}
.side_menu_3death ul > li:last-child {border-radius:0 12px 12px 0;}
.side_menu_3death ul > li a {display:block; color:#555; padding:12px 60px;}
.side_menu_3death ul > li a:hover, .side_menu_3death ul > li a:focus {color:#000; font-weight:bold;}
.side_menu_3death ul > li:hover, .side_menu_3death ul > li:focus {border:1px solid #037a4e; z-index:2}

.side_menu_3death ul > li.side_menu_2death_on {z-index:2; border:1px solid #037a4e;}
.side_menu_3death ul > li.side_menu_2death_on a {background:none; color:#000; font-weight:bold;}


/***** page *****/
#page {
    position:relative; 
    min-height:200px;
    flex:1;
    margin-top:60px;
}

/* page_head */
#page_head {
    padding:0 0 60px;
    display: grid;
    gap:24px;
    align-items: center;
    justify-content: center;
}
#page_head h1 {
    font-size: 32px;
    color: #000;
    line-height: 1;
    text-align: center;
}

/* location */
#location {
    display: flex;
    gap:24px;
    overflow:hidden;
    justify-content: center;
}
#location li {
    position: relative;
    height:20px;
    line-height:20px;
    font-size:15px;
}
#location li:not(:first-child)::before {
    content:"\f105";
    font-family:"FontAwesome", "Font Awesome";
    position: absolute;
    left:-15px;
    top:50%;
    transform: translateY(-50%);
    font-size: 13px;
    color:#999;
}
#location li.home {
    overflow:hidden;
    margin:0;
    padding:0 0 0 15px;
    text-indent: -99999px;
}
#location li.home::before {
    content:"\f015";
    font-family:"FontAwesome", "Font Awesome";
    position: absolute;
    left:0;
    top:50%;
    transform: translateY(-50%);
    font-size: 12px;
    color:#999;
    text-indent: 0;
}
#location strong {
    color:#000;
    font-weight:700;
}
#location .modify {
    float:right;
    cursor:pointer;
}

/* contents */
#contents {clear:both; position:relative;}