@charset "UTF-8";

.section_title p {
  font-size: 18px;
  font-weight: 500;
}
.section_title p span {
  display: block;
  font-family: 'urbanist';
  font-size: 120px;
  font-weight: 700;
  line-height: .9;
  letter-spacing: 0;
}
.more_button {
  margin: 40px 0 0;
  display: flex;
  justify-content: center;
  align-items: center;
}
.more_button a {
  display: inline-block;
  width: 240px;
  height: auto;
  text-align: center;
  padding: 11px 0;
  background-color: #fff;
  border: 1px solid #ccc;
  border-radius: 50px;
  transition: .3s;
}
.more_button a:hover {
  background-color: #dee7f4;
  border-color: #dee7f4;
}
@media screen and (max-width: 767px) {
  .section_title p {
    font-size: 14px;
  }
  .section_title p span {
    font-size: 42px;
  }
  .more_button {
    margin: 24px 0 0;
  }
  .more_button a {
    width: 200px;
  }
}


/* ---------------------------------
  fv_block
--------------------------------- */
.fv_block {
  padding-top: 88px;
}
.fv_block .inner {
  margin: 0;
  padding: 0 24px;
  max-width: none;
}
.fv_block .video_wrapper {
  width: 100%;
  max-height: calc(100vh - 108px);
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 20px;
}
.fv_block video {
  height: 100%;
  width: 100%;
  object-fit: cover;
}
@media screen and (max-width: 767px) {
  .fv_block {
    padding-top: 60px;
  }
  .fv_block .inner {
    padding: 0 8px;
  }
  .fv_block .video_wrapper {
    max-height: calc(100vh - 80px);
    border-radius: 10px;
    align-items: flex-start;
  }
}

/* ---------------------------------
  news_block
--------------------------------- */
.news_block {
  padding: 120px 0;
}
.news_block .inner {
  display: flex;
  column-gap: 80px;
}
.news_block .section_title {
  width: 320px;
}
.news_block .section_title p span {
  display: block;
  margin-bottom: 16px;
  font-size: 64px;
}
.news_block .news_content {
  flex: 1;
  min-width: 0;
}
.news_block .news_content .categories_list {
  display: flex;
  column-gap: 24px;
  margin-bottom: 32px;
}
.news_block .news_content .categories_list li {
  padding: 8px 16px;
  border-radius: 50px;
  cursor: pointer;
  transition: .3s;
}
.news_block .news_content .categories_list li.is_active {
  background-color: #dee7f4;
}
.news_block .news_content .news_list_wrapper {
  overflow: hidden;
}
.news_block .news_content .news_list_wrapper .news_list {
  display: none;
  flex-flow: column;
  row-gap: 8px;
}
.news_block .news_list_wrapper .news_list.is_active {
  display: flex;
}
.news_block .news_list_wrapper .news_list li:nth-child(n+5) {
  display: none;
}
.news_block .news_list_wrapper .news_list.show_all li {
  display: block;
}
.news_block .news_list_wrapper .news_list li a {
  background-color: #f8f8f8;
  border-radius: 10px;
  padding: 16px 32px;
  display: block;
  width: 100%;
  min-width: 0;
  transition: background-color .3s;
}
.news_block .news_list_wrapper .news_list li a:hover {
  background-color: #dee7f4;
}
.news_block .news_list_wrapper .news_list .item_wrapper {
  display: flex;
  column-gap: 32px;
  align-items: center;
  overflow: hidden;
  width: 100%;
  min-width: 0;
}
.news_block .news_list_wrapper .news_list .item_wrapper .item_top {
  display: flex;
  column-gap: 32px;
  align-items: center;
  flex-shrink: 0;
}
.news_block .news_list_wrapper .news_list .item_wrapper .item_date {
  flex-shrink: 0;
}
.news_block .news_list_wrapper .news_list .item_wrapper .item_category {
  padding: 4px 16px;
  background-color: #fff;
  border: 1px solid #f0f0f0;
  border-radius: 5px;
  flex-shrink: 0;
  white-space: nowrap;
  width: 100px;
  text-align: center;
}
.news_block .news_list_wrapper .news_list .item_wrapper .item_title {
  flex: 1;
  overflow: hidden;
  max-height: 56px;
  min-width: 0;
}
.news_block .news_list_wrapper .news_list .item_wrapper .item_title p {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow: hidden;
}
.news_block .news_more {
  margin-top: 40px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.news_block .news_more a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 240px;
  height: 50px;
  border: 1px solid #ccc;
  border-radius: 50px;
  text-align: center;
  cursor: pointer;
  transition: .3s;
}
.news_block .news_more a:hover {
  border: 1px solid #dee7f4;
  background-color: #dee7f4;
}
@media screen and (max-width: 1281px) {
  .news_block .inner {
    display: flex;
    column-gap: 64px;
  }
  .news_block .section_title {
    width: 256px;
  }
}
@media screen and (max-width: 999px) {
  .news_block .section_title {
    width: auto;
  }
}
@media screen and (max-width: 767px) {
  .news_block {
    padding: 40px 0;
  }
  .news_block .inner {
    flex-flow: column;
    row-gap: 24px;
  }
  .news_block .section_title {
    width: 100%;
  }
  .news_block .section_title p span {
    margin-bottom: 8px;
    font-size: 40px;
  }
  .news_block .news_content .categories_list {
    margin-bottom: 24px;
  }
  .news_block .news_list_wrapper .news_list li a {
    padding: 8px 16px;
  }
  .news_block .news_list_wrapper .news_list .item_wrapper {
    flex-flow: column;
    row-gap: 8px;
    align-items: flex-start;
  }
  .news_block .news_list_wrapper .news_list .item_wrapper .item_top {
    column-gap: 16px;
  }
  .news_block .news_list_wrapper .news_list .item_wrapper .item_category {
    padding: 2px 16px;
    border: none;
  }
  .news_block .news_list_wrapper .news_list .item_wrapper .item_title {
    max-height: 46px;
  }
  .news_block .news_more {
    margin-top: 24px;
  }
  .news_block .news_more a {
    width: 200px;
    height: 40px;
    font-size: 14px;
  }
}


/* ---------------------------------
  pr_block
--------------------------------- */
.pr_block {
  position: relative;
  width: 100%;
}
.pr_block .pr_item {
  position: relative;
}
.pr_block .pr_item .pr_img {
  height: auto;
}
.pr_block .pr_item .pr_img img {
  width: 100%;
}
.pr_block .pr_item:nth-child(1) .pr_text_wapper {
  position: absolute;
  top: 12.67vw;
  left: 16vw;
  display: flex;
  column-gap: 2.53vw;
  justify-content: center;
  align-items: flex-end;
}
.pr_block .pr_item:nth-child(2) .pr_text_wapper {
  position: absolute;
  top: 8vw;
  left: 7.33vw;
}
.pr_block .pr_item:nth-child(3) .pr_text_wapper {
  position: absolute;
  top: 10.67vw;
  left: 7.33vw;
}
.pr_block .pr_item .pr_text_wapper .pr_text {
  font-size: 1.6vw;
  font-weight: 500;
  line-height: 1.65;
  text-align: left;
}
.pr_block .pr_item:nth-child(1) .pr_text_wapper .pr_text {
  padding-bottom: 5.27vw;
}
.pr_block .pr_item:nth-child(2) .pr_text_wapper .pr_text {
  display: inline-block;
  margin-top: 0.4vw;
  margin-left: 0.67vw;
}
.pr_block .pr_item:nth-child(3) .pr_text_wapper .pr_text {
  margin: 0 0 0.07vw 0.67vw;
}
.pr_block .pr_item:nth-child(3) .pr_text_wapper .pr_text p,
.pr_block .pr_item .pr_text_wapper .pr_text p + p {
  font-size: 1.07vw;
  font-weight: 400;
  line-height: 2.2;
}
.pr_block .pr_item:nth-child(3) .pr_text_wapper .pr_text p {
  margin-bottom: 1.07vw;
}
.pr_block .pr_item .pr_text_wapper .pr_text p + p {
  margin-top: 1.07vw;
}
.pr_block .pr_item:nth-child(1) .pr_text_wapper .pr_text p + p {
  text-align: right;
}
.pr_block .pr_item:nth-child(3) .pr_text_wapper .pr_text ol {
  counter-reset: pr_number;
}
.pr_block .pr_item:nth-child(3) .pr_text_wapper .pr_text li {
  counter-increment: pr_number;
  padding-left: 2vw;
  position: relative;
}
.pr_block .pr_item:nth-child(3) .pr_text_wapper .pr_text li:not(:last-child) {
  padding-bottom: 0.53vw;
}
.pr_block .pr_item:nth-child(3) .pr_text_wapper .pr_text li::before {
  content: counter(pr_number) ".";
  position: absolute;
  top: 0;
  left: 0;
}
.pr_block .pr_item .pr_text_wapper .pr_decoration {
  font-family: 'urbanist';
  font-size: 16.67vw;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: -.02em;
  color: #cdc298;
  display: flex;
  column-gap: 1vw;
  align-items: flex-end;
}
.pr_block .pr_item  .pr_text_wapper .pr_decoration::after {
  font-family: 'shippori_mincho';
  font-size: 2.67vw;
  font-weight: 500;
  line-height: 1.15;
  letter-spacing: -.02em;
  writing-mode: vertical-rl;
  color: #fff;
  padding-bottom: 3.93vw;
}
.pr_block .pr_item:nth-child(1)  .pr_text_wapper .pr_decoration::after {
  content: "［信頼］";
}
.pr_block .pr_item:nth-child(2)  .pr_text_wapper .pr_decoration::after {
  content: "［専門性］";
}
.pr_block .pr_item:nth-child(3)  .pr_text_wapper .pr_decoration::after {
  content: "［指針］";
}
.pr_block .swiper-button-prev,
.pr_block .swiper-button-next {
  width: 40px;
  height: 40px;
  background-color: #002b69;
  border-radius: 50%;
  cursor: pointer;
  opacity: 1;
  transition: opacity .3s;
}
.pr_block .swiper-button-prev.swiper-button-disabled,
.pr_block .swiper-button-next.swiper-button-disabled {
  opacity: .4;
  cursor: unset;
  pointer-events: none;
}
.pr_block .swiper-button-prev::after,
.pr_block .swiper-button-next::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 14px;
  height: 14px;
  border-bottom: 2px solid #fff;
  border-left: 2px solid #fff;
}
.pr_block .swiper-button-prev::after {
  left: 16px;
  transform: translateY(-50%) rotate(45deg);
}
.pr_block .swiper-button-next::after {
  right: 16px;
  transform: translateY(-50%) rotate(-135deg);
}
.pr_block .swiper-button-prev:hover,
.pr_block .swiper-button-next:hover {
  opacity: .6;
}
.pr_block .swiper-pagination {
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
}
.pr_block .swiper-pagination .swiper-pagination-bullet {
  border-radius: 0 !important;
  width: calc((100vw - 160px) / 3) !important;
  height: auto !important;
  border-bottom: 2px solid #fff;
  font-size: 14px;
  color: #fff;
  padding-bottom: 8px;
  background: none !important;
  opacity: 1 !important;
  margin: 0 !important;
  text-align: left;
}
.pr_block .swiper-pagination .swiper-pagination-bullet-active {
  border-bottom: 2px solid #000;
  color: #000;
}
@media screen and (max-width: 767px) {
  .pr_block .pr_item {
    height: auto;
  }
  .pr_block .pr_item .pr_img {
    height: 100%;
  }
  .pr_block .pr_item .pr_img::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 19, 45, .8);
  }
  .pr_block .pr_item .pr_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .pr_block .pr_item .pr_text_wapper {
    padding: 0 20px 0;
    color: #fff;
    display: flex;
    flex-flow: column;
    justify-content: center;
    align-items: flex-start !important;
    top: 50% !important;
    left: 0 !important;
    transform: translateY(-50%);
  }
  .pr_block .pr_item .pr_text_wapper .pr_text {
    font-size: 20px;
  }
  .pr_block .pr_item .pr_text_wapper .pr_text {
    margin: 0 !important;
    padding-bottom: 8px !important;
    order: 1;
  }
  .pr_block .pr_item:nth-child(3) .pr_text_wapper .pr_text p {
    font-size: 13px;
    margin-bottom: 16px;
  }
  .pr_block .pr_item .pr_text_wapper .pr_text p + p {
    font-size: 13px;
    text-align: left !important;
    margin: 0 !important;
    padding-top: 16px;
  }
  .pr_block .pr_item:nth-child(3) .pr_text_wapper .pr_text li {
    font-size: 16px;
    padding-left: 23px;
  }
  .pr_block .pr_item:nth-child(3) .pr_text_wapper .pr_text li:not(:last-child) {
    padding-bottom: 8px;
  }
  .pr_block .pr_item .pr_text_wapper .pr_decoration {
    font-size: 65px;
    column-gap: 8px;
    order: 2;
  }
  .pr_block .pr_item .pr_text_wapper .pr_decoration::after {
    font-size: 16px;
    padding-bottom: 12px;
  }
  .pr_block .pr_item:nth-child(3) .pr_text_wapper .pr_decoration::after {
    padding-bottom: 14px;
  }
  .pr_block .swiper-button-prev,
  .pr_block .swiper-button-next {
    top: auto !important;
    bottom: 10px;
  }
}
@media screen and (max-width: 375px) {
  .pr_block .pr_item .pr_text_wapper .pr_text {
    font-size: 5.33vw;
  }
  .pr_block .pr_item .pr_text_wapper .pr_text {
    padding-bottom: 2.13vw !important;
  }
  .pr_block .pr_item:nth-child(3) .pr_text_wapper .pr_text p {
    font-size: 3.47vw;
    margin-bottom: 4.27vw;
  }
  .pr_block .pr_item .pr_text_wapper .pr_text p + p {
    font-size: 3.47vw;
    padding-top: 4.27vw;
  }
  .pr_block .pr_item:nth-child(3) .pr_text_wapper .pr_text li {
    font-size: 4.27vw;
    padding-left: 6.13wv;
  }
  .pr_block .pr_item:nth-child(3) .pr_text_wapper .pr_text li:not(:last-child) {
    padding-bottom: 2.13vw;
  }
  .pr_block .pr_item .pr_text_wapper .pr_decoration {
    font-size: 17.33vw;
    column-gap: 2.13vw;
  }
  .pr_block .pr_item .pr_text_wapper .pr_decoration::after {
    font-size: 4.27vw;
    padding-bottom: 3.2vw;
  }
  .pr_block .pr_item:nth-child(3) .pr_text_wapper .pr_decoration::after {
    padding-bottom: 3.73vw;
  }
}



/* ---------------------------------
  service_block
--------------------------------- */
.service_block {
  background-color: #002b69;
  padding: 160px 0 100px;
}
.service_block .section_title {
  color: #fff;
  margin-bottom: 64px;
}
.service_block .section_title span {
  margin-bottom: 8px;
}
.service_block .service_list {
  display: flex;
  flex-flow: column;
  row-gap: 16px;
  counter-reset: service_number;
  margin-bottom: 16px;
}
.service_block .service_list li {
  counter-increment: service_number;
}
.service_block .service_list li a {
  background-color: #27497a;
  border-radius: 10px;
  padding: 20px;
  display: block;
  transition: color .3s;
  position: relative;
  overflow: hidden;
}
.service_block .service_list li a::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  background-color: #092853;
  transform: translateY(100%);
  transform-origin: top;
  transition-property: transform;
  transition: all .3s;
  z-index: 0;
}
.service_block .service_list li a:hover::before {
  transform: translateY(0);
  transform-origin: bottom;
}
.service_block .service_list li .service_list_head {
  font-family: 'urbanist';
  font-size: 16px;
  line-height: 1.2;
  letter-spacing: .05em;
  color: #cdc298;
  display: block;
  border-bottom: 1px solid #fff;
  position: relative;
  padding: 6.5px 0 22.5px 59px;
  margin-bottom: 24px;
  z-index: 1;
}
.service_block .service_list li .service_list_head::before {
  content: "0" counter(service_number);
  font-size: 24px;
  font-weight: 500;
  line-height: 1.35;
  color: #fff;
  position: absolute;
  top: 0;
  left: 0;
}
.service_block .service_list li .service_list_flex {
  display: flex;
  column-gap: 64px;
  padding-left: 56px;
  position: relative;
  z-index: 1;
}
.service_block .service_list li .service_list_flex .service_list_text {
  display: flex;
  column-gap: 64px;
  font-size: 24px;
  font-weight: 500;
  line-height: 1.6;
  color: #fff;
  flex-wrap: nowrap;
  flex: 1;
}
.service_block .service_list li .service_list_flex .service_list_text .service_list_title {
  width: 406px;
}
.service_block .service_list li .service_list_flex .service_list_text p + p{
  font-size: 16px;
  font-weight: 400;
  line-height: 1.75;
  flex-wrap: wrap;
  width: auto;
  flex: 1;
}
.service_block .service_list li .service_list_flex img {
  width: 300px;
  height: 200px;
  border-radius: 10px;
}
.service_block .service_more a {
  width: 240px;
  height: 50px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #fff;
  border: 1px solid #ccc;
  border-radius: 50px;
  margin: 24px auto 0;
  transition: .3s;
}
.service_block .service_more a:hover {
  background-color: #dee7f4;
  border: 1px solid #dee7f4;
}
.service_block .service_flow {
  border: 1px solid #fff;
  border-radius: 10px;
  padding: 64px 80px 40px;
  margin-top: 80px;
  position: relative;
}
.service_block .service_flow .service_flow_title {
  position: absolute;
  top: -20px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 24px;
  font-weight: 500;
  line-height: 1.6;
  color: #fff;
  padding: 0 40px;
  background-color: #002b69;
  width: max-content;
}
.service_block .service_flow ul {
  display: flex;
  column-gap: 5.23vw;
}
.service_block .service_flow li {
  flex: 1;
}
.service_block .service_flow li .service_flow_img {
  width: 8.07vw;
  height: 8.07vw;
  max-width: 121px;
  max-height: 121px;
  aspect-ratio: 1;
  background-color: #cdc298;
  border: 1px solid #fff;
  border-radius: 50%;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 1.37vw;
  position: relative;
}
.service_block .service_flow li:not(:last-child) .service_flow_img::after {
  content: "";
  width: 200%;
  height: 1px;
  position: absolute;
  top: 50%;
  left: 100%;
  background-color: #fff;
  z-index: 0;
}
.service_block .service_flow li .service_flow_text {
  margin-top: 24px;
  color: #fff;
}
.service_block .service_flow li .service_flow_text p {
  font-size: 18px;
  font-weight: 500;
  text-align: center;
}
.service_block .service_flow li:first-child .service_flow_text p:first-child {
  white-space: nowrap;
}
.service_block .service_flow li .service_flow_text p + p {
  margin-top: 16px;
  font-size: 16px;
  font-weight: 400;
  text-align: left;
}
.service_block .service_flow .service_flow_br {
  display: none;
}
@media screen and (max-width: 1281px) {
  .service_block .service_list li .service_list_flex {
    column-gap: 56px;
  }
  .service_block .service_list li .service_list_flex .service_list_text {
    column-gap: 56px;
  }
  .service_block .service_list li .service_list_flex .service_list_text .service_list_title {
    width: 324.8px;
  }
  .service_block .service_list li .service_list_flex img {
    width: 240px;
    height: 160px;
  }
  .service_block .service_flow {
    padding: 64px 64px 40px;
  }
  .service_block .service_flow ul {
    column-gap: 4.19vw;
  }
  .service_block .service_flow li .service_flow_img {
    width: 6.45vw;
    height: 6.45vw;
    max-width: 96.8px;
    max-height: 96.8px;
    padding: 1.09vw;
  }
  .service_block .service_flow .service_flow_br {
    display: block;
  }
}
@media screen and (max-width: 999px) {
  .service_block .service_list li .service_list_flex {
    column-gap: 64px;
  }
  .service_block .service_list li .service_list_flex .service_list_text {
    flex-flow: column;
    row-gap: 24px;
  }
  .service_block .service_list li .service_list_flex .service_list_text .service_list_title {
    max-width: none;
    flex: 0;
  }
  .service_block .service_list li .service_list_flex img {
    width: 300px;
    height: 200px;
  }
  .service_block .service_flow li .service_flow_img {
    padding: 6.94%;
  }
  .service_block .service_flow ul {
  column-gap: 5.23vw;
}
  .service_block .service_flow li .service_flow_img {
    width: 8.07vw;
    height: 8.07vw;
    max-width: 121px;
    max-height: 121px;
    padding: 1.37vw;
  }
  .service_block .service_flow li:not(:last-child) .service_flow_img::after {
    width: 150%;
  }
  .service_block .service_flow {
    padding: 24px 20px 16px;
  }
  .service_block .service_flow .service_flow_br {
    display: block;
  }
}
@media screen and (max-width: 767px) {
  .service_block {
    padding: 80px 0 40px;
  }
  .service_block .inner {
    margin: 0;
  }
  .service_block .section_title {
    margin-bottom: 24px;
  }
  .service_block .service_list li a {
    padding: 20px 16px;
  }
  .service_block .service_list li .service_list_head {
    font-size: 14px;
    padding: 5px 0 16px 40px;
  }
  .service_block .service_list li .service_list_head::before {
    font-size: 20px;
    line-height: 1.2;
    letter-spacing: .02em;
  }
  .service_block .service_list li .service_list_flex {
    flex-flow: column;
    padding-left: 0;
  }
  .service_block .service_list li .service_list_flex p {
    font-size: 20px;
    max-width: 100%;
  }
  .service_block .service_list li .service_list_flex p + p{
    font-size: 14px;
  }
  .service_block .service_list li .service_list_flex img {
    width: 100%;
    height: auto;
    margin-top: 16px;
  }
  .service_block .service_more a {
    width: 200px;
    height: 40px;
  }
  .service_block .service_flow {
    margin-top: 64px;
  }
  .service_block .service_flow .service_flow_title {
    top: -14px;
    transform: translateX(-50%);
    font-size: 18px;
  }
  .service_block .service_flow ul {
    flex-flow: column;
  }
  .service_block .service_flow li {
    display: flex;
    column-gap: 16px;
  }
  .service_block .service_flow li:not(:last-child)::after {
    display: none;
  }
  .service_block .service_flow li .service_flow_img {
    width: 71px;
    height: 71px;
    margin: 16px 0;
    padding: 12.5px;
    position: relative;
  }
  .service_block .service_flow li:not(:first-child) .service_flow_img::before,
  .service_block .service_flow li:not(:last-child) .service_flow_img::after {
    content: "";
    width: 1px;
    height: 17px;
    position: absolute;
    top: auto;
    bottom: auto;
    left: 50%;
    transform: translateX(-50%);
    background-color: #fff;
  }
  .service_block .service_flow li:not(:first-child) .service_flow_img::before {
    top: -17px;
  }
  .service_block .service_flow li:not(:last-child) .service_flow_img::after {
    bottom: -17px;
  }
  .service_block .service_flow li .service_flow_text {
    margin: auto 0;
  }
  .service_block .service_flow li .service_flow_text p {
    font-size: 16px;
    text-align: left;
  }
  .service_block .service_flow li .service_flow_text p + p {
    margin-top: 4px;
    font-size: 13px;
  }
  .service_block .service_flow .service_flow_br {
    display: none;
  }
}


/* ---------------------------------
  case_block
--------------------------------- */
.case_block {
  padding-top: 140px;
  padding-bottom: 204px;
  position: relative;
  --calculated-height: auto;
}
.case_block::before {
  content: "";
  max-width: 1300px;
  width: calc(100% - 40px);
  height: var(--calculated-height);
  position: absolute;
  bottom: 14.12%;
  left: 50%;
  transform: translateX(-50%);
  background-color: #f7f5ed;
  border-radius: 10px;
  z-index: -1;
}
.case_block .section_title {
  max-width: 1340px;
  padding: 0 20px;
  margin: auto;
  display: flex;
  column-gap: 24px;
}
.case_block .section_title p {
  flex: 1;
}
.case_block .section_title .swiper-navigation {
  display: flex;
  column-gap: 16px;
  align-items: flex-end;
}
.case_block .section_title .swiper-navigation .swiper-button-prev,
.case_block .section_title .swiper-navigation .swiper-button-next {
  position: relative;
  top: 0;
  width: 60px;
  height: 60px;
  border-radius: 50%;
  display: block;
  position: relative;
  transition: background-color .3s;
}
.case_block .section_title .swiper-navigation .swiper-button-prev {
  left: 0;
}
.case_block .section_title .swiper-navigation .swiper-button-next {
  right: 0;
}
.case_block .section_title .swiper-navigation .swiper-button-prev::after,
.case_block .section_title .swiper-navigation .swiper-button-next::after {
  content: "";
  width: 14px;
  height: 14px;
  border-bottom: 2px solid #000;
  border-left: 2px solid #000;
  position: absolute;
  top: 50%;
}
.case_block .section_title .swiper-navigation .swiper-button-prev::after {
  left: 26px;
  transform: translateY(-50%) rotate(45deg);
}
.case_block .section_title .swiper-navigation .swiper-button-next::after {
  right: 26px;
  transform: translateY(-50%) rotate(-135deg);
}
.case_block .section_title .swiper-navigation .swiper-button-prev:hover,
.case_block .section_title .swiper-navigation .swiper-button-next:hover {
  background-color: #dee7f4;
}
.case_block .section_title .swiper-navigation .swiper-button-prev,
.case_block .section_title .swiper-navigation .swiper-button-next {
  background-color: #f0f0f0;
}
.case_block .section_title .swiper-navigation .swiper-button-prev:hover,
.case_block .section_title .swiper-navigation .swiper-button-next:hover {
  background-color: #dee7f4;
}
.case_block .swiper-wrapper {
  margin-top: 128px;
}
.case_block .swiper-wrapper .swiper-slide {
  width: 720px;
  height: auto;
  box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.05);
  border-radius: 10px;
}
.case_block .swiper-wrapper .swiper-slide a {
  display: flex;
  flex-flow: column;
  height: 100%;
  background-color: #fff;
  border-radius: 10px;
  transition: background-color .3s;
}
.case_block .swiper-wrapper .swiper-slide a:hover {
  background-color: #dee7f4;
}
.case_block .swiper-wrapper .swiper-slide .case_category {
  display: inline-block;
  padding: 8px 24px;
  font-size: 14px;
  color: #fff;
  border-radius: 10px 0 0 0;
}
.case_block .swiper-wrapper .swiper-slide .case_category.rental {
  background-color: #002b69;
}
.case_block .swiper-wrapper .swiper-slide .case_category.investment_sale {
  background-color: #bf0b0b;
}
.case_block .swiper-wrapper .swiper-slide .case_category.investment_buy {
  background-color: #a37e04;
}
.case_block .swiper-wrapper .swiper-slide .case_category.house_sale {
  background-color: #22730f;
}
.case_block .swiper-wrapper .swiper-slide .list_detail {
  padding: 24px 40px 40px;
}
.case_block .swiper-wrapper .swiper-slide .list_detail p {
  font-size: 24px;
  font-weight: 500;
  line-height: 1.6;
}
.case_block .swiper-wrapper .swiper-slide .list_detail p + p {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.75;
  margin-top: 24px;
}
@media screen and (max-width: 1281px) {
  .case_block::before {
    max-width: 1040px;
  }
  .case_block .section_title {
    max-width: 1080px;
  }
}
@media screen and (max-width: 767px) {
  .case_block {
    padding: 40px 0 64px;
  }
  .case_block::before {
    height: calc(100% - 40px - 135px - 15.65px - 40.35px);
    bottom: 7.14%;
  }
  .case_block .section_title {
    padding: 0 20px;
    flex-flow: column;
    row-gap: 24px;
  }
  .case_block .section_title p {
    padding-left: 0;
  }
  .case_block .section_title .swiper-navigation {
    justify-content: flex-end;
    padding-right: 0;
    height: 40px;
  }
  .case_block .section_title .swiper-navigation .swiper-button-prev,
  .case_block .section_title .swiper-navigation .swiper-button-next {
    width: 40px;
    height: 40px;
  }
  .case_block .section_title .swiper-navigation .swiper-button-prev::after {
    left: 16px;
  }
  .case_block .section_title .swiper-navigation .swiper-button-next::after {
    right: 16px;
  }
  .case_block .swiper-wrapper {
    margin-top: 40px;
  }
  .case_block .swiper-wrapper .swiper-slide {
    width: 280px;
  }
  .case_block .swiper-wrapper .swiper-slide .list_detail {
    padding: 20px 16px 24px;
  }
  .case_block .swiper-wrapper .swiper-slide .list_detail p {
    font-size: 16px;
  }
  .case_block .swiper-wrapper .swiper-slide .list_detail p + p {
    font-size: 13px;
    margin-top: 16px;
  }
}


/* ---------------------------------
  review_block
--------------------------------- */
.review_block {
  background-color: #e8ecf2;
  padding: 140px 0 120px;
}
.review_block .section_title {
  max-width: 1340px;
  padding: 0 20px;
  margin: auto;
}
.review_block .section_title p {
  flex: 1;
}
.review_block .ti-widget.ti-goog.ti-disable-animation .ti-widget-container {
  margin-top: 64px;
}
.review_block .ti-widget.ti-goog {
  max-width: 1340px;
  margin: auto;
}
.review_block .ti-widget.ti-goog .ti-controls {
  margin-top: 0;
  top: -64px !important;
}
.review_block .ti-widget.ti-goog .ti-controls .ti-prev,
.review_block .ti-widget.ti-goog .ti-controls .ti-next {
  transform: translateY(-100%);
  transition: background-color .3s;
}
.review_block .ti-widget.ti-goog .ti-controls .ti-prev {
  left: auto;
  right: 96px;
}
.review_block .ti-widget.ti-goog .ti-controls .ti-next {
  right: 20px;
}
.review_block.ti-widget.ti-goog .ti-controls .ti-prev::before {
  left: 26px;
}
.review_block .ti-widget.ti-goog .ti-controls .ti-next::before {
  right: 26px;
}
@media screen and (max-width: 1281px) {
  .review_block .section_title {
    max-width: 1080px;
  }
  .review_block .ti-widget.ti-goog {
    max-width: 1080px;
    margin: auto;
  }
}
@media screen and (max-width: 767px) {
  .review_block {
    padding: 40px 0 64px;
  }
  .review_block .section_title {
    padding: 0 20px;
  }
  .review_block .section_title p {
    padding-left: 0;
  }
  .review_block .ti-widget.ti-goog.ti-disable-animation .ti-widget-container {
    margin-top: 72px;
  }
  .review_block .ti-widget.ti-goog .ti-controls {
    top: -8px !important;
  }
  .review_block .ti-widget.ti-goog .ti-controls .ti-prev {
    right: 76px;
  }
}


/* ---------------------------------
  contact_block
--------------------------------- */
.contact_block {
  background-image: linear-gradient(#e8ecf2, #e8ecf2 50%, transparent 50% 100%);
}