@charset "UTF-8";
/* *****************************************************************

Stylesheet: ベーススタイル（全て）に適応

******************************************************************/
@import url("https://fonts.googleapis.com/css2?family=Caveat:wght@400;700&display=swap");
header {
  background-color: #FFF !important;
}

header a span {
  color: #000000;
}

/* ボタン  */
.fv_section {
  position: relative !important;
}

.cta_btn_center {
  position: absolute !important;
  bottom: 0px !important;
}

.btn_wrap {
  width: 400px;
  height: auto;
  position: relative;
  margin: auto;
}

.btn_balloon {
  width: 280px;
  height: 30px;
  padding-left: 0.1em;
  border-radius: 20px;
  border: solid 2px #e96204;
  background-color: #fff;
  font-size: 90%;
  font-family: "Noto Sans Japanese";
  font-weight: 700;
  line-height: 1;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  bottom: 55px;
  left: 50%;
  transform: translate(-50%, 0%);
  pointer-events: none;
  transition: 0.2s;
  color: #e96204;
  z-index: 2;
}

.btn_balloon::before, .btn_balloon::after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  position: absolute;
  left: 50%;
  transform: translate(-50%, 100%);
}

.btn_balloon::before {
  bottom: 1px;
  border-width: 8px 5px 0 5px;
  border-color: #fff transparent transparent transparent;
  z-index: 2;
}

.btn_balloon::after {
  bottom: 0;
  border-width: 11px 8px 0 8px;
  border-color: #e96204 transparent transparent transparent;
  z-index: 1;
}

.button {
  width: 100%;
  padding: 25px 30px;
  border-radius: 50px;
  font-size: 100%;
  font-family: "Noto Sans Japanese";
  font-weight: 700;
  line-height: 1;
  text-align: center;
  text-decoration: none;
  display: flex;
  justify-content: center;
  align-items: center;
  box-sizing: border-box;
  background: #fe6901;
  box-shadow: 0 5px 0 #e96204;
  color: #fff;
  transition: 0.2s;
}

.button:after {
  content: "";
  position: absolute;
  top: 50%;
  bottom: 0;
  right: 2rem;
  font-size: 90%;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: right 0.3s;
  width: 6px;
  height: 6px;
  border-top: solid 2px currentColor;
  border-right: solid 2px currentColor;
  transform: translateY(-50%) rotate(45deg);
}

.button:hover {
  background: #ff8937;
  color: #FFF;
  box-shadow: 0 2px 0 #e96204;
  transform: translateY(3px);
}

.cta_btn_center .c-row {
  justify-content: center !important;
}

.btn_balloon_line {
  width: 280px;
  height: 30px;
  padding-left: 0.1em;
  border-radius: 20px;
  border: solid 2px #32b16c;
  background-color: #fff;
  font-size: 90%;
  font-family: "Noto Sans Japanese";
  font-weight: 700;
  line-height: 1;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  bottom: 55px;
  left: 50%;
  transform: translate(-50%, 0%);
  pointer-events: none;
  transition: 0.2s;
  color: #009b5d;
  z-index: 2;
}

.btn_balloon_line::before, .btn_balloon::after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  position: absolute;
  left: 50%;
  transform: translate(-50%, 100%);
}

.btn_balloon_line::before {
  bottom: 1px;
  border-width: 8px 5px 0 5px;
  border-color: #fff transparent transparent transparent;
  z-index: 2;
}

.btn_balloon_line::after {
  bottom: 0;
  border-width: 11px 8px 0 8px;
  border-color: #32b16c transparent transparent transparent;
  z-index: 1;
}

.button_line {
  width: 100%;
  padding: 25px 30px;
  border-radius: 50px;
  font-size: 100%;
  font-family: "Noto Sans Japanese";
  font-weight: 700;
  line-height: 1;
  text-align: center;
  text-decoration: none;
  display: flex;
  justify-content: center;
  align-items: center;
  box-sizing: border-box;
  background: #06C755;
  box-shadow: 0 5px 0 #2c9d60;
  color: #fff;
  transition: 0.2s;
}

.button_line:after {
  content: "";
  position: absolute;
  top: 50%;
  bottom: 0;
  right: 2rem;
  font-size: 90%;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: right 0.3s;
  width: 6px;
  height: 6px;
  border-top: solid 2px currentColor;
  border-right: solid 2px currentColor;
  transform: translateY(-50%) rotate(45deg);
}

.button_line:hover {
  background: #6bc594;
  color: #FFF;
  box-shadow: 0 2px 0 #2c9d60;
  transform: translateY(3px);
}

.cta_btn_center .c-row {
  justify-content: center !important;
}

/* FVカバー内のコンテンツを一番下・中央に配置 */
.fv_section.wp-block-cover {
  display: flex !important; /* WPのCoverは元々flexですが、念のため指定 */
  align-items: flex-end !important; /* 縦方向：下に寄せる */
  justify-content: center !important; /* 横方向：中央寄せ */
}

/* CTA全体の横幅と下の余白（お好みで調整） */
.fv_section .cta_btn_center {
  margin: 0 auto 40px !important; /* 下から40pxくらい浮かせる */
  /* max-width: 800px;   必要なら横幅を絞ると中央感が強くなります */
}

/* fvカバーの一番下＆中央にCTA全体を配置（前回の続き用） */
.fv_section > .wp-block-cover__inner-container {
  display: flex !important;
  justify-content: center !important; /* 横方向：中央 */
  align-items: flex-end !important; /* 縦方向：下 */
}

.fv_section .cta_btn_center {
  margin-bottom: 35px !important; /* 画面下から少し余白（お好みで調整） */
}

/* 各btn_wrap内のボタンを中央寄せ */
.cta_btn_center .btn_wrap {
  display: flex !important;
  justify-content: center !important; /* ボタンを中央寄せ */
}

.my-campaign-text .container {
  display: flex;
  align-items: center;
  gap: 12px;
}

.my-campaign-text a {
  width: 30px;
  height: auto;
}

.my-campaign-text a img {
  width: 30px;
  height: auto;
}

.l-1row-header__branding {
  display: none;
}

.msm-header-tagline {
  display: flex;
  align-items: center;
  margin-right: 1rem;
}

.msm-header-handwritten {
  display: inline-block;
  font-family: "Caveat", "yu-mincho-pr6n", "游明朝", "Yu Mincho", "YuMincho", "Noto Serif JP", cursive !important;
  font-size: 2.2rem;
  letter-spacing: 0.05em;
  color: #1d1d1d;
  transform: rotate(-2deg);
  white-space: nowrap;
  position: relative;
  overflow: hidden;
  padding: 0 0.35rem;
  --msm-handwriting-duration: 2.6s;
  --msm-handwriting-delay: .3s;
}

.msm-header-handwritten__link {
  display: inline-block;
  color: inherit;
  text-decoration: none;
  padding: 0.1rem 0;
}

.msm-header-handwritten__text {
  display: inline-block;
  white-space: nowrap;
  clip-path: inset(0 100% 0 0);
  -webkit-clip-path: inset(0 100% 0 0);
  opacity: 0;
  transform-origin: left center;
  animation: msm-handwriting-reveal var(--msm-handwriting-duration) ease var(--msm-handwriting-delay) forwards;
  will-change: clip-path, opacity;
}

@keyframes msm-handwriting-reveal {
  0% {
    clip-path: inset(0 100% 0 0);
    -webkit-clip-path: inset(0 100% 0 0);
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  100% {
    clip-path: inset(0 0 0 0);
    -webkit-clip-path: inset(0 0 0 0);
    opacity: 1;
  }
}
/* タイトルのデザイン*/
.greeting_title_text::before {
  content: "";
  display: inline-block;
  width: 16px;
  height: 1px;
  margin-right: 8px;
  background-color: #f3f3f3;
  transform: translateY(-5px);
}

.greeting_title_text_black::before {
  content: "";
  display: inline-block;
  width: 16px;
  height: 1px;
  margin-right: 8px;
  background-color: #333;
  transform: translateY(-5px);
}

.point_radi_text .sme-bg-color {
  padding: 1px 18px;
  border-radius: 120px;
  background-color: #fe6901 !important;
}

header {
  opacity: 0.9 !important;
}

.flow_col_section {
  padding: 0px !important;
  border-top-left-radius: 8px !important;
  border-bottom-left-radius: 8px;
}

.flow_col_section_left {
  border-top-left-radius: 8px !important;
  border-bottom-left-radius: 8px;
}

.smb-panels__item {
  border-radius: 10px;
}

.smb-panels__item__body {
  padding: 20px 15px;
}

/* フッター */
.l-footer-widget-area {
  background-color: #012b4b;
  text-align: center;
  transition: all 0.8s;
  padding-top: 0PX !important;
}

.l-footer-widget-area a {
  color: #fff;
  transition: all 0.8s;
}

.l-footer-widget-area img {
  text-align: left !important;
}

.c-copyright {
  background-color: #012b4b !important;
}

.l-footer-widget-area p {
  color: #fff;
}

.footer_link {
  margin-top: 13px !important;
}

footer .c-fluid-container {
  padding: 0px !important;
}

.footer_contact_section a:hover {
  color: #000000 !important;
}

.footer_botom_section {
  padding-top: 100px;
  padding-left: 60px;
}

.footer_col_first {
  --_item-width: 40%;
  text-align: start !important;
}

.footer_col_second {
  --_item-width: 17%;
  text-align: start !important;
}

.footer_col_third {
  --_item-width: 26%;
  text-align: start !important;
}

.footer_col_fourth {
  --_item-width: 17%;
  text-align: start !important;
}

.l-footer-widget-area__item {
  margin-bottom: 5px !important;
}

/* フッター */
.l-footer-widget-area {
  background-color: #08315c;
  text-align: center;
  transition: all 0.8s;
  padding-top: 0PX !important;
}

.l-footer-widget-area a {
  color: #fff;
  transition: all 0.8s;
}

.l-footer-widget-area img {
  text-align: left !important;
}

.c-copyright {
  background-color: #08315c !important;
}

.wp-block-page-list {
  padding-left: 0px;
}

.l-footer-widget-area .has-text-align-left {
  margin-top: 0px !important;
  padding-bottom: 20px;
}

.l-footer-widget-area .has-text-align-left span {
  padding-top: 20px !important;
}

.last_section_button {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background-color: #08315c;
  text-align: center;
  padding-top: 0px;
  padding-bottom: 0px !important;
  z-index: 100000 !important;
}

.footer_fidex_right img {
  width: 35px;
  height: auto;
  text-align: center;
}

.footer_fidex_right .smb-items__item__figure {
  margin: 0px !important;
}

.footer_fidex_right .smb-items__item__content {
  margin-top: 1px !important;
  color: #fff;
  margin-bottom: 0px;
}

.footer_fidex_left img {
  width: 35px;
  height: auto;
  text-align: center;
}

.footer_fidex_left .smb-items__item__figure {
  margin: 0px !important;
}

.footer_fidex_left .smb-items__item__content {
  margin-top: 1px !important;
  color: #f3f3f3;
  margin-bottom: 0px;
}

.footer_fidex_left {
  background-color: #06c755;
  color: #f3f3f3;
  padding-top: 2px !important;
}

.l-footer-widget-area p {
  color: #fff;
}

.footer_link {
  margin-top: 8px !important;
}

.c-row__col--lg-1-1 {
  padding: 0px !important;
}

footer .c-fluid-container {
  padding: 0px !important;
}

.footer_contact_section a:hover {
  color: #000000 !important;
}

.l-footer-widget-area__item {
  margin-bottom: 10px !important;
}

.footer_botom_section {
  padding-top: 45px;
}

.l-footer-widget-area__item .c-row > .c-row__col {
  margin-bottom: 10px;
}

.c-entry__header {
  display: none;
}

.padding_top_section {
  padding-top: 0px !important;
}

/* まずはボタン自体の幅と中央寄せ（ここは今のままでOK） */
.footer_contact_section .btn_wrap {
  width: 100%;
  text-align: center;
}

@media (min-width: 768px) {
  .footer_contact_section .btn_wrap > a {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 420px !important; /* ボタンの横幅：お好みで 380〜460px などに調整 */
    max-width: 100%;
  }
  /* ★ここから 2つのボタンを“中央に寄せる”ための指定 ★ */
  /* 行全体を中央寄せ＋ボタン同士の間隔を指定 */
  .footer_contact_section .wp-block-snow-monkey-blocks-items .c-row {
    justify-content: center; /* 2つのカラムを中央に寄せる */
    gap: 40px; /* ボタン同士の隙間（ここを狭く/広く調整） */
  }
  /* 各カラムを「中身の幅だけ」にする（50%幅をやめる） */
  .footer_contact_section .wp-block-snow-monkey-blocks-items .c-row__col {
    flex: 0 0 auto !important;
    width: auto !important;
    max-width: none !important;
  }
}
.smb-list__icon {
  padding-top: 8px;
}

.c-copyright {
  padding-top: 0px;
}

.home .fv_section_sp {
  display: none !important;
}

.smf-form--business .smf-item__col--label {
  flex: 0 0 16em;
  max-width: 16em;
}

@media (max-width: 1023px) {
  /******************************************************************

  Stylesheet: 1023px以下（タブレット）で適用

  ******************************************************************/
  .my-campaign-text .container {
    gap: 8px;
  }
}
@media (max-width: 639px) {
  /******************************************************************

  Stylesheet: 639px以下(スマホ)で適用

  ******************************************************************/
  .page-template-default .c-container {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  .btn_wrap {
    width: 300px;
    height: auto;
    position: relative;
    margin: auto;
  }
  /* 固定ページ設定 */
  /* 好みで体裁 */
  .tickerTxt__txt-defaults {
    font-size: 3rem;
  }
  .page-template-default .l-contents__container {
    padding-left: 25px !important;
    padding-right: 25px !important;
  }
  .page_first_section .c-container {
    max-width: 100% !important;
  }
  .point_margin_top_no {
    margin-top: 5px !important;
  }
  .service_flow_box {
    padding: 7px !important;
  }
  .flow_col_section {
    gap: 3px !important;
  }
  .flow_col_section .wp-block-list {
    margin-top: 5px !important;
  }
  .flow_col_section_left {
    padding: 3px !important;
  }
  .flow_col_section {
    padding: 5px !important;
  }
  /* 列の中身を縦横中央寄せ */
  .flow_col_section_left {
    display: flex;
    align-items: center; /* 縦中央 */
    justify-content: center; /* 横中央（お好みで） */
  }
  /* 段落のデフォルト余白を消す（ズレ防止） */
  .flow_col_section_left > p {
    margin: 0;
  }
  .flow_col_section_right {
    padding-top: 15px;
    padding-bottom: 15px;
  }
  .commonHeader__circlePin {
    /* 好みで調整 */
    --pin-size: 75px; /* 全体の直径 */
    --spin-sec: 12s; /* 外周テキストの1周時間 */
    --pin-bg: #081a44; /* 中央の濃紺 */
    --ring-color: #6c86a8; /* 外周テキスト色（淡いブルー） */
    --arrow-color: #fff; /* 矢印の色（白） */
    --arrow-w: 1px; /* 矢印の線幅 */
    top: 45px;
    right: 10px;
  }
  .page_sclo_main_section {
    min-height: 200px !important;
  }
  .padding_top_Section {
    margin-top: 0px !important;
  }
  .page_into_img_section {
    min-height: 200px !important;
  }
  .flow_col_section_right {
    padding-top: 0px !important;
  }
  .c-fluid-container {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  .msm-header-handwritten__text {
    font-size: 1.2rem;
  }
  .c-container {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  .msm-header-handwritten {
    font-size: 1.2rem;
    padding: 0 0.2rem;
    --msm-handwriting-duration: 2.2s;
  }
  .cost_section .c-container {
    padding-left: 35px !important;
    padding-right: 35px !important;
  }
  .point_radi_text .sme-bg-color {
    padding: 1px 13px;
    border-radius: 50%;
  }
  .footer_left {
    text-align: center !important;
    padding-left: 0px !important;
  }
  footer .footer_logo {
    width: 70% !important;
    text-align: center;
  }
  .footer_botom_section {
    padding-top: 5px;
  }
  .footer_c_section {
    padding: 0px 15px;
  }
  .smb-list__icon {
    padding-top: 0px;
  }
  .btn_wrap {
    margin-bottom: 30px !important;
  }
  .home .fv_section_pc {
    display: none !important;
  }
  .fv_section_pc .wp-block-cover {
    display: none !important;
  }
  .fv_section .cta_btn_center {
    margin-bottom: -30px !important; /* 画面下から少し余白（お好みで調整） */
  }
  .menu-item {
    border-bottom: solid 1px #f3f3f3;
  }
  .home .fv_section_sp {
    display: block !important;
  }
  /* FVカバー内のコンテンツを一番下・中央に配置 */
  .home .fv_section_sp.wp-block-cover {
    display: flex !important; /* WPのCoverは元々flexですが、念のため指定 */
    align-items: flex-end !important; /* 縦方向：下に寄せる */
    justify-content: center !important; /* 横方向：中央寄せ */
  }
  /* CTA全体の横幅と下の余白（お好みで調整） */
  .home .fv_section_sp .cta_btn_center {
    margin: 0 auto 40px !important; /* 下から40pxくらい浮かせる */
    /* max-width: 800px;   必要なら横幅を絞ると中央感が強くなります */
  }
  /* fvカバーの一番下＆中央にCTA全体を配置（前回の続き用） */
  .home .fv_section_sp > .wp-block-cover__inner-container {
    display: flex !important;
    justify-content: center !important; /* 横方向：中央 */
    align-items: flex-end !important; /* 縦方向：下 */
  }
  .home .fv_section_sp .cta_btn_center {
    margin-bottom: -30px !important; /* 画面下から少し余白（お好みで調整） */
  }
  .smf-form--business .smf-item__col--label {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .msm-header-tagline {
    margin-right: 1px !important;
  }
}/*# sourceMappingURL=style.css.map */
