@charset "UTF-8";
* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

a {
  text-decoration: none;
  transition: all 0.3s;
}

.indexSectionTitle {
  position: absolute;
  top: 10%;
  left: 50%;
  width: 100%;
  transform: translate(-50%, -50%);
  color: #fff;
  text-align: center;
}
@media (max-width: 1024px) {
  .indexSectionTitle {
    top: 15%;
  }
}
.indexSectionTitle h3 {
  font-size: 24px;
  margin-bottom: 10px;
}
@media (max-width: 1024px) {
  .indexSectionTitle h3 {
    font-size: 20px;
  }
}
.indexSectionTitle h3,
.indexSectionTitle p {
  letter-spacing: 2px;
  text-shadow: 0px 0px 3px #333;
}
.indexSectionTitle p {
  font-family: sans-serif;
}

.footerSlogan {
  position: absolute;
  width: 100%;
  top: 80%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #fff;
  text-align: center;
  font-size: 20px;
}
@media (max-width: 1024px) {
  .footerSlogan {
    display: none;
  }
}
.footerSlogan p {
  margin-bottom: 10px;
}

.container1 {
  width: 1024px;
  margin: 0 auto;
}
@media (max-width: 1024px) {
  .container1 {
    width: 100%;
  }
}

.container2 {
  width: 768px;
  margin: 0 auto;
}
@media (max-width: 1024px) {
  .container2 {
    width: 100%;
  }
}

#logoBtn {
  width: 10%;
  position: fixed;
  z-index: 11;
}
@media (max-width: 1024px) {
  #logoBtn {
    width: 100%;
  }
}
#logoBtn a {
  position: absolute;
  top: 20px;
  left: 50%;
  transform: translateX(-50%);
  transition: all 0.3s;
}
#logoBtn a img {
  width: 80px;
}
@media (max-width: 1024px) {
  #logoBtn a img {
    width: 100px;
  }
}

#footerContactBtn {
  width: 10%;
  position: fixed;
  bottom: 20px;
  z-index: 11;
  text-align: center;
}
@media (max-width: 1024px) {
  #footerContactBtn {
    width: 25%;
    bottom: 10px;
  }
}
#footerContactBtn a img {
  width: 60px;
}
@media (max-width: 1024px) {
  #footerContactBtn a img {
    width: 40px;
  }
}

.menuBtn {
  position: fixed;
  top: 50%;
  left: -10%;
  transform: translateY(-50%);
  z-index: 11;
  background: rgba(0, 0, 0, 0.6);
  padding: 10px;
  border-radius: 0px 10px 10px 0px;
  transition: all 0.3s;
}
@media (max-width: 1024px) {
  .menuBtn {
    top: 25px;
    right: 20px;
    left: initial;
    border-radius: 0px 0px 10px 10px;
  }
}
.menuBtn a img {
  width: 40px;
  transition: all 0.3s;
}
@media (max-width: 1024px) {
  .menuBtn a img {
    width: 30px;
  }
}
#menu {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10;
  width: 10%;
  height: 100dvh;
  display: flex;
  background: rgba(0, 0, 0, 0.5);
  transition: all 0.3s;
}
@media (max-width: 1024px) {
  #menu {
    left: -45%;
    width: 45%;
  }
}
#menu .menuHide {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
#menu .menuHide a {
  padding: 10px;
  background: rgba(0, 0, 0, 0.3);
}
#menu .menuHide a:hover {
  background: black;
}
#menu .menuLinks {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
#menu .menuLinks .menuLink {
  width: 100%;
  display: flex;
  align-items: center;
  position: relative;
}
@media (max-width: 1024px) {
  #menu .menuLinks .menuLink {
    margin: 5px 0;
  }
}
#menu .menuLinks .menuLink img {
  width: 60px;
  transform: scale(1);
  transition: all 0.3s;
}
@media (max-width: 1024px) {
  #menu .menuLinks .menuLink img {
    width: 50px;
  }
}
#menu .menuLinks .menuLink .linkText {
  text-align: center;
  width: 40px;
  position: absolute;
  color: #fff;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  opacity: 0;
  transition-delay: 0.1s;
  letter-spacing: 2px;
  font-weight: bold;
}
@media (max-width: 1024px) {
  #menu .menuLinks .menuLink .linkText {
    position: initial;
    top: initial;
    left: initial;
    transform: translate(0%, 0%);
    opacity: 1;
  }
}
#menu .menuLinks .menuLink:hover img {
  transform: scale(0);
}
#menu .menuLinks .menuLink:hover .linkText {
  opacity: 1;
}

.indexSwiper {
  width: 100%;
  height: 100dvh;
}
.indexSwiper .swiper-slide {
  width: 100%;
  height: 100%;
  overflow: hidden;
  position: relative;
}
.indexSwiper .swiper-slide .videoBg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  z-index: -10;
  background-size: cover;
}
.indexSwiper .swiper-slide .videoBg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.indexSwiper .swiper-slide .videoBg video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.indexSwiper .swiper-slide .upperRight {
  position: absolute;
  right: 20px;
  top: 20px;
}
@media (max-width: 1024px) {
  .indexSwiper .swiper-slide .upperRight {
    display: none;
  }
}
.indexSwiper .swiper-slide .lowerRight {
  position: absolute;
  right: 20px;
  bottom: 30px;
  display: flex;
  flex-direction: column;
  align-items: end;
}
.indexSwiper .swiper-slide .lowerRight img:nth-child(2) {
  width: 60px;
}
@media (max-width: 1024px) {
  .indexSwiper .swiper-slide .lowerRight {
    display: none;
  }
}
.indexSwiper #indexCover .coverText {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #fff;
  text-align: center;
}
@media (max-width: 1024px) {
  .indexSwiper #indexCover .coverText > img {
    width: 300px;
  }
}
.indexSwiper #indexCover .coverText > p {
  font-size: 32px;
  font-weight: bold;
  letter-spacing: 2px;
  text-shadow: 0.3px 0.3px 3px #000;
}
@media (max-width: 1024px) {
  .indexSwiper #indexCover .coverText > p {
    font-size: 20px;
  }
}
.indexSwiper #indexCover .coverText .coverPhone {
  margin-top: 20px;
}
.indexSwiper #indexCover .coverText .coverPhone p {
  font-size: 30px;
  font-weight: bold;
  color: #ff0;
  text-shadow: 0.3px 0.3px 3px #000;
  margin-bottom: 20px;
  letter-spacing: 2px;
}
@media (max-width: 1024px) {
  .indexSwiper #indexCover .coverText .coverPhone p {
    font-size: 22px;
  }
}
.indexSwiper #indexCover .coverText .coverPhone a {
  font-size: 48px;
  font-weight: bold;
  color: #ff0;
  text-shadow: 0.3px 0.3px 3px #000;
  letter-spacing: 4px;
  font-family: sans-serif;
}
@media (max-width: 1024px) {
  .indexSwiper #indexCover .coverText .coverPhone a {
    font-size: 22px;
  }
}
.indexSwiper #advantage1 .advantageText,
.indexSwiper #advantage2 .advantageText,
.indexSwiper #advantage3 .advantageText {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #fff;
  text-align: center;
}
@media (max-width: 1024px) {
  .indexSwiper #advantage1 .advantageText,
  .indexSwiper #advantage2 .advantageText,
  .indexSwiper #advantage3 .advantageText {
    width: 90%;
  }
}
.indexSwiper #advantage1 .advantageText h1,
.indexSwiper #advantage1 .advantageText h2,
.indexSwiper #advantage2 .advantageText h1,
.indexSwiper #advantage2 .advantageText h2,
.indexSwiper #advantage3 .advantageText h1,
.indexSwiper #advantage3 .advantageText h2 {
  font-size: 30px;
  margin-bottom: 20px;
  letter-spacing: 2px;
  text-shadow: 0.3px 0.3px 3px #000;
}
@media (max-width: 1024px) {
  .indexSwiper #advantage1 .advantageText h1,
  .indexSwiper #advantage1 .advantageText h2,
  .indexSwiper #advantage2 .advantageText h1,
  .indexSwiper #advantage2 .advantageText h2,
  .indexSwiper #advantage3 .advantageText h1,
  .indexSwiper #advantage3 .advantageText h2 {
    font-size: 22px;
  }
}
.indexSwiper #advantage1 .advantageText p,
.indexSwiper #advantage2 .advantageText p,
.indexSwiper #advantage3 .advantageText p {
  font-size: 18px;
  margin-bottom: 20px;
  line-height: 1.5;
  letter-spacing: 2px;
  text-shadow: 0.3px 0.3px 3px #000;
}
@media (max-width: 1024px) {
  .indexSwiper #advantage1 .advantageText p,
  .indexSwiper #advantage2 .advantageText p,
  .indexSwiper #advantage3 .advantageText p {
    font-size: 16px;
    letter-spacing: 0px;
  }
}
.indexSwiper #feedback .feedbackSwiper {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 55%;
}
@media (max-width: 1024px) {
  .indexSwiper #feedback .feedbackSwiper {
    width: 80%;
    top: 56%;
  }
}
.indexSwiper #feedback .feedbackSwiper .swiper-wrapper {
  height: 500px;
}
@media (max-width: 1024px) {
  .indexSwiper #feedback .feedbackSwiper .swiper-wrapper {
    height: 490px;
  }
}
.indexSwiper #feedback .feedbackSwiper .swiper-slide img {
  width: 100%;
}
.indexSwiper #feedback .feedbackSwiper .swiper-pagination {
  bottom: 0;
}
.indexSwiper #feedback .feedbackSwiper .swiper-pagination-bullet {
  background: transparent !important;
  background-image: url("../img/svg/dot_4.svg") !important;
  background-size: cover !important;
  width: 20px !important;
  height: 20px !important;
  border-radius: 0 !important;
}
.indexSwiper #feedback .feedbackSwiper .swiper-pagination-bullet-active {
  background-image: url("../img/svg/dot_3.svg") !important;
}
.indexSwiper #indexFooter {
  width: 100%;
}
.indexSwiper .swiper-pagination-bullet {
  background: transparent !important;
  background-image: url("../img/svg/dot_2.svg") !important;
  background-size: cover !important;
  width: 20px !important;
  height: 20px !important;
  border-radius: 0 !important;
}
.indexSwiper .swiper-pagination-bullet-active {
  background-image: url("../img/svg/dot_1.svg") !important; /* 活動狀態的圖片 */
  /* 其他樣式根據需要設定 */
}

#footerPhoneList {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 80%;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  -moz-column-gap: 10px;
       column-gap: 10px;
  row-gap: 0px;
}
@media (max-width: 1024px) {
  #footerPhoneList {
    width: 90%;
    top: 55%;
    grid-template-columns: repeat(1, 1fr);
    -moz-column-gap: 10px;
         column-gap: 10px;
    row-gap: 0px;
  }
}
#footerPhoneList .phoneListBox {
  display: flex;
  flex-direction: column;
  align-items: center;
}
#footerPhoneList .phoneListBox h5,
#footerPhoneList .phoneListBox a {
  color: #fff;
  letter-spacing: 4px;
}
#footerPhoneList .phoneListBox h5 {
  font-size: 24px;
  margin-bottom: 20px;
}
@media (max-width: 1024px) {
  #footerPhoneList .phoneListBox h5 {
    width: 300px;
    font-size: 22px;
    margin-bottom: 10px;
    color: #000;
    background: #00ffba;
    padding: 10px 0;
    text-align: center;
    border-radius: 10px;
  }
}
#footerPhoneList .phoneListBox .phoneNumber {
  display: flex;
  flex-direction: column;
  align-items: center;
  height: auto;
}
@media (max-width: 1024px) {
  #footerPhoneList .phoneListBox .phoneNumber {
    align-items: flex-start;
    overflow: hidden;
    height: 0;
    transition: all 0.3s;
  }
  #footerPhoneList .phoneListBox .phoneNumber.active {
    align-items: flex-start;
    width: 300px;
    height: 160px;
    background-color: rgba(0, 0, 0, 0.4);
    padding-left: 40px;
    margin-top: -10px;
    padding-top: 5px;
    border-radius: 0px 0px 10px 10px;
    font-family: serif;
    line-height: 1.25;
  }
}
#footerPhoneList .phoneListBox .phoneNumber a {
  font-size: 20px;
  margin-bottom: 20px;
}
#footerPhoneList .phoneListBox .phoneNumber a:hover {
  color: #ff0;
}
@media (max-width: 1024px) {
  #footerPhoneList .phoneListBox .phoneNumber a {
    font-size: 20px;
    margin-bottom: 5px;
  }
}

.copyright {
  position: absolute;
  bottom: 0;
  width: 100%;
  display: flex;
  justify-content: center;
  background-color: rgba(62, 62, 62, 0.9);
  color: #fff;
  padding: 5px;
}
@media (max-width: 1024px) {
  .copyright {
    flex-direction: column;
    text-align: center;
  }
}
.copyright .centerPact a {
  font-size: 14px;
  color: #fff;
  border-left: 1px solid #fff;
  margin-left: 4px;
  padding-left: 4px;
}
.copyright .centerPact a:nth-child(1) {
  border-left: none;
}
.copyright .centerPact a:hover {
  color: #ff0;
}
.copyright .rightText {
  position: absolute;
  right: 10px;
  font-size: 14px;
}
@media (max-width: 1024px) {
  .copyright .rightText {
    position: initial;
  }
}
.copyright .rightText p {
  margin: 0;
}
.copyright .rightText a {
  font-size: 12px;
  color: #ff0;
}

#footer.colorFooter {
  width: 100%;
  height: 100dvh;
}
#footer.colorFooter .typePageFooterBg {
  background: #3e3e3e;
}

.typePageSwiper {
  width: 100%;
  height: 100dvh;
}
.typePageSwiper .swiper-slide {
  width: 100%;
  height: 100%;
}
.typePageSwiper #typeEmotion {
  background: url("../img/bg/s1_bg.jpg");
}
.typePageSwiper #typeMarriage {
  background: url("../img/bg/s2_bg.jpg");
}
.typePageSwiper #typeInvestigation {
  background: url("../img/bg/s3_bg.jpg");
}
.typePageSwiper #typeScam {
  background: url("../img/bg/s4_bg.jpg");
}
.typePageSwiper #typeJustice {
  background: url("../img/bg/s5_bg.jpg");
}
.typePageSwiper #typePrivacy {
  background: url("../img/bg/s6_bg.jpg");
}
.typePageSwiper #typeBusiness {
  background: url("../img/bg/s7_bg.jpg");
}
.typePageSwiper #typeOthers {
  background: url("../img/bg/s8_bg.jpg");
}
.typePageSwiper .typePageBg {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
}
.typePageSwiper .swiper-pagination-bullet {
  background: transparent !important;
  background-image: url("../img/svg/dot_2.svg") !important;
  background-size: cover !important;
  width: 20px !important;
  height: 20px !important;
  border-radius: 0 !important;
}
.typePageSwiper .swiper-pagination-bullet-active {
  background-image: url("../img/svg/dot_1.svg") !important; /* 活動狀態的圖片 */
  /* 其他樣式根據需要設定 */
}

.typePageContent .typePageTitle {
  margin-top: 30px;
  text-align: center;
}
@media (max-width: 1024px) {
  .typePageContent .typePageTitle img {
    width: 80px;
    padding-top: 20px;
  }
}
.typePageContent h1 {
  font-size: 24px;
  text-align: center;
}
@media (max-width: 1024px) {
  .typePageContent h1 {
    font-size: 16px;
  }
}
.typePageContent h1 span {
  margin-bottom: 10px;
  display: block;
  color: #fff;
}

.serviceCards {
  position: absolute;
  top: 60%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 4;
  width: 50%;
  overflow: hidden;
  display: flex;
  justify-content: center;
}
@media (max-width: 1024px) {
  .serviceCards {
    width: 90%;
    flex-direction: column;
  }
}
.serviceCards .serviceCard {
  width: 30%;
  display: flex;
  flex-direction: column;
  color: #fff;
  background: rgba(0, 0, 0, 0.5);
  margin: 0 10px;
  border-radius: 10px;
}
@media (max-width: 1024px) {
  .serviceCards .serviceCard {
    width: 100%;
    margin: 0 px;
    position: relative;
    margin: 10px 0;
    background: rgba(0, 0, 0, 0);
  }
}
.serviceCards .serviceCard img {
  width: 100%;
  height: 150px;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 10px 10px 0 0;
}
@media (max-width: 1024px) {
  .serviceCards .serviceCard img {
    border-radius: 10px;
    height: 120px;
  }
}
.serviceCards .serviceCard h2 {
  text-align: center;
}
.serviceCards .serviceCard h2 a {
  color: #fff;
  text-align: center;
  padding: 20px 0;
}
@media (max-width: 1024px) {
  .serviceCards .serviceCard h2 a {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-shadow: 0px 0px 3px #000;
    letter-spacing: 2px;
    font-size: 32px;
  }
}
.serviceCards .serviceCard p {
  word-wrap: break-word;
  padding: 0px 20px;
}
@media (max-width: 1024px) {
  .serviceCards .serviceCard p {
    display: none;
  }
}
.serviceCards .serviceCard .moreBtn {
  margin: 15px 20px;
  background-color: #fff;
  color: #000;
  border-radius: 5px;
  text-align: center;
  letter-spacing: 2px;
  padding: 5px 0;
  font-weight: bold;
}
@media (max-width: 1024px) {
  .serviceCards .serviceCard .moreBtn {
    display: none;
  }
}

.typePageFooterBg {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  background: url("../img/bg/footer.jpg");
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
}

.banner {
  width: 100%;
  height: 50dvh;
  background-size: cover !important;
  background-position: center !important;
  position: relative;
}
@media (max-width: 1024px) {
  .banner {
    height: 30dvh;
  }
}
.banner h1 {
  font-size: 60px;
  color: #fff;
  position: absolute;
  letter-spacing: 10px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-shadow: 0px 0px 3px #666;
}
@media (max-width: 1024px) {
  .banner h1 {
    font-size: 32px;
    text-align: center;
  }
}

.contentText {
  padding: 50px 20%;
}
.contentText h2 {
  font-size: 24px;
  margin: 20px 0;
}
.contentText h3 {
  font-size: 20px;
  margin: 20px 0;
}
.contentText p,
.contentText li {
  margin-bottom: 10px;
}
.contentText li {
  margin-left: 20px;
}

#servicePageCaseList {
  background: #dff7ef;
}
#servicePageCaseList h3 {
  padding: 30px 0;
  font-size: 48px;
  letter-spacing: 2px;
  text-align: center;
}
@media (max-width: 1024px) {
  #servicePageCaseList h3 {
    font-size: 36px;
  }
}
#servicePageCaseList .articlesIndexBox {
  padding-top: 0;
  padding-bottom: 50px;
  padding-left: 0;
  padding-right: 0;
}
#servicePageCaseList .articlesIndexBox .articlesIndex .articleBox {
  padding: 14px;
  border-left: 5px solid #3e3e3e;
  background: #eee;
}
#servicePageCaseList .articlesIndexBox .articlesIndex .articleBox:nth-child(even) {
  background: #fff;
}
#servicePageCaseList .articlesIndexBox .articlesIndex .articleBox .articlePreview .articleTitle {
  font-size: 20px;
}

#servicePageProcess h3 {
  padding: 30px 0;
  font-size: 48px;
  letter-spacing: 2px;
  text-align: center;
}
@media (max-width: 1024px) {
  #servicePageProcess h3 {
    font-size: 36px;
  }
}
#servicePageProcess .pcProcess {
  padding-top: 30px;
  padding-bottom: 50px;
  width: 80%;
  margin: 0 auto;
  display: flex;
  align-items: center;
}
@media (max-width: 1024px) {
  #servicePageProcess .pcProcess {
    display: none;
  }
}
#servicePageProcess .pcProcess .stepCard {
  display: flex;
  flex-direction: column;
  align-items: center;
}
#servicePageProcess .pcProcess .stepCard img {
  width: 100%;
}
#servicePageProcess .pcProcess .stepCard h5 {
  font-size: 20px;
  margin-bottom: 10px;
}
#servicePageProcess .pcProcess .stepCard p {
  margin-bottom: 10px;
}
#servicePageProcess .pcProcess .arrowIcon {
  padding-bottom: 50px;
}
#servicePageProcess .mobileProcess {
  display: none;
  width: 100%;
  height: 450px;
}
@media (max-width: 1024px) {
  #servicePageProcess .mobileProcess {
    display: flex;
  }
}
#servicePageProcess .mobileProcess .mobileProcessSwiper {
  width: 100%;
  height: 450px;
}
#servicePageProcess .mobileProcess .mobileProcessSwiper .swiper-slide {
  display: flex;
  justify-content: center;
  align-items: center;
}
#servicePageProcess .mobileProcess .mobileProcessSwiper .swiper-slide .stepCard img {
  width: 100%;
}
#servicePageProcess .mobileProcess .mobileProcessSwiper .swiper-slide .stepCard h5 {
  text-align: center;
  font-size: 20px;
  margin-bottom: 10px;
}
#servicePageProcess .mobileProcess .mobileProcessSwiper .swiper-slide .stepCard p {
  text-align: center;
  margin-bottom: 10px;
}
#servicePageProcess .mobileProcess .mobileProcessSwiper .swiper-button-next,
#servicePageProcess .mobileProcess .mobileProcessSwiper .swiper-button-prev {
  color: red;
  text-shadow: 1px 1px 3px #666;
}
#servicePageProcess .mobileProcess .mobileProcessSwiper .swiper-pagination-bullet {
  width: 30px;
  height: 30px;
  text-align: center;
  line-height: 30px;
  font-size: 14px;
  color: #000;
  opacity: 1;
  background: rgba(0, 0, 0, 0.2);
}
#servicePageProcess .mobileProcess .mobileProcessSwiper .swiper-pagination-bullet-active {
  color: #fff;
  background: red;
}

#servicePageQA {
  background: #fbe8c3;
  padding-bottom: 50px;
}
#servicePageQA h3 {
  padding: 30px 0;
  font-size: 48px;
  letter-spacing: 2px;
  text-align: center;
}
@media (max-width: 1024px) {
  #servicePageQA h3 {
    font-size: 36px;
  }
}
#servicePageQA button {
  width: 100%;
  text-align: left;
  background: #eee;
  border: none;
  outline: none;
  padding: 10px;
  margin: 10px 0;
  cursor: pointer;
  font-size: 20px;
  font-weight: bold;
  color: #666;
  border-left: 5px solid #3e3e3e;
  box-shadow: 3px 3px 3px #ddd;
  position: relative;
}
#servicePageQA button:nth-child(4n-3) {
  background: #fff;
}
@media (max-width: 1024px) {
  #servicePageQA button {
    padding-right: 40px;
    font-size: 20px;
  }
}
#servicePageQA button i {
  font-size: 26px;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(-50%, -50%);
  transition: all 0.5s;
}
#servicePageQA button.active i {
  transform: translate(-50%, -50%) rotate(90deg);
}
#servicePageQA .accordionContent {
  overflow: hidden;
  transition: max-height 0.5s ease-in-out;
  background: none;
}
#servicePageQA .accordionContent p {
  margin: 10px auto;
  background: #fdf1d9;
  box-shadow: 0px 0.3px 0.3px 0.3px #ccc;
  font-weight: bold;
  padding: 50px;
  margin-bottom: 20px;
  border-radius: 10px;
}
@media (max-width: 1024px) {
  #servicePageQA .accordionContent p {
    padding-left: 5%;
    padding-right: 5%;
  }
}
#servicePageQA .accordionContent p a {
  color: blue;
}
#servicePageQA .accordionContent p a:hover {
  color: #000;
}

#servicePageOthersService {
  background: url("../img/otherServiceBg.jpg");
  background-size: cover;
  padding: 30px 15%;
}
@media (max-width: 1024px) {
  #servicePageOthersService {
    padding: 30px 10px;
  }
}
#servicePageOthersService h3 {
  padding: 30px 0;
  font-size: 48px;
  letter-spacing: 2px;
  text-align: center;
  color: #fff;
}
@media (max-width: 1024px) {
  #servicePageOthersService h3 {
    font-size: 36px;
  }
}
#servicePageOthersService .OthersServiceCards {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  -moz-column-gap: 50px;
       column-gap: 50px;
  row-gap: 50px;
}
@media (max-width: 1024px) {
  #servicePageOthersService .OthersServiceCards {
    grid-template-columns: repeat(2, 1fr);
    -moz-column-gap: 10px;
         column-gap: 10px;
    row-gap: 10px;
  }
}
#servicePageOthersService .OthersServiceCards .serviceCard {
  background: rgba(0, 0, 0, 0.4);
  border-radius: 10px;
  padding-bottom: 10px;
}
@media (max-width: 1024px) {
  #servicePageOthersService .OthersServiceCards .serviceCard {
    position: relative;
    padding: 0;
  }
}
#servicePageOthersService .OthersServiceCards .serviceCard img {
  border-radius: 10px 10px 0px 0px;
  width: 100%;
}
@media (max-width: 1024px) {
  #servicePageOthersService .OthersServiceCards .serviceCard img {
    border-radius: 10px;
  }
}
#servicePageOthersService .OthersServiceCards .serviceCard h4 {
  text-align: center;
  margin: 10px 0;
}
@media (max-width: 1024px) {
  #servicePageOthersService .OthersServiceCards .serviceCard h4 {
    width: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-shadow: 0px 0px 3px #666;
  }
}
#servicePageOthersService .OthersServiceCards .serviceCard h4 a {
  color: #fff;
  font-size: 20px;
}
@media (max-width: 1024px) {
  #servicePageOthersService .OthersServiceCards .serviceCard h4 a {
    display: block;
    width: 100%;
    font-size: 24px;
  }
}
#servicePageOthersService .OthersServiceCards .serviceCard p {
  color: #fff;
  margin-bottom: 10px;
  padding: 0 5px;
}
@media (max-width: 1024px) {
  #servicePageOthersService .OthersServiceCards .serviceCard p {
    display: none;
  }
}
#servicePageOthersService .OthersServiceCards .serviceCard .moreBtn {
  display: block;
  text-align: center;
  color: #000;
  background: #fff;
  border-radius: 5px;
  padding: 4px 0;
  margin: 0 5px;
}
#servicePageOthersService .OthersServiceCards .serviceCard .moreBtn:hover {
  color: #fff;
  background: #000;
}
@media (max-width: 1024px) {
  #servicePageOthersService .OthersServiceCards .serviceCard .moreBtn {
    display: none;
  }
}

.articlesIndexBox {
  padding: 100px 20%;
}
@media (max-width: 1024px) {
  .articlesIndexBox {
    padding: 0;
    padding-bottom: 50px;
  }
}
.articlesIndexBox .filterBox {
  padding-top: 30px;
  padding-bottom: 30px;
  display: grid;
  grid-template-columns: repeat(10, 1fr);
  -moz-column-gap: 10px;
       column-gap: 10px;
  row-gap: 10px;
}
@media (max-width: 1024px) {
  .articlesIndexBox .filterBox {
    grid-template-columns: repeat(3, 1fr);
  }
}
.articlesIndexBox .filterBox button {
  border: none;
  padding: 5px;
  border-radius: 5px;
  font-size: 18px;
  transition: all 0.3s;
  cursor: pointer;
}
.articlesIndexBox .filterBox button:hover {
  background: #ccc;
}
.articlesIndexBox .filterBox button.active {
  background: #ccc;
}
.articlesIndexBox .articlesIndex .articleBox {
  border-left: 5px solid #000;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  background-color: #ccc;
  padding: 20px;
  margin: 20px 0;
  box-shadow: 3px 3px 3px #ddd;
  position: relative;
}
.articlesIndexBox .articlesIndex .articleBox:nth-child(odd) {
  background-color: #eee;
}
.articlesIndexBox .articlesIndex .articleBox .articleNumber {
  color: #000;
  font-size: 28px;
  font-weight: bold;
  margin-right: 30px;
}
@media (max-width: 1024px) {
  .articlesIndexBox .articlesIndex .articleBox .articleNumber {
    margin-right: 10px;
  }
}
.articlesIndexBox .articlesIndex .articleBox .articlePreview {
  justify-self: flex-start;
}
.articlesIndexBox .articlesIndex .articleBox .articlePreview .articleTitle {
  color: #000;
  font-size: 24px;
}
@media (max-width: 1024px) {
  .articlesIndexBox .articlesIndex .articleBox .articlePreview .articleTitle {
    font-size: 18px;
    padding-right: 10px;
  }
}
.articlesIndexBox .articlesIndex .articleBox .articlePreview .articlePart {
  color: #000;
}
@media (max-width: 1024px) {
  .articlesIndexBox .articlesIndex .articleBox .articlePreview .articlePart {
    display: none;
  }
}
.articlesIndexBox .articlesIndex .articleBox .rightArrowIcon {
  position: absolute;
  right: 20px;
}
.articlesIndexBox .articlesIndex .articleBox .rightArrowIcon i {
  color: #000;
  font-size: 26px;
}

.pagination {
  margin-top: 50px;
  text-align: center;
}
.pagination button {
  margin: 0 10px;
  padding: 10px;
  font-size: 16px;
  border: none;
  border-radius: 10px;
  cursor: pointer;
}
.pagination button.active {
  color: #fff;
  background-color: #000;
}

#articleContent {
  padding: 5% 20%;
  padding-bottom: 50px;
}
@media (max-width: 1024px) {
  #articleContent {
    padding: 50px 5%;
  }
}
#articleContent h2 {
  color: #000;
  margin-bottom: 10px;
  font-size: 20px;
}
#articleContent h3 {
  color: #000;
  margin-bottom: 10px;
}
#articleContent p {
  margin-bottom: 20px;
}
#articleContent ol,
#articleContent ul {
  list-style: none;
}
#articleContent ol li,
#articleContent ul li {
  margin-bottom: 20px;
}
#articleContent table {
  width: 100%;
  border-collapse: collapse;
}
#articleContent table td {
  border: 1px solid #000;
  padding: 0px 5px;
  text-align: center;
}

.articleBtns {
  display: flex;
  justify-content: space-evenly;
  padding-bottom: 50px;
}
@media (max-width: 1024px) {
  .articleBtns {
    justify-content: space-between;
  }
}
.articleBtns .caseIndexBtn {
  margin-top: 50px;
  text-align: center;
}
.articleBtns .caseIndexBtn a {
  color: #000;
  background-color: #eee;
  padding: 10px 20px;
  border-radius: 20px;
}
.articleBtns .caseIndexBtn a:hover {
  background-color: #d5d5d5;
}
.articleBtns #goBackBtn {
  margin-top: 50px;
  text-align: center;
}
.articleBtns #goBackBtn a {
  color: #000;
  background-color: #eee;
  padding: 10px 20px;
  border-radius: 20px;
}
.articleBtns #goBackBtn a:hover {
  background-color: #d5d5d5;
}

#otherCaseList {
  padding-top: 20px;
}
#otherCaseList li {
  border-radius: 10px;
  background-color: #eee;
  transition: all 0.3s;
}
#otherCaseList li:hover {
  background-color: #ccc;
}
#otherCaseList li a {
  padding: 10px;
  font-size: 18px;
  display: block;
  color: #000;
}

.chargeContainer {
  max-width: 1280px;
  padding-bottom: 150px;
}
@media (max-width: 768px) {
  .chargeContainer {
    padding: 0;
    padding-bottom: 50px;
  }
}

.priceCategoryTitle {
  font-size: 24px;
  color: #000;
  text-align: center;
  font-weight: bolder;
  letter-spacing: 4px;
  margin-top: 60px;
  margin-bottom: 30px;
}
@media (max-width: 768px) {
  .priceCategoryTitle {
    display: none;
  }
}

.priceTable {
  border-spacing: 5px;
  border-collapse: separate;
}
@media (max-width: 768px) {
  .priceTable {
    display: none;
  }
}
.priceTable th,
.priceTable td {
  font-size: 16px;
  font-weight: 300;
  border-radius: 5px;
  padding: 12px;
  border: none;
}
.priceTable thead {
  background: #777;
}
.priceTable thead th {
  text-align: center;
  color: #fff;
  font-weight: bolder;
}
.priceTable thead th:nth-child(1) {
  width: 15%;
}
.priceTable thead th:nth-child(2) {
  width: 10%;
}
.priceTable thead th:nth-child(3) {
  width: 10%;
}
.priceTable thead th:nth-child(4) {
  width: 37%;
}
.priceTable thead th:nth-child(5) {
  width: 28%;
}
.priceTable tbody tr:nth-child(n) {
  background: #eee;
}
.priceTable tbody tr:nth-child(2n) {
  background: #fff;
}
.priceTable tbody td:nth-child(1),
.priceTable tbody td:nth-child(2),
.priceTable tbody td:nth-child(3) {
  text-align: center;
}

@media (max-width: 768px) {
  .pcPriceText {
    display: none;
  }
}

@media (max-width: 768px) {
  .chargeText {
    padding: 0 10%;
  }
}

.priceCategoryBtn {
  display: none;
  text-align: center;
  background: #fff;
  color: #000;
  font-weight: bolder;
  padding: 10px 0;
  border-radius: 20px;
}
@media (max-width: 768px) {
  .priceCategoryBtn {
    display: block;
  }
}

#m-charge01,
#m-charge02,
#m-charge03,
#m-charge04,
#m-charge05,
#m-charge06,
#m-charge07,
#m-charge08 {
  display: none;
}
@media (max-width: 768px) {
  #m-charge01,
  #m-charge02,
  #m-charge03,
  #m-charge04,
  #m-charge05,
  #m-charge06,
  #m-charge07,
  #m-charge08 {
    display: initial;
  }
  #m-charge01 .accordion-item,
  #m-charge02 .accordion-item,
  #m-charge03 .accordion-item,
  #m-charge04 .accordion-item,
  #m-charge05 .accordion-item,
  #m-charge06 .accordion-item,
  #m-charge07 .accordion-item,
  #m-charge08 .accordion-item {
    border: none;
    margin: 10px 0;
    padding: 0px;
  }
  #m-charge01 .accordion-item:nth-child(even) .accordion-header,
  #m-charge02 .accordion-item:nth-child(even) .accordion-header,
  #m-charge03 .accordion-item:nth-child(even) .accordion-header,
  #m-charge04 .accordion-item:nth-child(even) .accordion-header,
  #m-charge05 .accordion-item:nth-child(even) .accordion-header,
  #m-charge06 .accordion-item:nth-child(even) .accordion-header,
  #m-charge07 .accordion-item:nth-child(even) .accordion-header,
  #m-charge08 .accordion-item:nth-child(even) .accordion-header {
    background: #eee;
  }
  #m-charge01 .accordion-item .accordion-header,
  #m-charge02 .accordion-item .accordion-header,
  #m-charge03 .accordion-item .accordion-header,
  #m-charge04 .accordion-item .accordion-header,
  #m-charge05 .accordion-item .accordion-header,
  #m-charge06 .accordion-item .accordion-header,
  #m-charge07 .accordion-item .accordion-header,
  #m-charge08 .accordion-item .accordion-header {
    font-size: 30px;
    margin: 0;
    padding: 0;
    background: #777;
  }
  #m-charge01 .accordion-item .accordion-header .accordion-button,
  #m-charge02 .accordion-item .accordion-header .accordion-button,
  #m-charge03 .accordion-item .accordion-header .accordion-button,
  #m-charge04 .accordion-item .accordion-header .accordion-button,
  #m-charge05 .accordion-item .accordion-header .accordion-button,
  #m-charge06 .accordion-item .accordion-header .accordion-button,
  #m-charge07 .accordion-item .accordion-header .accordion-button,
  #m-charge08 .accordion-item .accordion-header .accordion-button {
    display: block;
    text-align: center;
    font-size: 22px;
    letter-spacing: 0;
    text-indent: 0;
    direction: ltr;
    background: transparent;
    margin: 0 auto;
    padding: 15px;
    color: #000;
    position: relative;
  }
  #m-charge01 .accordion-item .accordion-header .accordion-button::after,
  #m-charge02 .accordion-item .accordion-header .accordion-button::after,
  #m-charge03 .accordion-item .accordion-header .accordion-button::after,
  #m-charge04 .accordion-item .accordion-header .accordion-button::after,
  #m-charge05 .accordion-item .accordion-header .accordion-button::after,
  #m-charge06 .accordion-item .accordion-header .accordion-button::after,
  #m-charge07 .accordion-item .accordion-header .accordion-button::after,
  #m-charge08 .accordion-item .accordion-header .accordion-button::after {
    position: absolute;
    top: 50%;
    transform: translateY(-50%) rotate(0deg);
    right: 10%;
  }
  #m-charge01 .accordion-item .accordion-body,
  #m-charge02 .accordion-item .accordion-body,
  #m-charge03 .accordion-item .accordion-body,
  #m-charge04 .accordion-item .accordion-body,
  #m-charge05 .accordion-item .accordion-body,
  #m-charge06 .accordion-item .accordion-body,
  #m-charge07 .accordion-item .accordion-body,
  #m-charge08 .accordion-item .accordion-body {
    text-align: center;
    padding-left: 10px;
    padding-right: 10px;
  }
  #m-charge01 .accordion-item .accordion-body .list-box,
  #m-charge02 .accordion-item .accordion-body .list-box,
  #m-charge03 .accordion-item .accordion-body .list-box,
  #m-charge04 .accordion-item .accordion-body .list-box,
  #m-charge05 .accordion-item .accordion-body .list-box,
  #m-charge06 .accordion-item .accordion-body .list-box,
  #m-charge07 .accordion-item .accordion-body .list-box,
  #m-charge08 .accordion-item .accordion-body .list-box {
    border: 1px solid #999;
    text-align: left;
    background: #fff;
    border-radius: 10px;
    margin: 10px 0;
    box-shadow: 1px 1px 2px 1px #ccc;
  }
  #m-charge01 .accordion-item .accordion-body .list-box h5,
  #m-charge02 .accordion-item .accordion-body .list-box h5,
  #m-charge03 .accordion-item .accordion-body .list-box h5,
  #m-charge04 .accordion-item .accordion-body .list-box h5,
  #m-charge05 .accordion-item .accordion-body .list-box h5,
  #m-charge06 .accordion-item .accordion-body .list-box h5,
  #m-charge07 .accordion-item .accordion-body .list-box h5,
  #m-charge08 .accordion-item .accordion-body .list-box h5 {
    font-size: 16px;
    font-weight: 600;
    padding-left: 10px;
    padding-top: 10px;
  }
  #m-charge01 .accordion-item .accordion-body .list-box p,
  #m-charge02 .accordion-item .accordion-body .list-box p,
  #m-charge03 .accordion-item .accordion-body .list-box p,
  #m-charge04 .accordion-item .accordion-body .list-box p,
  #m-charge05 .accordion-item .accordion-body .list-box p,
  #m-charge06 .accordion-item .accordion-body .list-box p,
  #m-charge07 .accordion-item .accordion-body .list-box p,
  #m-charge08 .accordion-item .accordion-body .list-box p {
    font-size: 16px;
    padding: 0;
    margin: 0;
    padding-left: 10px;
    padding-bottom: 10px;
  }
  #m-charge01 .accordion-item .accordion-button:not(.collapsed),
  #m-charge02 .accordion-item .accordion-button:not(.collapsed),
  #m-charge03 .accordion-item .accordion-button:not(.collapsed),
  #m-charge04 .accordion-item .accordion-button:not(.collapsed),
  #m-charge05 .accordion-item .accordion-button:not(.collapsed),
  #m-charge06 .accordion-item .accordion-button:not(.collapsed),
  #m-charge07 .accordion-item .accordion-button:not(.collapsed),
  #m-charge08 .accordion-item .accordion-button:not(.collapsed) {
    display: block;
    color: #fff;
    background-color: #333;
  }
  #m-charge01 .accordion-item .accordion-button:not(.collapsed)::after,
  #m-charge02 .accordion-item .accordion-button:not(.collapsed)::after,
  #m-charge03 .accordion-item .accordion-button:not(.collapsed)::after,
  #m-charge04 .accordion-item .accordion-button:not(.collapsed)::after,
  #m-charge05 .accordion-item .accordion-button:not(.collapsed)::after,
  #m-charge06 .accordion-item .accordion-button:not(.collapsed)::after,
  #m-charge07 .accordion-item .accordion-button:not(.collapsed)::after,
  #m-charge08 .accordion-item .accordion-button:not(.collapsed)::after {
    transform: translateY(-50%) rotate(180deg);
  }
  #m-charge01 .accordion-item .accordion-button:focus,
  #m-charge02 .accordion-item .accordion-button:focus,
  #m-charge03 .accordion-item .accordion-button:focus,
  #m-charge04 .accordion-item .accordion-button:focus,
  #m-charge05 .accordion-item .accordion-button:focus,
  #m-charge06 .accordion-item .accordion-button:focus,
  #m-charge07 .accordion-item .accordion-button:focus,
  #m-charge08 .accordion-item .accordion-button:focus {
    box-shadow: none;
  }
}

#sitemapContent {
  padding-top: 50px;
  padding-bottom: 50px;
}
@media (max-width: 1024px) {
  #sitemapContent {
    padding: 50px 5%;
  }
}
#sitemapContent .mainService {
  display: grid;
  grid-template-columns: repeat(8, 1fr);
  -moz-column-gap: 10px;
       column-gap: 10px;
}
@media (max-width: 1024px) {
  #sitemapContent .mainService {
    grid-template-columns: repeat(2, 1fr);
    -moz-column-gap: 10px;
         column-gap: 10px;
    row-gap: 10px;
  }
}
#sitemapContent .mainService .mapBox {
  padding: 10px 5px;
  border-radius: 10px;
  background-color: #d9d2c6;
}
#sitemapContent .mainService .mapBox h2 {
  margin-bottom: 40px;
  text-align: center;
  position: relative;
}
#sitemapContent .mainService .mapBox h2::after {
  content: "";
  width: 30px;
  height: 2px;
  background-color: #000;
  position: absolute;
  bottom: -30%;
  left: 50%;
  transform: translateX(-50%);
}
#sitemapContent .mainService .mapBox h2 a {
  letter-spacing: 4px;
  font-weight: bold;
  color: #805c57;
}
#sitemapContent .mainService .mapBox .links {
  display: flex;
  flex-direction: column;
  align-items: center;
}
#sitemapContent .mainService .mapBox .links a {
  border-radius: 10px;
  padding: 10px;
  margin-bottom: 20px;
  background-color: #ededed;
  color: #000;
  font-weight: bold;
  letter-spacing: 2px;
}
@media (max-width: 1024px) {
  #sitemapContent .mainService .mapBox .links a {
    padding: 10px 30px;
  }
}
#sitemapContent .mainService .mapBox .links a:hover {
  background-color: #805c57;
  color: #d9d2c6;
}
#sitemapContent .subService {
  padding: 10px 5px;
  border-radius: 10px;
  background-color: #d9d2c6;
  margin-top: 50px;
}
#sitemapContent .subService h3 {
  font-size: 24px;
  letter-spacing: 4px;
  font-weight: bold;
  color: #805c57;
  text-align: center;
  position: relative;
  margin-bottom: 40px;
}
#sitemapContent .subService h3::after {
  content: "";
  width: 30px;
  height: 2px;
  background-color: #000;
  position: absolute;
  bottom: -30%;
  left: 50%;
  transform: translateX(-50%);
}
#sitemapContent .subService .links {
  display: flex;
  justify-content: center;
  align-items: center;
}
@media (max-width: 1024px) {
  #sitemapContent .subService .links {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    -moz-column-gap: 10px;
         column-gap: 10px;
    row-gap: 10px;
  }
}
#sitemapContent .subService .links a {
  border-radius: 10px;
  padding: 10px;
  margin-bottom: 20px;
  background-color: #ededed;
  color: #000;
  font-weight: bold;
  letter-spacing: 2px;
  margin: 0 10px;
}
@media (max-width: 1024px) {
  #sitemapContent .subService .links a {
    text-align: center;
  }
}
#sitemapContent .subService .links a:hover {
  background-color: #805c57;
  color: #d9d2c6;
}

.new-copyright {
  background: #3e3e3e;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  padding: 10px 0;
}
@media (max-width: 1024px) {
  .new-copyright {
    flex-direction: column;
    padding: 10px 10%;
  }
}
@media (max-width: 1024px) {
  .new-copyright .centerPact {
    margin-bottom: 10px;
  }
}
.new-copyright .centerPact a {
  border-left: 1px solid #fff;
  color: #fff;
  font-size: 12px;
  padding: 0 5px;
}
.new-copyright .centerPact a:first-child {
  border-left: none;
}
.new-copyright .centerPact a:hover {
  color: #a92216;
}
.new-copyright .rightText {
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
}
@media (max-width: 1024px) {
  .new-copyright .rightText {
    position: relative;
    right: initial;
    top: initial;
    transform: translateY(0%);
    text-align: center;
  }
}
.new-copyright .rightText p {
  color: #fff;
  font-size: 12px;
}
.new-copyright .rightText p a {
  color: #fff;
  font-size: 12px;
}
.new-copyright .rightText p a:hover {
  color: #a92216;
}

.dl-bg {
  background: #e6edfd;
}

.dl-banner {
  width: 100%;
  height: 60vh;
  background: url("../img/newService/dl01.jpg");
  background-size: cover;
  background-position: center;
  position: relative;
}
@media (max-width: 1024px) {
  .dl-banner {
    height: 30vh;
    background: url("../img/newService/dl01m.png");
    background-size: cover;
    background-position: center;
  }
}
.dl-banner h1,
.dl-banner p {
  position: absolute;
  top: 45%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #fff;
  font-size: 48px;
  text-shadow: 0px 0px 3px #000;
}
@media (max-width: 1024px) {
  .dl-banner h1 {
    width: 100%;
    text-align: center;
    font-size: 36px;
  }
}
.dl-banner p {
  top: 65%;
  color: #fff;
  font-size: 20px;
  text-align: center;
  font-weight: bold;
  letter-spacing: 2px;
}
@media (max-width: 1024px) {
  .dl-banner p {
    display: none;
  }
}

.dl-list {
  padding: 30px 0;
}
.dl-list h2 {
  margin-top: 20px;
  margin-bottom: 50px;
  font-size: 32px;
  text-align: center;
  letter-spacing: 2px;
}
@media (max-width: 1024px) {
  .dl-list h2 {
    margin-top: 10px;
    margin-bottom: 30px;
    font-size: 20px;
  }
}
.dl-list .dl-list-box {
  padding: 30px 50px;
  background: #fff;
  box-shadow: 0px 0px 5px #999;
  border-radius: 10px;
  margin-bottom: 30px;
}
@media (max-width: 1024px) {
  .dl-list .dl-list-box {
    padding-top: 30px;
    padding-bottom: 30px;
    padding-left: 20px;
    padding-right: 0;
    border-radius: 0px;
    margin-bottom: 10px;
  }
}
.dl-list .dl-list-box h3 {
  text-align: center;
  font-size: 28px;
  margin-bottom: 20px;
  letter-spacing: 2px;
}
.dl-list .dl-list-box a {
  padding: 10px;
  margin: 10px;
  display: block;
  background: #a92216;
  color: #fff;
  border-radius: 10px;
  font-size: 18px;
  font-weight: bold;
  position: relative;
}
@media (max-width: 1024px) {
  .dl-list .dl-list-box a {
    font-size: 16px;
    padding-right: 30px;
    margin: 10px 0;
    border-radius: 10px 0px 0px 10px;
  }
}
.dl-list .dl-list-box a:hover {
  background: #f00;
}
.dl-list .dl-list-box a i {
  font-size: 22px;
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
}
.dl-list .dl-bottom-text {
  color: #a92216;
  font-weight: bold;
  font-size: 20px;
  text-align: center;
}
@media (max-width: 1024px) {
  .dl-list .dl-bottom-text {
    color: #3e3e3e;
    padding: 0 5%;
  }
}
.dl-list .dl-phone {
  text-align: center;
  margin-top: 10px;
}
.dl-list .dl-phone a {
  font-family: sans-serif;
  font-size: 30px;
  color: #a92216;
  font-weight: bold;
  letter-spacing: 2px;
}
@media (max-width: 1024px) {
  .dl-list .dl-phone a {
    color: #3e3e3e;
  }
}

.dl-solution-banner {
  width: 100%;
  height: 60vh;
  background: url("../img/newService/dl02.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  position: relative;
}
@media (max-width: 1024px) {
  .dl-solution-banner {
    height: 35vh;
    background: url("../img/newService/dl02m.png");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }
}
.dl-solution-banner h1,
.dl-solution-banner .dl-banner-eng {
  position: absolute;
  top: 45%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #fff;
  font-size: 60px;
  text-shadow: 0px 0px 3px #000;
}
@media (max-width: 1024px) {
  .dl-solution-banner h1,
  .dl-solution-banner .dl-banner-eng {
    width: 100%;
    text-align: center;
    font-size: 32px;
  }
}
.dl-solution-banner .dl-banner-eng {
  font-family: sans-serif;
  text-transform: uppercase;
  top: 60%;
  color: #fff;
  font-size: 50px;
  text-align: center;
  font-weight: bold;
  letter-spacing: 2px;
}
@media (max-width: 1024px) {
  .dl-solution-banner .dl-banner-eng {
    font-size: 32px;
    top: 65%;
  }
}

.dl-solution {
  padding-top: 50px;
  padding-bottom: 100px;
}
.dl-solution .dl-solution-content h2 {
  text-align: center;
  font-size: 46px;
  color: #2652d1;
}
.dl-solution .dl-solution-content .up-text {
  color: #2652d1;
  text-align: center;
  padding: 30px 0;
}
@media (max-width: 1024px) {
  .dl-solution .dl-solution-content .up-text {
    padding: 30px 5%;
  }
}
.dl-solution .dl-solution-content .up-text p {
  font-size: 24px;
  font-weight: bold;
  margin-bottom: 50px;
  padding: 50px;
  background-color: #2652d1;
  color: #fff;
  border-radius: 20px;
  position: relative;
}
.dl-solution .dl-solution-content .up-text p::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 0;
  height: 0;
  border: 40px solid transparent;
  border-top-color: #2652d1;
  border-bottom: 0;
  border-right: 0;
  margin-left: 140px;
  margin-bottom: -40px;
}
@media (max-width: 1024px) {
  .dl-solution .dl-solution-content .up-text p::after {
    margin-left: 80px;
  }
}
@media (max-width: 1024px) {
  .dl-solution .dl-solution-content .up-text p {
    font-size: 28px;
  }
}
.dl-solution .dl-solution-content .bottom-text {
  color: #2652d1;
  text-align: center;
}
@media (max-width: 1024px) {
  .dl-solution .dl-solution-content .bottom-text {
    padding: 0 5%;
  }
}
.dl-solution .dl-solution-content .bottom-text p {
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 10px;
}
@media (max-width: 1024px) {
  .dl-solution .dl-solution-content .bottom-text p {
    font-size: 18px;
  }
}
.dl-solution .dl-solution-content h3 {
  text-align: center;
  font-size: 48px;
  color: #2652d1;
}
@media (max-width: 1024px) {
  .dl-solution .dl-solution-content h3 {
    font-size: 32px;
  }
}
.dl-solution .dl-solution-content .dl-function-boxes {
  margin: 20px 0;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  -moz-column-gap: 30px;
       column-gap: 30px;
  row-gap: 30px;
}
@media (max-width: 1024px) {
  .dl-solution .dl-solution-content .dl-function-boxes {
    grid-template-columns: repeat(1, 1fr);
    row-gap: 20px;
  }
}
.dl-solution .dl-solution-content .dl-function-boxes .function-box {
  background: #fff;
  box-shadow: 1px 1px 3px #999;
  padding: 40px 30px;
  border-radius: 10px;
  position: relative;
}
@media (max-width: 1024px) {
  .dl-solution .dl-solution-content .dl-function-boxes .function-box {
    padding: 10px 30px;
    background: #2652d1;
    margin-left: 10px;
    border-radius: 10px 0px 0px 10px;
  }
}
.dl-solution .dl-solution-content .dl-function-boxes .function-box ul {
  color: #2652d1;
}
@media (max-width: 1024px) {
  .dl-solution .dl-solution-content .dl-function-boxes .function-box ul {
    color: #fff;
  }
}
.dl-solution .dl-solution-content .dl-function-boxes .function-box ul li {
  margin: 4px 0;
  font-weight: bold;
}
.dl-solution .dl-solution-content .dl-function-boxes .function-box i {
  color: #2652d1;
  font-size: 26px;
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
}
@media (max-width: 1024px) {
  .dl-solution .dl-solution-content .dl-function-boxes .function-box i {
    color: #fff;
    right: 10px;
  }
}
.dl-solution .dl-bottom-text {
  text-align: center;
  font-size: 18px;
  color: #2652d1;
  font-weight: bold;
  margin-bottom: 10px;
}
@media (max-width: 1024px) {
  .dl-solution .dl-bottom-text {
    padding: 0 5%;
  }
}
.dl-solution .dl-phone {
  text-align: center;
  margin-top: 10px;
}
.dl-solution .dl-phone a {
  font-family: sans-serif;
  font-size: 30px;
  color: #2652d1;
  font-weight: bold;
  letter-spacing: 2px;
}

.dl-help h2 {
  text-align: center;
  color: #2652d1;
  font-size: 36px;
  margin-bottom: 20px;
}
.dl-help h3 {
  text-align: center;
  color: #2652d1;
  font-size: 32px;
  margin: 30px 0;
}
.dl-help p {
  padding: 50px;
  background-color: #fff;
  border-radius: 20px;
  text-align: center;
  color: #2652d1;
  font-size: 28px;
  font-weight: bold;
  margin-bottom: 100px;
  position: relative;
}
.dl-help p::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 0;
  height: 0;
  border: 40px solid transparent;
  border-top-color: #fff;
  border-bottom: 0;
  border-left: 0;
  margin-left: -140px;
  margin-bottom: -40px;
}
@media (max-width: 1024px) {
  .dl-help p {
    margin: 0 10px;
    margin-bottom: 100px;
    padding: 50px 10px;
    line-height: 1.5;
  }
}
.dl-help .dl_phone_btn {
  margin: 50px 0;
  text-align: center;
}
.dl-help .dl_phone_btn a {
  color: #fff;
  background: #2652d1;
  padding: 20px;
  border-radius: 30px;
  font-size: 20px;
  font-weight: bold;
  letter-spacing: 4px;
}
.dl-help .dl_phone_btn a:hover {
  color: #2652d1;
  background: transparent;
  border: 1px solid #2652d1;
}
.dl-help .dl-help-caseList a {
  display: flex;
  background: #fff;
  border-left: 5px solid #2652d1;
  margin: 20px 0;
  padding: 15px;
  font-size: 18px;
  position: relative;
  font-weight: bold;
  box-shadow: 1px 1px 5px #999;
  color: #2652d1;
}
.dl-help .dl-help-caseList a:hover {
  background: #2652d1;
  color: #fff;
}
.dl-help .dl-help-caseList a .articlePreview {
  padding-left: 20px;
}
.dl-help .dl-help-caseList a .rightArrowIcon {
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
}
.dl-help .dl-help-caseList a .rightArrowIcon i {
  font-size: 20px;
}

#dl_articleContent {
  padding: 30px 0;
}
@media (max-width: 1024px) {
  #dl_articleContent {
    padding: 30px 5%;
  }
}
#dl_articleContent h2 {
  font-size: 36px;
  text-align: center;
  color: #2652d1;
  margin-bottom: 30px;
}
@media (max-width: 1024px) {
  #dl_articleContent h2 {
    font-size: 24px;
  }
}
#dl_articleContent .dl_articleContentText {
  font-weight: bold;
  line-height: 1.5;
}
#dl_articleContent .dl_articleContentText p {
  margin-bottom: 20px;
}

.mailForm {
  padding: 30px 0;
  background: linear-gradient(#fafafa, #3e3e3e);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.mailFormContent {
  display: grid;
  place-items: center;
}
@media (max-width: 1024px) {
  .mailFormContent {
    place-items: initial;
    padding: 0 3%;
  }
}

form#form {
  padding-top: 30px;
  font-size: 16px;
}
form#form .form1 {
  display: flex;
  margin-bottom: 20px;
}
@media (max-width: 1024px) {
  form#form .form1 {
    flex-direction: column;
  }
}
form#form .form1 .form-name {
  margin-right: 20px;
}
@media (max-width: 1024px) {
  form#form .form1 .form-name {
    margin-right: 0;
  }
}
form#form .form1 .form-name label {
  color: #000;
  margin-right: 10px;
}
form#form .form1 .form-name label::before {
  content: "*";
  color: #f00;
}
form#form .form1 .form-name input {
  background-color: white;
  border: none;
  border-radius: 5px;
  padding: 4px;
}
form#form .form1 .form-name input:focus {
  outline: none;
}
@media (max-width: 1024px) {
  form#form .form1 .form-name input {
    margin-bottom: 10px;
    width: 100%;
  }
}
form#form .form1 .form-sex label {
  margin-right: 10px;
}
form#form .form2 {
  display: flex;
  margin-bottom: 20px;
}
@media (max-width: 1024px) {
  form#form .form2 {
    flex-direction: column;
  }
}
form#form .form2 label {
  color: #000;
  margin-right: 10px;
}
form#form .form2 label::before {
  content: "*";
  color: #f00;
}
form#form .form2 input {
  background-color: white;
  border: none;
  border-radius: 5px;
  padding: 4px;
}
form#form .form2 input:focus {
  outline: none;
}
@media (max-width: 1024px) {
  form#form .form2 input {
    width: 100%;
  }
}
form#form .form2 .form-phone {
  margin-right: 25px;
}
@media (max-width: 1024px) {
  form#form .form2 .form-phone {
    margin-right: 0;
    margin-bottom: 20px;
  }
}
form#form .form3 {
  margin-bottom: 20px;
}
form#form .form3 label {
  color: #000;
  margin-right: 10px;
}
form#form .form3 label::before {
  content: "*";
  color: #f00;
}
@media (max-width: 1024px) {
  form#form .form3 label {
    display: block;
  }
}
form#form .form3 select {
  width: 33%;
  padding: 5px;
  background-color: white;
  border: none;
  border-radius: 4px;
}
form#form .form3 select:focus {
  outline: none;
}
@media (max-width: 1024px) {
  form#form .form3 select {
    width: 100%;
  }
}
form#form .form-message {
  display: flex;
  flex-direction: column;
  margin-bottom: 20px;
}
form#form .form-message label {
  color: #000;
  margin-bottom: 10px;
}
form#form .form-message label::before {
  content: "*";
  color: #f00;
}
form#form .form-message textarea {
  width: 100%;
  height: 150px;
  resize: none;
  background-color: white;
  border: none;
  border-radius: 5px;
  padding: 5px;
}
form#form .form-message textarea:focus {
  outline: none;
}
form#form .form-btn {
  display: flex;
  justify-content: space-evenly;
}
form#form .form-btn button {
  color: #fff;
  background-color: transparent;
  border: 1px solid #fff;
  border-radius: 30px;
  padding: 5px 20px;
  font-size: 18px;
  font-weight: bold;
  transition: all 0.3s;
  cursor: pointer;
}
form#form .form-btn button:hover {
  color: #000;
  background-color: #fff;
  border: 1px solid #fff;
}
@media (max-width: 1024px) {
  form#form .form-btn button {
    margin: 0px 20px;
  }
}

.mail-slogan {
  color: #fff;
  padding: 0 5%;
  margin: 30px 0;
  text-align: center;
  font-size: 18px;
}

.aboutBox {
  display: flex;
  align-items: center;
}
@media (max-width: 1024px) {
  .aboutBox {
    flex-direction: column;
  }
}
.aboutBox img {
  width: 50%;
}
@media (max-width: 1024px) {
  .aboutBox img {
    width: 100%;
  }
}
.aboutBox .text {
  padding-left: 20px;
}
@media (max-width: 1024px) {
  .aboutBox .text {
    padding-top: 10px;
    padding-left: 0;
  }
}
.aboutBox .text p {
  letter-spacing: 2px;
}/*# sourceMappingURL=main.css.map */