@charset "UTF-8";

/*
 Theme Name: BusinessPress Child
 Template: businesspress
*/

/* Media Query
@media screen and (min-width: 540px) {}

@media screen and (min-width: 640px) {}

@media screen and (min-width: 782px) {}

@media screen and (min-width: 980px) {}

@media screen and (min-width: 1120px) {}
------------------------------------------------------------ */

/* Base
------------------------------------------------------------ */
.content-area {
  margin-bottom: 0;
}

/* Jumbotron */
.jumbotron-content {
  padding-bottom: 4.0rem;
  padding-top: 4.0rem;
}

.jumbotron-title {
  text-shadow: none;
  letter-spacing: 2px;
  text-indent: 2px;
}

.subheader {
  font-weight: 400;
  letter-spacing: 2px;
  text-indent: 2px;
}

@media screen and (min-width: 782px) {
  .jumbotron-content {
    padding-bottom: 5.6rem;
    padding-top: 5.6rem;
  }
}

@media screen and (min-width: 980px) {
  .jumbotron-content {
    padding-bottom: 8.0rem;
    padding-top: 8.0rem;
  }
}


/* Header
------------------------------------------------------------ */
/* main-header */
.main-header {
  padding-top: 0.4rem;
  padding-bottom: 0.4rem;
}

.home .main-header {
  border-bottom: none;
}

@media screen and (min-width: 980px) {
  .main-header {
    padding-top: 0;
    padding-bottom: 0;
  }
}

/* .main-header-clone */
.main-header-clone {
  border-bottom: none;
}

/* site-branding */
@media screen and (min-width: 782px) {
  .site-branding {
    padding-right: 24px;
  }
}

/* main-navigation */
@media screen and (min-width: 980px) {
  .main-navigation {
    line-height: 80px;
  }

  .main-navigation a {
    padding-left: 12px;
    padding-right: 12px;
  }
}


/* 固定ページ
------------------------------------------------------------ */
.section {
  padding: 4.8rem 0;
}

@media screen and (min-width: 640px) {
  .section {
    padding: 6.4rem 0;
  }
}

@media screen and (min-width: 782px) {
  .section {
    padding: 8.0rem 0;
  }
}

/* section-title
------------------------------------------------------------ */
.section-title {
  margin-bottom: 4.8rem;
}

/* section-title01 */
.section-title01 h2 {
  display: inline-block;
  padding: 0 5.6rem;
  line-height: 1.25;
}

.section-title01 h2::before,
.section-title01 h2::after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 40px;
  height: 2px;
  transform: rotate(-60deg);
}

.section-title01 h2::before {
  left: 0;
  transform: rotate(60deg);
}

.section-title01 h2::after {
  right: 0;
}

/* section-title02 */
.section-title02 h2 {
  display: inline-block;
  padding: 1.2rem 1.6rem;
  border-top: solid 2px #333333;
  border-bottom: solid 2px #333333;
  line-height: 1.25;
  min-width: 280px;
}

.section-title02 h2::before,
.section-title02 h2::after {
  content: '';
  position: absolute;
  top: -7px;
  width: 2px;
  height: calc(100% + 14px);
}

.section-title02 h2::before {
  left: 7px;
}

.section-title02 h2::after {
  right: 7px;
}

/* section-title03 */
.section-title03 {
  margin-bottom: 3.2rem;
}

.section-title03 h2 {
  padding: 1.6rem 0.4rem;
  border-top: solid 3px #1C6E8C;
  border-bottom: solid 3px #1C6E8C;
}

/* section-title04 */
.section-title04 {
  margin-bottom: 4.8rem;
  padding: 2.4rem 0.8rem;
}

.section-title04 h3 span.price {
  margin: 0 0.4rem;
  display: inline-block;
}

.section-title04 h3 span.zei {
  margin-left: 0.4rem;
  display: inline-block;
}

@media screen and (min-width: 640px) {
  .section-title04 {
    margin-bottom: 6.4rem;
  }
}

@media screen and (min-width: 782px) {
  .section-title04 {
    margin-bottom: 8.0rem;
  }
}

/* midashi
------------------------------------------------------------ */
/* midashi01 */
.midashi01 {
  margin-bottom: 2.4rem;
}

.midashi01 h3 {
  padding: 0.8rem 1.6rem;
  display: inline-block;
  line-height: 1;
  border-radius: 24px;
}

/* midashi02 */
.midashi02 {
  margin-bottom: 2.4rem;
}

.midashi02 h3 {
  padding-left: 3.2rem;
}

.midashi02 h3::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 24px;
  height: 24px;
  line-height: 24px;
  border-radius: 50%;
}

/* midashi03 */
.midashi03 {
  margin-bottom: 2.4rem;
}


/* TOPページ
------------------------------------------------------------ */
/* TOP メインビジュアル スライダー セクション
------------------------------------------------------------ */
.top-section-mainslider {
  padding: 0;
}

.slider-mainvisual figure img {
  width: 100%;
}

/* TOP フラット7の特長セクション
------------------------------------------------------------ */
.flex-topfeature01 {
  gap: 4.0rem;
}

.flex-topfeature01 .flex-item {
  flex-basis: 100%;
  counter-increment: number;
  border-bottom: solid 1px #6FB1C6;
}

.flex-topfeature01 h3 {
  padding-left: 4.8rem;
}

.flex-topfeature01 h3::before {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(0%, -50%);
  content: counter(number);
  width: 4.0rem;
  height: 4.0rem;
  line-height: 4.0rem;
  text-align: center;
  border-radius: 50%;
}

/* TOP 基本費用が全部コミコミセクション
------------------------------------------------------------ */
.flex-topfeature02 {
  margin-top: 4.0rem;
  justify-content: space-around;
}

.flex-topfeature02 .flex-item {
  flex-basis: calc(calc(100% / 2) - calc(calc(32px / 4) * 2));
  box-shadow: 0px 0px 0px 5px #FFFFFF;
  border: dashed 2px #6FB1C6;
  border-radius: 16px;
}

.flex-topfeature02 .flex-item p {
  padding: 1.2rem 0;
  line-height: 1.5;
}

@media screen and (min-width: 640px) {
  .flex-topfeature02 {
    gap: 3.2rem;
  }

  .flex-topfeature02 .flex-item {
    flex-basis: calc(calc(100% / 3) - calc(calc(38px / 6) * 4));
  }
}

@media screen and (min-width: 782px) {
  .flex-topfeature02 .flex-item {
    flex-basis: calc(calc(100% / 3) - calc(calc(38px / 6) * 4));
  }
}

@media screen and (min-width: 980px) {
  .flex-topfeature02 .flex-item {
    flex-basis: calc(calc(100% / 5) - calc(calc(37px / 10) * 8));
  }
}

/* TOP クーポンとキャンペーンセクション
------------------------------------------------------------ */
.flex-topcampaign .flex-item {
  flex-basis: calc(calc(100% / 2) - calc(calc(24px / 4) * 2));
}

.flex-topcampaign .flex-item:first-child {
  flex-basis: 100%;
}

.flex-topcampaign .coupon {
  margin: 1.6rem auto;
  max-width: 320px;
  height: 80px;
  line-height: 80px;
  border-radius: 16px;
}

@media screen and (min-width: 782px) {
  .flex-topcampaign .flex-item {
    flex-basis: calc(calc(100% / 2) - calc(calc(32px / 4) * 2));
  }
}

@media screen and (min-width: 980px) {

  .flex-topcampaign .flex-item,
  .flex-topcampaign .flex-item:first-child {
    flex-basis: calc(calc(100% / 3) - calc(calc(40px / 6) * 4));
  }
}

/* TOP こんな方にオススメセクション
------------------------------------------------------------ */
.flex-toprecommend {
  margin-bottom: 4.0rem;
  gap: 0;
  border-radius: 16px;
}

.top-section-recommend .section-container .flex-toprecommend:last-child {
  margin-bottom: 0;
}

.flex-toprecommend .flex-item {
  align-self: center;
}

.flex-toprecommend .aspect-bgimage {
  padding-top: 62.5%;
  border-radius: 16px 16px 0 0;
}

.flex-toprecommend .aspect-caption {
  margin: 0;
  padding: 1.2rem;
  display: inline-block;
  top: 0;
  left: 0;
  transform: translate(0%, 0%);
  border-radius: 16px 0 16px 0;
  z-index: 2;
  line-height: 1;
}

.flex-toprecommend .text-group {
  padding: 1.6rem 2.4rem;
}

@media screen and (min-width: 540px) {
  .flex-toprecommend .aspect-bgimage {
    padding-top: 50%;
  }
}

@media screen and (min-width: 782px) {
  .flex-toprecommend {
    border-radius: 16px;
  }

  .flex-toprecommend .flex-item {
    flex-basis: calc(100% / 2);
  }

  .flex-toprecommend .aspect-bgimage {
    padding-top: 75%;
    border-radius: 16px 0 0 16px;
  }

  .flex-toprecommend .aspect-caption {
    border-radius: 16px 0 16px 0;
  }

  .flex-toprecommend .text-group {
    padding: 0 2.4rem;
  }
}

/* TOP 人気の車種セクション
------------------------------------------------------------ */
.flex-toppopular {
  gap: 4.0rem;
}

@media screen and (min-width: 540px) {
  .flex-toppopular .flex-item {
    flex-basis: calc(calc(100% / 2) - calc(calc(40px / 4) * 2));
  }
}

@media screen and (min-width: 782px) {
  .flex-toppopular .flex-item {
    flex-basis: calc(calc(100% / 3) - calc(calc(40px / 6) * 4));
  }
}


/* TOP 店舗紹介セクション
------------------------------------------------------------ */
.top-section-shop .note {
  margin: 0 auto 4.0rem;
  max-width: 800px;
}

.flex-topshop {
  gap: 1.6rem;
}

.flex-topshop .flex-item {
  flex-basis: calc(calc(100% / 2) - calc(calc(16px / 4) * 2));
}

.flex-topshop figure img {
  border-radius: 8px;
  box-shadow: rgba(0, 0, 0, 0.2) 0px 3px 6px;
}

@media screen and (min-width: 540px) {
  .flex-topshop {
    gap: 2.4rem;
  }

  .flex-topshop .flex-item {
    flex-basis: calc(calc(100% / 2) - calc(calc(24px / 4) * 2));
  }
}

@media screen and (min-width: 782px) {
  .flex-topshop .flex-item {
    flex-basis: calc(calc(100% / 3) - calc(calc(24px / 6) * 4));
  }
}

@media screen and (min-width: 980px) {
  .flex-topshop {
    gap: 3.2rem;
  }

  .flex-topshop .flex-item {
    flex-basis: calc(calc(100% / 3) - calc(calc(32px / 6) * 4));
  }
}

/* TOP よくあるご質問セクション
------------------------------------------------------------ */
.faq-open dt {
  margin-bottom: 0.8rem;
}

.faq-open dt::before,
.faq-open dd::before {
  margin-right: 0.8rem;
}

.faq-open dt::before {
  content: "Q.";
}

.faq-open dd {
  margin: 0 0 3.2rem;
  padding: 1.6rem;
  border-radius: 8px;
}

.faq-open dd::before {
  content: "A.";
}


/* 固定 フラット7とはページ
------------------------------------------------------------ */
/* ページ全体 -------------------*/
.note {
  margin: 0 auto 3.2rem;
  max-width: 800px;
}

/* 7年間の基本費用が全部コミコミセクション -------------------*/
.flex-flat7-02 {
  justify-content: space-around;
  gap: 1.6rem;
}

.flex-flat7-02 .flex-item {
  flex-basis: calc(calc(100% / 3) - calc(calc(16px / 6) * 4));
}

.flex-flat7-02 figure {
  margin: 0 auto;
  max-width: 120px;
}

@media screen and (min-width: 640px) {
  .flex-flat7-02 .flex-item {
    flex-basis: calc(calc(100% / 5) - calc(calc(16px / 10) * 8));
  }

  .flex-flat7-02 figure {
    max-width: 144px;
  }
}

@media screen and (min-width: 980px) {
  .flex-flat7-02 {
    gap: 2.4rem;
  }

  .flex-flat7-02 .flex-item {
    flex-basis: calc(calc(100% / 5) - calc(calc(24px / 10) * 8));
  }
}

/* 7年間の基本費用が全部コミコミセクション -------------------*/
.page-flat7-03 figure {
  margin: 0 auto 1.6rem;
  max-width: 280px;
}

.page-flat7-03 figure img {
  width: 100%;
}

/* 豊富なオプションで自分好みにカスタマイズセクション -------------------*/
.customize-list {
  margin: 0 auto;
  max-width: 800px;
}

.customize-list ul {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
}

.customize-list ul li {
  flex-basis: calc(calc(100% / 2) - calc(calc(8px / 4) * 2));
}

@media screen and (min-width: 540px) {
  .customize-list ul li {
    flex-basis: calc(calc(100% / 3) - calc(calc(8px / 6) * 4));
  }
}

@media screen and (min-width: 640px) {
  .page-flat7-03 figure {
    max-width: 320px;
  }
}

/* リース終了後に選べる4つのプランセクション -------------------*/
.flex-flat7-04 .flex-item {
  counter-increment: number;
  border-radius: 16px;
  border: solid 1px #6FB1C6;
}

.flex-flat7-04 .flex-item-inner {
  padding: 7.2rem 2.4rem 2.4rem;
}

.flex-flat7-04 h3::before {
  position: absolute;
  top: -48px;
  left: 50%;
  transform: translate(-50%, 0%);
  content: counter(number);
  width: 4.0rem;
  height: 4.0rem;
  line-height: 4.0rem;
  text-align: center;
  border-radius: 50%;
}

.flex-flat7-04 figure {
  margin: 0 auto 1.6rem;
}

p.sub-text {
  line-height: 1.4;
}

@media screen and (min-width: 640px) {
  .flex-flat7-04 {
    gap: 3.2rem;
  }

  .flex-flat7-04 .flex-item {
    flex-basis: calc(calc(100% / 2) - calc(calc(36px / 4) * 2));
  }

  .flex-flat7-04 .flex-item-inner {
    padding-top: 8.0rem;
  }
}

@media screen and (min-width: 980px) {
  .flex-flat7-04 .flex-item {
    flex-basis: calc(calc(100% / 4) - calc(calc(36px / 8) * 6));
  }
}

/* 固定 サービス内容ページ
------------------------------------------------------------ */
/* メッセージセクション -------------------*/
.page-service-message,
.page-service-01 {
  padding-bottom: 0;
}

@media screen and (min-width: 782px) {

  .page-service-message,
  .page-service-01 {
    padding-bottom: 2.4rem;
  }

  .page-service-message p {
    text-align: center;
  }
}

/* 月々のお支払いに含まれる基本サービスセクション -------------------*/
.flex-service-01 {
  gap: 1.6rem;
  justify-content: flex-start;
}

.flex-service-01 .flex-item {
  flex-basis: calc(calc(100% / 2) - calc(calc(16px / 4) * 2));
}

.flex-service-01 img {
  width: 100%;
  border-radius: 8px;
}

@media screen and (min-width: 540px) {
  .flex-service-01 .flex-item {
    flex-basis: calc(calc(100% / 3) - calc(calc(16px / 6) * 4));
  }
}

@media screen and (min-width: 782px) {
  .flex-service-01 .flex-item {
    flex-basis: calc(calc(100% / 4) - calc(calc(16px / 8) * 6));
  }
}

/* 選べるオプションセクション -------------------*/
/* フルサポート！安心パック */
.page-service-02 .note {
  margin-bottom: 0;
}

.content-service,
.flex-content-customize {
  padding-top: 4.8rem;
}

.flex-content-plan .flex-item {
  border-radius: 16px;
}

.flex-content-plan h4 {
  padding: 2.4rem 1.6rem;
  border-radius: 16px 16px 0 0;
}

.flex-content-plan .text-group {
  padding: 3.2rem 2.4rem 2.4rem;
}

.flex-content-plan h5 {
  line-height: 1.2;
}

.flex-content-plan h5 span {
  padding: 0 0.4rem;
  display: inline-block;
}

.flex-content-plan p.zei {
  margin-bottom: 1.6rem;
  padding-bottom: 1.6rem;
  border-bottom: solid 1px #E6E6E6;
}

@media screen and (min-width: 640px) {

  .content-service,
  .flex-content-customize {
    padding-top: 6.4rem;
  }
}

@media screen and (min-width: 782px) {

  .content-service,
  .flex-content-customize {
    padding-top: 8.0rem;
  }
}

/* フルメンテナンス〈7年間〉 */
.flex-content-maintenance {
  gap: 0;
}

.flex-content-maintenance table th,
.flex-content-maintenance table td {
  display: table-cell;
}

.flex-content-maintenance table th {
  width: 65%;
}

.flex-content-maintenance table td {
  width: 35%;
}

.flex-content-maintenance table tr:last-child th,
.flex-content-maintenance table tr:last-child td {
  border-bottom: solid 1px #EEEEEE;
}

.flex-content-maintenance .flex-item:first-child table tr:last-child th,
.flex-content-maintenance .flex-item:first-child table tr:last-child td {
  border-bottom: none;
}

@media screen and (min-width: 640px) {
  .flex-content-maintenance .flex-item {
    flex-basis: calc(100% / 2);
  }

  .flex-content-maintenance .flex-item:first-child table tr:last-child th,
  .flex-content-maintenance .flex-item:first-child table tr:last-child td {
    border-bottom: solid 1px #EEEEEE;
  }

  .flex-content-maintenance .flex-item:last-child table th,
  .flex-content-maintenance .flex-item:last-child table td {
    border-left: none;
  }
}

/* 単品オプションでカスタマイズセクション -------------------*/
.flex-content-customize {
  gap: 4.8rem;
}

.flex-content-customize figure {
  margin: 0 auto 2.4rem;
  width: 240px;
}

.flex-content-customize figure img {
  width: 100%;
}

@media screen and (min-width: 782px) {
  .flex-content-customize {
    gap: 3.2rem;
  }
}

@media screen and (min-width: 980px) {
  .flex-content-customize {
    gap: 4.0rem;
  }
}


/* 固定 お取扱い車種ページ
------------------------------------------------------------ */
/* メッセージセクション -------------------*/
.page-carmodel {
  padding-top: 2.4rem;
}

.page-carmodel-message {
  padding-top: 4.8rem;
}

@media screen and (min-width: 640px) {
  .page-carmodel-message {
    padding-top: 6.4rem;
  }
}

@media screen and (min-width: 782px) {
  .page-carmodel-message {
    padding-top: 8.0rem;
  }
}

/* 車一覧セクション -------------------*/
.flex-carmodel {
  justify-content: flex-start;
}

.flex-carmodel .flex-item {
  flex-basis: calc(calc(100% / 2) - calc(calc(24px / 4) * 2));
}

.flex-carmodel figcaption,
.flex-carmodel p {
  line-height: 1.4;
}

@media screen and (min-width: 782px) {
  .flex-carmodel .flex-item {
    flex-basis: calc(calc(100% / 3) - calc(calc(32px / 6) * 4));
  }
}

@media screen and (min-width: 980px) {
  .flex-carmodel .flex-item {
    flex-basis: calc(calc(100% / 4) - calc(calc(40px / 8) * 6));
  }
}

/* 固定 よくあるご質問ページ
------------------------------------------------------------ */
.page-faq {
  padding-top: 4.0rem;
}

.page-faq-01 {
  padding-top: 4.8rem;
}

@media screen and (min-width: 640px) {
  .page-faq-01 {
    padding-top: 6.4rem;
  }
}

@media screen and (min-width: 782px) {
  .page-faq-01 {
    padding-top: 8.0rem;
  }
}

.details {
  margin-bottom: 1.6rem;
  border: 1px solid #E6E6E6;
  border-radius: 8px;
}

.faq-group .details:last-of-type {
  margin-bottom: 0;
}

/* details-summary */
.details-summary {
  padding: 1.6rem;
  padding-right: 4.8rem;
  display: block;
  position: relative;
  cursor: pointer;
  line-height: 1.5;
  border-radius: 8px;
}

.details-summary::-webkit-details-marker {
  /* Safari-デフォルトの三角形を削除*/
  display: none;
}

.details[open] summary {
  border-radius: 8px 8px 0 0;
}

.details-summary:hover {
  cursor: pointer;
}

/* details-icon */
.details-icon {
  position: absolute;
  top: 50%;
  right: 16px;
  -ms-transform: translate(0%, -50%);
  -webkit-transform: translate(0%, -50%);
  transform: translate(0%, -50%);
  width: 16px;
  height: 16px;
}

.details-icon::before,
.details-icon::after {
  position: absolute;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  font-family: "Material Symbols Outlined";
}

.details-icon::before {
  content: "\e145";
}

.details-icon::after {
  content: "\e15b";
}

.details-summary.is-active .details-icon:before {
  content: none;
}

/* details-content */
.details-content {
  overflow: hidden;
}

.details-content-inner {
  padding: 1.6rem;
  border-top: 1px solid #E6E6E6;
}


/* 固定 店舗紹介ページ
------------------------------------------------------------ */
.flex-storeimg figure img {
  border-radius: 8px;
  box-shadow: rgba(0, 0, 0, 0.2) 0px 3px 6px;
}


/* 固定 お問合せページ
------------------------------------------------------------ */
.wpcf7 .required,
.wpcf7 .optional {
  margin: 0 0.4rem 0.4rem 0;
  line-height: 1;
}

.form-p label {
  font-weight: 700;
}

.wpcf7 .form-p br {
  display: none;
}


/* 固定 プライバシーポリシー、免責事項ページ
------------------------------------------------------------ */
.page-section-policy .section-container h3,
.page-section-disclaimer .section-container h3 {
  margin-top: 5.6rem;
  margin-bottom: 0.4rem;
}

.page-section-policy .section-container p,
.page-section-policy .section-container ul,
.page-section-disclaimer .section-container p,
.page-section-disclaimer .section-container ul {
  margin-bottom: 1.6rem;
}

.page-section-policy .section-container p.margin-bottom0,
.page-section-disclaimer .section-container p.margin-bottom0 {
  margin-bottom: 0;
}


/* 固定 サイトマップページ
------------------------------------------------------------ */
.flex-sitemap {
  gap: 4.0rem;
}

.flex-sitemap .flex-item {
  flex-basis: 100%;
  border-bottom: solid 1px #EEEEEE;
}

.flex-sitemap .text-group {
  padding: 0 1.2rem 4.0rem;
}

.flex-sitemap ul {
  margin: 0;
  list-style-type: none;
  display: flex;
  flex-wrap: wrap;
  gap: 1.6rem 2.4rem;
}


/* 404ページ
------------------------------------------------------------ */
.error-404 p {
  text-align: left;
  line-height: 2;
}


/* 投稿ページ
------------------------------------------------------------ */
@media screen and (min-width: 540px) {
  .single .post-thumbnail {
    margin-left: auto;
    margin-right: auto;
  }
}

#comments {
  display: none;
}


/* Footer
------------------------------------------------------------ */
/* widget */
.widget-title {
  font-weight: 400;
  border-bottom: solid 1px #999999;
}

/* footer-widget-1 */


/* footer-widget-2 */


/* footer-widget-3 */


/* site-bottom */
.site-bottom {
  padding-top: 2.0rem;
  padding-bottom: 2.0rem;
}

.footer-menu {
  overflow: hidden;
}

.footer-navigation ul {
  margin-bottom: 1.6rem;
}

.site-bottom .current-menu-item>a {
  text-decoration: underline;
}

.site-info {
  line-height: 1.4;
}

@media screen and (min-width: 782px) {

  .header-social-link,
  .footer-navigation,
  .site-info {
    float: none;
    clear: both;
  }

  .site-info {
    text-align: center;
  }
}

/* back-to-top */
.back-to-top {
  right: 0;
  bottom: 0;
  border-radius: 0;
}

/* 全ページ共通 お問合せセクション
------------------------------------------------------------ */
.section-contact {
  padding-top: 4.0rem;
  padding-bottom: 4.0rem;
}

.flex-contact {
  gap: 5.6rem;
}

.flex-contact .flex-item {
  flex-basis: 100%;
}

.flex-contact .flex-item:nth-of-type(1)::after {
  position: absolute;
  content: '';
  display: inline-block;
  bottom: -28px;
  left: 50%;
  transform: translate(-50%, 0%);
  width: calc(100% - 40px);
  height: 1px;
}

.flex-contact .google-icon {
  margin-bottom: 0.8rem;
  height: 64px;
}

.flex-contact .google-icon::after {
  position: absolute;
  margin: 0;
  padding: 0;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: inline-block;
  font-family: "Material Symbols Outlined";
  content: "\e0b0";
  width: 64px;
  height: 64px;
  line-height: 64px;
  text-align: center;
  border-radius: 50%;
  font-weight: 200;
}

.flex-contact .flex-item-btn .google-icon::after {
  content: "\e158";
}

.flex-contact h3 {
  margin-bottom: 3.2rem;
}

.flex-contact .tel-group a {
  margin: 0 auto 0.4rem;
  text-decoration: none;
  line-height: 1;
}

.flex-contact a.btn {
  margin: 0 auto 0.4rem;
}

.flex-contact p {
  line-height: 1.4;
}

@media screen and (min-width: 782px) {
  .flex-contact {
    gap: 0 3.2rem;
  }

  .flex-contact .flex-item {
    flex-basis: calc(calc(100% / 2) - calc(calc(32px / 4) * 2));
  }

  .flex-contact .flex-item:nth-of-type(1) {
    padding-bottom: 0;
  }

  .flex-contact .flex-item:nth-of-type(1)::after {
    bottom: auto;
    top: 50%;
    left: auto;
    right: -16px;
    transform: translate(0%, -50%);
    width: 1px;
    height: 100%;
  }

  .flex-contact .btn-group {
    max-width: 280px;
  }
}

@media screen and (min-width: 980px) {
  .section-contact {
    padding-top: 4.8rem;
    padding-bottom: 4.8rem;
  }

  .flex-contact .btn-group {
    max-width: 360px;
  }
}

@media screen and (min-width: 1120px) {
  .flex-contact {
    gap: 0 4.8rem;
  }

  .flex-contact .flex-item {
    flex-basis: calc(calc(100% / 2) - calc(calc(48px / 4) * 2));
  }

  .flex-contact .flex-item:nth-of-type(1)::after {
    right: -24px;
  }
}
