/******** common ********/
.wrap {
  overflow: hidden;
  position: relative;
  width: 100%;
  font-family: "NotoSansKR", sans-serif;
  color: #333;
}
.wrap .str {
  font-weight: 600;
}
.pc_area {
  display: block;
}
.mobi_area {
  display: none;
}
.cont_size {
  width: 1200px;
  margin: 0 auto;
  box-sizing: border-box;
}

@media screen and (max-width: 1200px) {
  .wrap .cont_size {
    width: 100%;
  }
  .wrap .pc_area {
    display: none;
  }
  .wrap .mobi_area {
    display: block;
  }
}

/* top popup */
.top_popup {
  display: none;
  background: #45494d;
  transition: all 0.3s;
}
.top_popup.show {
  display: block;
}
.top_popup_cont {
  position: relative;
  padding: 20px 0;
}
.top_popup_items {
  display: flex;
}
.top_popup_item {
  flex: 1 1 50%;
  display: flex;
  align-items: center;
  padding: 10px 0 10px 5%;
}
.top_popup_item:first-of-type {
  border-right: 1px dashed #777;
}
.top_popup_item .icon {
  margin-right: 3%;
  padding: 5px;
  border: 2px solid transparent;
  border-radius: 100%;
  transition: all 0.2s;
}
.top_popup_item:hover .icon {
  transform: scale(1.07);
  border: 2px solid #fff;
}
.top_popup_item .txt {
  color: #fff;
  font-size: 2.4rem;
}
.top_popup_bottom {
  position: absolute;
  bottom: 20px;
  right: 0;
  display: flex;
  z-index: 9;
}
.top_popup_bottom .ipt_chk {
  width: 18px;
  height: 18px;
  vertical-align: middle;
}
.top_popup_bottom .ipt_label {
  cursor: pointer;
}
.top_popup_bottom .ipt_label > .txt {
  position: relative;
  padding-right: 1em;
  margin-right: 1em;
  color: #eee;
  font-size: 1.6rem;
  vertical-align: middle;
}
.top_popup_bottom .ipt_label > .txt:before {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  display: block;
  width: 1px;
  height: 12px;
  background: #aaa;
  transform: translateY(-50%);
}
.top_popup_btn_cls {
  padding: 0;
  background: none;
  border: 0;
  color: #eee;
  font-size: 1.6rem;
  vertical-align: middle;
}
.top_popup_btn_cls .icon {
  vertical-align: middle;
}
@media screen and (max-width: 768px) {
  .top_popup_cont {
    padding: 5px 0;
  }
  .top_popup_item {
    padding: 5px 10px;
    border-bottom: 1px dashed #666;
  }
  .top_popup_item .icon {
    width: 40px;
    height: 40px;
  }
  .top_popup_item .txt {
    font-size: 1.4rem;
  }
  .top_popup_bottom {
    position: static;
	  padding: 3px;
    box-sizing: border-box;
  }
  .top_popup_bottom .ipt_label > .txt {
    font-size: 1.5rem;
  }
  .top_popup_bottom .ipt_label > .txt:before {
    display: none;
  }
  .top_popup_bottom .ipt_chk {
    width: 15px;
    height: 15px;
  }
  .top_popup_btn_cls {
    margin-left: auto;
    font-size: 1.2rem;
  }
  .top_popup_btn_cls .icon {
    width: 12px;
    height: 12px;
  }
}

/* header */
.header {
  position: absolute;
  width: 100%;
}
.header > .cont_size {
  position: relative;
  display: flex;
  padding-top: 35px;
}
.logo {
  position: relative;
  margin-right: auto;
  z-index: 99;
}
@media screen and (max-width: 1200px) {
  .header > .cont_size {
    height: 80px;
    padding: 0;
  }
  .logo {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
  }
}
@media screen and (max-width: 768px) {
  .header > .cont_size {
    height: 50px;
    padding: 0;
  }
  .logo {
    width: 200px;
  }
  .logo img {
    display: block;
    width: 100%;
  }
}
@media screen and (max-width: 500px) {
  .logo {
    width: 100px;
    top:40%;
    padding-left: 10px;
  }
}

/* user menu */
.menu_user {
  position: absolute;
  top: 10px;
  right: 0;
  z-index: 99;
}
.menu_user > .btn_login {
  padding: 3px 15px;
  margin-right: 5px;
  background: #5487a3;
  font-size: 1.4rem;
  border-radius: 15px;
  color: #fff;
  border: 1px solid #5487a3;
  transition: all 0.2s;
  vertical-align: middle;
}
.menu_user > .btn_login {
  padding: 3px 15px;
  margin-right: 5px;
  background: #5487a3;
  font-size: 1.4rem;
  border-radius: 15px;
  color: #fff;
  border: 1px solid #5487a3;
  transition: all 0.2s;
  vertical-align: middle;
}
.menu_user > .btn_login:hover {
  box-shadow:1px 1px 3px rgba(0,0,0,0.7) inset;
  border:1px solid rgba(255,255,255,0.5);
}
.menu_size {
  display: inline-block;
  vertical-align: middle;
}
.menu_size > .txt {
  font-size: 1.4rem;
  color: #5487a3;
}
.menu_size_btn {
  overflow: hidden;
  position: relative;
  width: 20px;
  height: 20px;
  vertical-align: middle;
  background: none;
  border: 1px solid #ccc;
  transition: all 0.2s;
}
.menu_size_btn:hover {
  background: #fff;
  border: 1px solid #5487a3;
}
.menu_size_btn > .icon {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  vertical-align: middle;
}
@media screen and (max-width: 1200px) {
  .menu_user {
    top: 50%;
    right: 45px;
    transform: translateY(-50%);
  }
  .menu_user > .link {
    margin-right: 10px;
    padding: 2px 10px;
    font-size: 1.3rem;
  }
  .menu_size {
    display: none;
  }
  .menu_user > .btn_login.modify {display:none;}
}

/* top menu */
.menu_top {
  position: relative;
  padding-top: 15px;
  z-index: 99;
}
.menu_top_fst {
  display: flex;
  height: 70px;
}
.menu_top_fst > li {
}
.menu_top_fst > li > .link {
  display: block;
  padding-left: 2.2em;
  font-size: 2rem;
  font-weight: 600;
  text-shadow: 1px 1px 1px rgba(255, 255, 255, 0.5),
    1px -1px 1px rgba(255, 255, 255, 0.5), -1px 1px 1px rgba(255, 255, 255, 0.5),
    -1px -1px 1px rgba(255, 255, 255, 0.5);
}
.menu_top_fst > li > .link:hover {
  color: #2a66a3;
}
.menu_top_all {
  display: none;
  position: absolute;
  top: 120px;
  left: 0;
  width: 100%;
  background: #fff;
  border-top: 1px solid #ddd;
  box-shadow:0px 3px 3px rgba(0,0,0,0.4);
  z-index: 99999999;
}
.menu_top_all_fst {
  display: flex;
}
.menu_top_all_fst > li {
  flex: 1 1 23%;
  padding: 20px;
  border-right: 1px solid #ddd;
}
.menu_top_all_fst > li:last-of-type {
  border-right: 0;
}
.menu_top_all_fst > li > .link {
  position: relative;
  display: block;
  margin-bottom: 15px;
  font-size: 2rem;
  font-weight: 600;
}
.menu_top_all_fst > li > .link:before {
  content: "";
  position: absolute;
  top: 0%;
  bottom: 0;
  left: -12px;
  display: block;
  width: 5px;
  height: 5px;
  margin: auto;
  border: 2px solid #399bd8;
  transition: all 0.2s;
  transform: rotate(45deg);
  opacity: 0;
}
.menu_top_all_fst > li > .link:hover:before {
  width: 8px;
  height: 8px;
  opacity: 1;
}
.menu_top_all_scd {
}
.menu_top_all_scd > li {
}
.menu_top_all_scd > li > .link {
  position: relative;
  display: block;
  padding: 7px 0;
}
.menu_top_all_scd > li > .link:hover {
  color: #399bd8;
}
.menu_top_all_scd > li > .link:before {
  content: "";
  position: absolute;
  top: 0%;
  bottom: 0;
  left: -11px;
  display: block;
  width: 3px;
  height: 3px;
  margin: auto;
  background: #399bd8;
  transition: all 0.2s;
  transform: rotate(45deg);
  opacity: 0;
}
.menu_top_all_scd > li > .link:hover:before {
  width: 6px;
  height: 6px;
  opacity: 1;
}
.menu_top_all_user {
  display: none;
  align-items: center;
  margin-bottom: 20px;
}
.menu_top_all_user .btn_cls {
  display: block;
  width: 20px;
  height: 20px;
  padding: 0px;
  margin-right: 5px;
  color: #fff;
  font-size: 11px;
  line-height: 20px;
  text-align: center;
  border: 0;
  background: #ddd;
  border-radius: 100%;
}
.menu_top_all_user .btn_cls:hover {
  background: #2a66a3;
}
.menu_top_all_user .txt {
  margin-right: 10px;
  font-size: 1.3rem;
  color: #666;
}
.menu_top_all_user .txt .str {
  font-size: 1.4rem;
}
.menu_top_all_user .btn_login {
  margin-right:3px;
  margin-left:auto;
  padding: 3px 10px;
  background: #555;
  color: #fff;
  font-size: 1.5rem;
  border-radius: 3px;
}
.menu_mobi_bg {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.6);
  z-index: 99999999;
}
@media screen and (max-width: 1200px) {
  .menu_top_fst {
    display: none;
  }
  .menu_top_all {
    position: fixed;
    top: 0;
    right: -290px;
    left: auto;
    display: block;
    width: 280px;
    height: 100%;
    padding: 20px;
    background: #fff;
    border: 0;
    box-sizing: border-box;
    box-shadow:none;
    transition: all 0.2s;
  }
  .menu_top_all.show {
    right: 0;
  }
  .menu_top_all_fst {
    display: block;
    border-top: 1px solid #eee;
  }
  .menu_top_all_fst > li {
    padding: 0px;
    border-right: 0;
    border-bottom: 1px solid #eee;
  }
  .menu_top_all_fst > li > .link {
    padding: 20px 5px;
    margin: 0;
    font-weight: 400;
    cursor: pointer;
  }
  .menu_top_all_fst > li > .link:before {
    display: none;
  }
  .menu_top_all_scd {
    display: none;
    padding: 0;
    background: #eee;
  }
  .menu_top_all_scd > li > .link {
    padding: 15px 5px 15px 25px;
    /*font-size: 1.4rem;*/
    font-weight: 500;
  }
  .menu_top_all_scd > li > .link:before {
    display: none;
  }
  .menu_top_all_user {
    display: flex;
  }
  .menu_mobi_bg.show {
    display: block;
  }
}

/* mobile menu */
.menu_top_mobi_btn {
  display: none;
  position: absolute;
  top: 50%;
  right: 10px;
  width: 30px;
  height: 30px;
  transform: translateY(-50%);
  background: none;
  border: 0;
  z-index: 99;
}
.menu_top_mobi_btn > .line {
  display: block;
  width: 100%;
  height: 2px;
  background: #5487a4;
}
.menu_top_mobi_btn > .line {
  position: absolute;
  left: 0;
}
.menu_top_mobi_btn > .line:nth-of-type(1) {
  top: 2px;
}
.menu_top_mobi_btn > .line:nth-of-type(2) {
  top: 50%;
  transform: translateY(-50%);
}
.menu_top_mobi_btn > .line:nth-of-type(3) {
  bottom: 2px;
}
@media screen and (max-width: 1200px) {
  .menu_top_mobi_btn {
    display: block;
  }
}
/*** main ***/
.main {
  width: 100%;
}

/* banner */
.banner_atc {
  position: relative;
}
.banner_area {
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 34.73%;
  z-index: 9;
}
.banner_cont {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
  transform: translate(-50%, -50%);
}

@media screen and (max-width: 768px) {
	.banner_area {
	  padding-bottom: 50%;
	}
  .banner_cont {
    width:150%;
  }
}

/* login */
.main_login {
  position: absolute;
  top: 55%;
  right: 50%;
  width: 360px;
  padding: 25px 30px;
  margin-right: calc((1200px - 360px) * -1);
  transform: translate(-50%, -50%);
  background: #5487a3;
  text-align: center;
  color: #fff;
  z-index: 99;
}
.main_login_tit {
  margin-bottom: 20px;
  font-size: 2.3rem;
}
.main_login_ipt {
  position: relative;
  width: 100%;
  height: 50px;
  margin-bottom: 5px;
  background: #fff;
  border: 1px solid #eee;
}
.main_login_ipt .icon {
  position: absolute;
  top: 50%;
  left: 25px;
  transform: translateY(-50%);
  color: #555;
}
.main_login_ipt .ipt_txt {
  width: 100%;
  padding-left: 50px;
  height: 100%;
  border: 0;
  font-size: 1.4rem;
}
.main_login_ipt .ipt_txt:focus {
  -webkit-tap-highlight-color: transparent;
  outline: none;
  -ms-touch-action: manipulation;
  touch-action: manipulation;
  border: 1px solid #f46f21;
}
.main_login_btn {
  overflow: hidden;
  position: relative;
  display: block;
  width: 100%;
  height: 48px;
  padding: 0.2em 0;
  margin-bottom: 20px;
  background: #45494d;
  border: 2px solid #45494d;
  color: #fff;
  font-size: 2.3rem;
  transition: all 0.2s;
}
.main_login_btn .txt.eng {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  transform: translate(-50%, -50%);
  background: #45494d;
  transition: all 0.2s;
}
.main_login_btn .txt.kor {
  position: absolute;
  top: -100%;
  left: 50%;
  width: 100%;
  transform: translate(-50%, -50%);
  background: #45494d;
  transition: all 0.2s;
}
.main_login_btn:hover .txt.eng {
  top: 150%;
}
.main_login_btn:hover .txt.kor {
  top: 50%;
}
.main_login_service {
  display: flex;
  margin-bottom: 20px;
}
.main_login_service > .link {
  position: relative;
  flex: 1 1 30%;
  font-size: 1.4rem;
}
.main_login_service > .link:hover {
  opacity: 0.8;
}
.main_login_service > .link:before {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  display: block;
  width: 1px;
  height: 1em;
  background: #fff;
  transform: translateY(-50%);
}
.main_login_service > .link:last-of-type:before {
  display: none;
}
.main_login_btn_step {
  display: block;
  width: 100%;
  padding: 0.6em 0;
  color: #333;
  font-size: 1.8rem;
  font-weight: 600;
  background: #ccdbe4;
  transition: all 0.2s;
}
.main_login_btn_step:hover {
  background: #184863;
  color: #fff;
}
.main_login_btn_step.blue {
  margin-top:4px;
  margin-bottom:4px;
  background: #2a66a3;
  color: #fff;
  box-shadow:1px 1px 1px rgba(0,0,0,0.2) inset;
}
.main_login_btn_step.blue:hover {
  background: #184863;
  color: #fff;
}
@media screen and (max-width: 1500px) {
  .main_login {
    top: auto;
    bottom: 0;
    padding:10px;
    transform: translate(-50%, 0%);
  }
}
@media screen and (max-width: 1200px) {
  .main_login {position:static; width:100%; height:auto; padding:15px; transform:translate(0%,0%);}
  .main_login > form {position:relative; display:flex; flex-wrap:wrap;}
  .main_login_tit {display:none;}
  .after .main_login_tit {display:inline-block; margin:0 5px 0 0; font-size:1.4rem;}
  .after .main_login_info {display:inline-block;}
  .after .main_login_info .link {display:inline-block; margin:0;}
  .after .main_login_info .link.modify {display:inline-block; margin:0;}
  .main_login_tit_icon {display:none;}
  .main_login_service {display:none;}
  .main_login_ipt {width:100%; height:30px;}
  .main_login_ipt .ipt_txt {padding-left:8px;}
  .main_login_ipt .icon {display:none;}
  .main_login_btn {width:100%; height:30px; padding:0.3em 0; margin-bottom:5px; font-size:1.6rem;}
  .main_login_btn_step {font-size:1.4rem;}
}

.main_login_info {display: flex; justify-content: center; margin-bottom: 15px;}
.main_login_info .link {display: block; margin: 0 1px; padding: 0.5em 0.9em; background-color: #386eaf; font-size: 1.2rem; transition: all 0.1s;}
.main_login_info .link.modify {display: block; margin: 0 1px; background-color: #164a66;}
.main_login_info .link.admin {background-color: #0b8065;}
.main_login_info .link.logout {background-color: #a63131;}
.main_login_info .link:hover {box-shadow:1px 1px 3px rgba(0,0,0,0.7) inset;}
.main_login_menu {display: flex; flex-wrap: wrap; margin-bottom: 10px;}
.main_login_menu > .link {position:relative; display: block; flex: 1 1 45%; margin: 1px; padding: 0.8em 0 0.8em; background-color: #fff; color: #3a5b81; font-size: 1.6rem; font-weight: 600; border-radius: 3px; border:1px solid #fff; transition:all 0.2s;}
.main_login_menu > .link:hover {padding-left:15px;}
.main_login_menu > .link .arw {position:relative; left:-10px; display:inline-block; padding-right:5px; vertical-align:middle; transition: all 0.2s; color:#386eaf; opacity:0;}
.main_login_menu > .link:hover .arw {opacity:1;}
.main_login_menu > .link .txt {position:relative; left:-10px; display:inline-block; vertical-align:middle; line-height:1;}
.main_login .btn_down {display: block; width: 100%; padding: 0.6em 0 0.6em; margin-bottom: 10px; color: #fff; font-family: inherit; font-size: 1.6rem; font-weight: 400; border: 0; background-color: #444; transition: all 0.2s;}
.main_login .btn_down:hover {background-color: #3a5b81; color: #fff;}
.main_login_foot {display: flex; align-items: center; justify-content: space-between; font-size: 1.3rem;}
.main_login_foot .link {position: relative;}
.main_login_foot .link:before {content: ''; position: absolute; bottom: 0; left: 0; display: block; width: 0; height: 1px; background-color: #fff; transition: width 0.2s;}
.main_login_foot .link:hover:before {width: 100%;}
.main_login_foot .num {position: relative; display: inline-block; width: 20px; height: 20px; margin-left: 3px; background-color: #173249; color: #fff; border-radius: 100%; vertical-align: middle; font-size: 1rem; line-height: 20px; z-index: 99;}

@media screen and (max-width: 1200px) {
  .main_login_info {margin-bottom:10px;}
  .main_login_menu > .link {padding:5px 0;}
}

/* quick menu */
.quick_atc {
}
.quick_atc .cont_size {
  display: flex;
  flex-wrap:wrap;
  padding: 2% 0 4.5%;
  text-align: center;
}
.quick_atc .cont_size > .link {
  flex: 1 1 12%;
  margin-bottom:20px;
}
.quick_atc .cont_size > .link + .link + .link + .link {margin-bottom:0px;}
.quick_atc .cont_size > .link > .icon {
  display: block;
  margin: 0 auto 20px;
  transform: scale(1);
  transition: all 0.2s;
  border-radius: 20%;
}
.quick_atc .cont_size > .link:hover > .icon {
  transform: scale(1.05);
  box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.4);
}
.quick_atc .cont_size > .link > .txt {
  position: relative;
  font-size: 1.8rem;
  font-weight: 600;
  z-index: 9;
}
@media screen and (max-width: 768px) {
  .quick_atc .cont_size {
    padding: 25px 0;
  }
  .quick_atc .cont_size > .link {flex: 1 1 30%;}
  .quick_atc .cont_size > .link > .icon {
    width: 60px;
    margin-bottom: 8px;
  }
  .quick_atc .cont_size > .link > .txt {
    font-size: 1.5rem;
  }
}

/* news */
.news_area {
  padding-bottom: 4.5%;
}
.news_area > .cont_size {
}
.news_area > .cont_size:after {
  content: "";
  display: block;
  clear: both;
}
.news_atc {
  float: left;
  width: calc(100% - 420px);
}
.news_tab {
  position: relative;
  display: flex;
  border-bottom: 2px solid #333;
}
.news_tab > .tab {
  padding-right: 1.8em;
  padding-top: 24px;
  padding-bottom: 24px;
  font-size: 3rem;
  font-weight: 600;
  color: #ccc;
  cursor: pointer;
}
.news_tab > .tab.show {
  color: #333;
}
.news_tab > .tab:hover {
  color: #399bd8;
}
.news_btn_more {
  display:none;
  position: absolute;
  top: 50%;
  right: 0;
  width: 32px;
  height: 32px;
  color: #999;
  transform: translateY(-50%);
  border-radius: 100%;
  border: 1px solid #ccc;
  background: #fff;
}
.news_btn_more.show {display:block;}
.news_btn_more:hover {
  border: 1px solid #399bd8;
}
.news_btn_more .icon {
  display: block;
  margin: 8px auto 0;
}
.news_tab_cont {
  display: none;
}
.news_tab_cont.show {
  display: block;
}
.news_tbl {
  width: 100%;
}
.news_tbl > li {
  border-bottom: 1px solid #ddd;
}
.news_tbl .link {
  position: relative;
  display: flex;
  width: 100%;
  padding: 28px 0;
  font-size: 1.9rem;
  transition: all 0.2s;
}
.news_tbl .link:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 2px;
  background: linear-gradient(
    90deg,
    rgba(255, 255, 255, 1) 0%,
    rgba(57, 155, 216, 1) 50%,
    rgba(255, 255, 255, 1) 100%
  );
  transition: all 0.2s;
  opacity: 0;
}
.news_tbl .link:hover:before {
  opacity: 1;
}
.news_tbl .link .sbj {
  overflow: hidden;
  flex: 0 1 calc(100% - 120px);
  text-overflow: ellipsis;
  white-space: nowrap;
}
.news_tbl .link .date {
  flex: 0 0 100px;
  margin-left: auto;
}
@media screen and (max-width: 1200px) {
  .news_area {
    padding-bottom: 0;
  }
  .news_tab > .tab {
    font-size: 2.2rem;
  }
  .news_tbl .link {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 1020px) {
  .news_atc {
    float: none;
    width: 100%;
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 768px) {
  .news_area > .cont_size {
    padding: 0 5px;
  }
  .news_tab {
  }
  .news_tab > .tab {
    font-size: 1.8rem;
    padding: 1em;
  }
  .news_tbl .link {
    padding: 1.5em 0;
    font-size: 1.6rem;
  }
  .news_tbl .link .sbj {
    flex: 0 1 calc(100% - 90px);
  }
  .news_tbl .link .date {
    flex: 0 0 80px;
    text-align: right;
  }
  .news_tbl > li + li + li + li {
    display: none;
  }
}

.account_atc {
  float: right;
  width: 360px;
}
.account_cont {
  padding: 5px 30px;
  margin-bottom: 30px;
  background: #eee;
}
.account_item {
  display: flex;
  align-items: flex-start;
  padding: 30px 0;
  border-bottom: 1px dashed #aaa;
}
.account_item:nth-of-type(2) {
  border-bottom: 1px solid #aaa;
}
.account_item:nth-of-type(3) {
  /*border-top: 1px solid #aaa;*/
  border-bottom: none;
}
.account_item > .icon {
  margin-right: 10px;
}
.account_item_cont {
}
.account_item_cont > .tit {
  margin-bottom: 15px;
  font-size: 2.3rem;
}
.account_item_cont > .num {
  margin-bottom: 3px;
  font-size: 1.8rem;
  color: #2a66a3;
}
.account_item_cont > .txt {
  font-size: 1.8rem;
  color: #666;
}
.account_cont .txt_caut {
  padding: 20px 0;
  font-size: 1.7rem;
}
.account_atc > .link_cafe {
  position: relative;
  display: flex;
  width: 100%;
  height: 85px;
  background: #edd600;
  line-height: 85px;
  color: #391c1c;
  transition: all 0.2s;
}
.account_atc > .link_cafe > .txt {
  padding-left: 20px;
  font-size: 2.3rem;
  font-weight: 200;
}
.account_atc > .link_cafe > .txt > .str {
  font-weight: 400;
}
.account_atc > .link_cafe > .icon {
  position: absolute;
  top: 50%;
  right: 20px;
  display: block;
  width: 30px;
  height: 30px;
  line-height: 30px;
  text-align: center;
  border-radius: 100%;
  transform: translateY(-50%);
  transition: all 0.2s;
}
.account_atc > .link_cafe:hover > .icon {
  width: 35px;
  height: 35px;
}
@media screen and (max-width: 1020px) {
  .account_atc {
    float: none;
    width: 100%;
  }
  .account_cont {
    padding-left: 20px;
    padding-right: 20px;
    margin-bottom: 20px;
  }
  .account_item_cont > .tit {
    font-size: 2rem;
  }
  .account_item_cont > .num {
    font-size: 1.6rem;
  }
  .account_item_cont > .txt {
    font-size: 1.6rem;
  }
  .account_cont .txt_caut {
    font-size: 1.5rem;
  }
  .account_atc > .link_cafe {
    margin-bottom: 20px;
  }
  .account_atc > .link_cafe {
    height: 60px;
    line-height: 60px;
  }
  .account_atc > .link_cafe > .txt {
    font-size: 2rem;
  }
}

/*** footer ***/
.footer {
  background: #f5f5f5;
}
.footer_cont {
  position: relative;
  padding: 3% 0;
}
.footer_copy {
  padding: 0.5em 0;
  font-size: 1.4rem;
}
.footer_copy_item {
  padding-right: 1em;
}
.footer .link_cafe {
  position: absolute;
  top: 50%;
  right: 396px;
  width: 150px;
  padding: 18px 15px;
  font-size: 1.4rem;
  border-radius: 3px;
  vertical-align: middle;
  transform: translateY(-50%);
  color:#fff;
  cursor: pointer;
  background: #ea997d;
}
.footer .link_cafe:hover {box-shadow:1px 1px 3px rgba(0,0,0,0.5) inset;}
.footer .link_cafe .arw {
  position:absolute; top:50%; right:16px; font-size:12px; transform:translateY(-50%) scale(1); transition: all 0.2s;
}
.footer .link_cafe:hover .arw {transform:translateY(-50%) scale(1.3);}
.footer_site {
  position: absolute;
  top: 50%;
  right: 0;
  width: 170px;
  padding: 15px 15px;
  border: 1px solid #ddd;
  font-size: 1.4rem;
  border-radius: 3px;
  vertical-align: middle;
  transform: translateY(-50%);
  cursor: pointer;
  background: #fff;
}
.footer_site .arw {
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translateY(-50%);
}
.footer_site_opt {
  display: none;
  position: absolute;
  bottom: 48px;
  left: 0;
  width: 100%;
  padding: 0;
  background: #fff;
  border: 1px solid #eee;
  box-sizing: border-box;
  box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.4);
}
.footer_site_opt > .link {
  display: block;
  padding: 15px;
  border-bottom: 1px solid #eee;
}
.footer_site_opt > .link:hover {
  background: #399bd8;
  color: #fff;
}
.footer_link_webchurch {position:absolute; top:50%; right:220px; transform:translateY(-50%);}
.footer_login_menu {position:fixed; bottom:-40px; left:0; display:flex; width:100%; background:#5487a3; transition: all 0.3s; z-index:99999999; opacity:0;}
.footer_login_menu .link {flex: 1 1 22%; padding:0.5em 0; color:#fff; font-size:1.4rem; text-align:center; line-height:1.2;}
@media screen and (max-width: 1200px) {
  .footer_site {
    display: none;
  }
  .footer_link_webchurch {display:none;}
  .footer .link_cafe {position:relative; top:auto; right:auto; display:block; margin-top:20px; padding:10px 10px; transform:translateY(0%);}
  .footer_login_menu.show {bottom:0px; opacity:1;}
}
@media screen and (max-width: 768px) {
  .footer_cont {
    padding: 3%;
  }
  .footer_copy {
    padding: 0px;
    font-size: 1.5rem;
    line-height: 1.7;
  }
  .footer_copy_item {
    display: block;
  }
  .footer_copy a {
    display: none;
  }
}

/*** sub ***/
.main.sub {
}
.main_sub_cont {
  position:relative;
  min-height: 300px;
}

.sub_top {
  position: relative;
  height: 300px;
  background: #cdd3e1;
}
.sub_top_tit {
  position: absolute;
  top: 60%;
  width: 100%;
  font-size: 4rem;
  text-align: center;
  color: #fff;
}
.main #solution_title_comm {position:relative; height: 0; opacity:0; z-index:-9;}
.sboard_tit .link {height: 0 !important; line-height: 0 !important;}

@media screen and (max-width:1200px){
  .main_sub_cont {padding: 0 10px;}
  .sub_top {height:140px;}
  .sub_top_tit {top:50%; font-size:2rem;}
}

/* sub select menu */
.menu_slct_area {position:relative; top:-30px; width:100%; margin:0 auto 20px; z-index:999998;}
.menu_slct_cont {background:#5487a3; box-shadow:3px 3px 3px rgba(0,0,0,0.2);}
.menu_slct_area .btn_home {float: left; width: 60px; height: 60px; padding: 0px 0; font-weight:bold; box-sizing: border-box; text-align: center; border-right: 1px solid #88abbf; line-height:65px;}
.menu_slct {float: left; position: relative; height: 60px; min-width:220px; padding: 0 38px 0 20px; box-sizing: border-box; border-right: 1px solid #88abbf; cursor: pointer;}
.menu_slct:hover {background-color:#88abbf;}
.menu_slct:hover .txt_slcted {color:#fff;}
.menu_slct:hover .icon_arw {color:#fff;}
.menu_slct .txt_slcted {position: relative; line-height: 60px; font-size: 1.8rem; color: #fff; text-align: left; z-index: 9998;}
.menu_slct .icon_arw {position: absolute; top: 50%; right: 15px; color: #fff; transform: translateY(-50%); z-index: 9;}
.menu_slct:hover {}
.menu_slct:hover .txt_slcted {}
.menu_slct:hover .icon_arw {}
.menu_slct.menu_slct_trd {display:none;}
.menu_slct.menu_slct_trd.active {display:block;}
.menu_slct_area .menu_slct_list i {visibility: hidden;}

.menu_slct_list {display: none; position: absolute; left:-1px; width:calc(100% + 2px); border: 1px solid #fff; background-color: #fff; border:1px solid #88abbf; padding:15px; box-sizing:border-box; z-index: 999998;}
.menu_slct_list > li {border-bottom: 1px solid #e0e0e0; color:#333;}
.menu_slct_list > li:last-of-type {border-bottom: 0;}
.menu_slct_list > li:hover {font-weight:bold;color:#6078EA;}
.menu_slct_list > li > .link {display: block; height: auto; padding: 12px; box-sizing: border-box; /*font-size: 1.4rem;*/ line-height:1.3;}
.menu_slct_list .icon {display:none;}

@media screen and (max-width:1200px) {
  .menu_slct_area {margin-bottom:10px;}
  .menu_slct_area .btn_home {display:none; width: 40px; height: 40px; font-size: 1.5rem; line-height:40px;}
  .menu_slct {min-width:auto; width:50%; height:40px; padding-left:10px;}
  .menu_slct .txt_slcted {overflow: hidden; line-height: 40px; /*font-size: 1.4rem;*/ text-overflow: ellipsis; white-space: nowrap;}
  .menu_slct .icon_arw {right: 8px;}

  .sub_top_menu_tit_area {display:none;}
  .menu_slct_list {padding:5px;}
  .menu_slct .txt_slcted {font-size:1.5rem;}
  .menu_slct_list > li > .link {font-size:1.4rem;}
}
