/* common */

:root {
    --main-color: #FF5500;
    --sub-color: #014694;
  }

.container {max-width: 1280px; margin: 0 auto; width: 100%; box-sizing: border-box;}


/* header */

#header {width: 100%; background: #fff; box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;}
#header .box {transition: all 0.3s; max-width: 1280px; margin: 0 auto; height: 100px; display: flex; align-items: center; justify-content: space-between;}
#header .box .logo {min-width: 232px;}
#header .box .logo img {transition: all 0.3s; height: 60px;}
#header .box .gnb nav ul {display: flex; align-items: center;}
#header .box .gnb nav ul li {margin-right: 50px;}
#header .box .gnb nav ul li a {transition: all 0.3s; font-size: 20px; font-weight: 700;}
#header .box .gnb nav ul li a:hover {color: var(--main-color);}
#header .box .contact {min-width: 232px; display: flex; justify-content: flex-end;}
#header .box .contact a {transition: all 0.3s; display: flex; align-items: center; padding: 12px 20px; background: var(--main-color); border-radius: 200px;}
#header .box .contact a:hover {background: #c94300;}
#header .box .contact a img {margin-right: 7px; height: 28px;}
#header .box .contact a p {font-size: 18px; font-weight: 700; color: #fff;}

#header.fixed { position: fixed; left: 0; top: 0;}
#header.fixed .box {height: 80px;}
#header.fixed .box .logo img {height: 50px;}
#header.fixed .box .contact a {padding: 8px 20px;}


/* main */

.title {margin-bottom: 70px; text-align: center;}
.title h3 {font-size: 45px; font-weight: 800; margin-bottom: 15px;}
.title p {font-size: 25px; font-weight: 500; color: var(--main-color);}

.main_visual {width: 100%; background: url(/web/img/main_bg_2.jpg) no-repeat center; background-size: cover;}
.main_visual .container {height: 550px; display: flex; align-items: center; justify-content: center;}
.main_visual .text_box {text-align: center; text-shadow:0px 4px 3px rgba(0,0,0,0.4),0px 8px 13px rgba(0,0,0,0.1),0px 18px 23px rgba(0,0,0,0.1);}
.main_visual .text_box p {font-size: 27px; font-weight: 700; color: #eedf5a; margin-bottom: 30px;}
.main_visual .text_box h2 {font-size: 50px; font-weight: 900; color: #014694; -webkit-text-stroke: 0.5px #fff; margin-bottom: 20px;}
.main_visual .text_box h2 span {color: #971414;}
.main_visual .text_box a {transition: all 0.3s; display: inline-block; padding: 15px 24px; background: var(--main-color); margin-top: 30px; border-radius: 200px; text-shadow: none; color: #fff; font-size: 20px; font-weight: 700; box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;}
.main_visual .text_box a:hover {background: #c94300;}

.mc_1 {padding: 100px 0px;}
.mc_1 .container {display: flex; align-items: center;}
.mc_1 .text_box {width: 50%; padding-right: 70px;}
.mc_1 .text_box h3 {font-size: 37px; font-weight: 800; margin-bottom: 30px;}
.mc_1 .text_box p {font-size: 25px; font-weight: 500; margin-bottom: 15px; color: #555;}
.mc_1 .text_box article {font-size: 20px; line-height: 1.5; color: #353535; margin-bottom: 50px;}
.mc_1 .text_box a {transition: all 0.3s; display: inline-block; padding: 12px 25px; background: var(--main-color); border-radius: 200px; text-shadow: none; color: #fff; font-size: 18px; font-weight: 700;}
.mc_1 .text_box a:hover {background: #c94300;}
.mc_1 .img_box {width: 50%;}
.mc_1 .img_box img {width: 100%;}

.mc_2 {background: #EFF1F6; padding: 100px 0px;}
.mc_2 ul {display: flex; flex-wrap: wrap; margin-bottom: 50px;}
.mc_2 ul > li {transition: all 0.3s; width: calc(33.3% - 33px); margin-right: 50px; background: #fff; box-sizing: border-box; padding: 50px; border: 1px solid #d0d0d0;}
.mc_2 ul > li:hover {border-color: var(--main-color);}
.mc_2 ul > li .sub_title {margin-bottom: 30px; display: flex; align-items: center; flex-direction: column; justify-content: center;}
.mc_2 ul > li .sub_title .icon {margin-bottom: 15px; width: 100px; height: 100px; display: flex; align-items: center; justify-content: center; background: var(--main-color); border-radius: 100%;}
.mc_2 ul > li .sub_title .icon img {height: 50px;}
.mc_2 ul > li .sub_title p {font-size: 28px; font-weight: 800;}
.mc_2 ul > li:last-child {margin-right: 0;}
.mc_2 ul > li ol {text-align: center;}
.mc_2 ul > li ol li {font-size: 21px; margin-bottom: 12px; font-weight: 500;}
.mc_2 ul > li ol li:last-child {margin-bottom: 0;}
.mc_2 .info {text-align: center;}
.mc_2 .info span {font-size: 22px; color: var(--sub-color); font-weight: 500;}

.mc_3 {padding: 100px 0px;}

.mc_4 {background: url(/web/img/mc_4_bg.jpg) no-repeat center / cover;}
.mc_4 .container {height: 300px; display: flex; align-items: center; justify-content: center;}
.mc_4 .text_box {text-align: center; color: #fff;}
.mc_4 .text_box h3 {font-size: 35px; font-weight: 800; margin-bottom: 15px;}
.mc_4 .text_box p {font-size: 20px; font-weight: 500; margin-bottom: 30px;}
.mc_4 .text_box a {transition: all 0.3s; display: inline-block; padding: 15px 24px; background: var(--main-color); border-radius: 200px; text-shadow: none; color: #fff; font-size: 17px; font-weight: 700; box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;}
.mc_4 .text_box a:hover {background: #c94300;}


/* footer */

#footer {background: #1d1c1b; padding: 50px 0px; text-align: center;}
#footer ul {display: flex; flex-wrap: wrap; justify-content: center; max-width: 748px; margin: 0 auto 30px;}
#footer ul li {display: flex; font-size: 14px; margin: 0px 10px 10px;}
#footer ul li b {font-weight: 500; color: #fff; margin-right: 10px;}
#footer ul li p {color: #ccc;}
#footer span {font-size: 13px; color: #555;}


/* responsive */

@media (max-width: 1280px) {
  .container {max-width: 100%; padding-left: 50px; padding-right: 50px;}

  #header .box {max-width: 100%; padding: 0px 50px;}

  #header .box .gnb nav ul li a {font-size: 18px;}
  #header .box .contact a p {font-size: 16px;}

  .main_visual .text_box p {font-size: 22px;}
  .main_visual .text_box h2 {font-size: 50px;}
  .main_visual .text_box a {font-size: 18px;}

  .mc_1 .text_box p {font-size: 20px;}
  .mc_1 .text_box h3 {font-size: 32px;}
  .mc_1 .text_box article {font-size: 16px;}
  .mc_1 .text_box a {font-size: 16px;}

  .title {margin-bottom: 50px;}
  .title h3 {font-size: 35px;}
  .title p {font-size: 20px;}

  .mc_2 ul > li {width:calc(33.3% - 15px); margin-right:22px; padding: 40px 20px;}
  .mc_2 ul > li .sub_title p {font-size: 23px;}
  .mc_2 ul > li ol li {font-size: 18px;}
  .mc_2 .info span {font-size: 18px;}

  .mc_4 .text_box h3 {font-size: 30px;}
  .mc_4 .text_box p {font-size: 18px;}
  .mc_4 .text_box a {font-size: 16px;}

}

@media (max-width: 1024px) {

  .pc {display: none;}

  .container {padding-left: 20px; padding-right: 20px;}
  #header .box {padding: 0px 20px;}
  #header .box .logo {min-width: 130px;}
  #header .box .logo img {height: 50px;}
  #header .box .gnb nav ul li {margin-right: 30px;}
  #header .box .gnb nav ul li:last-child {margin-right: 0;}
  #header .box .contact {display: none;}

  .main_visual .text_box p {font-size: 20px;}
  .main_visual .text_box h2 {font-size: 43px;}
  .main_visual .text_box a {font-size: 16px;}

  .mc_1 .text_box {padding-right: 30px;}
  .mc_1 .text_box p {font-size: 16px;}
  .mc_1 .text_box h3 {font-size: 24px;}
  .mc_1 .text_box article {font-size: 16px;}
  .mc_1 .text_box a {font-size: 14px;}

  .title h3 {font-size: 28px;}
  .title p {font-size: 16px;}

  .mc_2 ul > li {width:calc(33.3% - 10px); margin-right:15px; padding:30px 20px;}
  .mc_2 ul > li .sub_title {margin-bottom: 25px;}
  .mc_2 ul > li .sub_title .icon {width: 80px; height: 80px;}
  .mc_2 ul > li .sub_title .icon img {height: 40px;}
  .mc_2 ul > li .sub_title p {font-size: 19px;}
  .mc_2 ul > li ol li {font-size: 16px;}
  .mc_2 .info span {font-size: 16px;}

  .mc_4 .text_box h3 {font-size: 25px;}
  .mc_4 .text_box p {font-size: 16px;}
  .mc_4 .text_box a {font-size: 14px;}

}

@media (max-width: 768px) {

  #header .box {height: 70px;}
  #header .box .logo img {height:30px;}
  #header .box .gnb nav ul li {margin-right: 10px;}
  #header .box .gnb nav ul li a {font-size: 12px;}
  #header.fixed .box {height: 60px;}
  #header.fixed .box .logo img {height: 30px;}

  .main_visual {margin-bottom: 70px;}
  .main_visual .text_box p {font-size:18px;line-height:1.5; margin-bottom: 20px;}
  .main_visual .text_box h2 {font-size: 36px; line-height: 1.5;  margin-bottom: 18px;}
  .main_visual .text_box h2 span {display: block;}
  .main_visual .text_box a {font-size: 14px;}

  .mc_1 {padding: 70px 0px;}
  .mc_1 .container {flex-direction: column-reverse;}
  .mc_1 .img_box {width: 100%;}
  .mc_1 .text_box {width: 100%; padding-right: 0; margin-top: 30px;}

  .mc_1 .text_box p {font-size: 14px; margin-bottom: 20px;}
  .mc_1 .text_box h3 {font-size: 21px;}
  .mc_1 .text_box article {margin-bottom: 30px; font-size: 14px;}

  .mc_2 {padding: 70px 0px;}

  .title h3 {font-size: 23px;}
  .title p {font-size: 14px;}

  .mc_2 ul {flex-direction: column; margin-bottom: 35px;}
  .mc_2 ul > li {width: 100%; margin-right: 0; margin-bottom: 20px;}
  .mc_2 ul > li:last-child {margin-bottom: 0;}
  .mc_2 ul > li ol li {font-size: 14px;}
  .mc_2 .info span {font-size: 14px; line-height: 1.5;}

  .mc_3 {padding: 70px 0px;}

  .mc_4 .text_box h3 {font-size: 22px;}
  .mc_4 .text_box p {font-size: 14px; line-height: 1.5;}
  .mc_4 .text_box a {font-size: 14px;}

  #footer span {line-height: 1.5; font-size: 12px;}
  #footer ul li {font-size: 12px;}
}