@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/

.jost-headline_2 {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
}
.m-plus-rounded-1c-bold {
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-weight: 700;
  font-style: normal;
}

/* =========================
  h2セクション見出し
========================= */

.wp-block-heading.is-style-section_ttl {
  position: relative;
  text-align: center;

  /* SWELL標準装飾を完全リセット */
  padding: 0;
  margin: 80px 0 1em;
  border: none;
  background: none;

  /* デフォルトカラー（上書き可） */
  --en-color: #e6e1d8;
  --jp-color: #4a2a2a;
  --line-left: #4a2a2a;
  --line-right: #f6a300;
}

/* 英字（背景的役割） */
.wp-block-heading.is-style-section_ttl .en {
  display: block;
  font-size: clamp(48px, 6vw, 64px);
  font-weight: 700;
  letter-spacing: 0.15em;
  line-height: 1;
  letter-spacing: 0px;

  color: var(--en-color);
  opacity: 0.8;

  pointer-events: none;
  user-select: none;
}

/* 日本語（中央に重ねる） */
.wp-block-heading.is-style-section_ttl .jp {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -10%);
  font-size: 20px;
  font-weight: 600;
  line-height: 1.2;
  white-space: nowrap;

  color: var(--jp-color);
}

/* 下の2色ライン */
.wp-block-heading.is-style-section_ttl::after {
  content: "";
  display: block;
  width: 120px;
  height: 4px;
  margin: 22px auto 0;

  background: linear-gradient(
    to right,
    var(--line-left) 0%,
    var(--line-left) 50%,
    var(--line-right) 50%,
    var(--line-right) 100%
  );
}

/* 色変更 */
.color-blog {
  --line-left: #1f3a5f;
  --line-right: #5aa9e6;
}

/* PC表示（601px以上）では.br-pcを表示し、.sp-brを非表示 */
@media (min-width: 601px) {
  .br-pc {
    display: block; /* または inline */
  }
  .sp-br {
    display: none;
  }
}

/* SP表示（600px以下）では.br-pcを非表示にし、.sp-brを表示 */
@media (max-width: 600px) {
  .br-pc {
    display: none;
  }
  .sp-br {
    display: block; /* または inline */
  }
}

/* PCでの表示 */
@media screen and (min-width: 600px) {
    .rps-align-lc {
        text-align: left !important;
    }
	.rps-align-rc {
        text-align: right !important;
    }
}

/* SP（スマホ）での表示（例：左揃え） */
@media screen and (max-width: 600px) {
    .rps-align-lc {
        text-align: center !important;
    }
	.rps-align-rc {
        text-align: center !important;
    }
}

.point-col-0 {
    background-color: #ffffff;
    border-radius: 1em;
	padding: 0.6em!important;
}
/* お問い合わせバナー群 */
.right {
    text-align: right;
}
@media screen and (max-width: 600px) {
    .right {
        text-align: center !important;
}
}

.fontS_14 {
    font-size: 0.9em;
    line-height: 1.5;
}