@charset "UTF-8";

/*
 Theme Name: BusinessPress Child
 Template: businesspress
*/
@media screen and (min-width: 540px) {}

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

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

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

/* 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: normal;
  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;
  border-bottom: solid 1px rgba(238, 238, 238, 1);
  /* #EEEEEE */
}

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

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

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

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


/* 固定ページ
------------------------------------------------------------ */
.section {
  padding: 40px 0 80px;
}

.section-large {
  padding: 8.0rem 0;
}
.page-id-170 .section-large {
  padding: 0 0 80px;
}
@media screen and (min-width: 640px) {
  .section {
    padding: 40px 0 80px;
  }

  .section-large {
    padding: 9.6rem 0;
  }
  .page-id-170 .section-large {
  padding: 0 0 80px;
}
}

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

  .section-large {
    padding: 11.2rem 0;
  }
  .page-id-170 .section-large {
  padding: 0 0 80px;
}
}

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

/* section-title01 */
.section-title01 {
  display: inline-block;
  width: 128px;
  height: 128px;
  border: solid 1px rgba(230, 230, 230, 1);
  /* E6E6E6 */
}

.section-title01::before {
  position: absolute;
  content: '';
  display: inline-block;
  top: 0;
  left: 50%;
  -ms-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 1px;
  height: 24px;
}
.section-title01::before {
  background-color: rgba(230, 230, 230, 1);
}
.section-title01 .section-title-textgroup {
  margin: 0;
  padding: 0;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
}

.section-title01 .section-titlesub {
  letter-spacing: 2px;
  text-indent: 2px;
  font-weight: 400;
}

.section-title01 h2 {
  letter-spacing: 2px;
  text-indent: 2px;
}

@media screen and (min-width: 640px) {
  .section-title01 {
    width: calc(128px + 24px);
    height: calc(128px + 24px);
  }

  .section-title01::before {
    height: calc(24px + 8px);
  }
}

@media screen and (min-width: 980px) {
  .section-title01 {
    width: calc(128px + 48px);
    height: calc(128px + 48px);
  }

  .section-title01::before {
    height: calc(24px + 16px);
  }
}

/* section-title02 */
.section-title02 .section-titlesub {
  font-weight: 400;
  letter-spacing: 2px;
  text-indent: 2px;
}

.section-title02 h2 {
  padding-bottom: 2.0rem;
  font-weight: 400;
  letter-spacing: 2px;
  text-indent: 2px;
  display: inline-block;
}

.section-title02 h2::after {
  position: absolute;
  content: '';
  left: 50%;
  bottom: 0%;
  -ms-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  display: inline-block;
  width: calc(100% - 4px);
  height: 1px;
}

@media screen and (min-width: 980px) {
  .section-title02 .section-titlesub {
    text-indent: 0px;
  }

  .section-title02 h2 {
    text-indent: 0px;
  }

  .section-title02 h2::after {
    left: 2px;
    -ms-transform: translateX(-2px);
    -webkit-transform: translateX(-2px);
    transform: translateX(-2px);
    width: calc(100% - 2px);
  }
}

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

.section-title03 h2 {
  letter-spacing: 2px;
  text-indent: 2px;
}

/* section-title03 */
.section-title04 {
  margin-bottom: 0;
}

.section-title04 div {
  letter-spacing: 2px;
  text-indent: 2px;
  font-weight: 400;
}

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

.slider-home .aspect-bgimage {
  padding-top: 66.66%;
  /* 3:2 */
}

.swiper-slide-prev::before,
.swiper-slide-next::before {
  margin: 0;
  padding: 0;
  position: absolute;
  content: '';
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  z-index: 3;
}

.slider-home .swiper-text {
  margin: 0;
  padding: 0;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
  text-align: center;
  z-index: 4;
}

.slider-home .swiper-text h2 {
  margin-bottom: 0;
  padding: 0 2.0rem;
  letter-spacing: 4px;
  text-indent: 4px;
  line-height: 2;
}

.swiper-slide-prev .swiper-text,
.swiper-slide-next .swiper-text {
  display: none;
}

/* 前ページボタン・次ページボタン */
.swiper-button-next,
.swiper-button-prev {
  top: auto;
  bottom: 0%;
  border: solid 1px rgba(0, 75, 177, 1);
  /* #004BB1 */
  border-radius: 0;
}

.swiper-button-prev {
  left: 0%;
}

.swiper-button-next {
  right: 0%;
}

@media screen and (min-width: 640px) {
  .slider-home .swiper-text h2 span {
    display: block;
  }
}

@media screen and (min-width: 782px) {
  .slider-home .swiper-text h2 {
    padding: 0 4.0rem;
  }

  .swiper-button-next,
  .swiper-button-prev {
    top: 50%;
    bottom: auto;
    width: 40px;
    height: 40px;
    line-height: 40px;
  }
}

@media screen and (min-width: 980px) {
  .slider-home .aspect-bgimage {
    padding-top: 62.5%;
    /* 8:5(黄金比) */
  }
}


/* TOP  コロナセクション
------------------------------------------------------------ */
.top-section-covid19 {
  padding: 2.4rem 0;
}

/* TOP  お知らせセクション
------------------------------------------------------------ */
@media screen and (min-width: 782px) {
  .flex-topnews .flex-item {
    -webkit-flex-basis: calc(128px + 24px);
    flex-basis: calc(128px + 24px);
  }

  .flex-topnews .flex-item:nth-child(2) {
    -webkit-flex-grow: 1;
    flex-grow: 1;
  }

  .top-section-news .section-title01 {
    margin-bottom: 0;
  }

  .flex-topnews .btn-group {
    text-align: right;
  }
}

@media screen and (min-width: 980px) {
  .flex-topnews .flex-item {
    -webkit-flex-basis: calc(128px + 48px);
    flex-basis: calc(128px + 48px);
  }
}


/* 投稿一覧 */
.top-section-news ul {
  margin: 0 auto;
  list-style: none;
}

.top-section-news ul li {
  margin-bottom: 1.6rem;
  padding-bottom: 1.2rem;
  border-bottom: solid 1px rgba(238, 238, 238, 1);
  /* #EEEEEE */
}

.top-section-news ul li:last-of-type {
  margin-bottom: 0;
}

.top-section-news ul .cat-links {
  margin: 0 0 0.4rem 0.4rem;
  display: inline-block;
}

.top-section-news ul .cat-links a {
  padding: 0 0.4rem;
  display: inline-block;
  min-width: calc(72px - 10px);
  /* 左右のpadding + 左右のborder */
  text-align: center;
  border: solid 1px rgba(238, 238, 238, 1);
  /* #EEEEEE */
}

@media screen and (min-width: 640px) {
  .top-section-news ul .cat-links {
    margin: 0 0.4rem 0 0.4rem;
  }

  .top-section-news ul .entry-title {
    display: inline-block;
  }
}


/* TOP  会社案内セクション
------------------------------------------------------------ */
.top-section-about {
  padding-top: 0;
}

/* 背景画像とセクションタイトル */
.top-section-about .bg-image {
  margin-bottom: 5.6rem;
}

.bg-image .aspect-bgimage {
  padding-top: 56.25%;
  /* 16:9 */
}

.top-section-about .bg-image .bg-image-title {
  height: calc(128px / 2);
  z-index: 4;
}

.top-section-about .bg-image .section-title01 {
  top: calc(-128px / 2);
  left: 50%;
  -ms-transform: translate(-50%, 0%);
  -webkit-transform: translate(-50%, 0%);
  transform: translate(-50%, 0%);
}

@media screen and (min-width: 640px) {
  .bg-image .aspect-bgimage {
    padding-top: 33.33%;
    /* 9:3(青銅比) */
  }

  .top-section-about .bg-image .bg-image-title {
    height: calc(calc(128px + 24px) / 2);
  }

  .top-section-about .bg-image .section-title01 {
    top: calc(calc(-128px + -24px) / 2);
  }
}

@media screen and (min-width: 782px) {
  .top-section-about .bg-image .bg-image-title {
    height: calc(calc(128px + 48px) / 2);
  }

  .top-section-about .bg-image .section-title01 {
    top: calc(calc(-128px + -48px) / 2);
    left: 0%;
    -ms-transform: translate(0%, 0%);
    -webkit-transform: translate(0%, 0%);
    transform: translate(0%, 0%);
  }
}

/* メインコンテンツ */
@media screen and (min-width: 782px) {
  .flex-topabout .flex-item {
    -webkit-flex-basis: 35%;
    flex-basis: 35%;
  }

  .flex-topabout .flex-item:nth-child(1) {
    padding-top: 5%;
    -webkit-order: 2;
    order: 2;
  }

  .flex-topabout .flex-item:nth-child(2) {
    -webkit-flex-grow: 1;
    flex-grow: 1;
    -webkit-order: 1;
    order: 1;
  }

  .flex-topabout .aspect-bgimage {
    padding-top: 100%;
    /* 1:1 */
  }

  .flex-topabout .btn-group {
    text-align: left;
  }
}

/* TOP  事業内容セクション
------------------------------------------------------------ */
.top-section-service .midashi-normal {
  margin-bottom: 3.2rem;
}

.top-section-service .midashi-normal h3 {
  font-weight: normal;
}
.flex-topservice {
  -webkit-justify-content: flex-start;
    justify-content: flex-start;
}
/* 各種サービスページへのリンク */
.flex-topservice a,
.flex-topservice .aspect-group,
.flex-topservice .aspect-bgimage,
.flex-topservice .overlay {
  border-radius: 0 0 24px 0;
}

.flex-topservice a {
  display: block;
  text-decoration: none;
}

.flex-topservice .aspect-bgimage {
  padding-top: 56.25%;
  /* 16:9 */
}

.flex-topservice .overlay::after {
  display: inline-block;
  position: absolute;
  content: '\02192';
  top: 50%;
  right: 3%;
  -ms-transform: translate(-3%, -50%);
  -webkit-transform: translate(-3%, -50%);
  transform: translate(-3%, -50%);
  width: calc(32px - 2px);
  height: calc(32px - 2px);
  line-height: calc(32px - 2px);
  text-align: center;
  font-weight: 100;
  z-index: 4;
  border: solid 1px rgba(255, 255, 255, 1);
  /* #FFFFFF */
}

.flex-topservice .text-group {
  margin: 0;
  padding: 0;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
  z-index: 3;
}

.flex-topservice .text-group h4 {
  margin-bottom: 1.6rem;
  padding: 0 5%;
  letter-spacing: 1px;
  text-indent: 2px;
}

.flex-topservice .text-group p {
  padding: 0 5%;
  letter-spacing: 1px;
  text-indent: 2px;
}

@media screen and (min-width: 540px) {
  .flex-topservice .flex-item {
    -webkit-flex-basis: 100%;
    flex-basis: 100%;
  }

  .flex-topservice .aspect-bgimage {
    padding-top: 33.33%;
    /* 9:3(青銅比) */
  }
}

@media screen and (min-width: 640px) {
  .flex-topservice .flex-item {
    -webkit-flex-basis: calc(calc(100% / 2) - calc(calc(24px / 4) * 2));
    flex-basis: calc(calc(100% / 2) - calc(calc(24px / 4) * 2));
  }

  .flex-topservice .aspect-bgimage {
    padding-top: 62.5%;
    /* 8:5(黄金比) */
  }

  .flex-topservice .overlay::after {
    top: auto;
    bottom: 8%;
    right: 6%;
    -ms-transform: translate(-6%, -8%);
    -webkit-transform: translate(-6%, -8%);
    transform: translate(-6%, -8%);
  }
}

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

  .flex-topservice .overlay::after {
    width: calc(40px - 2px);
    height: calc(40px - 2px);
    line-height: calc(40px - 2px);
  }
}

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

  .flex-topservice .aspect-bgimage {
    padding-top: 100%;
    /* 2:3 */
  }

  .flex-topservice .overlay::after {
    top: auto;
    bottom: 6%;
    right: 6%;
    -ms-transform: translate(-6%, -6%);
    -webkit-transform: translate(-6%, -6%);
    transform: translate(-6%, -6%);
  }

  .flex-topservice .text-group {
    top: 12%;
    left: 50%;
    -ms-transform: translate(-50%, -12%);
    -webkit-transform: translate(-50%, -12%);
    transform: translate(-50%, -12%);
  }
}


/* 固定 会社案内ページ
------------------------------------------------------------ */
/* 背景画像とテキスト */
.page-section .bg-image .section-title04 {
  top: 10%;
  right: 4%;
  width: 100%;
  z-index: 4;
}

/* Philosophyセクション */
.page-section-about01 .midashi-large {
  margin-bottom: 3.2rem;
}

.page-section-about01 .bg-image .aspect-bgimage {
  background-position: 50% 30%;
}

.page-section-about01 .bg-image {
  margin-top: 4.8rem;
}

/* Messageセクション */
.flex-message {
  -webkit-align-items: flex-end;
  align-items: flex-end;
}

.flex-message .aspect-group {
  margin: 0 auto;
  max-width: 240px;
}

.flex-message .aspect-bgimage {
  padding-top: 100%;
  /* 1:1 */
}

@media screen and (min-width: 540px) {
  .flex-message .aspect-group {
    max-width: calc(240px + calc(8px * 4));
  }
}

@media screen and (min-width: 640px) {
  .flex-message .aspect-group {
    max-width: calc(240px + calc(8px * 6));
  }
}

@media screen and (min-width: 782px) {
  .flex-message .flex-item {
    -webkit-flex-basis: 35%;
    flex-basis: 35%;
  }

  .flex-message .flex-item:nth-child(2) {
    -webkit-flex-grow: 1;
    flex-grow: 1;
  }

  .flex-message .aspect-group {
    max-width: 100%;
  }

  .flex-message .aspect-bgimage {
    padding-top: 150%;
    /* 1:1 */
  }
}


/* Profileセクション */
.page-section-about03 .bg-image {
  margin-bottom: 4.8rem;
}

.page-section-about03 table th {
  padding: 1.2rem 0.4rem 0.2rem;
  border: none;
}

.page-section-about03 table tr:first-child th {
  padding-top: 0;
}

.page-section-about03 table td {
  padding: 0 0.4rem 1.2rem;
  border: none;
  border-bottom: solid 1px rgba(238, 238, 238, 1);
  /* #EEEEEE */
}

.page-section-about03 table tr:last-child td {
  padding-bottom: 0;
  border: none;
}

.page-section-about03 table a.g-map {
  margin-top: 0.4rem;
  padding: 0.4rem 1.2rem;
  display: inline-block;
  text-decoration: none;
  line-height: 1;
}

.page-section-about03 table a.g-map::after {
  margin-left: 0.8rem;
  font-family: FontAwesome;
  content: '\f178';
}

.page-section-about03 table ul {
  margin: 0;
  list-style: none;
}

@media screen and (min-width: 640px) {
  .page-section-about03 table th {
    padding: 2.0rem 0.8rem;
    border-bottom: solid 1px rgba(238, 238, 238, 1);
    /* #EEEEEE */
    vertical-align: top;
  }

  .page-section-about03 table tr:first-child th {
    padding-top: 2.0rem;
  }

  .page-section-about03 table tr:last-child th {
    border: none;
  }

  .page-section-about03 table td {
    padding: 2.0rem 0.8rem;
  }

  .page-section-about03 table tr:last-child td {
    padding-bottom: 2.0rem;
  }
}


/* 固定 事業内容ページ
------------------------------------------------------------ */
.page-section-service .midashi-normal {
  margin-bottom: 3.2rem;
}

.page-section-service .midashi-normal h3 {
  font-weight: normal;
}


/* 固定 事業内容(個別)ページ
------------------------------------------------------------ */
/* イントロセクション */
.section-servicechild-intro .midashi-large {
  margin-bottom: 3.2rem;
}

.section-servicechild-intro .bg-image {
  margin-top: 4.8rem;
}

/* ポイントセクション */
.section-servicechild-point .section-container {
  counter-reset: number 0;
}

.flex-point {
  margin-bottom: 4.8rem;
  -webkit-align-items: center;
  align-items: center;
}

.section-servicechild-point .section-container .flex-point:last-child {
  margin-bottom: 0;
}

.flex-point .flex-item:nth-child(1) .aspect-group {
  position: relative;
}

.flex-point .flex-item:nth-child(1) .aspect-group::before {
  position: absolute;
  display: inline-block;
  counter-increment: number 1;
  content: "0" counter(number);
  top: 50%;
  left: -20px;
  -ms-transform: translate(0%, -50%);
  -webkit-transform: translate(0%, -50%);
  transform: translate(0%, -50%);
  width: 40px;
  height: 40px;
  line-height: 40px;
  letter-spacing: 2px;
  text-indent: 2px;
  font-weight: bold;
  text-align: center;
}

.flex-point .aspect-bgimage {
  padding-top: 56.25%;
  /* 16:9 */
}

@media screen and (min-width: 640px) {
  .flex-point .flex-item:nth-child(1) .aspect-group::before {
    top: 50%;
    left: -24px;
    -ms-transform: translate(0%, -50%);
    -webkit-transform: translate(0%, -50%);
    transform: translate(0%, -50%);
    width: 48px;
    height: 48px;
    line-height: 48px;
  }

  .flex-point .aspect-bgimage {
    padding-top: 50%;
    /* 2:1 */
    background-position: 50% 20%;
  }
}

@media screen and (min-width: 782px) {
  .flex-point {
    margin-bottom: 6.4rem;
  }

  .flex-point .flex-item {
    -webkit-flex-basis: 40%;
    flex-basis: 40%;
  }

  .flex-point .flex-item:nth-child(2) {
    -webkit-flex-grow: 1;
    flex-grow: 1;
  }

  .flex-point .aspect-bgimage {
    padding-top: 100%;
    /* 1:1 */
  }
}

@media screen and (min-width: 980px) {
  .section-servicechild-point .section-container .flex-point:nth-child(2) .flex-item:nth-child(1) {
    -webkit-order: 2;
    order: 2;
  }

  .section-servicechild-point .section-container .flex-point:nth-child(2) .flex-item:nth-child(2) {
    -webkit-order: 1;
    order: 1;
  }

  .flex-point .flex-item:nth-child(1) .aspect-group::before {
    top: 50%;
    left: -28px;
    -ms-transform: translate(0%, -50%);
    -webkit-transform: translate(0%, -50%);
    transform: translate(0%, -50%);
    width: 56px;
    height: 56px;
    line-height: 56px;
  }

  .section-servicechild-point .section-container .flex-point:nth-child(2) .flex-item:nth-child(1) .aspect-group::before {
    top: 50%;
    left: auto;
    right: -28px;
    -ms-transform: translate(0%, -50%);
    -webkit-transform: translate(0%, -50%);
    transform: translate(0%, -50%);
  }
}



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

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

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

/* ココナラデモ用 */
.page-section-contact .text-group {
  margin: 0;
  padding: 0;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
  z-index: 3;
}

.page-section-contact .text-group p {
  font-size: 250%;
  font-weight: 100;
  line-height: 2;
}


/* 固定 プライバシーポリシー、免責事項ページ
------------------------------------------------------------ */
.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: 1.6rem;
}

.flex-sitemap .flex-item a {
  padding: 1.2rem;
  display: block;
  position: relative;
  text-decoration: none;
  border: solid 1px rgba(221, 221, 221, 1);
  /* #DDDDDD */
}

.flex-sitemap .flex-item a::after {
  position: absolute;
  margin: 0;
  padding: 0;
  top: 50%;
  right: 12px;
  -ms-transform: translate(-12px, -50%);
  -webkit-transform: translate(-12px, -50%);
  transform: translate(-12px, -50%);
  font-family: FontAwesome;
  content: '\f178';
}

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

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


/* 固定 新型コロナウイルス感染症に関する対応についてページ
------------------------------------------------------------ */
.page-section-covid19 h3 {
  margin-bottom: 0.8rem;
}

.page-section-covid19 h3.customer {
  margin-top: 4.0rem;
}

.flex-covid19 {
  margin-bottom: 4.0rem;
  gap: 1.6rem;
}

.flex-covid19 .inner-covid19 {
  padding: 1.6rem 0.8rem 0.8rem;
  border: solid 1px rgba(221, 221, 221, 1);
  /* #DDDDDD */
}

.flex-covid19 figure {
  margin: 0 auto 0.8rem;
  max-width: 64px;
}

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

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

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

#comments {
  display: none;
}


/* アーカイブページ
------------------------------------------------------------ */


/* Footer
------------------------------------------------------------ */
/* widget */
.footer-widget-1 .custom-html-widget a {
  text-decoration: none;
}


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

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


/* 全ページ共通のお問合せセクション
------------------------------------------------------------ */
/* お問合せセクション */
.flex-contact {
  -webkit-align-items: flex-end;
  align-items: flex-end;
  gap: 5.6rem;
}

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

p.contact-message br {
  display: none;
}

.flex-contact .tel-group a {
  text-decoration: none;
  letter-spacing: 4px;
  line-height: 1;
}

.flex-contact a.btn {
  border-color: rgba(255, 255, 255, 1);
  /* #FFFFFF */
}

.flex-contact .flex-item:last-of-type p {
  margin-top: 0.4rem;
  line-height: 1.5;
}

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

  .flex-contact .flex-item {
    -webkit-flex-basis: 35%;
    flex-basis: 35%;
  }

  .flex-contact .flex-item:first-of-type {
    -webkit-flex-grow: 1;
    flex-grow: 1;
  }

  .flex-contact .align-center {
    text-align: left;
  }

  p.contact-message br {
    display: block;
  }
}

/* SNSセクション */
.section-sns ul {
  margin: 0 auto;
  list-style: none;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: center;
  justify-content: center;
  gap: 20px;
}


/* ツール説明のための投稿フォーマット
------------------------------------------------------------ */
.section-instructions {
  margin-bottom: 70px;
}
/* セクション内でカウンターの初期化（1回だけ） */
body {
  counter-reset: section-number;
}

/* 各 h2 見出しに番号付きラベルを追加 */
.section-instructions h2 {
  display: flex;
  align-items: center;
  font-size: 22px;
  font-weight: bold;
  margin-bottom: 1em;
  border-bottom: 1px solid #e0e0e0;
  padding-bottom: 0.5em;
  margin-top: 24px;
}

.section-instructions h2::before {
  counter-increment: section-number;
  content: counter(section-number);
  display: inline-block;
  background-color: #333; /* 番号ラベル背景色 */
  color: #fff;
  font-weight: bold;
  font-size: 20px;
  width: 32px;
  height: 32px;
  text-align: center;
  line-height: 32px;
  margin-right: 8px;
}


.section-instructions h3 {
  border-left: solid 4px #333;
  padding: 8px 10px;
}
.section-instructions span.font-strong {
  color: #ea0029;
  font-weight: bold;
}
/***ステップバーデザイン１***/
.step-wrap1 {
 counter-reset:count;
 margin: 2em 0;
 position: relative;
}
.step-content1 {
 padding: 0 0 1.3em 2em;
 margin: 0;
 position: relative;
}
.step-content1::before {
 content: "";
 display: block;
 width: 13px;
 height: 13px;
 background: #6ab5a5;
 border: solid 3px #ffffff;
 border-radius: 50%;
 position: absolute;
 top: 3px;
 left: 3px;
 box-shadow: 0 0 0 2px #6ab5a5;
}
.step-content1::after {
 content: "";
 display: block;
 height: calc(100% - 35px);
 border-left: dotted 5px #768888;
 position: absolute;
 top: 30px;
 left: 10px;
}
.step-title1 {
 font-weight: bold;
 font-size: 120%;
}
.step-label1 {
 color: #768888;
 font-weight: bold;
}
.step-label1::after {
 counter-increment:count;
 content:counter(count);
 position: relative;
 left: .3em;
}
.step-body1 {
 margin-top: .5em;
 padding: 0 0 1em;
 border-bottom: dotted 2px #ddd;
}
.step-wrap1 > :last-of-type::after {
 display: none;
}
/***ステップバーデザイン１***/