@charset "utf-8";
.only-desktop {
  display: block;
}
.only-tablet {
  display: none;
}
.only-mobile {
  display: none;
}
.only-desktop-tablet {
  display: block;
}

#wrapper {
  position: relative;
  overflow: hidden;
}
.contain {
  position: relative;
  width: 100%;
  max-width: 1540px;
  padding-left: 30px;
  padding-right: 30px;
  margin: 0 auto;
}

/* header */
#header {
  position: relative;
  z-index: 90;
  left: 0;
  top: 0;
  width: 100%;
  transition: 0.2s all ease;
  background: #fff;
}
#header .contain {
  position: relative;
  max-width: 1780px;
  padding-left: 30px;
  padding-right: 0;
}
.logo {
  position: absolute;
  left: 30px;
  top: 50%;
  width: 174px;
  margin-top: -15px;
  z-index: 10;
}
.logo a {
  display: block;
}

#gnb {
  padding-right: 160px;
}
#gnb > ul {
  position: relative;
  display: flex;
  justify-content: flex-end;
  height: 100px;
  align-items: flex-end;
  margin-right: -100px;
}
#gnb > ul > li {
  position: relative;
  text-align: center;
}
#gnb > ul > li > a {
  display: flex;
  font-size: 22px;
  font-weight: 700;
  height: 100px;
  line-height: 1.4em;
  letter-spacing: -0.03em;
  color: #000;
  padding: 0 100px;
  position: relative;
  align-items: center;
  justify-content: center;
}
#gnb > ul > li > a:before {
  content: "";
  position: absolute;
  width: 50%;
  left: 50%;
  transform: translateX(-50%);
  height: 3px;
  background: #fd8356;
  bottom: 0;
  opacity: 0;
}
#gnb > ul > li.active > a:before {
  opacity: 1;
}
#gnb > ul > li:last-child > a:before {
  display: none;
}
#gnb > ul > li:last-child > a > span {
  display: inline-block;
  font-size: 18px;
  padding: 5px 35px;
  background: #fd8356;
  color: #fff;
  border-radius: 50px;
}
#gnb .submenu {
  position: absolute;
  display: none;
  left: 50%;
  width: 213px;
  transform: translateX(-50%);
  text-align: center;
  z-index: 21;
  background: #fff;
}
#gnb .submenu ul {
  padding: 23px 0;
}
#gnb .submenu ul li {
  line-height: 1.4em;
  transition: 0.2s all ease;
}
#gnb .submenu ul li a {
  position: relative;
  display: block;
  font-size: 18px;
  font-weight: 500;
  padding: 5px 0;
  color: #555;
  line-height: 1.2em;
  transition: 0.2s all ease;
}
#gnb .submenu ul li:hover {
}
#gnb .submenu ul li:hover a {
  color: #fd8356;
}
.top-btn {
  position: absolute;
  right: 170px;
}
/* for mobile */
.btn-m-menu {
  display: none;
  position: absolute;
  top: 50%;
  margin-top: -12px;
  right: 30px;
  width: 27px;
  height: 24px;
  text-align: center;
  text-indent: -9999em;
  z-index: 92;
  transition: all 0.5s ease-in-out;
}
.btn-m-menu span {
  position: absolute;
  left: 0;
  top: 13px;
  height: 3px;
  width: 27px;
  background: #2c2c2c;
}
.btn-m-menu span:before,
.btn-m-menu span:after {
  content: "";
  position: absolute;
  right: 0;
  width: 27px;
  height: 3px;
  background: #2c2c2c;
  transition-duration: 0.3s, 0.3s;
  transition-delay: 0.3s, 0s;
}
.btn-m-menu span:before {
  top: -10px;
  transition-property: top, transform;
}
.btn-m-menu span:after {
  bottom: -10px;
  transition-property: bottom, transform;
}
.mobile-navigation {
  position: fixed;
  top: 0;
  right: 0;
  padding: 20px 0;
  width: 300px;
  height: 100%;
  overflow: auto;
  transition: 0.3s ease-in-out;
  -ms-transform: translateX(100%);
  transform: translateX(100%);
  background: #ffffff;
  z-index: 101;
}
.mobile-navigation .home {
  width: 167px;
  padding-bottom: 20px;
  padding-left: 15px;
}
.mobile-navigation .home img {
  height: 30px;
  width: auto;
}
.mobile-navigation .nav-menu > ul > li {
  border-bottom: 1px solid #ddd;
}
.mobile-navigation .nav-menu > ul > li > a {
  position: relative;
  padding: 14px 15px;
  display: block;
  color: #242424;
  font-size: 1.3em;
  font-weight: 500;
  line-height: 1.3em;
}
.mobile-navigation .nav-menu > ul > li.active > a {
  color: #fd8356;
}
.mobile-navigation .nav-menu > ul > li > a:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translateY(-75%) rotate(45deg);
  width: 10px;
  height: 10px;
  border-right: 2px solid #fd8356;
  border-bottom: 2px solid #fd8356;
}
.mobile-navigation .nav-menu > ul > li.active > a:after {
  transform: translateY(-35%) rotate(-135deg);
  border-color: #fd8356;
}
.mobile-navigation .nav-menu > ul > li:last-child {
  display: none;
}
.mobile-navigation .nav-menu .submenu {
  display: none;
  position: static;
  transform: translateX(0);
  margin: -1px 0 0 0;
  width: 100%;
  padding: 10px 0;
  background: #fd8356;
  padding-bottom: 10px;
}
.mobile-navigation .nav-menu .submenu > ul {
  display: block;
  width: 100%;
}
.mobile-navigation .nav-menu .submenu > ul > li {
  text-align: left;
  padding: 0;
}
.mobile-navigation .nav-menu .submenu > ul > li > a {
  display: block;
  position: relative;
  padding: 5px 0 5px 25px;
  color: #fff;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.3em;
}
.mobile-navigation .nav-menu .submenu > ul > li > a:after {
  content: "";
  position: absolute;
  top: 14px;
  left: 15px;
  width: 4px;
  height: 4px;
  border-radius: 100%;
  background: #fff;
  transition: 0.2s ease-in-out;
}
.mobile-navigation .nav-menu .submenu > ul > li > a:hover {
  color: #fff;
}
.mobile-navigation .nav-menu .submenu > ul > li > a:hover:after {
  background: #fff;
}
.mobile-navigation .close {
  position: absolute;
  top: 20px;
  right: 18px;
  width: 24px;
  height: 24px;
  text-indent: -9999em;
  overflow: hidden;
}
.mobile-navigation .close:before,
.mobile-navigation .close:after {
  content: " ";
  position: absolute;
  top: 12px;
  left: 0;
  width: 100%;
  height: 2px;
  background: #242424;
}
.mobile-navigation .close:before {
  transform: rotate(45deg);
}
.mobile-navigation .close:after {
  transform: rotate(-45deg);
}
.mobile-overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0.76;
  z-index: 98;
}
html.menu-opened {
  overflow: hidden;
}
html.menu-opened .mobile-navigation {
  -ms-transform: translateX(0);
  transform: translateX(0);
}
html.menu-opened .mobile-overlay {
  display: block;
}
.mobile-navigation .more {
  text-align: center;
  margin-top: 20px;
}
.mobile-navigation .more a {
  display: inline-block;
  font-size: 18px;
  padding: 5px 35px;
  background: #fd8356;
  color: #fff;
  border-radius: 50px;
}

/* 전체메뉴 */
.all-navigation .close-wrap {
  position: relative;
  width: 100%;
  max-width: 1780px;
  margin: 0 auto;
}

.only-all-menu {
  display: none !important;
}

.btn-all-menu {
  position: absolute;
  top: 50%;
  margin-top: -15px;
  width: 40px;
  right: 30px;
  height: 25px;
  text-align: center;
  text-indent: -9999em;
  z-index: 93;
  transition: all 0.5s ease-in-out;
}

.btn-all-menu span {
  position: absolute;
  display: block;
  left: 0;
  top: 50%;
  height: 1px;
  width: 40px;
  background: #000;
}

.btn-all-menu span:before,
.btn-all-menu span:after {
  content: " ";
  position: absolute;
  right: 0;
  width: 40px;
  height: 1px;
  background: #000;
  transition-duration: 0.3s, 0.3s;
  transition-delay: 0.3s, 0s;
}

.btn-all-menu span:before {
  top: -11px;
  transition-property: top, transform;
}

.btn-all-menu span:after {
  bottom: -11px;
  transition-property: bottom, transform;
}

.all-navigation {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  transition: 0.3s ease-in-out;
  -ms-transform: translateY(100%);
  transform: translateY(100%);
  background: rgba(0, 0, 0, 0.8);
  z-index: 202;
}

.all-navigation .all-nav-menu {
  max-width: 1760px;
  margin: 0 auto;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-left: 30px;
  padding-right: 30px;
}

.all-navigation .all-nav-menu > ul {
  display: flex;
  width: 100%;
}

.all-navigation .all-nav-menu > ul > li {
  flex: 1;
  position: relative;
  text-align: center;
}

.all-navigation .all-nav-menu > ul > li > a {
  position: relative;
  display: block;
  color: #fff;
  font-size: 30px;
  font-weight: 700;
  line-height: 1.3em;
  padding-bottom: 15px;
  transition: all 0.2s ease-in;
  margin-bottom: 40px;
}

.all-navigation .all-nav-menu > ul > li > a:before {
  content: "";
  position: absolute;
  width: 130px;
  height: 4px;
  background: #fd8356;
  left: 50%;
  margin-left: -65px;
  bottom: 0;
}

.all-navigation .all-nav-menu .submenu {
}

.all-navigation .all-nav-menu .submenu > ul {
  display: block;
}

.all-navigation .all-nav-menu .submenu > ul > li {
  margin-bottom: 12px;
}

.all-navigation .all-nav-menu .submenu > ul > li > a {
  display: inline-block;
  position: relative;
  color: #aaa;
  font-size: 20px;
  font-weight: 700;
  transition: all 0.2s ease-in;
}

.all-navigation .all-nav-menu .submenu > ul > li > a:hover {
  color: #fd8356;
}

.all-navigation .close {
  position: absolute;
  top: 34px;
  right: 32px;
  width: 33px;
  height: 33px;
  text-indent: -9999em;
  overflow: hidden;
}

.all-navigation .close:before,
.all-navigation .close:after {
  content: " ";
  position: absolute;
  top: 12px;
  left: 0;
  width: 100%;
  height: 3px;
  background: #fff;
  border-radius: 3px;
}

.all-navigation .close:before {
  transform: rotate(45deg);
}

.all-navigation .close:after {
  transform: rotate(-45deg);
}

html.menu-all-opened {
  overflow: hidden;
}

html.menu-all-opened .all-navigation {
  -ms-transform: translateY(0);
  transform: translateY(0);
}

html.menu-all-opened .all-navigation .only-all-menu {
  display: block !important;
}

/* main */
.main-visual {
  position: relative;
}
.main-visual .item img {
  width: 100%;
}
.main-visual .item p {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 100%;
  text-align: center;
  font-size: 32px;
  font-weight: 700;
  color: #fff;
  transform: translate(-50%, -50%);
}

.main-visual .slick-arrow {
  position: absolute;
  z-index: 1;
  top: 50%;
  width: 38px;
  height: 68px;
  border: 0;
  background-color: transparent;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: contain;
  margin-top: -34px;
  text-indent: -999em;
  overflow: hidden;
}

.main-visual .slick-prev {
  background-image: url("../img/prev.svg");
  left: 100px;
}

.main-visual .slick-next {
  background-image: url("../img/next.svg");
  right: 100px;
}

.main-visual .slick-dots {
  position: absolute;
  bottom: 50px;
  width: 100%;
  display: flex;
  justify-content: center;
}

.main-visual .slick-dots li {
  padding: 0 18px;
  position: relative;
}

.main-visual .slick-dots li.slick-active:before {
  content: "";
  position: absolute;
  width: 30px;
  height: 30px;
  border: 1px solid #fff;
  left: 8px;
  top: -10px;
  border-radius: 100%;
}

.main-visual .slick-dots li.slick-active button {
  background-color: #fd8356;
}

.main-visual .slick-dots button {
  display: block;
  width: 11px;
  height: 11px;
  background: #fff;
  border-radius: 100%;
  text-indent: -999em;
  overflow: hidden;
  border: 0;
}

.main-sec {
  padding: 90px 0;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: cover;
}

.main-tit {
  text-align: center;
  margin-bottom: 40px;
}

.main-tit h2 {
  font-size: 50px;
  font-weight: 700;
  line-height: 1.2em;
  letter-spacing: -0.02em;
  color: #000;
  margin-bottom: 13px;
}

.main-tit p {
  font-size: 18px;
  font-weight: 400;
  line-height: 1.4em;
  letter-spacing: 0;
  color: #555;
}

.main-product .contain {
  max-width: 1540px;
}

.main-product .boxWrap {
  display: flex;
  margin: 0 -40px;
}

.main-product .boxWrap .box {
  padding: 0 16px;
  width: 25%;
}

.main-product .boxWrap a {
  display: block;
  position: relative;
}

.main-product .boxWrap .cnt {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  padding-left: 40px;
  padding-right: 15px;
  padding-top: 44px;
  color: #fff;
  background: rgba(0, 0, 0, 0.3);
}

.main-product .boxWrap .tit {
  font-size: 32px;
  font-weight: 700;
  line-height: 1.2em;
  letter-spacing: -0.05em;
  margin-bottom: 8px;
}

.main-product .boxWrap .txt {
  font-size: 18px;
  font-weight: 400;
  line-height: 1.4em;
  letter-spacing: -0.05em;
  padding-bottom: 20px;
  position: relative;
}

.main-product .boxWrap .txt:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 70px;
  height: 1px;
  background: #fff;
}

.main-product .boxWrap a:hover .cnt {
  color: #fd8356;
  background-color: transparent;
}

.main-product .boxWrap a:hover {
  transform: translateY(-20px);
  box-shadow: 0 0 15px 7px rgba(204, 204, 204, 0.75);
}

.main-product .boxWrap a:hover:before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  border: 8px solid #fd8356;
}

.main-product .boxWrap a:hover .txt:before {
  background: #fd8356;
}

.main-cs {
  background-image: url("../images/main/main_cs.jpg");
}

.main-cs .main-tit h2 {
  color: #fff;
}

.main-cs .wrap {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -17px -40px -17px;
}

.main-cs .wrap .box {
  width: 33.333%;
  padding: 0 17px;
  margin-bottom: 40px;
}

.main-cs .wrap a {
  display: block;
  background: #fff;
  padding: 50px 40px 30px 40px;
  transition: 0.2s all ease;
}

.main-cs .wrap a:hover {
  background: #337fe7;
}

.main-cs .wrap a:hover .tit,
.main-cs .wrap a:hover .sub-info {
  color: #fff;
}

.main-cs .wrap .tit {
  font-size: 28px;
  font-weight: 700;
  line-height: 1.2em;
  letter-spacing: -0.05em;
  margin-bottom: 10px;
  color: #000;
  transition: 0.2s all ease;
}

.main-cs .wrap .sub-info {
  font-size: 18px;
  font-weight: 500;
  line-height: 1.4em;
  letter-spacing: -0.05em;
  color: #555;
  transition: 0.2s all ease;
}

.main-cs .wrap .icon {
  height: 83px;
  width: 100%;
  padding-right: 50px;
  background-repeat: no-repeat;
  background-position: right center;
}

.main-cs .wrap .icon.bg1 {
  background-image: url("../images/main/cs_icon1.png");
}

.main-cs .wrap .icon.bg2 {
  background-image: url("../images/main/cs_icon2.png");
}

.main-cs .wrap .icon.bg3 {
  background-image: url("../images/main/cs_icon3.png");
}

.main-cs .wrap .icon.bg4 {
  background-image: url("../images/main/cs_icon4.png");
}

.main-cs .wrap .icon.bg5 {
  background-image: url("../images/main/cs_icon5.png");
}

.main-cs .wrap .icon.bg6 {
  background-image: url("../images/main/cs_icon6.png");
}

.main-cs .wrap a:hover .icon.bg1 {
  background-image: url("../images/main/cs_icon1_w.png");
}

.main-cs .wrap a:hover .icon.bg2 {
  background-image: url("../images/main/cs_icon2_w.png");
}

.main-cs .wrap a:hover .icon.bg3 {
  background-image: url("../images/main/cs_icon3_w.png");
}

.main-cs .wrap a:hover .icon.bg4 {
  background-image: url("../images/main/cs_icon4_w.png");
}

.main-cs .wrap a:hover .icon.bg5 {
  background-image: url("../images/main/cs_icon5_w.png");
}

.main-cs .wrap a:hover .icon.bg6 {
  background-image: url("../images/main/cs_icon6_w.png");
}

.main-notice .wrap {
  display: flex;
}

.main-notice .box {
  width: 100%;
  max-width: 740px;
  position: relative;
}

.main-notice .group {
  width: 50%;
  padding: 90px 0;
}

.main-notice .group-tit {
  font-size: 36px;
  font-weight: 700;
  line-height: 1.2em;
  letter-spacing: 0;
  color: #343130;
  margin-bottom: 50px;
}

.main-notice .group-tit span {
  font-size: 16px;
  font-weight: 400;
  color: #999;
  margin-left: 18px;
}

.main-notice .group1 {
  display: flex;
  justify-content: flex-end;
}

.main-notice .group1 .more {
  position: absolute;
  top: 0;
  right: 80px;
  width: 30px;
  height: 30px;
  border-radius: 100%;
  background: #fd8356;
  display: flex;
  align-items: center;
  justify-content: center;
}

.main-notice .group1 ul li {
  position: relative;
  padding-left: 16px;
  margin-bottom: 30px;
}

.main-notice .group1 ul li a {
  display: flex;
}

.main-notice .group1 ul li .date {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.2em;
  letter-spacing: -0.025em;
  color: #555;
  margin-right: 30px;
}

.main-notice .group1 ul li .tit {
  font-size: 18px;
  font-weight: 400;
  line-height: 1.2em;
  letter-spacing: -0.025em;
  color: #555;
  flex: 1 1 auto;
  min-width: 0;
  width: 1%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.main-notice .group1 ul li a:hover .tit {
  color: #fd8356;
}

.main-notice .group1 ul li:last-child {
  margin-bottom: 0;
}

.main-notice .group1 ul li:before {
  content: "";
  position: absolute;
  width: 4px;
  height: 4px;
  background: #555;
  border-radius: 100%;
  left: 0;
  top: 8px;
}

.main-notice .group2 {
  background: url("../img/cs_bg.jpg") no-repeat 50% 50%;
  background-size: cover;
  padding-left: 170px;
}

.main-notice .group2 .group-tit {
  color: #fff;
}

.main-notice .group2 .group-tit span {
  font-size: 26px;
  color: #fff;
  font-weight: 200;
}

.main-notice .group2 .tel {
  font-size: 46px;
  font-weight: 700;
  line-height: 1.2em;
  letter-spacing: -0.025em;
  color: #fff;
  margin-bottom: 30px;
}

.main-notice .group2 .tel span {
  font-family: "GmarketSans", sans-serif;
  font-size: 50px;
  margin-left: 20px;
}

.main-notice .group2 .time-table {
  margin-bottom: 30px;
}

.main-notice .group2 dl {
  display: flex;
  color: #fff;
  font-size: 18px;
  font-weight: 400;
  line-height: 2.1em;
}

.main-notice .group2 .num-info a {
  display: flex;
  align-items: center;
  background: #fff;
  border-radius: 60px;
  max-width: 455px;
  padding: 10px 40px;
  width: 100%;
  min-height: 70px;
}

.main-notice .group2 .icon {
  display: contents;
}

.main-notice .group2 .tit {
  flex: 1 1 auto;
  min-width: 0;
  width: 1%;
  padding-left: 13px;
  font-size: 20px;
  font-weight: 800;
  line-height: 1.2em;
  letter-spacing: -0.025em;
  color: #fd8356;
}

.main-notice .group2 .time {
  position: absolute;
  right: 17px;
  color: #fff;
  font-size: 18px;
  line-height: 1.4em;
  font-weight: 500;
  top: -60px;
  text-align: center;
}

/* sub page */
/* .sub-visual {position:relative; width:100%; height:500px; display:flex; align-items:center; overflow:hidden; background-repeat:no-repeat; background-position:50% 50%; background-size:cover;}
.sub-visual .content {color:#fff; width:100%; max-width:1260px; padding:0 30px; margin:0 auto; text-align:center;}
.sub-visual .content h2 {font-size:40px; line-height:1em; font-weight:800; letter-spacing:-0.01em; margin-bottom:10px;}
.sub-visual .content p {font-size:18px; font-weight:400; line-height:1.3em;}
 */
.sub-title {
  margin: 80px 0 55px 0;
  text-align: center;
}

.sub-title h2 {
  position: relative;
  color: #000;
  font-size: 40px;
  line-height: 1.2em;
  font-weight: 800;
  letter-spacing: -0.01em;
}

.sub-title h2 span {
  display: block;
  font-size: 20px;
  line-height: 1.2em;
}

.sub-title p {
  font-size: 18px;
  font-weight: 400;
  line-height: 1.4em;
  letter-spacing: -0.04em;
  color: #000;
  margin-top: 10px;
  padding: 0 30px;
}

.path-wrap {
  position: relative;
  background: #4d4d4d;
  z-index: 10;
}

.path-wrap .inner {
  max-width: 1480px;
  margin: 0 auto;
}

.path-wrap .inner:after {
  content: "";
  display: block;
  clear: both;
}

.path-wrap .home {
  float: left;
  border-left: 1px solid rgba(255, 255, 255, 0.3);
  border-right: 1px solid rgba(255, 255, 255, 0.3);
}

.path-wrap .home a {
  display: block;
  width: 77px;
  height: 60px;
  background: url("../img/ico_home.svg") 50% 50% no-repeat;
  background-size: 30%;
  text-indent: -999em;
  overflow: hidden;
}

.path-wrap .part {
  float: left;
  position: relative;
  min-width: 280px;
  border-right: 1px solid rgba(255, 255, 255, 0.3);
  z-index: 50;
}

.path-wrap .part > a {
  display: block;
  position: relative;
  height: 60px;
  color: #fff;
  font-weight: 500;
  letter-spacing: -0.05em;
  font-size: 18px;
  line-height: 60px;
  padding: 0 40px 0 27px;
}

.path-wrap .part > a:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-75%) rotate(45deg);
  width: 11px;
  height: 11px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
}

.path-wrap .part.active > a:after {
  transform: translateY(-35%) rotate(-135deg);
  border-color: #fff;
}

.path-wrap .part ul {
  display: none;
  position: absolute;
  left: -1px;
  right: -1px;
  background: #fff;
  border: 1px solid #e0e0e0;
  border-top: 0;
  z-index: 50;
}

.path-wrap .part ul:before {
  content: "";
  position: absolute;
  left: 0;
}

.path-wrap .part ul li {
  color: #000;
  font-size: 16px;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.35em;
}

.path-wrap .part ul li:first-child {
  border-top: 0;
}

.path-wrap .part ul li a {
  display: block;
  padding: 10px 10px 10px 28px;
}

.path-wrap .part ul li a:hover {
  color: #fff;
  background: #fd8356;
}

#contArea {
  max-width: 1540px;
  padding-left: 30px;
  padding-right: 30px;
  margin: 0 auto;
}

#contArea.wide {
  max-width: 100%;
  padding-left: 0;
  padding-right: 0;
}

.real-cont {
  padding-bottom: 70px;
}

.real-cont.none {
  padding-bottom: 0;
}

/* footer */
.scroll-top {
  position: fixed;
  right: 40px;
  bottom: 40px;
  opacity: 0;
  transition: 0.2s all ease;
  width: 56px;
  height: 56px;
  background: #fd8356;
  color: #fff;
  text-align: center;
  padding-top: 28px;
  font-size: 14px;
  font-weight: 300;
  line-height: 1em;
  letter-spacing: 0;
  z-index: 99;
}

.scroll-top:before {
  content: "";
  position: absolute;
  width: 8px;
  height: 8px;
  border-right: 1px solid #fff;
  border-top: 1px solid #fff;
  transform: rotate(-45deg);
  left: 50%;
  top: 15px;
  margin-left: -4px;
}

.scroll-top.active {
  opacity: 1;
}

#footer {
  position: relative;
  background: #35302d;
  color: #aaaaaa;
  font-size: 16px;
  line-height: 1.6em;
  padding: 70px 0 55px 0;
}

#footer .contain {
  display: flex;
  max-width: 1780px;
}

#footer address {
  font-style: normal;
  font-weight: 400;
  letter-spacing: -0.02em;
  line-height: 1.5em;
}

#footer address span {
  display: inline-block;
  margin-right: 10px;
}

#footer .copyright {
  display: block;
  margin-top: 25px;
}

#footer .website {
  display: block;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.2em;
  letter-spacing: 0;
  color: #35373b;
  margin-top: 3px;
}

.f-menu {
  width: 100%;
  max-width: 1040px;
}

.f-menu > ul {
  display: flex;
  justify-content: space-between;
}

.f-menu > ul > li {
  /* width: 25%; */
  padding-right: 20px;
}
.f-menu > ul > li:last-child {
  padding-right: 52px;
}

.f-menu > ul > li > a {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.2em;
  letter-spacing: 0;
  color: #dcdcdc;
  display: block;
  margin-bottom: 22px;
}

.f-menu > ul > li li a {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.7em;
  letter-spacing: 0;
  color: #aaa;
}

.f-menu > ul > li li a:hover {
  color: #fd8356;
}

.f-logo {
  width: 142px;
  margin-bottom: 18px;
}

.f-info {
  padding-left: 80px;
  border-left: 1px solid #393d46;
  flex: 1 1 auto;
  min-width: 0;
  width: 1%;
}

.modal-privacy {
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  width: 90%;
  max-width: 800px;
  background: #fff;
  border-radius: 10px;
  transform: translate(-50%, -50%);
  z-index: 101;
  overflow: hidden;
}
.modal-privacy h2 {
  padding: 15px 30px;
  color: #fff;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.3em;
  background: #fd8356;
}
.modal-privacy .content {
  padding: 25px 30px;
  height: 500px;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.5em;
  color: #505050;
  overflow: auto;
}
.modal-privacy .sec {
  margin-bottom: 40px;
}
.modal-privacy .sec p {
  margin-bottom: 1em;
}
.modal-privacy .sec h3 {
  color: #222;
  font-size: 1.1em;
  font-weight: 700;
  margin-bottom: 7px;
}
.modal-privacy .policy-contact {
  display: flex;
  padding: 20px 0;
  background: #fafafa;
  border: 1px solid #e5e5e5;
  margin-bottom: 1em;
}
.modal-privacy .policy-contact dl {
  flex: 1;
  padding: 0 20px;
  border-left: 1px solid #e5e5e5;
}
.modal-privacy .policy-contact dl:first-child {
  border-left: 0;
}
.modal-privacy .policy-contact dt {
  font-weight: 700;
  color: #333;
  margin-bottom: 12px;
}
.modal-privacy .close {
  position: absolute;
  top: 20px;
  right: 20px;
  width: 20px;
  height: 20px;
  background: url(../img/close.png) no-repeat center/contain;
  cursor: pointer;
  z-index: 102;
}
.modal-dimmed {
  display: none;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: rgba(0, 0, 0, 0.8);
  z-index: 100;
}

@media (max-width: 640px) {
  .modal-privacy h2 {
    font-size: 18px;
    padding: 8px 15px;
  }
  .modal-privacy .content {
    padding: 15px;
    height: 60vh;
    font-size: 13px;
  }
  .modal-privacy .sec {
    margin-bottom: 30px;
  }
  .modal-privacy .policy-contact {
    display: block;
    padding: 0 15px;
  }
  .modal-privacy .policy-contact dl {
    padding: 15px 0;
    border-left: 0;
    border-top: 1px solid #e5e5e5;
  }
  .modal-privacy .policy-contact dl:first-child {
    border-top: 0;
  }
  .modal-privacy .close {
    top: 12px;
    right: 16px;
    width: 16px;
    height: 16px;
  }
}
