/************************************************************************************/
/************************************* Colors *************************************/
/************************************************************************************/
:root {
  --white:#fff;
  --black:#000;
  --red:#9B0000;
  --blue:#0F0078;
  --light-blue:#5163c0;
  --deep-blue:#05014a;
  --orange:#ff9644;
  /* color */
  --font-color:#010101;
  --primary: #4D1FF2;
  --primary400: #2b379e;
  --primary300: #3a49b4;
  --primary200: #7680ca;
  --primary100: #c4c7e9;
  --primary000: #e7e9f6;
  --secondary: #FB6B4D;
  --gray100: #F3F6F9;
  --gray200: #E9ECEF;
  --gray300: #CED4DA;
  --gray400: #ADB5BD;
  --gray500: #848C93;
  --brd-c1: #E9ECEF;
  --brd-c2: #CED4DA;
  --c-red: #ec0000;
  --btn-gray:#6c757d;
  --mc: #2e55e7;
}

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

body {
  font-family: "Inter", "Pretendard Variable", "Pretendard", "Noto Sans KR", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Apple SD Gothic Neo", "Malgun Gothic", "Helvetica Neue", Arial, sans-serif;
  font-weight: 400;
  line-height: 1.4;
  word-break: keep-all;
  letter-spacing: -0.025em;
  font-size: 1.8rem;
}
@media (max-width: 1280px) {
  body {
    font-size: 1.6rem;
  }
}
@media (max-width: 767px) {
  body {
    font-size: 1.5rem;
  }
}
body a {
  color: var(--black);
  text-decoration: none;
}
body:has(#modal.show) {
  overflow: hidden;
}

h1, h2, h3, h4, h5, h6 {
  line-height: 1.4;
}

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

/* ----------------------------------------
* common
* ----------------------------------------*/
:root {
  --header-height: 80px;
  --header-height-scroll: 60px;
}
@media (max-width: 1280px) {
  :root {
    --header-height: 64px;
    --header-height-scroll: 48px;
  }
}
@media (max-width: 767px) {
  :root {
    --header-height: 56px;
  }
}
/* table */
table {
  width: 100%;
}

.wrap-in {
  max-width: 1416px;
  margin: 0 auto;
}
@media (max-width: 1460px) {
  .wrap-in {
    max-width: 96%;
  }
}
@media (max-width: 767px) {
  .wrap-in {
    max-width: 94%;
  }
}
@media (max-width: 480px) {
  .wrap-in {
    max-width: 90%;
  }
}

.padding-in {
  padding-inline: 80px;
}
@media (max-width: 1460px) {
  .padding-in {
    padding-inline: 40px;
  }
}
@media (max-width: 767px) {
  .padding-in {
    padding-inline: 28px;
  }
}
@media (max-width: 480px) {
  .padding-in {
    padding-inline: 20px;
  }
}
@media (max-width: 320px) {
  .padding-in {
    padding-inline: 16px;
  }
}

/* scroll */
.scroll-cont {
  position: absolute;
  right: 3.75vw;
  bottom: 5.21vw;
  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;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 35px;
  height: auto;
}
.scroll-cont .line {
  position: relative;
  width: 1px;
  height: 82px;
  background-color: var(--font-color);
  z-index: 1;
}
.scroll-cont .circle {
  position: relative;
  width: 100%;
  aspect-ratio: 1;
  background-color: var(--white);
  border-radius: 50%;
  margin-top: -44%;
  margin-bottom: 26px;
  z-index: 0;
}
.scroll-cont img {
  width: 12px;
}
@media (max-width: 767px) {
  .scroll-cont {
    width: 21px;
  }
  .scroll-cont .line {
    height: 64px;
  }
  .scroll-cont .circle {
    margin-bottom: 1em;
  }
  .scroll-cont img {
    width: 10px;
  }
}

/* more-btn */
.btn-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.btn-more {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  min-width: 214px;
  padding-block: 4px;
  padding-inline: 32px 4px;
  border-radius: 100px;
  background-color: var(--gray100);
  font-size: 1.6rem;
}
@media (max-width: 1280px) {
  .btn-more {
    font-size: 1.5rem;
  }
}
@media (max-width: 767px) {
  .btn-more {
    font-size: 1.4rem;
  }
}
.btn-more::after {
  content: "";
  display: block;
  width: 60px;
  margin-left: auto;
  aspect-ratio: 1;
  border-radius: 50%;
  background: var(--white) url("/images/doah2/main/arrow_right_alt.svg") no-repeat center/66.67% 66.67%;
}
.btn-more.sty-fill-black {
  background-color: var(--font-color);
  color: var(--white);
}
.btn-more.sty-fill-white {
  background-color: var(--white);
}
.btn-more.sty-fill-white::after {
  background-color: var(--gray100);
}
.btn-more.sty-line-white {
  border: 1px solid var(--gray200);
  background-color: transparent;
  color: var(--white);
}
@media (max-width: 1280px) {
  .btn-more {
    min-width: 200px;
    padding-left: 28px;
  }
  .btn-more::after {
    width: 52px;
  }
}
@media (max-width: 767px) {
  .btn-more {
    min-width: 160px;
    padding-left: 20px;
  }
  .btn-more::after {
    content: "";
    display: block;
    width: 40px;
  }
}
@media (max-width: 480px) {
  .btn-more {
    min-width: 150px;
  }
  .btn-more::after {
    content: "";
    display: block;
    width: 32px;
  }
}

/* AI */
.img-ai {
  position: relative;
}
.img-ai::after {
  position: absolute;
  bottom: 1em;
  right: 1em;
  content: "";
  display: block;
  padding: 1px 12px;
  position: absolute;
  content: "AI-assisted image";
  font-size: 1.3rem;
  font-weight: 300;
  background-color: rgba(255, 255, 255, 0.15);
  border-radius: 100px;
  color: var(--white);
  z-index: 1;
}
.img-ai.img-ai-right {
  right: auto;
  left: 1em;
}

.img-ai2 {
  text-align: right;
}
.img-ai2::after {
  vertical-align: middle;
  content: "";
  margin-top: -2px;
  display: inline-block;
  margin-top: 1em;
  content: "AI-assisted image";
  font-size: 1.3rem;
  font-weight: 300;
  border-radius: 100px;
  color: var(--white);
  z-index: 1;
}

/* ----------------------------------------
* animation
* ----------------------------------------*/
.fade-in-doah {
  opacity: 0;
  -webkit-animation: contIn 1400ms cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
          animation: contIn 1400ms cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
  -webkit-transform: none;
          transform: none;
}

.fade-in-doah-small {
  opacity: 0;
  -webkit-animation: contIn2 1400ms cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
          animation: contIn2 1400ms cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
  -webkit-transform: none;
          transform: none;
}

@-webkit-keyframes contIn {
  from {
    opacity: 0;
    -webkit-transform: translateY(100px);
            transform: translateY(100px);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
            transform: none;
  }
}

@keyframes contIn {
  from {
    opacity: 0;
    -webkit-transform: translateY(100px);
            transform: translateY(100px);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
            transform: none;
  }
}
@-webkit-keyframes contIn2 {
  from {
    opacity: 0;
    -webkit-transform: translateY(10px);
            transform: translateY(10px);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
            transform: none;
  }
}
@keyframes contIn2 {
  from {
    opacity: 0;
    -webkit-transform: translateY(10px);
            transform: translateY(10px);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
            transform: none;
  }
}
@-webkit-keyframes imgReveal {
  from {
    -webkit-transform: scale(1.25);
            transform: scale(1.25);
  }
  to {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@keyframes imgReveal {
  from {
    -webkit-transform: scale(1.25);
            transform: scale(1.25);
  }
  to {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
/* ----------------------------------------
* header
* ----------------------------------------*/
header {
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  height: var(--header-height);
  padding-inline: 52px;
  background-color: var(--white);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  z-index: 100;
}
header .logo a {
  display: block;
  width: 154px;
  height: 32px;
  background: url("/images/doah2/common/logo_b.svg") no-repeat center/100%;
}
header .nav-wrap {
  position: relative;
  margin-left: 5.5em;
  font-family: "Inter";
}
header .nav-wrap .btn-close {
  display: none;
}
header .nav-wrap .dep1-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
header .nav-wrap .dep1-wrap .dep1-in {
  position: relative;
  height: 100%;
}
header .nav-wrap .dep1-wrap .dep1-in > a {
  padding-inline: 2.75em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: var(--header-height);
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
header .nav-wrap .dep1-wrap .dep1-in > a:hover {
  color: var(--primary);
}
header .nav-wrap .dep2-wrap {
  display: none;
  position: absolute;
  top: var(--header-height);
  width: 100%;
  padding-block: 1em;
}
header .nav-wrap .dep2-wrap li a {
  text-align: center;
  display: block;
  padding: 0.5em 1em;
  font-size: 1.5rem;
}
@media (max-width: 1280px) {
  header .nav-wrap .dep2-wrap li a {
    font-size: 1.4rem;
  }
}
@media (max-width: 767px) {
  header .nav-wrap .dep2-wrap li a {
    font-size: 1.3rem;
  }
}
header .nav-wrap .dep2-wrap li a {
  color: var(--gray500);
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
header .nav-wrap .dep2-wrap li:hover a {
  text-decoration: underline;
  color: var(--font-color);
}
header .nav-bg {
  display: none;
  position: absolute;
  top: var(--header-height);
  left: 0;
  width: 100%;
  height: 150%;
  background-color: var(--white);
}
header .util {
  margin-left: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
header .lang {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
header .lang .item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 52px;
  height: 36px;
  border-radius: 100px;
  border: 1px solid rgba(18, 18, 18, 0.5);
  font-size: 1.4rem;
}
@media (max-width: 1280px) {
  header .lang .item {
    font-size: 1.3rem;
  }
}
@media (max-width: 767px) {
  header .lang .item {
    font-size: 1.2rem;
  }
}
header .lang .item:first-child {
  margin-right: -10px;
}
header .lang .item.active {
  background-color: var(--font-color);
  color: var(--white);
}
header .burger-wrap {
  display: none;
}
@media (max-width: 1460px) {
  header {
    padding-inline: 40px;
  }
  header .nav-wrap {
    margin-left: 3.2em;
  }
  header .nav-wrap .dep1-wrap .dep1-in > a {
    padding-inline: 2em;
  }
}
@media (max-width: 1280px) {
  header {
    padding-inline: 32px;
  }
  header .logo {
    z-index: 100;
  }
  header .logo a {
    width: 123px;
    height: 25px;
  }
  header .nav-wrap {
    position: fixed;
    left: 0;
    top: 0;
    display: block;
    display: none;
    width: 100%;
    height: 100vh;
    margin-left: 0;
    background-color: var(--white);
    z-index: 90;
  }
  header .nav-wrap .btn-close {
    position: absolute;
    right: 0;
    display: block;
    width: var(--header-height);
    height: var(--header-height);
    aspect-ratio: 1;
    margin-left: auto;
  }
  header .nav-wrap .dep2-wrap {
    display: none;
    position: static;
    padding: 1em;
  }
  header .nav-wrap .dep2-wrap li a {
    text-align: left;
  }
  header .nav-wrap .dep1-wrap {
    width: 100%;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-top: calc(var(--header-height) + 1.5em);
    padding-inline: 1em;
    gap: 0;
  }
  header .nav-wrap .dep1-wrap .dep1-in {
    width: 100%;
    padding-block: 1em;
    border-bottom: 1px solid var(--font-color);
  }
  header .nav-wrap .dep1-wrap .dep1-in > a {
    padding: 0.4em 1em;
    height: auto;
    font-size: 2.8rem;
    font-weight: 600;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  header .util {
    gap: 10px;
    margin-right: -10px;
  }
  header .lang .item {
    width: 48px;
    height: 34px;
  }
  header .burger-wrap {
    width: 52px;
    aspect-ratio: 1;
    display: block;
  }
  header .burger-wrap .burger-in {
    display: block;
    position: relative;
    width: 32px;
    height: 24px;
    margin-inline: auto;
    margin-top: 14px;
  }
  header .burger-wrap .burger-in span {
    position: absolute;
    display: block;
    width: 100%;
    height: 2px;
    left: 0;
    background-color: var(--font-color);
  }
  header .burger-wrap .burger-in span:nth-child(2) {
    top: 11px;
  }
  header .burger-wrap .burger-in span:last-child {
    bottom: 0;
  }
}
@media (max-width: 767px) {
  header {
    padding-inline: 28px;
  }
  header .logo {
    -ms-flex-negative: 1;
        flex-shrink: 1;
    min-width: 0;
  }
  header .logo a {
    display: block;
    width: 92px;
    max-width: 100%;
    height: 19px;
  }
  header .nav-wrap .dep1-wrap .dep1-in > a {
    font-size: 2rem;
  }
  header .util {
    gap: 0;
    margin-right: -12px;
  }
  header .lang .item {
    width: 38px;
    height: 24px;
  }
  header .lang .item:first-child {
    margin-right: -6px;
  }
  header .burger-wrap .burger-in {
    width: 28px;
    height: 18px;
    margin-top: 17px;
    font-size: 0;
    line-height: 0;
  }
  header .burger-wrap .burger-in span {
    height: 2px;
    -webkit-transform: scaleY(0.5);
            transform: scaleY(0.5);
    -webkit-transform-origin: center;
            transform-origin: center;
  }
  header .burger-wrap .burger-in span:nth-child(2) {
    top: 8px;
  }
  header .burger-wrap .burger-in span:last-child {
    bottom: 0;
  }
}
@media (max-width: 480px) {
  header {
    padding-inline: 20px;
  }
}
@media (max-width: 320px) {
  header {
    padding-inline: 16px;
  }
}

/* ----------------------------------------
* footer
* ----------------------------------------*/
.to-top {
  position: fixed;
  bottom: 5.5em;
  right: 80px;
  display: none;
}
.to-top a span {
  width: 72px;
  aspect-ratio: 1;
  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;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-radius: 50%;
  background-color: var(--white);
  font-family: "Inter";
  -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.15);
          box-shadow: 0 0 10px rgba(0, 0, 0, 0.15);
  font-size: 1.6rem;
}
@media (max-width: 1280px) {
  .to-top a span {
    font-size: 1.5rem;
  }
}
@media (max-width: 767px) {
  .to-top a span {
    font-size: 1.4rem;
  }
}
.to-top a span::before {
  display: block;
  content: "";
  width: 24px;
  aspect-ratio: 1;
  background: url("/images/doah2/common/arrow_upward_alt.svg") no-repeat center/100%;
}
@media (max-width: 1460px) {
  .to-top {
    right: 2%;
  }
}
@media (max-width: 1280px) {
  .to-top {
    right: 3%;
  }
  .to-top a span {
    width: 64px;
  }
}
@media (max-width: 767px) {
  .to-top {
    right: 4%;
    bottom: 3.3em;
  }
  .to-top a span {
    width: 48px;
    font-size: 1.2rem;
  }
  .to-top a span::before {
    width: 20px;
  }
}

footer {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2em;
  padding-block: 5.556em;
  background-color: var(--font-color);
}
footer .f-cont {
  color: var(--gray100);
}
footer .f-cont .tel {
  font-size: 2.4rem;
}
@media (max-width: 1280px) {
  footer .f-cont .tel {
    font-size: 2rem;
  }
}
@media (max-width: 767px) {
  footer .f-cont .tel {
    font-size: 1.8rem;
  }
}
footer .f-cont .tel strong {
  color: var(--secondary);
  font-weight: 600;
  font-size: 3.2rem;
}
@media (max-width: 1280px) {
  footer .f-cont .tel strong {
    font-size: 2.6rem;
  }
}
@media (max-width: 767px) {
  footer .f-cont .tel strong {
    font-size: 2.2rem;
  }
}
footer .f-cont .add {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 6px;
  margin-block: 3.111em 1.778em;
  font-size: 1.6rem;
}
@media (max-width: 1280px) {
  footer .f-cont .add {
    font-size: 1.5rem;
  }
}
@media (max-width: 767px) {
  footer .f-cont .add {
    font-size: 1.4rem;
  }
}
footer .f-cont .add {
  color: var(--gray300);
}
footer .f-cont .copyright {
  color: #848C93;
  font-size: 1.6rem;
}
@media (max-width: 1280px) {
  footer .f-cont .copyright {
    font-size: 1.5rem;
  }
}
@media (max-width: 767px) {
  footer .f-cont .copyright {
    font-size: 1.4rem;
  }
}
footer .f-logo {
  margin-left: auto;
  width: 278px;
  height: 88px;
  background: url("/images/doah2/common/logo_f.svg") no-repeat center/100%;
}
@media (max-width: 1280px) {
  footer .f-logo {
    width: 222.4px;
    height: 70.4px;
  }
}
@media (max-width: 767px) {
  footer {
    padding-block: 3.3em;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  footer .f-cont {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  footer .f-cont .tel {
    font-size: 2rem;
    padding-bottom: 1em;
    border-bottom: 1px solid rgba(255, 255, 255, 0.25);
  }
}
@media (max-width: 767px) and (max-width: 1280px) {
  footer .f-cont .tel {
    font-size: 1.8rem;
  }
}
@media (max-width: 767px) and (max-width: 767px) {
  footer .f-cont .tel {
    font-size: 1.7rem;
  }
}
@media (max-width: 767px) {
  footer .f-cont .tel strong {
    font-size: 2.8rem;
  }
}
@media (max-width: 767px) and (max-width: 1280px) {
  footer .f-cont .tel strong {
    font-size: 2.2rem;
  }
}
@media (max-width: 767px) and (max-width: 767px) {
  footer .f-cont .tel strong {
    font-size: 2rem;
  }
}
@media (max-width: 767px) {
  footer .f-cont .add {
    margin-block: 2em;
  }
  footer .f-logo {
    width: auto;
    height: 39.6px;
    width: min(100%, 125.1px);
  }
}

@-webkit-keyframes imgZoomIn {
  from {
    -webkit-transform: scale(1.2);
            transform: scale(1.2);
  }
  to {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}

@keyframes imgZoomIn {
  from {
    -webkit-transform: scale(1.2);
            transform: scale(1.2);
  }
  to {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@-webkit-keyframes imgZoomInVisual {
  from {
    opacity: 0;
    -webkit-transform: scale(1.2);
            transform: scale(1.2);
  }
  to {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@keyframes imgZoomInVisual {
  from {
    opacity: 0;
    -webkit-transform: scale(1.2);
            transform: scale(1.2);
  }
  to {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@-webkit-keyframes imgZoomInVisualHide {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes imgZoomInVisualHide {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@-webkit-keyframes imgZoomIn2 {
  from {
    -webkit-transform: scale(1.2) translateY(-50%);
            transform: scale(1.2) translateY(-50%);
  }
  to {
    -webkit-transform: scale(1) translateY(-50%);
            transform: scale(1) translateY(-50%);
  }
}
@keyframes imgZoomIn2 {
  from {
    -webkit-transform: scale(1.2) translateY(-50%);
            transform: scale(1.2) translateY(-50%);
  }
  to {
    -webkit-transform: scale(1) translateY(-50%);
            transform: scale(1) translateY(-50%);
  }
}
/* ----------------------------------------
* common
* ----------------------------------------*/
.ti-wrap {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.ti-wrap .ti-doah {
  position: relative;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 12px;
  font-size: clamp(4.4rem, 3.13vw, 6rem);
}
.ti-wrap .ti-doah::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 15px;
  right: -0.7em;
  width: clamp(46px, 4.06vw, 78px);
  height: clamp(44px, 3.85vw, 74px);
  background: url("/images/doah2/main/ti_deco.svg") no-repeat center/100%;
  z-index: -1;
}
.ti-wrap .ti-doah .doah {
  display: block;
  width: clamp(158px, 10.83vw, 208px);
  position: relative;
  top: -0.1em;
}
.ti-wrap .ti-doah .doah img {
  width: 100%;
  height: 100%;
}
@media (max-width: 767px) {
  .ti-wrap .ti-doah {
    font-size: clamp(3rem, 5.22vw, 4rem);
  }
  .ti-wrap .ti-doah .doah {
    width: clamp(108px, 20.6vw, 158px);
  }
}
@media (max-width: 320px) {
  .ti-wrap .ti-doah {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 0;
  }
  .ti-wrap .ti-doah::after {
    bottom: auto;
    top: -15px;
  }
}

/* ----------------------------------------
* visual
* ----------------------------------------*/
.ani-img {
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-animation: imgZoomIn 2200ms cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;
          animation: imgZoomIn 2200ms cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;
}

.main-visual {
  position: relative;
  margin-top: var(--header-height);
  width: 100%;
  height: calc(100dvh - var(--header-height));
  overflow: hidden;
}
.main-visual .img-sld {
  position: absolute;
  z-index: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.main-visual .img-sld .img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url("/images/doah2/main/visual_img01.jpg") no-repeat center/cover;
}
.main-visual .img-sld .img:nth-child(2) {
  opacity: 0;
  background-image: url("/images/doah2/main/visual_img02.jpg");
}
.main-visual .img-sld .img:nth-child(3) {
  opacity: 0;
  background-image: url("/images/doah2/main/visual_img01.jpg");
}
.main-visual .img-sld .img {
  /* animation */
}
.main-visual .img-sld .img.ani-img-visual {
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-animation: imgZoomInVisual 7000ms cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;
          animation: imgZoomInVisual 7000ms cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;
}
.main-visual .img-sld .img.ani-img-visual-hide {
  -webkit-animation: imgZoomInVisualHide 1000ms cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;
          animation: imgZoomInVisualHide 1000ms cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;
}
.main-visual .deco-txt {
  width: 35.2%;
  aspect-ratio: 167/169;
  position: absolute;
  right: -11.51%;
  top: -21.1%;
  overflow: hidden;
  -webkit-animation: rotate360 30s linear infinite;
          animation: rotate360 30s linear infinite;
}
.main-visual .deco-txt img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.main-visual .txt-cont {
  position: absolute;
  bottom: 9.27vw;
  left: 10.42vw;
}
.main-visual .txt-cont .box-txt {
  display: inline-block;
  border: 1px solid var(--font-color);
  padding: 2px 1em;
  font-size: 2.4rem;
}
@media (max-width: 1280px) {
  .main-visual .txt-cont .box-txt {
    font-size: 2rem;
  }
}
@media (max-width: 767px) {
  .main-visual .txt-cont .box-txt {
    font-size: 1.8rem;
  }
}
.main-visual .txt-cont .box-txt {
  font-weight: 500;
}
.main-visual .txt-cont .ti {
  margin-block: 0.41em;
  line-height: 120%;
  font-size: clamp(5.4rem, 4.06vw, 7.8rem);
}
.main-visual .txt-cont .ti .txt1 {
  font-weight: 200;
}
.main-visual .txt-cont .ti .txt2 {
  font-weight: 500;
}
.main-visual .txt-cont .ti .txt1 span,
.main-visual .txt-cont .ti .txt2 span {
  display: inline-block;
  opacity: 0;
  -webkit-transform: translateY(0.4em);
          transform: translateY(0.4em);
  -webkit-animation: textUp 900ms cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;
          animation: textUp 900ms cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;
  -webkit-animation-delay: calc(var(--i) * 60ms);
          animation-delay: calc(var(--i) * 60ms);
}
.main-visual .txt-cont p {
  font-size: 2rem;
}
@media (max-width: 1280px) {
  .main-visual .txt-cont p {
    font-size: 1.8rem;
  }
}
@media (max-width: 767px) {
  .main-visual .txt-cont p {
    font-size: 1.7rem;
  }
}
@media (max-width: 1280px) {
  .main-visual .deco-txt {
    width: 42.24%;
    top: -15%;
  }
}
@media (max-width: 767px) {
  .main-visual .img-sld .img {
    background-image: url("/images/doah2/main/visual_img01_m.jpg");
  }
  .main-visual .deco-txt {
    width: 52.8%;
  }
  .main-visual .txt-cont {
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    text-align: center;
    padding-inline: 1em;
  }
  .main-visual .txt-cont .ti {
    font-size: clamp(3.6rem, 7.04vw, 5.4rem);
  }
  .main-visual .txt-cont p {
    padding-inline: 1em;
  }
}
@media (max-width: 480px) {
  .main-visual .deco-txt {
    width: 64%;
  }
}

/* txt-onebyone */
@-webkit-keyframes textUp {
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@keyframes textUp {
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
/* txt-deco-360 */
@-webkit-keyframes rotate360 {
  from {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
@keyframes rotate360 {
  from {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
/* ----------------------------------------
* brands
* ----------------------------------------*/
.brands-wrap {
  margin-bottom: 80px;
}
.brands-wrap .ti-wrap {
  padding-block: 7em 3em;
}

.brands {
  height: calc((100vh - var(--header-height)) * 2.2);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.brands .brands-cont {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  position: relative;
  overflow: hidden;
}
.brands .brands-cont .cont {
  width: 100%;
  height: calc(100vh - 40px);
  margin-bottom: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-block: 3.1em;
  background-color: var(--white);
}
.brands .brands-cont .cont::after, .brands .brands-cont .cont::before {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background-color: var(--gray300);
  position: absolute;
  left: 0;
  -webkit-transform: scaleX(1);
          transform: scaleX(1);
  -webkit-transform-origin: left;
          transform-origin: left;
  -webkit-transition: -webkit-transform 700ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: -webkit-transform 700ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: transform 700ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: transform 700ms cubic-bezier(0.25, 0.46, 0.45, 0.94), -webkit-transform 700ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.brands .brands-cont .cont::before {
  top: 0;
}
.brands .brands-cont .cont::after {
  bottom: 0;
}
.brands .brands-cont .cont .txt-cont {
  position: relative;
  width: 49.5%;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  padding: 4.4em;
  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: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.brands .brands-cont .cont .txt-cont .num {
  position: absolute;
  top: 0.83em;
  left: 1.667em;
  font-size: 4.8rem;
}
@media (max-width: 1280px) {
  .brands .brands-cont .cont .txt-cont .num {
    font-size: 3.4rem;
  }
}
@media (max-width: 767px) {
  .brands .brands-cont .cont .txt-cont .num {
    font-size: 3rem;
  }
}
.brands .brands-cont .cont .txt-cont .num {
  font-weight: 300;
  color: var(--gray400);
}
.brands .brands-cont .cont .txt-cont .logo {
  width: clamp(242px, 20.94vw, 402px);
}
.brands .brands-cont .cont .txt-cont p {
  margin-block: 1.778em 3.333em;
}
.brands .brands-cont .cont .img-cont {
  width: 50.5%;
  position: relative;
  opacity: 0;
  overflow: hidden;
}
.brands .brands-cont .cont .img-cont::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: url("/images/doah2/main/brands_img01.jpg") no-repeat center/cover;
}
.brands .brands-cont .cont:nth-child(2) .txt-cont .logo {
  width: clamp(146px, 12.6vw, 242px);
}
.brands .brands-cont .cont:nth-child(2) .img-cont::before {
  background-image: url("/images/doah2/main/brands_img02.jpg");
}
.brands .brands-cont .cont.ani-active::after, .brands .brands-cont .cont.ani-active::before {
  -webkit-transform: scaleX(1);
          transform: scaleX(1);
}
.brands .brands-cont .cont.ani-active .txt-cont {
  -webkit-animation: contIn 1400ms cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
          animation: contIn 1400ms cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
  -webkit-transform: none;
          transform: none;
}
.brands .brands-cont .cont.ani-active .img-cont {
  -webkit-animation: contIn 1400ms cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
          animation: contIn 1400ms cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
  -webkit-transform: none;
          transform: none;
}
.brands .brands-cont .cont.ani-active .img-cont::before {
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-animation: imgZoomIn 1800ms cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;
          animation: imgZoomIn 1800ms cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;
}
@media (max-width: 1460px) {
  .brands .brands-cont .cont .txt-cont {
    padding: 2.8em 2.8em 2em;
  }
  .brands .brands-cont .cont .txt-cont .num {
    top: 0.588em;
    left: 1.176em;
  }
}
@media (max-width: 1024px) {
  .brands .brands-cont .cont .txt-cont {
    padding: 2em;
  }
  .brands .brands-cont .cont .txt-cont .num {
    top: 0.415em;
    left: 0.88em;
  }
}
@media (max-width: 640px) {
  .brands .brands-cont .cont {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding-block: 2em;
  }
  .brands .brands-cont .cont .txt-cont {
    width: 100%;
    height: 49.5%;
    padding: 0 0.6em 2em;
  }
  .brands .brands-cont .cont .txt-cont .num {
    left: auto;
    left: 0.3em;
    top: 0;
    font-size: 3.2rem;
  }
}
@media (max-width: 640px) and (max-width: 1280px) {
  .brands .brands-cont .cont .txt-cont .num {
    font-size: 2.6rem;
  }
}
@media (max-width: 640px) and (max-width: 767px) {
  .brands .brands-cont .cont .txt-cont .num {
    font-size: 2.2rem;
  }
}
@media (max-width: 640px) {
  .brands .brands-cont .cont .txt-cont .logo {
    width: clamp(170px, 37.81vw, 242px);
  }
  .brands .brands-cont .cont .txt-cont p {
    margin-block: 1em 2em;
  }
  .brands .brands-cont .cont .img-cont {
    width: 100%;
    height: 50.5%;
  }
  .brands .brands-cont .cont:nth-child(2) .txt-cont .logo {
    width: clamp(102px, 22.81vw, 146px);
  }
}

/* ----------------------------------------
* main-philosophy
* ----------------------------------------*/
.main-philosophy .philosophy-cont {
  position: relative;
  height: calc((100vh - var(--header-height)) * 4.4);
  overflow: hidden;
}
.main-philosophy .philosophy-cont .cont {
  width: 100%;
  height: calc(100vh - var(--header-height));
  margin-bottom: 40px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}
.main-philosophy .philosophy-cont .cont .txt-cont {
  padding: 1em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  background-color: var(--gray100);
  text-align: center;
  opacity: 0;
}
.main-philosophy .philosophy-cont .cont .txt-cont .icon {
  margin-bottom: 1.8em;
  width: 40px;
  aspect-ratio: 1;
  background: url("/images/doah2/main/arw_45.svg") no-repeat center/100% 100%;
}
.main-philosophy .philosophy-cont .cont .txt-cont h3 {
  margin-bottom: 8px;
  font-size: clamp(4rem, 3.13vw, 6rem);
}
.main-philosophy .philosophy-cont .cont .img-cont {
  position: relative;
  overflow: hidden;
  opacity: 0;
}
.main-philosophy .philosophy-cont .cont .img-cont::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: url("/images/doah2/main/doah_img01.jpg") no-repeat center/cover;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-animation: imgZoomIn 1800ms cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;
          animation: imgZoomIn 1800ms cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;
}
.main-philosophy .philosophy-cont .cont .img-cont::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 5%;
  width: 90%;
  height: clamp(120px, 16.67vw, 320px);
  background: url("/images/doah2/main/doah_d.svg") no-repeat center/auto 100%;
  -webkit-transform: scale(1) translateY(-50%);
          transform: scale(1) translateY(-50%);
  -webkit-animation: imgZoomIn2 1800ms cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;
          animation: imgZoomIn2 1800ms cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;
}
.main-philosophy .philosophy-cont .cont.cont1 .txt-cont .icon, .main-philosophy .philosophy-cont .cont.cont3 .txt-cont .icon {
  -webkit-transform: scaleX(-1);
          transform: scaleX(-1);
}
.main-philosophy .philosophy-cont .cont.cont2 .img-cont::before {
  background-image: url("/images/doah2/main/doah_img02.jpg");
}
.main-philosophy .philosophy-cont .cont.cont2 .img-cont::after {
  background-image: url("/images/doah2/main/doah_o.svg");
}
.main-philosophy .philosophy-cont .cont.cont3 .img-cont::before {
  background-image: url("/images/doah2/main/doah_img03.jpg");
}
.main-philosophy .philosophy-cont .cont.cont3 .img-cont::after {
  background-image: url("/images/doah2/main/doah_a.svg");
}
.main-philosophy .philosophy-cont .cont.cont4 .img-cont::before {
  background-image: url("/images/doah2/main/doah_img04.jpg");
}
.main-philosophy .philosophy-cont .cont.cont4 .img-cont::after {
  background-image: url("/images/doah2/main/doah_h.svg");
}
.main-philosophy .philosophy-cont .cont.ani-active .txt-cont {
  -webkit-animation: contIn 1000ms cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
          animation: contIn 1000ms cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
  -webkit-transform: none;
          transform: none;
}
.main-philosophy .philosophy-cont .cont.ani-active .img-cont {
  -webkit-animation: contIn 1000ms cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
          animation: contIn 1000ms cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
  -webkit-transform: none;
          transform: none;
}
.main-philosophy .philosophy-cont .cont.ani-active .img-cont::before {
  -webkit-transform: scale(1.2);
          transform: scale(1.2);
  -webkit-animation: imgZoomIn 2000ms cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;
          animation: imgZoomIn 2000ms cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;
}
@media (max-width: 767px) {
  .main-philosophy .philosophy-cont .cont {
    grid-template-columns: 1fr;
    grid-template-rows: repeat(2, 1fr);
  }
  .main-philosophy .philosophy-cont .cont .txt-cont .icon {
    width: 24px;
  }
  .main-philosophy .philosophy-cont .cont .txt-cont h3 {
    font-size: 2.6rem;
  }
}
@media (max-width: 320px) {
  .main-philosophy .philosophy-cont .cont .txt-cont h3 {
    line-height: 120%;
    word-break: break-all;
  }
  .main-philosophy .philosophy-cont .cont .img-cont::after {
    height: clamp(40px, 25vw, 80px);
  }
}

/* ----------------------------------------
* business
* ----------------------------------------*/
.business-wrap {
  width: 100%;
  height: calc((100vh - var(--header-height)) * 3);
}
.business-wrap .business-cont01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: calc(100vh - var(--header-height));
  background: url("/images/doah2/main/business_bg00.jpg") no-repeat center/cover;
}
.business-wrap .business-cont01 .ti-wrap .ti-doah::after {
  display: none;
}
.business-wrap .business-cont01 .ti-wrap h2 {
  color: var(--white);
}
.business-wrap .business-cont01::after, .business-wrap .business-cont01::before {
  content: "";
  display: block;
  width: 1px;
  height: 160px;
  background-color: rgba(255, 255, 255, 0.5);
  position: absolute;
  left: 50%;
  top: 0;
}
.business-wrap .business-cont01::after {
  top: auto;
  bottom: 0;
}
@media (max-width: 767px) {
  .business-wrap .business-cont01 .ti-wrap .ti-doah {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 4px;
  }
  .business-wrap .business-cont01::after, .business-wrap .business-cont01::before {
    height: 15%;
  }
}
.business-wrap .business-cont01 .business-cont-wrap {
  opacity: 0;
  width: 100%;
  height: 100%;
  background: #fff;
  -webkit-transition: opacity 0.6s ease;
  transition: opacity 0.6s ease;
  position: absolute;
  top: 0;
  left: 0;
}
.business-wrap .business-cont01.ani-active .ti-wrap {
  opacity: 0.3;
}
.business-wrap .business-cont01.ani-active::after, .business-wrap .business-cont01.ani-active::before {
  opacity: 0;
}
.business-wrap .business-cont01.ani-active .business-cont-wrap {
  opacity: 0.5;
}
.business-wrap .business-cont02 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  height: calc(100vh - var(--header-height));
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.business-wrap .business-cont02 .cont {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 1em;
  background: var(--font-color) url("/images/doah2/main/business_bg01.jpg") no-repeat center/cover;
  -webkit-transition: opacity 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94), -webkit-transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: opacity 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94), -webkit-transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: opacity 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94), transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: opacity 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94), transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94), -webkit-transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  opacity: 0;
  -webkit-transform: translateY(100px);
          transform: translateY(100px);
}
.business-wrap .business-cont02 .cont::before {
  opacity: 0;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: var(--primary);
  -webkit-transition: opacity 0.45s, visibility 0.45s;
  transition: opacity 0.45s, visibility 0.45s;
}
.business-wrap .business-cont02 .cont a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  color: var(--white);
}
.business-wrap .business-cont02 .cont a h3 {
  font-size: 4.8rem;
}
@media (max-width: 1280px) {
  .business-wrap .business-cont02 .cont a h3 {
    font-size: 3.4rem;
  }
}
@media (max-width: 767px) {
  .business-wrap .business-cont02 .cont a h3 {
    font-size: 3rem;
  }
}
.business-wrap .business-cont02 .cont a h3 {
  z-index: 1;
}
.business-wrap .business-cont02 .cont a .icon {
  width: 66px;
  aspect-ratio: 1;
  margin-block: 2.2em;
  background: url("/images/doah2/main/business_icon01.svg") no-repeat center/93.9% 90.9%;
}
.business-wrap .business-cont02 .cont a .txt {
  text-align: center;
  font-size: 2.4rem;
}
@media (max-width: 1280px) {
  .business-wrap .business-cont02 .cont a .txt {
    font-size: 2rem;
  }
}
@media (max-width: 767px) {
  .business-wrap .business-cont02 .cont a .txt {
    font-size: 1.8rem;
  }
}
.business-wrap .business-cont02 .cont:nth-child(2) {
  background: var(--font-color) url("/images/doah2/main/business_bg02.jpg") no-repeat center/cover;
}
.business-wrap .business-cont02 .cont:nth-child(2) a .icon {
  background-image: url("/images/doah2/main/business_icon02.svg");
  background-size: 90.9% 81.8%;
}
.business-wrap .business-cont02 .cont:nth-child(3) {
  background: var(--font-color) url("/images/doah2/main/business_bg03.jpg") no-repeat center/cover;
}
.business-wrap .business-cont02 .cont:nth-child(3) a .icon {
  background-image: url("/images/doah2/main/business_icon03.svg");
  background-size: 84.4% 96.9%;
}
.business-wrap .business-cont02 .cont:hover::before {
  opacity: 1;
}
.business-wrap .business-cont02.ani-active .cont {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition-delay: 0.3s;
          transition-delay: 0.3s;
}
.business-wrap .business-cont02.ani-active .cont:nth-child(2) {
  -webkit-transition-delay: 0.6s;
          transition-delay: 0.6s;
}
.business-wrap .business-cont02.ani-active .cont:nth-child(3) {
  -webkit-transition-delay: 0.9s;
          transition-delay: 0.9s;
}
@media (max-width: 767px) {
  .business-wrap .business-cont02 {
    grid-template-columns: repeat(1, 1fr);
    grid-template-rows: repeat(3, 1fr);
  }
  .business-wrap .business-cont02 .cont a h3 {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    font-size: 2.6rem;
  }
  .business-wrap .business-cont02 .cont a .icon {
    -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
            order: 0;
    width: 40px;
    margin-block: 0 0.5em;
  }
  .business-wrap .business-cont02 .cont a .txt {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    font-size: 1.6rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .cont {
    -webkit-animation: none;
            animation: none;
    opacity: 1;
    -webkit-transform: none;
            transform: none;
  }
}
/* ----------------------------------------
* main-news
* ----------------------------------------*/
.main-news .news-title {
  opacity: 0;
}
.main-news {
  padding-block: 7.778em 5.889em;
}
.main-news .more-wrap {
  margin-top: 1.5em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.main-news .news-cont {
  margin-top: 3.111em;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.333em;
}
.main-news .news-cont .cont {
  opacity: 0;
  padding: 2.667em 2.222em;
  border: 1px solid var(--gray400);
}
.main-news .news-cont .cont .date {
  margin-bottom: 1em;
  color: var(--primary);
  font-size: 2rem;
}
@media (max-width: 1280px) {
  .main-news .news-cont .cont .date {
    font-size: 1.8rem;
  }
}
@media (max-width: 767px) {
  .main-news .news-cont .cont .date {
    font-size: 1.7rem;
  }
}
.main-news .news-cont .cont h3 {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.4;
  max-height: 2.8em;
  font-weight: 500;
  font-size: 2.4rem;
}
@media (max-width: 1280px) {
  .main-news .news-cont .cont h3 {
    font-size: 2rem;
  }
}
@media (max-width: 767px) {
  .main-news .news-cont .cont h3 {
    font-size: 1.8rem;
  }
}
.main-news .news-cont .cont figure {
  margin-top: 4.222em;
  position: relative;
  width: 100%;
  padding-top: 58.48%;
  overflow: hidden;
}
.main-news .news-cont .cont figure img {
  position: absolute;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  max-width: 110%;
  -webkit-transition: ease-in-out 0.8s;
  transition: ease-in-out 0.8s;
}
.main-news .news-cont .cont:hover figure img {
  max-width: 100%;
}
.main-news .news-cont.ani-active .cont {
  opacity: 0;
  -webkit-animation: contIn 1400ms cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
          animation: contIn 1400ms cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
  -webkit-transform: none;
          transform: none;
  -webkit-animation-delay: 0ms;
          animation-delay: 0ms;
}
.main-news .news-cont.ani-active .cont:nth-child(2) {
  -webkit-animation-delay: 280ms;
          animation-delay: 280ms;
}
.main-news .news-cont.ani-active .cont:nth-child(3) {
  -webkit-animation-delay: 560ms;
          animation-delay: 560ms;
}
.main-news .news-cont.ani-active .cont:nth-child(4) {
  -webkit-animation-delay: 840ms;
          animation-delay: 840ms;
}
@media (max-width: 1024px) {
  .main-news {
    padding-block: 4.6em 3.5em;
  }
  .main-news .news-cont {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(2, 1fr);
  }
  .main-news .news-cont .cont {
    width: 100%;
    padding: 1.78em 1.5em;
  }
  .main-news .news-cont .cont .date {
    font-size: 1.4rem;
  }
  .main-news .news-cont .cont figure {
    margin-top: 1em;
  }
}
@media (max-width: 480px) {
  .main-news .news-cont {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .main-news .news-cont .cont {
    width: 100%;
  }
}

/* ----------------------------------------
* main-careers
* ----------------------------------------*/
.main-careers {
  opacity: 0;
  padding-block: 3.444em;
  background: url("/images/doah2/main/careers_bg.jpg") no-repeat center right/cover;
}
.main-careers .txt-cont {
  color: var(--white);
  padding-bottom: 2.667em;
  margin-bottom: 2.625em;
  border-bottom: 1px solid var(--gray300);
}
.main-careers .txt-cont h2 {
  margin-bottom: 0.5em;
  color: var(--secondary);
  font-size: 2.4rem;
}
@media (max-width: 1280px) {
  .main-careers .txt-cont h2 {
    font-size: 2rem;
  }
}
@media (max-width: 767px) {
  .main-careers .txt-cont h2 {
    font-size: 1.8rem;
  }
}
.main-careers .txt-cont h2 {
  font-weight: 500;
}
.main-careers .txt-cont .ti {
  font-size: 4.8rem;
}
@media (max-width: 1280px) {
  .main-careers .txt-cont .ti {
    font-size: 3.4rem;
  }
}
@media (max-width: 767px) {
  .main-careers .txt-cont .ti {
    font-size: 3rem;
  }
}
.main-careers .txt-cont .ti span {
  font-weight: 600;
}
.main-careers .txt-cont p {
  margin-top: 1.278em;
  font-weight: 300;
}
.main-careers .txt-cont p span {
  display: block;
}
.main-careers .more-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
@media (max-width: 767px) {
  .main-careers {
    background-image: url("/images/doah2/main/careers_bg_m.jpg");
  }
  .main-careers .txt-cont p span {
    display: inline;
  }
}
