@charset "UTF-8";
/************************************************************************************/
/************************************* Colors *************************************/
/************************************************************************************/
:root {
  --white:#fff;
  --black:#000;
  --red:#9B0000;
  --blue:#0F0078;
  --light-blue:#5163c0;
  --deep-blue:#05014a;
  --orange:#ff9644;
  --gray-cd:#cdcdcd;
  --gray-af:#afafaf;
  --gray-e8:#e8e8e8;
  --gray-f8:#f8f8f8;
  --gray-fa:#fafafa;
  --gray-f2:#f2f2f2;
  --gray-f5:#f5f5f5;
  --gray-d2:#d2d2d2;
  --gray-d4:#d4d4d4;
  --gray-d5:#d5d5d5;
  --gray-dd:#dddddd;
  --gray-f0:#f0f0f0;
  --gray-f1:#f1f1f1;
  --gray-f3:#f3f3f3;
  --gray-f7:#f7f7f7;
  --gray-7c:#7c7c7c;
  --gray-95: #959595;
  --gray-55: #555555;
  --gray-27: #272727;
  --gray-33: #333333;
  --gray-88: #888888;
  --main-color:#59ac36;
  --point-color:#003366;
  --point01:#010A65;
  --gray-point: #6a6a6a;
  --black-point:#352f36;
  --gray-bg: #f8f8f8;
  --gray-dark-bg: #eaeaea;
  --font-basic: #121212;
  --border-color:#cccccc;
  --border-color2: #bfbfbf;
  --footer-bg: #2a2a2a;
  --instagram: #ff0074;
  --facebook: #0866ff;
  --naver: #03c75a;
  --youtube: #ff0000;
  --kakao: #fee500;
}

/* font-size */
/* absolute-center */
/* transition */
/************************************************************************************/
/*************************************** common ***************************************/
/************************************************************************************/
html {
  font-size: 62.5%;
}

body {
  font-family: "Pretendard", 맑은고딕, "Dotum", 돋움, "Arial", "sans-serif";
  font-weight: 400;
  font-size: 1.6rem;
  line-height: 1.4;
  word-break: keep-all;
  letter-spacing: -0.025em;
}
@media (max-width: 1024px) {
  body {
    font-size: 1.5rem;
  }
}
@media (max-width: 768px) {
  body {
    font-size: 1.4rem;
  }
}
body a {
  color: var(--font-basic);
  text-decoration: none;
}

h1, h2, h3, h4, h5, h6 {
  color: var(--black);
  line-height: 1.4;
  font-weight: 700;
}

a, input, button, select {
  outline-offset: 2px;
  outline-color: var(--font-basic);
}

/* table */
table {
  width: 100%;
}

.wrap-in {
  max-width: 1400px;
  margin: 0 auto;
}
@media screen and (max-width: 1400px) {
  .wrap-in {
    max-width: calc(100% - 64px);
  }
}
@media screen and (max-width: 768px) {
  .wrap-in {
    max-width: calc(100% - 40px);
  }
}
@media screen and (max-width: 320px) {
  .wrap-in {
    max-width: calc(100% - 32px);
  }
}

.wrap-in-c {
  max-width: 1400px;
  margin: 0 auto;
  text-align: center;
}
@media screen and (max-width: 1400px) {
  .wrap-in-c {
    max-width: calc(100% - 64px);
  }
}
@media screen and (max-width: 768px) {
  .wrap-in-c {
    max-width: calc(100% - 40px);
  }
}
@media screen and (max-width: 320px) {
  .wrap-in-c {
    max-width: calc(100% - 32px);
  }
}

/************************************************************************************/
/*************************************** header ***************************************/
/************************************************************************************/
header {
  position: relative;
  width: 100%;
}
header .header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 100px;
  max-width: 1400px;
  margin: 0 auto;
}
header .header .logo {
  display: block;
  width: 208px;
  height: 53px;
  background: url(/images/common/logo.svg) no-repeat center/100% 100%;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
header .header .none-visible {
  overflow: hidden;
  position: absolute;
  width: 1px;
  height: 1px;
  font-size: 1px;
  line-height: 0;
  clip: rect(0 0 0 0);
  white-space: nowrap;
  margin: -1px;
  padding: 0;
  border: 0;
}
header .header .button {
  color: var(--main-color);
  border: 1px solid var(--main-color);
  font-size: 1.7rem;
  font-weight: 700;
  border-radius: 22px;
  padding: 8px 35px;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
@media (max-width: 1024px) {
  header .header .button {
    font-size: 1.6rem;
  }
}
@media (max-width: 768px) {
  header .header .button {
    font-size: 1.4rem;
  }
}
header .header .button:hover, header .header .button.active {
  background-color: var(--main-color);
  color: var(--white);
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
header .header .menu-toggle {
  display: none;
}
header .header-menu {
  text-align: center;
  width: 100%;
}
header .header-menu > ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
header .header-menu > ul > li {
  position: relative;
}
header .header-menu > ul > li > a {
  font-size: 1.7rem;
  font-weight: 500;
  padding: 0 46px;
  text-align: center;
}
@media (max-width: 1024px) {
  header .header-menu > ul > li > a {
    font-size: 1.6rem;
  }
}
@media (max-width: 768px) {
  header .header-menu > ul > li > a {
    font-size: 1.4rem;
  }
}
header .header-menu > ul > li .gnb-2dep {
  display: none;
  position: absolute;
  top: calc(var(--header-height) - 20px);
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: 99;
  width: 16rem;
  text-align: center;
}
header .header-menu > ul > li .gnb-2dep ul {
  background-color: var(--main-color);
  padding: 15px 0px;
  border-radius: 20px;
  margin-top: 20px;
}
header .header-menu > ul > li .gnb-2dep ul li {
  position: relative;
  padding: 8px 10px;
  /*transition: all 0s 0s;*/
}
header .header-menu > ul > li .gnb-2dep ul li a {
  color: var(--white);
}
header .sns-icon {
  margin-right: 15px;
}
header .sns-icon a {
  background: var(--black);
  width: 36px;
  height: 36px;
  border-radius: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
header .sns-icon a i {
  background-size: contain;
}
header .sns-icon a .icon-sns-blog {
  width: 20px;
  height: 20px;
  background-image: url("/images/common/sns_blog.svg");
  display: inline-block;
  vertical-align: middle;
  background-repeat: no-repeat;
  background-position: center center;
}
@media screen and (max-width: 1200px) {
  header .sns-icon {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    margin-left: auto;
  }
}
@media screen and (max-width: 1200px) {
  header {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 101;
    background-color: var(--white);
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
  }
  header .button {
    display: none;
  }
  header .header {
    height: 64px;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  header .header .logo {
    width: 137px;
    height: 35px;
    margin-left: 1.8em;
  }
  header .header .menu-toggle {
    display: inline-block;
    height: 100%;
    margin-right: 1.8em;
  }
  header .header .menu-toggle .ico {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -ms-flex-pack: distribute;
        justify-content: space-around;
    width: 21px;
    height: 21px;
  }
  header .header .menu-toggle .ico span {
    background-color: var(--black);
    display: block;
    width: 100%;
    height: 2px;
    -webkit-transition: all ease 0.3s;
    transition: all ease 0.3s;
  }
  header .header .header-menu {
    display: none;
    position: absolute;
    top: 64px;
    width: 100%;
    height: 100vh;
    background-color: var(--main-color);
    overflow: auto;
  }
  header .header .header-menu > ul {
    width: 100%;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding: 2em 0;
    padding-bottom: calc(64px + 2em);
  }
  header .header .header-menu > ul > li {
    position: relative;
    width: 100%;
    border-bottom: 1px solid var(--white);
  }
  header .header .header-menu > ul > li > a {
    color: var(--white);
    line-height: 1.2;
    padding: 20px 0;
    display: block;
    width: 100%;
    text-align: left;
  }
  header .header .header-menu > ul > li .gnb-2dep {
    position: relative;
    top: 0;
    left: 0;
    -webkit-transform: none;
            transform: none;
    width: 100%;
    text-align: left;
    margin-bottom: 20px;
  }
  header .header .header-menu > ul > li .gnb-2dep ul {
    background-color: var(--white);
    margin-top: 0;
    padding: 1.2em;
  }
  header .header .header-menu > ul > li .gnb-2dep ul li a {
    color: var(--black);
  }
  header .header .open-menu .ico {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  header .header .open-menu .ico span {
    margin: -1px;
  }
  header .header .open-menu .ico span:nth-child(1) {
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  header .header .open-menu .ico span:nth-child(2) {
    display: none;
  }
  header .header .open-menu .ico span:nth-child(3) {
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
  }
}

/************************************************************************************/
/*************************************** footer ***************************************/
/************************************************************************************/
footer {
  padding: 3.75em 0;
}
footer .top-cont {
  border-bottom: 1px solid var(--border-color);
  padding-bottom: 3.75em;
  margin-bottom: 3.75em;
}
footer .top-cont .link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  color: var(--gray-33);
  font-weight: 500;
  font-size: 1.8rem;
}
@media (max-width: 1024px) {
  footer .top-cont .link {
    font-size: 1.6rem;
  }
}
@media (max-width: 768px) {
  footer .top-cont .link {
    font-size: 1.5rem;
  }
}
footer .top-cont .link a {
  position: relative;
  padding-right: 25px;
  margin-right: 25px;
}
footer .top-cont .link a::after {
  content: "";
  display: block;
  width: 1px;
  height: 14px;
  position: absolute;
  background-color: var(--gray-88);
  right: 0;
  top: 4px;
}
footer .top-cont .link a:last-child {
  padding-right: 0;
  margin-right: 0;
}
footer .top-cont .link a:last-child::after {
  display: none;
}
footer .footer-con {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
footer .footer-con .text {
  color: var(--gray-55);
  font-weight: 300;
}
footer .footer-con .text ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
footer .footer-con .text ul li {
  margin-bottom: 10px;
  padding-right: 40px;
}
footer .footer-con .text .copy {
  color: var(--gray-95);
}
@media screen and (max-width: 768px) {
  footer .footer-con {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    row-gap: 10px;
  }
  footer .footer-con .sns-icon {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
}
@media screen and (max-width: 1200px) {
  footer {
    padding: 2.75em 0;
  }
  footer .top-cont {
    padding-bottom: 1.75em;
    margin-bottom: 1.75em;
  }
  footer .top-cont .link {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    row-gap: 10px;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

/************************************************************************************/
/************************************* Colors *************************************/
/************************************************************************************/
:root {
  --white:#fff;
  --black:#000;
  --red:#9B0000;
  --blue:#0F0078;
  --light-blue:#5163c0;
  --deep-blue:#05014a;
  --orange:#ff9644;
  --gray-cd:#cdcdcd;
  --gray-af:#afafaf;
  --gray-e8:#e8e8e8;
  --gray-f8:#f8f8f8;
  --gray-fa:#fafafa;
  --gray-f2:#f2f2f2;
  --gray-f5:#f5f5f5;
  --gray-d2:#d2d2d2;
  --gray-d4:#d4d4d4;
  --gray-d5:#d5d5d5;
  --gray-dd:#dddddd;
  --gray-f0:#f0f0f0;
  --gray-f1:#f1f1f1;
  --gray-f3:#f3f3f3;
  --gray-f7:#f7f7f7;
  --gray-7c:#7c7c7c;
  --gray-95: #959595;
  --gray-55: #555555;
  --gray-27: #272727;
  --gray-33: #333333;
  --gray-88: #888888;
  --main-color:#59ac36;
  --point-color:#003366;
  --point01:#010A65;
  --gray-point: #6a6a6a;
  --black-point:#352f36;
  --gray-bg: #f8f8f8;
  --gray-dark-bg: #eaeaea;
  --font-basic: #121212;
  --border-color:#cccccc;
  --border-color2: #bfbfbf;
  --footer-bg: #2a2a2a;
  --instagram: #ff0074;
  --facebook: #0866ff;
  --naver: #03c75a;
  --youtube: #ff0000;
  --kakao: #fee500;
}

/* absolute-center */
/* transition */
/************************************************************************************/
/************************************* Colors *************************************/
/************************************************************************************/
:root {
  --white:#fff;
  --black:#000;
  --red:#9B0000;
  --blue:#0F0078;
  --light-blue:#5163c0;
  --deep-blue:#05014a;
  --orange:#ff9644;
  --gray-cd:#cdcdcd;
  --gray-af:#afafaf;
  --gray-e8:#e8e8e8;
  --gray-f8:#f8f8f8;
  --gray-fa:#fafafa;
  --gray-f2:#f2f2f2;
  --gray-f5:#f5f5f5;
  --gray-d2:#d2d2d2;
  --gray-d4:#d4d4d4;
  --gray-d5:#d5d5d5;
  --gray-dd:#dddddd;
  --gray-f0:#f0f0f0;
  --gray-f1:#f1f1f1;
  --gray-f3:#f3f3f3;
  --gray-f7:#f7f7f7;
  --gray-7c:#7c7c7c;
  --gray-95: #959595;
  --gray-55: #555555;
  --gray-27: #272727;
  --gray-33: #333333;
  --gray-88: #888888;
  --main-color:#59ac36;
  --point-color:#003366;
  --point01:#010A65;
  --gray-point: #6a6a6a;
  --black-point:#352f36;
  --gray-bg: #f8f8f8;
  --gray-dark-bg: #eaeaea;
  --font-basic: #121212;
  --border-color:#cccccc;
  --border-color2: #bfbfbf;
  --footer-bg: #2a2a2a;
  --instagram: #ff0074;
  --facebook: #0866ff;
  --naver: #03c75a;
  --youtube: #ff0000;
  --kakao: #fee500;
}

/************************************************************************************/
/*************************************** Form ***************************************/
/************************************************************************************/
input[type=text],
input[type=date],
input[type=time],
input[type=number],
input[type=password],
select {
  height: 60px;
  padding: 10px 20px;
  border-radius: 5px;
}
@media (max-width: 1024px) {
  input[type=text],
  input[type=date],
  input[type=time],
  input[type=number],
  input[type=password],
  select {
    height: 52px;
  }
}
@media (max-width: 768px) {
  input[type=text],
  input[type=date],
  input[type=time],
  input[type=number],
  input[type=password],
  select {
    height: 42px;
    padding: 10px 14px;
  }
}

/* font-size */
/************************************************************************************/
/*************************************** sub-header ***************************************/
/************************************************************************************/
.sub-header {
  position: relative;
  width: 100%;
  background-size: cover;
  background-position: center;
  overflow: hidden;
}
.sub-header .s-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 360px;
}
.sub-header .sub-ti {
  font-size: 4.5rem;
  color: var(--white);
  font-weight: 700;
  padding-bottom: 20px;
}
@media (max-width: 1024px) {
  .sub-header .sub-ti {
    font-size: 3.3rem;
  }
}
@media (max-width: 768px) {
  .sub-header .sub-ti {
    font-size: 2.9rem;
  }
}
.sub-header p {
  font-size: 1.8rem;
  color: var(--white);
}
@media (max-width: 1024px) {
  .sub-header p {
    font-size: 1.6rem;
  }
}
@media (max-width: 768px) {
  .sub-header p {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 1200px) {
  .sub-header .s-header {
    margin-top: 64px;
    height: 300px;
  }
}
@media screen and (max-width: 768px) {
  .sub-header .s-header {
    height: 240px;
  }
}

.s-img3 {
  background-image: url("/images/sub/sbg_img01.jpg");
}

.s-img6 {
  background-image: url("/images/sub/sbg_img02.jpg");
}

.s-img11 {
  background-image: url("/images/sub/sbg_img03.jpg");
}

.s-img14 {
  background-image: url("/images/sub/sbg_img04.jpg");
}

.s-img15 {
  background-image: url("/images/sub/sbg_img05.jpg");
}

/************************************************************************************/
/*************************************** sub-menu ***************************************/
/************************************************************************************/
.sub-menu {
  background-color: var(--white);
  border-bottom: 1px solid #d9d9d9;
  padding: 3.125em 0;
}
.sub-menu ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.sub-menu ul li {
  position: relative;
  word-break: keep-all;
}
.sub-menu ul li a {
  font-size: 2.2rem;
  padding: 0 30px;
  font-weight: 700;
}
@media (max-width: 1024px) {
  .sub-menu ul li a {
    font-size: 1.9rem;
  }
}
@media (max-width: 768px) {
  .sub-menu ul li a {
    font-size: 1.8rem;
  }
}
.sub-menu ul li .on {
  color: var(--main-color);
}
.sub-menu ul li::after {
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  background-color: var(--gray-d4);
  position: absolute;
  top: 50%;
  right: -4px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  border-radius: 100%;
}
.sub-menu ul li:last-child::after {
  display: none;
}
@media screen and (max-width: 1200px) {
  .sub-menu {
    padding: 1.5em 0;
  }
}
@media screen and (max-width: 980px) {
  .sub-menu ul {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    row-gap: 10px;
  }
  .sub-menu ul li {
    width: 50%;
  }
  .sub-menu ul li::after {
    content: "";
    display: block;
    width: 1px;
    height: 15px;
    background-color: var(--gray-d4);
    position: absolute;
    top: 50%;
    right: -4px;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    border-radius: 0;
  }
  .sub-menu ul li:nth-child(2)::after {
    display: none;
  }
  .sub-menu ul li a {
    font-weight: 600;
  }
}

/************************************************************************************/
/*************************************** sub-container ***************************************/
/************************************************************************************/
.sub-container {
  background-color: var(--gray-fa);
  padding: 6.25em 0;
}
@media screen and (max-width: 768px) {
  .sub-container {
    padding: 4.375em 0;
  }
}

/* -------------------------------- about -------------------------------- */
.about-txt {
  text-align: center;
  font-size: 2.2rem;
  font-weight: 300;
  line-height: 1.7;
  padding-bottom: 3.5em;
}
@media (max-width: 1024px) {
  .about-txt {
    font-size: 1.9rem;
  }
}
@media (max-width: 768px) {
  .about-txt {
    font-size: 1.8rem;
  }
}
.about-txt .n-1 {
  padding-bottom: 50px;
}
.about-txt .n-2 {
  padding-bottom: 150px;
}
.about-txt .n-2::after {
  content: "";
  display: block;
  width: 1px;
  height: 80px;
  background-color: var(--main-color);
  position: absolute;
  top: 50%;
  left: 50%;
}
.about-txt .n-3 {
  padding-bottom: 100px;
}
.about-txt .n-3 span {
  color: var(--main-color);
  font-weight: 700;
}
.about-txt > span {
  font-weight: 500;
  font-size: 1.8rem;
}
@media (max-width: 1024px) {
  .about-txt > span {
    font-size: 1.6rem;
  }
}
@media (max-width: 768px) {
  .about-txt > span {
    font-size: 1.5rem;
  }
}

.about-img {
  background-image: url("/images/sub/about_img.jpg");
  position: relative;
  height: 500px;
  background-size: cover;
  background-position: center;
  overflow: hidden;
  border-radius: 30px;
}
@media screen and (max-width: 768px) {
  .about-img {
    height: 300px;
  }
}

/* -------------------------------- map -------------------------------- */
.map-img {
  width: 100%;
  height: 600px;
  border-radius: 30px;
  overflow: hidden;
}
@media (max-width: 768px) {
  .map-img {
    height: 500px;
  }
}

.map-txt {
  margin-top: 2.5em;
  background-color: var(--white);
  border-radius: 30px;
  border: 1px solid var(--gray-dd);
  padding: 3.125em 3.75em;
}
.map-txt .map-txt-icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  padding: 2px;
  font-size: 2rem;
}
@media (max-width: 1024px) {
  .map-txt .map-txt-icon {
    font-size: 1.8rem;
  }
}
@media (max-width: 768px) {
  .map-txt .map-txt-icon {
    font-size: 1.7rem;
  }
}
.map-txt .map-txt-icon dt {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  margin-right: 4px;
  width: 80px;
  margin-bottom: 0;
}
.map-txt .map-txt-icon01 {
  margin-bottom: 1.2em;
  padding-left: 45px;
}
.map-txt .map-txt-icon01::before {
  content: "";
  display: block;
  width: 22px;
  height: 30px;
  background: url("/images/sub/map_icon01.svg") no-repeat center;
  position: absolute;
  top: 0;
  left: 0;
}
.map-txt .map-txt-icon02 {
  padding-left: 45px;
}
.map-txt .map-txt-icon02::before {
  content: "";
  display: block;
  width: 27px;
  height: 31px;
  background: url("/images/sub/map_icon02.svg") no-repeat center;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (max-width: 480px) {
  .map-txt {
    padding: 2.4em 3em;
  }
  .map-txt .map-txt-icon dt {
    width: 60px;
  }
}

/* -------------------------------- sub imgbox -------------------------------- */
.sub-imgbox-wrap {
  margin-bottom: 3.5em;
}
.sub-imgbox-wrap ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 20px;
  margin: 0 auto;
  row-gap: 4em;
}
.sub-imgbox-wrap ul .gallery-item {
  width: calc(20% - 16px);
}
.sub-imgbox-wrap ul .gallery-item figure {
  position: relative;
  padding-top: 70%;
  overflow: hidden;
}
.sub-imgbox-wrap ul .gallery-item figure img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.sub-imgbox-wrap ul .gallery-item .cont-tit {
  text-align: center;
  margin-top: 10PX;
}
.sub-imgbox-wrap ul .gallery-item2 {
  width: calc(25% - 16px);
}
@media screen and (max-width: 768px) {
  .sub-imgbox-wrap ul .gallery-item {
    width: calc(33.33% - 16px); /* 3개씩 */
  }
}
@media screen and (max-width: 480px) {
  .sub-imgbox-wrap ul .gallery-item {
    width: calc(50% - 10px); /* 2개씩 */
  }
}

.sub-p {
  font-size: 1.8rem;
  line-height: 1.6;
}
@media (max-width: 1024px) {
  .sub-p {
    font-size: 1.6rem;
  }
}
@media (max-width: 768px) {
  .sub-p {
    font-size: 1.5rem;
  }
}
.sub-p span {
  font-weight: 700;
}

.sub-p-line {
  border-bottom: 1px solid var(--gray-dd);
  padding-bottom: 6.25em;
  margin-bottom: 6.25em;
}
@media screen and (max-width: 768px) {
  .sub-p-line {
    padding-bottom: 4em;
    margin-bottom: 4em;
  }
}

.h2-sub-wrap {
  font-size: 2.8rem;
}
@media (max-width: 1024px) {
  .h2-sub-wrap {
    font-size: 2.2rem;
  }
}
@media (max-width: 768px) {
  .h2-sub-wrap {
    font-size: 2rem;
  }
}

.sub-imgbox-wrap2 {
  margin-bottom: 3.5em;
}
.sub-imgbox-wrap2 ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 20px;
  margin: 0 auto;
  row-gap: 4em;
}
.sub-imgbox-wrap2 ul .gallery-item {
  width: calc(49% - 16px);
}
.sub-imgbox-wrap2 ul .gallery-item figure {
  position: relative;
  padding-top: 51%;
  overflow: hidden;
}
.sub-imgbox-wrap2 ul .gallery-item figure img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.sub-imgbox-wrap2 ul .gallery-item .cont-tit {
  text-align: left;
  margin-top: 15px;
}
@media screen and (max-width: 768px) {
  .sub-imgbox-wrap2 ul .gallery-item {
    width: 100%; /* 한 줄에 하나 */
  }
  .sub-imgbox-wrap2 ul .gallery-item .cont-tit {
    text-align: center;
  }
}

/* -------------------------------- entrust -------------------------------- */
.circle-con {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; /* 여러 줄로 배치 */
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 30px;
  margin: 2em auto 7em;
  padding: 20px;
}
.circle-con .circle-box {
  width: calc(25% - 22.5px); /* 한 줄에 4개 (25%) */
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.circle-con .circle-box .circle {
  width: 320px;
  height: 320px;
  border: 1px solid var(--gray-dd);
  background-color: var(--white);
  border-radius: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  text-align: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 15px;
  word-wrap: break-word;
  white-space: normal;
  row-gap: 2.4em;
  font-size: 2rem;
}
@media (max-width: 1024px) {
  .circle-con .circle-box .circle {
    font-size: 1.8rem;
  }
}
@media (max-width: 768px) {
  .circle-con .circle-box .circle {
    font-size: 1.7rem;
  }
}
.circle-con .circle-box .circle img {
  width: 60px;
}
.circle-con .circle-box .circle .img-w01 {
  width: 50px;
}
@media screen and (max-width: 1200px) {
  .circle-con .circle-box {
    width: calc(50% - 15px); /* 2개씩 */
  }
}
@media screen and (max-width: 768px) {
  .circle-con .circle-box {
    width: 100%; /* 한 줄에 하나 */
  }
}

.circle-con-gap {
  gap: 80px;
  margin: 2em auto 0;
}
@media screen and (max-width: 1200px) {
  .circle-con-gap {
    gap: 30px;
  }
}

.step-wrap {
  padding-top: 2.125em;
}
.step-wrap ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 170px;
  row-gap: 70px;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  overflow: hidden;
}
.step-wrap ul li .step-item-con .step-item-cont {
  width: 140px;
  height: 140px;
  display: block;
  background-color: var(--main-color);
  position: relative;
  border-radius: 100%;
}
.step-wrap ul li .step-item-con .step-item-cont .step-item-inner {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  text-align: center;
  font-size: 2.2rem;
}
@media (max-width: 1024px) {
  .step-wrap ul li .step-item-con .step-item-cont .step-item-inner {
    font-size: 1.9rem;
  }
}
@media (max-width: 768px) {
  .step-wrap ul li .step-item-con .step-item-cont .step-item-inner {
    font-size: 1.8rem;
  }
}
.step-wrap ul li .step-item-con .step-item-cont .step-item-inner .step-item-txt {
  display: block;
  color: var(--white);
  text-transform: uppercase;
  font-weight: 300;
}
.step-wrap ul li .step-item-con .step-item-cont .step-item-inner .step-item-num {
  display: block;
  color: var(--white);
  font-weight: 700;
}
.step-wrap ul li .step-item-con .step-item-cont::after {
  content: "";
  display: block;
  width: 320px;
  height: 1px;
  background-color: var(--main-color);
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.step-wrap ul li .step-item-con .step-txt {
  width: 140px;
  text-align: center;
  margin-top: 1em;
  font-weight: 600;
  font-size: 1.8rem;
}
@media (max-width: 1024px) {
  .step-wrap ul li .step-item-con .step-txt {
    font-size: 1.6rem;
  }
}
@media (max-width: 768px) {
  .step-wrap ul li .step-item-con .step-txt {
    font-size: 1.5rem;
  }
}
.step-wrap ul li:last-child .step-item-con .step-item-cont::after {
  display: none;
}
@media screen and (max-width: 768px) {
  .step-wrap ul li .step-item-con .step-item-cont {
    width: 90px;
    height: 90px;
  }
  .step-wrap ul li .step-item-con .step-txt {
    width: 90px;
  }
}

/* -------------------------------- catering -------------------------------- */
.catering-box {
  background-color: var(--white);
  border: 3px solid var(--main-color);
  border-radius: 20px;
  padding: 2.1875em 4.375em;
  margin-bottom: 3em;
}
@media screen and (max-width: 768px) {
  .catering-box {
    padding: 5em 2em 2em;
    text-align: center;
  }
}
.catering-box span {
  position: relative;
  color: var(--main-color);
  font-size: 2rem;
  font-weight: 700;
  padding-left: 60px;
}
@media (max-width: 1024px) {
  .catering-box span {
    font-size: 1.8rem;
  }
}
@media (max-width: 768px) {
  .catering-box span {
    font-size: 1.7rem;
  }
}
.catering-box span::before {
  content: "";
  display: block;
  width: 29px;
  height: 28px;
  background: url("/images/sub/catering_icon.svg") no-repeat center;
  position: absolute;
  left: 0;
  top: -5px;
}
@media screen and (max-width: 768px) {
  .catering-box span {
    padding-left: 0;
    text-align: center;
  }
  .catering-box span::before {
    left: 50%;
    top: -40px;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}

.catering-img {
  padding: 1.7em 0 4em;
}
.catering-img ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 45px;
}
.catering-img ul li {
  width: calc(33.33% - 16px);
}
@media screen and (max-width: 768px) {
  .catering-img ul {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .catering-img ul li {
    width: 100%; /* 한 줄에 하나 */
  }
  .catering-img ul li img {
    width: 100%;
  }
}

.catering-img2 {
  padding: 1.7em 0 0 !important;
}

.p-span {
  margin-top: 10px;
  display: block;
  text-align: right;
  font-weight: 300;
}

/* -------------------------------- food -------------------------------- */
.img-bg-f {
  margin: 2em auto 0;
}
.img-bg-f p {
  font-size: 1.8rem;
  font-weight: 500;
}
@media (max-width: 1024px) {
  .img-bg-f p {
    font-size: 1.6rem;
  }
}
@media (max-width: 768px) {
  .img-bg-f p {
    font-size: 1.5rem;
  }
}

.img-bg-f01 {
  background: url("/images/sub/imgbg_f01.jpg") no-repeat center/cover;
}

.img-bg-f02 {
  background: url("/images/sub/imgbg_f02.jpg") no-repeat center/cover;
}

.img-bg-f03 {
  background: url("/images/sub/imgbg_f03.jpg") no-repeat center/cover;
}

.img-bg-f04 {
  background: url("/images/sub/imgbg_f04.jpg") no-repeat center/cover;
}

@media screen and (max-width: 768px) {
  .img-bg-f .circle-box {
    width: calc(50% - 15px);
  }
  .img-bg-f .circle-box .circle {
    width: 200px;
    height: 200px;
  }
}
@media screen and (max-width: 480px) {
  .img-bg-f .circle-box {
    width: calc(50% - 15px);
  }
  .img-bg-f .circle-box .circle {
    width: 150px;
    height: 150px;
  }
}
/* -------------------------------- hygiene -------------------------------- */
.hygiene-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
  margin: 0 10px 6.25em;
}
.hygiene-wrap .hygiene-wrap-con {
  width: 50%;
}
.hygiene-wrap .hygiene-wrap-con .hygiene-wrap-img div {
  background-color: var(--white);
  text-align: center;
  font-size: 2rem;
  border: 1px solid var(--gray-dd);
  border-bottom: none;
  padding: 20px 0;
}
@media (max-width: 1024px) {
  .hygiene-wrap .hygiene-wrap-con .hygiene-wrap-img div {
    font-size: 1.8rem;
  }
}
@media (max-width: 768px) {
  .hygiene-wrap .hygiene-wrap-con .hygiene-wrap-img div {
    font-size: 1.7rem;
  }
}
.hygiene-wrap .hygiene-wrap-con p {
  font-size: 1.8rem;
  position: relative;
  padding-left: 15px;
  margin-top: 1em;
}
@media (max-width: 1024px) {
  .hygiene-wrap .hygiene-wrap-con p {
    font-size: 1.6rem;
  }
}
@media (max-width: 768px) {
  .hygiene-wrap .hygiene-wrap-con p {
    font-size: 1.5rem;
  }
}
.hygiene-wrap .hygiene-wrap-con p::before {
  content: "";
  display: block;
  width: 6px;
  height: 6px;
  background-color: var(--black);
  position: absolute;
  left: 0;
  top: 8px;
}
@media screen and (max-width: 768px) {
  .hygiene-wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin: 0 0 4em;
    gap: 3em;
  }
  .hygiene-wrap .hygiene-wrap-con {
    width: 100%; /* 한 줄에 하나 */
  }
  .hygiene-wrap .hygiene-wrap-con figure img {
    width: 100%;
  }
}

.hygiene-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0 10px;
}
.hygiene-list h2 {
  width: 40%;
}
.hygiene-list ul {
  width: 60%;
  line-height: 1.8;
}
.hygiene-list ul li {
  position: relative;
  padding-left: 15px;
  font-size: 1.8rem;
}
@media (max-width: 1024px) {
  .hygiene-list ul li {
    font-size: 1.6rem;
  }
}
@media (max-width: 768px) {
  .hygiene-list ul li {
    font-size: 1.5rem;
  }
}
.hygiene-list ul li::before {
  content: "";
  display: block;
  width: 6px;
  height: 6px;
  background-color: var(--black);
  position: absolute;
  left: 0;
  top: 12px;
}
@media screen and (max-width: 768px) {
  .hygiene-list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1em;
  }
  .hygiene-list h2 {
    width: 100%;
  }
  .hygiene-list ul {
    width: 100%;
  }
}

/* -------------------------------- crisis -------------------------------- */
.crisis-wrap {
  text-align: center;
}

.crisis-con {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 30px;
  margin: 2em auto 0;
  padding: 20px;
}
.crisis-con .crisis-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.crisis-con .crisis-box .circle {
  width: 500px;
  height: 500px;
  border: 1px solid var(--gray-dd);
  background-color: var(--white);
  border-radius: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  text-align: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 15px;
  word-wrap: break-word;
  white-space: normal;
  row-gap: 2.4em;
  font-size: 2rem;
}
@media (max-width: 1024px) {
  .crisis-con .crisis-box .circle {
    font-size: 1.8rem;
  }
}
@media (max-width: 768px) {
  .crisis-con .crisis-box .circle {
    font-size: 1.7rem;
  }
}
.crisis-con .crisis-box .circle-img01 {
  background: url("/images/sub/crisis_img01.jpg") no-repeat center;
}
.crisis-con .crisis-box .circle-img01 img {
  width: 90px;
}
.crisis-con .crisis-box .circle-img02 {
  background: url("/images/sub/crisis_img02.jpg") no-repeat center;
}
.crisis-con .crisis-box .circle-img02 img {
  width: 100px;
}
.crisis-con .crisis-box .crisis-txt {
  padding: 2em 0 0;
}
.crisis-con .crisis-box .crisis-txt div {
  font-size: 2.2rem;
  font-weight: 700;
  color: var(--main-color);
  border-bottom: 2px solid var(--main-color);
  padding-bottom: 0.3em;
  margin-bottom: 0.5em;
}
@media (max-width: 1024px) {
  .crisis-con .crisis-box .crisis-txt div {
    font-size: 1.9rem;
  }
}
@media (max-width: 768px) {
  .crisis-con .crisis-box .crisis-txt div {
    font-size: 1.8rem;
  }
}
.crisis-con .crisis-box .crisis-txt p {
  font-size: 1.8rem;
  line-height: 1.6;
}
@media (max-width: 1024px) {
  .crisis-con .crisis-box .crisis-txt p {
    font-size: 1.6rem;
  }
}
@media (max-width: 768px) {
  .crisis-con .crisis-box .crisis-txt p {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 1024px) {
  .crisis-con .crisis-box .circle {
    width: 300px;
    height: 300px;
  }
}
@media screen and (max-width: 768px) {
  .crisis-con {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 60px;
  }
  .crisis-con .crisis-box .circle {
    width: 300px;
    height: 300px;
  }
}

/* -------------------------------- form -------------------------------- */
.form-list > ul {
  border-top: 2px solid var(--black);
  background: var(--bs-body-bg);
}
.form-list > ul > li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-bottom: 1px solid var(--gray-dd);
}
.form-list > ul > li .data-head {
  font-size: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-left: 2.5em;
  min-width: 38.7rem;
  background-color: var(--gray-f2);
  min-height: 80px;
}
@media (max-width: 1024px) {
  .form-list > ul > li .data-head {
    font-size: 1.8rem;
  }
}
@media (max-width: 768px) {
  .form-list > ul > li .data-head {
    font-size: 1.7rem;
  }
}
.form-list > ul > li .data-body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  padding: 2.3rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.form-list > ul > li .data-body .form-bundle {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.form-list > ul > li .data-body .form-bundle .sign {
  margin: 0 0.8rem;
}
.form-list > ul > li .data-body .form-bundle select {
  margin-left: 2rem;
}
.form-list > ul > li .data-body .form-bundle .bundle-w10 {
  font-weight: 600;
  font-size: 1.8rem;
}
@media (max-width: 1024px) {
  .form-list > ul > li .data-body .form-bundle .bundle-w10 {
    font-size: 1.6rem;
  }
}
@media (max-width: 768px) {
  .form-list > ul > li .data-body .form-bundle .bundle-w10 {
    font-size: 1.5rem;
  }
}
.form-list > ul > li .data-body .design {
  margin-top: 2rem;
}
.form-list > ul > li .data-body .input-btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: calc(60% - 120px);
}
.form-list > ul > li .data-body .input-btn input {
  width: calc(100% - 160px);
}
.form-list > ul > li .data-body .input-btn button {
  width: 160px;
  background: #000;
  font-size: 16px;
  color: #fff;
  border: 0;
  outline: 0;
  border-radius: 10px;
  margin-left: 10px;
}
@media screen and (max-width: 1300px) {
  .form-list > ul > li {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .form-list > ul > li .data-head {
    min-width: auto;
    min-height: 60px;
  }
  .form-list > ul > li .data-body .input-btn {
    width: 100%;
  }
  .form-list > ul > li .data-body .form-bundle {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    row-gap: 20px;
  }
  .form-list > ul > li .data-body .form-bundle .bundle-w0 {
    width: calc(50% - 60px) !important;
  }
}
@media screen and (max-width: 1300px) and (max-width: 480px) {
  .form-list > ul > li .data-body .form-bundle .bundle-w0 {
    width: calc(90% - 60px) !important;
  }
}
@media screen and (max-width: 1300px) {
  .form-list > ul > li .data-body .form-bundle .bundle-w10 {
    width: 20px !important;
    margin-right: 20px;
  }
  .form-list > ul > li .data-body .form-bundle .bundle-w00 {
    width: 10px !important;
    margin: 0 0 0 10px !important;
  }
  .form-list > ul > li .data-body .form-bundle .bundle-w1 {
    width: 85% !important;
  }
  .form-list > ul > li .data-body .form-bundle .bundle-w2 {
    width: 10% !important;
  }
  .form-list > ul > li .data-body .form-bundle .bundle-w3 {
    width: 45% !important;
  }
  .form-list > ul > li .data-body .form-bundle .bundle-w4 {
    width: 45% !important;
  }
}

.radio-list {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 30px;
}
@media screen and (max-width: 768px) {
  .radio-list {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

.radio-item label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.radio-item input {
  font-family: unset;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border-radius: 0;
  position: relative;
  cursor: pointer;
}
.radio-item input[type=radio]:checked {
  background: url("/images/sub/radio_on.svg") no-repeat center/100%;
}
.radio-item input[type=radio] {
  background: url("/images/sub/radio_off.svg") no-repeat center/100%;
  width: 2.5rem;
  height: 2.5rem;
  margin-right: 0.8rem;
}
.radio-item .option {
  font-weight: 500;
  font-size: 1.8rem;
}
@media (max-width: 1024px) {
  .radio-item .option {
    font-size: 1.6rem;
  }
}
@media (max-width: 768px) {
  .radio-item .option {
    font-size: 1.5rem;
  }
}

.checkbox-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 30px;
}
@media screen and (max-width: 768px) {
  .checkbox-list {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

.checkbox-item label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.checkbox-item input {
  font-family: unset;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border-radius: 0;
  position: relative;
  cursor: pointer;
}
.checkbox-item input[type=checkbox]:checked {
  background: url("/images/sub/radio_on.svg") no-repeat center/100%;
}
.checkbox-item input[type=checkbox] {
  background: url("/images/sub/radio_off.svg") no-repeat center/100%;
  width: 2.5rem;
  height: 2.5rem;
  margin-right: 0.8rem;
}
.checkbox-item .option {
  font-weight: 500;
  font-size: 1.8rem;
}
@media (max-width: 1024px) {
  .checkbox-item .option {
    font-size: 1.6rem;
  }
}
@media (max-width: 768px) {
  .checkbox-item .option {
    font-size: 1.5rem;
  }
}

.blind {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  border: 0;
  white-space: nowrap;
  clip: rect(0 0 0 0);
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
  overflow: hidden;
}

.form-wrap {
  margin-top: 5em;
}
.form-wrap h2 {
  font-size: 2.8rem;
}
@media (max-width: 1024px) {
  .form-wrap h2 {
    font-size: 2.2rem;
  }
}
@media (max-width: 768px) {
  .form-wrap h2 {
    font-size: 2rem;
  }
}
.form-wrap .form-wrap-box {
  background-color: var(--white);
  border-radius: 30px;
  border: 1px solid var(--gray-dd);
  padding: 2.2em 2.8125em;
  margin-top: 2.5em;
  margin-bottom: 1.875em;
  color: #71717a;
  font-weight: 300;
  line-height: 1.8;
  font-size: 1.8rem;
}
@media (max-width: 1024px) {
  .form-wrap .form-wrap-box {
    font-size: 1.6rem;
  }
}
@media (max-width: 768px) {
  .form-wrap .form-wrap-box {
    font-size: 1.5rem;
  }
}

.btn-button {
  margin-top: 6rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.btn-button .btn-area {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 100%;
          flex: 1 1 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.btn-button .btn-area button {
  background-color: var(--main-color);
  color: var(--white);
  font-size: 1.8rem;
  font-weight: 500;
  padding: 1.4rem 6rem;
  border-radius: 5rem;
  min-height: 5.6rem;
}
@media (max-width: 1024px) {
  .btn-button .btn-area button {
    font-size: 1.6rem;
  }
}
@media (max-width: 768px) {
  .btn-button .btn-area button {
    font-size: 1.5rem;
  }
}
