@charset "UTF-8";
/***************************************************************
*
* CSS
* site name: RUC
*
***************************************************************/
/*Google font*/
@import url("https://fonts.googleapis.com/css2?family=Hammersmith+One&family=Hind+Siliguri:wght@600&family=Josefin+Sans:wght@600&family=Noto+Sans+JP:wght@400;700&family=Tektur:wght@500&display=swap");
/*--------------------------------------------------------
*
* 変数定義 import
*
--------------------------------------------------------*/
/*--------------------------------------------------------
*
* 変数定義
*
--------------------------------------------------------*/
/*カラー*/
/*メインビジュアル用の背景色（グラデーション）*/
/*ベージュカラーの斜線背景*/
/*枠線の斜線ボーダー*/
/*WEBフォント（フォントファミリー）*/
/*--------------------------------------------------------
*
* @MIXIN
*
--------------------------------------------------------*/
/*--------------------------------------------------------
*
* 矢印 arrow
*
--------------------------------------------------------*/
/*丸の中に入った矢印*/
/*--------------------------------------------------------
*
* 三角形オブジェクト
*
--------------------------------------------------------*/
/*--------------------------------------------------------
*
* トップページのみアーカイブタイトル非表示
*
--------------------------------------------------------*/
.home {
  /* 「アーカイブ」タイトル非表示 */
  /* 非表示： ヘッダーメニュー モバイルヘッダーのアイコン */
  /* フッターロゴ */
}
.home .archive-title-wrap {
  display: none;
}
.home .l-header__inner {
  justify-content: center;
}
.home .l-header__customBtn.sp_,
.home .l-header__menuBtn.sp_ {
  display: none;
}
.home .-parallel-bottom .l-header__logo {
  padding: 20px 0;
}
.home .l-footer {
  padding: 16px 0 32px;
}
.home .l-footer .l-container {
  padding: 0 8px;
}
.home .c-headLogo.-txt {
  justify-content: center;
}

/***************************************************************
*
* セミナーLP本体 CSS
* site name: seminar cue
*
***************************************************************/
/*--------------------------------------------------------
*
* 変数定義
*
--------------------------------------------------------*/
/*--------------------------------------------------------
*
* 共通CSS
*
--------------------------------------------------------*/
.page-template-lp-page {
  /* 非表示にするセクション
  * ヘッダー
  * 記事トップ
  * 記事タイトル
  * サムネイル
  * 目次
  * この記事を書いた人
  * SNS（よかったらシェアして）
  * ページネーション、関連記事
  * 記事下ウィジェット（新着情報）
  * パンくずリスト
  * フッター
  */
  /* 画面幅・全体余白 */
  /* main 全幅 */
  /* 本文 余白 */
  /* ページタイトル非表示 */
  /* 改行 */
}
.page-template-lp-page #header,
.page-template-lp-page .p-articleHead,
.page-template-lp-page .p-articleMetas,
.page-template-lp-page .p-articleThumb,
.page-template-lp-page .p-toc,
.page-template-lp-page .p-articleFoot,
.page-template-lp-page .c-shareBtns,
.page-template-lp-page #after_article,
.page-template-lp-page #before_footer_widget,
.page-template-lp-page #breadcrumb,
.page-template-lp-page #footer {
  display: none;
}
.page-template-lp-page #content {
  max-width: 100%;
  width: 100%;
  margin: 0 auto;
  padding: 0;
}
.page-template-lp-page .l-mainContent {
  max-width: 100%;
}
.page-template-lp-page .post_content {
  margin: 0;
  padding: 0;
}
.page-template-lp-page .eyeCatch-area {
  display: none;
}
.page-template-lp-page .br-tb,
.page-template-lp-page .br-sp {
  display: none;
}
.page-template-lp-page img {
  pointer-events: none;
}
.page-template-lp-page .l-wrap {
  position: relative;
  margin-bottom: 0 !important;
  padding: 0 0 96px;
}
.page-template-lp-page .l-inner {
  padding-left: 64px;
  padding-right: 64px;
}
.page-template-lp-page .h3-wrap-one {
  padding-top: 48px;
}

.lp-template {
  /* リッチカラム */
  /* PC/SPの表示切替 */
}
.lp-template .swell-block-columns,
.lp-template .list-wrap,
.lp-template .trouble-wrap,
.lp-template .reason-wrap {
  margin-bottom: 0;
}
.lp-template .__pc {
  display: block;
}
.lp-template .__sp {
  display: none;
}

/*--------------------------------------------------------
*
* 見出し heading
*
--------------------------------------------------------*/
/*--------------------------------------------------------
 大見出し H2
--------------------------------------------------------*/
.h2-heading {
  padding: 0 16px;
  background-image: linear-gradient(#42B3C4, #36708B);
  text-align: center;
  /* 英語 フォント大 */
  /* 日本語 */
}
.h2-heading .wp-block-column {
  padding: 32px 0;
}
.h2-heading .en {
  position: relative;
  margin: 0 !important;
  color: white;
  font-size: clamp(40px, 7vw, 80px);
  font-weight: bold;
  font-family: "Noto Sans JP", sans-serif;
  /* 装飾 ボーダー */
}
.h2-heading .en::before {
  position: absolute;
  content: "";
}
.h2-heading .en::before {
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
  width: 100px;
  height: 5px;
  background-image: linear-gradient(#42B3C4, #36708B);
}
.h2-heading .jn {
  margin: 0 !important;
  background-color: unset;
  font-size: clamp(20px, 2vw, 24px);
  font-weight: bold;
}
.h2-heading .jn::before, .h2-heading .jn::after {
  content: none;
}

/* 申請フォーム用 H2 */
.post_content .contact-heading {
  padding: 0;
  background-color: unset;
  letter-spacing: 2px;
  filter: drop-shadow(0px 0px 8px white);
  font-size: clamp(26px, 4vw, 48px);
}
.post_content .contact-heading::before, .post_content .contact-heading::after {
  content: none;
}

/*--------------------------------------------------------
 小見出し H3
--------------------------------------------------------*/
.h3-heading {
  position: relative;
  margin-bottom: 32px;
  padding-top: 64px;
  text-align: center;
  /* 英語 フォント大 */
  /* 日本語 */
}
.h3-heading .en {
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translate(-50%, 0);
  width: 100%;
  margin: 0 !important;
  color: #F1F8F9;
  line-height: 1;
  text-transform: uppercase;
  letter-spacing: clamp(3px, 1vw, 8px);
  font-size: clamp(40px, 6vw, 64px);
  font-weight: bold;
  font-family: "Noto Sans JP", sans-serif;
}
.h3-heading .jn {
  margin: 0 !important;
  padding: 0;
  color: #42B3C4;
  line-height: 1.3;
  letter-spacing: 2px;
  text-indent: -2px;
  font-size: clamp(24px, 3vw, 32px);
  font-weight: bold;
}
.h3-heading .jn::before {
  background-color: #42B3C4;
}
.h3-heading .jn::after {
  content: none;
}

/*--------------------------------------------------------
*
* フキダシ bubble 
*
--------------------------------------------------------*/
/* 白文字 アイコン見切れない */
.tmp-bubble-01 .c-balloon .c-balloon__icon {
  width: 60px;
  height: 100%;
}
.tmp-bubble-01 .c-balloon .c-balloon__icon .c-balloon__iconImg {
  height: 100%;
}
.tmp-bubble-01 .c-balloon .c-balloon__text > p {
  color: white;
  font-weight: bold;
}

/*--------------------------------------------------------
*
* table テーブル 表
*
--------------------------------------------------------*/
.wp-block-table.l-table {
  max-width: 1024px;
  margin: 0 auto 32px;
}
.wp-block-table.l-table td,
.wp-block-table.l-table th {
  padding: 16px;
}

/*--------------------------------------------------------
*
* img 画像
*
--------------------------------------------------------*/
.one-figure-middle figure {
  max-width: 660px;
  margin: 0 auto;
}

/*--------------------------------------------------------
*
* txt テキスト
*
--------------------------------------------------------*/
/* 説明文 */
.l-read {
  max-width: 1024px;
  margin: 0 auto 32px;
  font-size: clamp(16px, 2vw, 20px);
}

/* 太文字 */
.strong-txt {
  margin-bottom: 8px;
  font-size: clamp(24px, 3vw, 32px);
  font-weight: bold;
}

/* 中央配置 */
.center-txt {
  text-align: center;
}

/*--------------------------------------------------------
*
* リスト
*
--------------------------------------------------------*/
.post_content {
  /* フキダシあり */
}
.post_content .bubble-list {
  position: relative;
  background-color: #ECF6FF;
  margin-bottom: -8px;
  padding: 24px;
  font-size: clamp(16px, 2vw, 20px);
  font-weight: bold;
}
.post_content .bubble-list::before {
  position: absolute;
  content: "";
  left: 48px;
  bottom: -32px;
  border-top: 32px solid #ECF6FF;
  border-left: 32px solid transparent;
  border-right: 32px solid transparent;
}
.post_content .bubble-list.pc-right::before {
  top: 50%;
  bottom: auto;
  left: auto;
  right: -64px;
  transform: translateY(-50%);
  border-top: 32px solid transparent;
  border-left: 32px solid #ECF6FF;
  border-bottom: 32px solid transparent;
}

/*--------------------------------------------------------
*
* 装飾
*
--------------------------------------------------------*/
/* 赤文字 */
.font-red {
  color: #f83434;
}

/* フォント大 */
.font-large {
  font-size: clamp(32px, 6vw, 64px);
}

/* フォント中 */
.font-middle {
  font-size: clamp(24px, 4vw, 48px);
}

/*--------------------------------------------------------
 header ヘッダー
--------------------------------------------------------*/
.header-lp {
  position: absolute;
  /* ロゴ */
}
.header-lp > .swell-block-columns__inner {
  position: relative;
  justify-content: space-between;
}
.header-lp > .swell-block-columns__inner > .swell-block-column {
  width: auto;
}
.header-lp .logo-content a img {
  width: auto;
  width: 80px;
  -o-object-fit: contain;
     object-fit: contain;
}

/* ヘッダーボタン */
.header-button {
  display: none;
}

/* ハンバーガーボタン max-width:1023px */
.hamburger-btn {
  position: fixed;
  top: 0;
  right: 0;
  width: 64px;
  height: 60px;
  margin: 0;
  background-color: rgba(0, 4, 7, 0.9);
  cursor: pointer;
  transition: 0.3s ease-in-out;
  z-index: 999;
  /* クリック・タップ時の動作 */
}
.hamburger-btn .bar {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  width: 32px;
  height: 3px;
  border-radius: 40px;
  background-color: #42B3C4;
  transition: 0.3s ease-in-out;
}
.hamburger-btn .bar:nth-child(1) {
  top: 20px;
}
.hamburger-btn .bar:nth-child(2) {
  top: 29px;
}
.hamburger-btn .bar:nth-child(3) {
  top: 38px;
}
.hamburger-btn.is-active {
  background-color: white;
}
.hamburger-btn.is-active .bar:nth-of-type(1) {
  transform: translate(-50%, 10px) rotate(45deg);
}
.hamburger-btn.is-active .bar:nth-of-type(2) {
  opacity: 0;
}
.hamburger-btn.is-active .bar:nth-of-type(3) {
  transform: translate(-50%, -8px) rotate(-45deg);
}

/* ドロワーメニュー max-width:1023px */
.drawer-menu {
  position: fixed;
  top: 0;
  right: 0;
  max-width: 350px;
  width: 100%;
  height: 105vh;
  background-color: #FFFFFF;
  padding: 138px 16px 48px 40px;
  /* PCでは非表示 */
  opacity: 0;
  pointer-events: none;
  transition: 0.3s ease;
}
.drawer-menu ul {
  list-style: none;
  padding: 0;
}
.drawer-menu ul li {
  padding: 5px 0;
}
.drawer-menu ul li::marker {
  content: none;
}
.drawer-menu ul li a {
  color: #333333;
}
.drawer-menu ul.main-menu {
  margin-bottom: 48px;
  padding-left: 32px;
}
.drawer-menu ul.main-menu li {
  padding-bottom: 24px;
}
.drawer-menu ul.main-menu li a {
  position: relative;
}
.drawer-menu ul.main-menu li a::before {
  position: absolute;
  content: "";
  top: 50%;
  left: -32px;
  transform: translate(0, -50%);
  width: 24px;
  height: 24px;
  background-image: url("../images/icon/arrow_apply_btn.svg");
  background-repeat: no-repeat;
  background-size: contain;
}
.drawer-menu ul.sub-menu li a {
  text-decoration: underline;
  font-weight: 100;
}
.drawer-menu.is-active {
  opacity: 1;
  pointer-events: all;
}
.drawer-menu.is-active li {
  -webkit-animation: fadeAnime 0.5s forwards;
          animation: fadeAnime 0.5s forwards;
  opacity: 0;
}
.drawer-menu.is-active .main-menu li:nth-child(1) {
  -webkit-animation-delay: 0.2s;
          animation-delay: 0.2s;
}
.drawer-menu.is-active .main-menu li:nth-child(2) {
  -webkit-animation-delay: 0.3s;
          animation-delay: 0.3s;
}
.drawer-menu.is-active .main-menu li:nth-child(3) {
  -webkit-animation-delay: 0.4s;
          animation-delay: 0.4s;
}
.drawer-menu.is-active .main-menu li:nth-child(4) {
  -webkit-animation-delay: 0.5s;
          animation-delay: 0.5s;
}
.drawer-menu.is-active .sub-menu li:nth-child(1) {
  -webkit-animation-delay: 0.6s;
          animation-delay: 0.6s;
}
.drawer-menu.is-active .sub-menu li:nth-child(2) {
  -webkit-animation-delay: 0.7s;
          animation-delay: 0.7s;
}
.drawer-menu.is-active .sub-menu li:nth-child(3) {
  -webkit-animation-delay: 0.8s;
          animation-delay: 0.8s;
}

@-webkit-keyframes fadeAnime {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes fadeAnime {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
/*--------------------------------------------------------
 header ヘッダー
--------------------------------------------------------*/
.header-lp {
  position: absolute;
  padding-top: 16px;
  z-index: 2;
}
.header-lp .swell-block-columns__inner {
  padding: 0 64px;
}
.header-lp .header-hamburger-menu .hamburger-btn .bar {
  background-color: #42B3C4;
}

/*--------------------------------------------------------
 fv メインビジュアル（タイトル・アイキャッチ部分）
--------------------------------------------------------*/
.fv-wrap {
  position: relative;
  height: 670px;
  padding: 208px 64px 32px;
}
.fv-wrap::before, .fv-wrap::after {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-size: cover;
}
.fv-wrap::before {
  background-image: url("../images/bg/fv_main_bg_sp.png");
  background-position: center;
}
.fv-wrap::after {
  background-image: linear-gradient(180deg, #0C5661 0%, #42B3C4 30%, transparent 100%);
  mix-blend-mode: multiply;
}
.fv-wrap > .swell-block-columns__inner {
  position: relative;
  max-width: 1440px;
  justify-content: space-between;
  margin: 0 auto;
  gap: 32px;
  z-index: 1;
  /* リッチカラム */
}
.fv-wrap > .swell-block-columns__inner .swell-block-column {
  margin: 0;
}
.fv-wrap .title-wrap {
  margin-bottom: 48px;
  color: white;
}
.fv-wrap .title-wrap .main-title {
  margin-bottom: 0;
}
.fv-wrap .title-wrap .main-title.en {
  line-height: 1;
  letter-spacing: 4px;
  font-size: clamp(52px, 7vw, 72px);
  font-weight: bold;
  font-family: "Tektur", sans-serif;
}
.fv-wrap .title-wrap .main-title.jn {
  font-size: clamp(20px, 2vw, 24px);
  font-weight: bold;
}
.fv-wrap .title-wrap .sub-title {
  color: white;
  filter: drop-shadow(0px 0px 8px white);
  letter-spacing: 1px;
  font-size: clamp(24px, 4vw, 40px);
  font-weight: bold;
}
.fv-wrap .fv-left {
  flex: 1.1;
}
.fv-wrap .fv-right {
  flex: 1;
}
.fv-wrap .button-wrap a {
  box-shadow: 0 0 48px rgba(255, 255, 255, 0.4);
}
.fv-wrap .button-wrap a span {
  position: relative;
  padding-left: 18px;
  font-size: clamp(20px, 2vw, 24px);
  font-weight: bold;
}
.fv-wrap .button-wrap a span::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  font-weight: bold;
  font-family: "Font Awesome 6 Free";
  left: -18px;
  width: 40px;
  height: 40px;
  background-image: url("../images/icon/icon_sp.svg");
  background-repeat: no-repeat;
  background-size: contain;
}

/*--------------------------------------------------------
 cv-wrap コンバージョンエリア
--------------------------------------------------------*/
.cv-wrap {
  position: relative;
  /* 三角形オブジェクト */
}
.cv-wrap .swell-block-columns__inner {
  position: relative;
  /* 上下余白 */
  padding-top: 112px;
  padding-bottom: 112px;
}
.cv-wrap .swell-block-columns__inner::before, .cv-wrap .swell-block-columns__inner::after {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-size: cover;
}
.cv-wrap .swell-block-columns__inner::before {
  background-image: url("../images/bg/fv_main_bg_sp.png");
  background-position: center;
  z-index: -1;
}
.cv-wrap .swell-block-columns__inner::after {
  background-image: linear-gradient(180deg, #0C5661 0%, #42B3C4 30%, transparent 100%);
  mix-blend-mode: multiply;
  z-index: -1;
}
.cv-wrap .swell-block-column {
  /* テキスト中央配置 */
  text-align: center;
}
.cv-wrap .button-wrap {
  position: relative;
}
.cv-wrap .button-wrap a {
  box-shadow: 0 0 48px rgba(255, 255, 255, 0.4);
}
.cv-wrap .button-wrap a span {
  position: relative;
  padding-left: 18px;
  font-size: clamp(16px, 3vw, 24px);
}
.cv-wrap .button-wrap a span::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  font-weight: bold;
  font-family: "Font Awesome 6 Free";
  left: -18px;
  width: 40px;
  height: 40px;
  background-image: url("../images/icon/icon_sp.svg");
  background-repeat: no-repeat;
  background-size: contain;
}

/* ボタン 左にスマホを持つ手アイコン */
.button-heading {
  position: relative;
  display: inline-block;
  margin-bottom: 8px;
  color: white;
  font-size: clamp(16px, 2vw, 24px);
  font-weight: bold;
}
.button-heading::before {
  position: absolute;
  content: "";
  top: -40px;
  left: -48px;
  width: 80px;
  height: 80px;
  background-image: url("../images/icon/icon_sun_burst_white.svg");
  background-repeat: no-repeat;
  background-size: contain;
}

/*--------------------------------------------------------------
contact 補助金申請
--------------------------------------------------------------*/
#contact {
  margin-bottom: 0 !important;
}

.contact-heading-wrap .swell-block-columns__inner {
  padding: 80px 16px 48px;
}

/* 見出し */
.contact-wrap {
  padding: 64px 64px 96px;
}

/*ContactForm7カスタマイズ*/
.wpcf7 {
  max-width: 1023px;
  margin: 0 auto;
  padding: 48px;
  background-color: #eee;
  /* ボーダー区切り枠 */
  /* 重要事項の確認 */
  /* 住所 */
  /* 「送信する」ボタン */
  /* 送信ボタン下のテキスト */
}
.wpcf7 .cf7_row {
  display: flex;
  margin-bottom: 24px;
  /* 入力指示タイトル */
  /* 入力フォーム */
}
.wpcf7 .cf7_row .form-label {
  width: 30%;
  margin-right: 48px;
  /*「必須」文字*/
  /*「任意」文字*/
}
.wpcf7 .cf7_row .form-label label {
  font-weight: bold;
}
.wpcf7 .cf7_row .form-label .cf7_req {
  margin-right: 8px;
  padding: 2px 5px;
  border-radius: 3px;
  background-color: red;
  color: white;
  font-size: 12px;
}
.wpcf7 .cf7_row .form-label .cf7_unreq {
  margin-right: 8px;
  padding: 2px 5px;
  border-radius: 3px;
  background-color: gray;
  color: white;
  font-size: 12px;
}
.wpcf7 .cf7_row .response {
  width: 100%;
  max-width: 850px;
  /* ラジオボタン */
  /*入力欄*/
}
.wpcf7 .cf7_row .response input,
.wpcf7 .cf7_row .response textarea {
  width: 100%;
  padding: 8px;
  background-color: white;
  border-radius: 6px;
}
.wpcf7 .cf7_row .response.no-txt {
  /* テキスト以外は幅調整しない */
}
.wpcf7 .cf7_row .response.no-txt span,
.wpcf7 .cf7_row .response.no-txt input {
  width: auto;
  margin-bottom: 0;
}
.wpcf7 .cf7_row .response.unit {
  /* 単位あり 幅をより狭くする */
}
.wpcf7 .cf7_row .response.unit span {
  display: inline-block;
}
.wpcf7 .cf7_row .response.unit span.form-unit {
  margin-left: 8px;
}
.wpcf7 .cf7_row .response.unit input {
  width: 80px;
}
.wpcf7 .cf7_row .response .wpcf7-form-control-wrap {
  display: block;
  width: 100%;
}
.wpcf7 .cf7_row .response .wpcf7-list-item {
  margin-left: 0;
  margin-right: 16px;
}
.wpcf7 .cf7_row .response input,
.wpcf7 .cf7_row .response select,
.wpcf7 .cf7_row .response textarea {
  border: none;
  font-size: clamp(14px, 2vw, 16px);
}
.wpcf7 .cf7_row .response p {
  padding: 0;
}
.wpcf7 .cf7_row .response.no-txt.tools-amounts .wpcf7-list-item {
  margin-bottom: 8px;
}
.wpcf7 .cf7_frame {
  margin-bottom: 32px;
}
.wpcf7 .cf7_frame .cf7_row {
  margin-bottom: 16px;
  padding-top: 16px;
}
.wpcf7 .cf7_frame .cf7_row:not(:first-child) {
  border-top: 1px dotted #aaa;
}
.wpcf7 .cf7_last {
  margin-bottom: 32px !important;
}
.wpcf7 .cf7_last .no-txt {
  margin-bottom: 8px;
}
.wpcf7 .form-address {
  /* 入力欄の幅サイズ調整 */
}
.wpcf7 .form-address label,
.wpcf7 .form-address span {
  display: block;
  margin-bottom: 8px;
}
.wpcf7 .form-address .p-postal-code,
.wpcf7 .form-address #pref {
  width: 128px;
}
.wpcf7 .form-address .postal p {
  display: flex;
  align-items: center;
  gap: 8px;
}
.wpcf7 .form-address .postal p span {
  width: 96px !important;
}
.wpcf7 input.wpcf7-submit {
  width: 100%;
  background-color: #333333;
  border: 0;
  border-radius: 5px;
  color: white;
  font-size: 1.2em;
  font-weight: bold;
  margin: 0 auto;
  padding: 16px;
}
.wpcf7 .cf7_btn {
  max-width: 500px;
  margin: 0 auto 16px;
  padding: 16px 0;
  text-align: center;
}
.wpcf7 .wpcf7-spinner {
  width: 0;
  margin: 0;
}
.wpcf7 .form-bottom .wpcf7-list-item {
  margin-left: 0;
}
.wpcf7 .form-bottom p {
  margin-bottom: 32px;
}
.wpcf7 .form-bottom p .form-bottom-heading {
  display: block;
  font-size: clamp(16px, 2vw, 20px);
  font-weight: bold;
}
.wpcf7 .button-bottom-txt {
  max-width: 700px;
  margin: 0 auto;
  padding: 0 16px 32px;
}
.wpcf7 .small-txt {
  display: block;
  font-size: 12px;
}

/*--------------------------------------------------------------
company 会社概要
--------------------------------------------------------------*/
#company {
  margin-bottom: 0;
}

.company-inner {
  background-image: linear-gradient(#42B3C4, #36708B);
}
.company-inner .wp-block-column {
  padding-top: 64px;
  padding-bottom: 96px;
}

/*--------------------------------------------------------------
footer-wrap フッター
--------------------------------------------------------------*/
.footer-wrap.swell-block-columns {
  position: relative;
  margin-bottom: 50px;
  padding: 64px 16px;
  text-align: center;
}
.footer-wrap.swell-block-columns::before, .footer-wrap.swell-block-columns::after {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-size: cover;
}
.footer-wrap.swell-block-columns::before {
  background-image: url("../images/bg/fv_main_bg_sp.png");
  background-position: center;
  z-index: -2;
}
.footer-wrap.swell-block-columns::after {
  background-image: linear-gradient(180deg, #0C5661 0%, #42B3C4 30%, transparent 100%);
  mix-blend-mode: multiply;
  z-index: -1;
}
.footer-wrap.swell-block-columns a {
  display: inline-block;
}
.footer-wrap.swell-block-columns a img {
  max-width: 96px;
}
.footer-wrap.swell-block-columns p {
  color: white;
}

/*--------------------------------------------------------------
footer-btn フッターボタン（追従型）
--------------------------------------------------------------*/
.footer-btn {
  position: fixed;
  left: 0;
  bottom: 0;
  width: 100%;
  opacity: 0;
  pointer-events: none;
  transition: 0.3s ease;
  z-index: 2;
}
.footer-btn .wp-block-column {
  display: flex;
}
.footer-btn .swell-block-column {
  flex: 1;
  margin-bottom: 0;
  color: white;
  text-align: center;
  font-size: 32px;
  font-weight: bold;
  transition: 0.3s ease-in-out;
}
.footer-btn .swell-block-column span {
  position: relative;
  display: inline-block;
  margin-bottom: 0;
  padding: 16px 16px 16px 56px;
}
.footer-btn .swell-block-column span::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  font-weight: bold;
  font-family: "Font Awesome 6 Free";
  width: 48px;
  height: 48px;
  background-repeat: no-repeat;
  background-size: contain;
}
.footer-btn .swell-block-column:nth-child(1) {
  background-color: #42B3C4;
}
.footer-btn .swell-block-column:nth-child(1) span::before {
  background-image: url("../images/icon/icon_sp.svg");
}
.footer-btn .swell-block-column:hover {
  opacity: 0.6;
}
.footer-btn.scrolling {
  opacity: 1;
  pointer-events: all;
}

/*--------------------------------------------------------------
slickスライダー
--------------------------------------------------------------*/
.slide-one,
.slide-two {
  display: block !important;
  /* スライダー 矢印 */
}
.slide-one .slick-arrow,
.slide-two .slick-arrow {
  width: 30px;
  height: 30px;
  background-color: white;
  border: none;
  border-radius: 50px;
  transition-duration: 0.3s;
  z-index: 1;
  /* スライダー 矢印 左 */
  /* スライダー 矢印 右 */
}
.slide-one .slick-arrow::before,
.slide-two .slick-arrow::before {
  position: absolute;
  content: "" !important;
  top: 0;
  display: block;
  width: 30px;
  height: 30px;
  background-repeat: no-repeat;
  background-size: 30px;
  font-size: clamp(16px, 2vw, 24px);
  font-weight: bold;
}
.slide-one .slick-arrow.slick-prev,
.slide-two .slick-arrow.slick-prev {
  left: 16px;
}
.slide-one .slick-arrow.slick-prev::before,
.slide-two .slick-arrow.slick-prev::before {
  left: 0;
  background-image: url("../images/icon/arrow_right.svg");
}
.slide-one .slick-arrow.slick-next,
.slide-two .slick-arrow.slick-next {
  right: 16px;
}
.slide-one .slick-arrow.slick-next::before,
.slide-two .slick-arrow.slick-next::before {
  right: 0;
  background-image: url("../images/icon/arrow_left.svg");
}

/*--------------------------------------------------------------
横スクロールバーのデザイン
--------------------------------------------------------------*/
.swell-block-columns[data-scrollable="1"] > .swell-block-columns__inner::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}
.swell-block-columns[data-scrollable="1"] > .swell-block-columns__inner::-webkit-scrollbar-track {
  background-color: #eee;
}
.swell-block-columns[data-scrollable="1"] > .swell-block-columns__inner::-webkit-scrollbar-thumb {
  background-color: gray;
}
.swell-block-columns[data-scrollable="1"] > .swell-block-columns__inner::-webkit-scrollbar-track, .swell-block-columns[data-scrollable="1"] > .swell-block-columns__inner::-webkit-scrollbar-thumb {
  border-radius: 50px;
}

/*--------------------------------------------------------
*
* column カラム
*
--------------------------------------------------------*/
/* リッチカラム使用 1カラム背景ぼかし */
.one-column-01 {
  position: relative;
  max-width: 1024px;
  margin: 0 auto;
}

/* リッチカラム使用 2カラム背景ぼかし */
.two-column-01 {
  position: relative;
  max-width: 1440px;
  margin: 0 auto 96px;
}
.two-column-01 .swell-block-column {
  position: relative;
  padding: 24px;
  background-color: white;
  border-radius: 16px;
}
.two-column-01 .swell-block-column::before {
  position: absolute;
  content: "";
  bottom: 0;
  right: 0;
  background-repeat: no-repeat;
  background-size: contain;
  opacity: 0.2;
}

/* リッチカラム使用 3カラム背景ぼかし */
.three-column-01 {
  position: relative;
  max-width: 1024px;
  margin: 0 auto;
  z-index: 1;
}
.three-column-01 .swell-block-columns__inner {
  justify-content: space-between;
  max-width: 1440px;
  margin: 0 auto;
  padding: 0;
}
.three-column-01 .swell-block-columns__inner > .swell-block-column:first-child {
  margin: 0;
}
.three-column-01 .swell-block-columns__inner .swell-block-column {
  padding: 16px;
  counter-increment: counter-01;
}
.three-column-01 .swell-block-columns__inner .swell-block-column figure {
  position: relative;
  /* 画像サイズ */
}
.three-column-01 .swell-block-columns__inner .swell-block-column figure img {
  height: 340px;
  -o-object-fit: contain;
     object-fit: contain;
}
.three-column-01 .item-heading {
  position: relative;
  text-align: center;
  font-size: 20px;
  font-weight: bold;
}
.three-column-01 .item-heading::after {
  position: absolute;
  content: counter(counter-01, decimal-leading-zero);
  bottom: -33px;
  left: 50%;
  transform: translateX(-50%);
  line-height: 1;
  height: auto;
  color: #fff0ec;
  visibility: unset;
  letter-spacing: 4px;
  z-index: -1;
  font-size: 80px;
  font-weight: bold;
  font-family: "Hind Siliguri", sans-serif;
  font-style: italic;
}

/* 3カラム 中央配置 画像のみ */
.three-column-b {
  position: relative;
  margin-top: -110px;
  padding-bottom: 16px;
  z-index: 1;
}
.three-column-b .swell-block-columns__inner {
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
}
.three-column-b .swell-block-columns__inner .swell-block-column {
  max-width: 300px;
}
.three-column-b figure img {
  filter: drop-shadow(10px -10px 2px rgba(51, 51, 51, 0.2));
}

/* 1枚画像の横スクロール */
.scroll-img {
  max-width: 1024px;
  margin: 0 auto;
}

/* 横並び */
.swell-block-columns .swell-block-column.flex-horizontal {
  display: flex;
  justify-content: space-between;
  width: 100%;
  margin-left: 0;
}
.swell-block-columns .swell-block-column.flex-horizontal .wp-block-image,
.swell-block-columns .swell-block-column.flex-horizontal .wp-block-columns {
  flex: 1;
}

/*--------------------------------------------------------
*
* アクセント
*
--------------------------------------------------------*/
/* アクセント ポイント 2つ */
.accent-point-two {
  position: relative;
  display: inline-block;
}
.accent-point-two::before {
  position: absolute;
  content: "";
  top: -26px;
  left: -26px;
  width: 36px;
  height: 36px;
  background-image: url("../images/icon/accent_point_two.svg");
  background-repeat: no-repeat;
  background-position: left;
  background-size: contain;
}

/* アクセント ポイント 3つ */
.accent-point-three {
  margin-bottom: 0;
}
.accent-point-three span {
  position: relative;
  padding-bottom: 4px;
  border-bottom: 1px solid white;
}
.accent-point-three span::before {
  position: absolute;
  content: "";
  top: -26px;
  left: -26px;
  width: 36px;
  height: 36px;
  background-image: url("../images/icon/sun_burst_left_three.svg");
  background-repeat: no-repeat;
  background-position: left;
  background-size: contain;
}

/*--------------------------------------------------------
template 下層ページ 
--------------------------------------------------------*/
/*--------------------------------------------------------
*
* SWELL テンプレート CSS変更
*
--------------------------------------------------------*/
/* カラム 中央配置 */
.is-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 8px;
}

/*--------------------------------------------------------
*
* テンプレート CSS
*
--------------------------------------------------------*/
/* トップページのみアーカイブタイトル非表示 */
.home .archive-title-wrap {
  display: none;
}

/* カラム間の余白調整 */
.swell-block-columns {
  --swl-clmn-mrgn--x: 2.5rem;
}

/* フォントカラー黄色 */
.font-yellow {
  color: #ECE12C !important;
}

/*--------------------------------------------------------
*
* H2 H3 見出し テンプレート
*
--------------------------------------------------------*/
/* H3 中央配置 */
h3.c-heading {
  text-align: center;
}

/* H2 見出し 全幅の画像背景 */
.bg-heading-wrap {
  position: relative;
  height: 360px;
  margin-bottom: 0 !important;
  overflow: hidden;
  /* 見出し 中央配置 */
  /* 背景画像 全幅 */
}
.bg-heading-wrap .wp-block-column {
  margin: auto;
}
.bg-heading-wrap figure {
  position: absolute;
  top: 0;
  left: 0;
}
.bg-heading-wrap figure img {
  width: 100vw;
  height: 360px;
  -o-object-fit: cover;
     object-fit: cover;
}
.bg-heading-wrap .heading-sub {
  color: white;
  letter-spacing: 2px;
}

/* H2 見出し 塗りつぶし */
.heading-temp-a .wp-block-column {
  display: block;
  text-align: center;
}
.heading-temp-a .heading-sub {
  /* 見出し説明 */
  font-size: clamp(20px, 2vw, 28px);
  font-weight: bold;
}

/* 見出し H3 塗りなし */
.heading-temp-b {
  margin-bottom: 0 !important;
}
.heading-temp-b .wp-block-column {
  display: block;
  text-align: center;
}

/* 見出し 下層ページ用 H3 */
.heading-content .orgPage-heading {
  position: relative;
  display: inline-block;
  align-items: center !important;
  width: auto;
  margin: 0 auto 24px;
  gap: 0;
}
.heading-content .orgPage-heading * {
  color: #04C1CD;
  font-weight: bold;
}
.heading-content .orgPage-heading .heading-top {
  text-align: left;
}
.heading-content .orgPage-heading h2.c-heading {
  position: relative;
  letter-spacing: 2px;
  font-size: clamp(28px, 3vw, 36px);
}
.heading-content .orgPage-heading h2.c-heading::before {
  position: absolute;
  content: "";
  left: 50%;
  bottom: -10px;
  transform: translateX(-50%);
  width: 78px;
  height: 5px;
  background-color: #04C1CD;
  border-radius: 5px;
}
.heading-content .orgPage-heading .pageTitle-point {
  top: -8px;
  left: auto;
  right: -64px;
  background-color: #04C1CD;
  color: white;
}
.heading-content .orgPage-heading .pageTitle-point::before {
  right: auto;
  left: -16px;
  bottom: 24px;
  border-left-width: 30px;
  border-bottom-color: #04C1CD;
  transform: rotate(-5deg);
  z-index: -1;
}
.heading-content h3.c-heading {
  position: relative;
  text-align: center;
  letter-spacing: 2px;
  font-size: clamp(20px, 3vw, 30px);
}

.page-template-org-page .heading-content h3.c-heading {
  margin-bottom: 16px;
  line-height: 1.3;
  letter-spacing: 0;
  font-size: clamp(20px, 3vw, 30px);
}

/* 国家資格・産業用資格コースの2ページのみ適用 */
.qualifications-wrap .heading-content {
  text-align: center;
}

/* 見出し 背景英語テキスト ケース1 */
.e-heading-1 {
  position: relative;
  margin: 0 auto;
  border-bottom: 1px solid #333333;
  /* サブ英語 */
  /* メイン見出し */
}
.e-heading-1.small {
  max-width: 900px;
}
.e-heading-1 .heading-en {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 0;
  color: #eee;
  width: 100%;
  line-height: 0.75;
  letter-spacing: 20px;
  text-align: center;
  text-indent: 24px;
  font-size: clamp(32px, 6vw, 64px);
  font-family: "Hind Siliguri", sans-serif;
  z-index: -1;
}
.e-heading-1 .c-heading {
  line-height: 1;
  letter-spacing: 4px;
}

/* 左上に派手ウニのアクセント付き 数字強調 */
.accent-heading-group {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.accent-heading-a {
  position: relative;
  display: inline-block;
  margin: 0 auto 16px !important;
}
.accent-heading-a::before {
  position: absolute;
  content: "";
  top: -24px;
  left: -56px;
  width: 100px;
  height: 83px;
  background-repeat: no-repeat;
  background-position: left top;
  background-size: contain;
}
.accent-heading-a.black::before {
  background-image: url("../images/icon/icon_sun_burst_black.svg");
}
.accent-heading-a.white::before {
  background-image: url("../images/icon/icon_sun_burst_white.svg");
}
.accent-heading-a .sub-heading {
  position: relative;
  display: block;
  bottom: -28px;
  left: 48px;
  font-size: clamp(14px, 2vw, 16px);
}
.accent-heading-a .main-heading {
  border-bottom: 3px dashed;
  letter-spacing: 3px;
}

/*--------------------------------------------------------
*
* object-column いろんなオブジェクト 横並び テンプレート
*
--------------------------------------------------------*/
/* 動画・画像上に見出し・テキストを中央配置 */
.video-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
}

/* ページのコンテンツトップに無限ループテキストを流す */
.loop-slide-txt.pageTop-txt {
  position: relative;
  top: 0;
  white-space: nowrap;
  margin-bottom: -180px;
  z-index: -1;
}
.loop-slide-txt.pageTop-txt .wp-block-column p {
  margin-bottom: 0;
  line-height: 1;
}

.temp-wrap {
  /* ループスライド直下の余白を詰める */
  margin-top: -192px;
}

.temp-wrap-b {
  margin-bottom: 0 !important;
  padding-top: 96px;
}

/*--------------------------------------------------------
*
* column 2カラム テンプレート
*
--------------------------------------------------------*/
/* 2カラム 情報多めに配置 ド定番 */
.two-column-a {
  position: relative;
  overflow: hidden;
  max-width: 1440px;
  width: 100%;
  margin: 0 auto 60px !important;
  padding-bottom: 60px;
  background-color: transparent;
  /*PC:2カラム SP:1カラム*/
}
.two-column-a .column-item {
  counter-increment: flow-counter;
  height: 416px;
}
.two-column-a .column-item .swell-block-columns__inner {
  position: relative;
  display: flex;
  flex-direction: column;
  max-width: 1440px;
  height: auto;
  margin: 0 auto 140px;
  padding-top: 60px;
  /*見出し*/
  /*画像 右*/
  /*説明文 左*/
}
.two-column-a .column-item .swell-block-columns__inner:last-child {
  margin-bottom: 0;
}
.two-column-a .column-item .swell-block-columns__inner .item-heading {
  position: relative;
  width: 100%;
  margin-bottom: 10px;
  padding-left: 10px;
  z-index: 3;
}
.two-column-a .column-item .swell-block-columns__inner .item-heading::after {
  position: absolute;
  content: "";
  bottom: 0;
  left: 0;
  line-height: 0.75;
  font-size: 90px;
  font-family: "Tektur", sans-serif;
  z-index: -1;
}
.two-column-a .column-item .swell-block-columns__inner .item-heading h3 {
  position: relative;
  padding-left: 56px;
  padding-right: 0;
  padding-bottom: 0;
  letter-spacing: 2px;
  line-height: 1;
  font-size: clamp(30px, 3vw, 32px);
  font-family: "Tektur", sans-serif;
  z-index: 2;
}
.two-column-a .column-item .swell-block-columns__inner .item-heading h3::before {
  content: none;
}
.two-column-a .column-item .swell-block-columns__inner .item-heading h3::after {
  position: absolute;
  content: "#" counter(flow-counter, decimal-leading-zero);
  top: 0;
  left: 0;
  line-height: 0.9;
  letter-spacing: -1px;
  font-size: 32px;
}
.two-column-a .column-item .swell-block-columns__inner .item-heading .detail-list {
  position: relative;
  margin-bottom: 0;
}
.two-column-a .column-item .swell-block-columns__inner .item-heading .detail-list .swell-block-columns__inner {
  flex-direction: row;
  justify-content: flex-start;
  padding: 0;
}
.two-column-a .column-item .swell-block-columns__inner .item-heading .detail-list .swell-block-columns__inner .swell-block-column {
  display: inline-block;
  width: auto;
}
.two-column-a .column-item .swell-block-columns__inner .item-heading .detail-list .swell-block-columns__inner .swell-block-column.license-register {
  display: flex;
  align-items: center;
  margin-right: 12px;
  background-color: white;
}
.two-column-a .column-item .swell-block-columns__inner .item-heading .detail-list .swell-block-columns__inner .swell-block-column.license-register p {
  display: inline-block;
  margin-bottom: 0;
  padding: 4px 8px;
  color: #333333;
  font-size: 14px;
}
.two-column-a .column-item .swell-block-columns__inner .item-heading .detail-list .swell-block-columns__inner .swell-block-column.license-register p:first-child {
  border-right: 1px solid #333333;
}
.two-column-a .column-item .swell-block-columns__inner .item-heading .detail-list .swell-block-columns__inner .swell-block-column.license-name p {
  font-size: clamp(16px, 2vw, 24px);
  font-weight: bold;
}
.two-column-a .column-item .swell-block-columns__inner .column-img {
  position: absolute;
  top: 0;
  left: 510px;
  flex: 1;
  width: 80%;
  height: 370px;
  margin-bottom: 0;
  overflow: hidden;
}
.two-column-a .column-item .swell-block-columns__inner .column-img figure {
  position: relative;
  z-index: -1;
}
.two-column-a .column-item .swell-block-columns__inner .column-img figure img {
  width: 730px;
  height: 480px;
  -o-object-fit: cover;
     object-fit: cover;
}
.two-column-a .column-item .swell-block-columns__inner .description {
  position: relative;
  max-width: 600px;
  width: 50%;
  margin-left: 0;
  padding-left: 48px;
  z-index: 1;
}
.two-column-a .column-item .swell-block-columns__inner .description::after {
  position: absolute;
  content: "#" counter(flow-counter, decimal-leading-zero);
  bottom: -78px;
  right: -47px;
  color: white;
  line-height: 1;
  letter-spacing: -8px;
  opacity: 0.2;
  z-index: -1;
  font-size: clamp(160px, 22vw, 212px);
  font-family: "Tektur", sans-serif;
}
.two-column-a .column-item .swell-block-columns__inner .description .service-txt {
  margin-bottom: 30px;
}
.two-column-a .column-item .swell-block-columns__inner .description .btn-simple:first-child {
  margin-right: 8px;
}
.two-column-a .column-item:nth-of-type(even) {
  /*見出し*/
  /*画像 右*/
  /*説明文 左*/
}
.two-column-a .column-item:nth-of-type(even) .item-heading {
  max-width: 600px;
  width: 50%;
  margin-left: auto;
  padding-left: 0;
}
.two-column-a .column-item:nth-of-type(even) .item-heading::after {
  left: 0;
}
.two-column-a .column-item:nth-of-type(even) .column-img {
  left: auto;
  right: 510px;
}
.two-column-a .column-item:nth-of-type(even) .column-img figure img {
  margin-left: auto;
}
.two-column-a .column-item:nth-of-type(even) .description {
  margin-right: 0;
  padding-left: 0;
  margin-left: auto;
  padding-right: 60px;
}
.two-column-a .column-item:nth-of-type(even) .description::before {
  left: auto;
  right: 0;
}
.two-column-a .column-item:nth-of-type(even) .description::after {
  right: 0;
}

/* two-column-a simple 2カラム 情報少なめなシンプルデザイン */
.two-column-a.simple {
  position: relative;
  overflow: hidden;
  max-width: 1440px;
  width: 100%;
  margin: 0 auto !important;
  padding-bottom: 0;
  background-color: transparent;
  /*PC:2カラム SP:1カラム*/
}
.two-column-a.simple .column-item {
  counter-increment: flow-counter;
  height: 450px;
}
.two-column-a.simple .column-item .swell-block-columns__inner {
  position: relative;
  display: flex;
  flex-direction: column;
  max-width: 1440px;
  height: auto;
  margin: 0 auto 140px;
  padding-top: 60px;
  /*見出し*/
  /*画像 右*/
  /*説明文 左*/
}
.two-column-a.simple .column-item .swell-block-columns__inner:last-child {
  margin-bottom: 0;
}
.two-column-a.simple .column-item .swell-block-columns__inner .item-heading {
  position: relative;
  width: 100%;
  margin-bottom: 0;
  padding-left: 24px;
  z-index: 3;
}
.two-column-a.simple .column-item .swell-block-columns__inner .item-heading::after {
  position: absolute;
  content: counter(flow-counter, decimal-leading-zero);
  left: 0;
  bottom: 0;
  letter-spacing: -1px;
  font-size: 112px;
}
.two-column-a.simple .column-item .swell-block-columns__inner .item-heading h3 {
  position: relative;
  padding-left: 48px;
  letter-spacing: 2px;
  line-height: 1;
  font-size: clamp(24px, 3vw, 32px);
  font-family: "Tektur", sans-serif;
  z-index: 2;
}
.two-column-a.simple .column-item .swell-block-columns__inner .item-heading h3::before {
  content: none;
}
.two-column-a.simple .column-item .swell-block-columns__inner .item-heading h3::after {
  content: none;
}
.two-column-a.simple .column-item .swell-block-columns__inner .item-heading .detail-list {
  position: relative;
  margin-bottom: 0;
}
.two-column-a.simple .column-item .swell-block-columns__inner .item-heading .detail-list .swell-block-columns__inner {
  flex-direction: row;
  justify-content: flex-start;
  padding: 0;
}
.two-column-a.simple .column-item .swell-block-columns__inner .item-heading .detail-list .swell-block-columns__inner .swell-block-column {
  display: inline-block;
  width: auto;
}
.two-column-a.simple .column-item .swell-block-columns__inner .item-heading .detail-list .swell-block-columns__inner .swell-block-column.license-register {
  display: flex;
  align-items: center;
  margin-right: 12px;
  background-color: white;
}
.two-column-a.simple .column-item .swell-block-columns__inner .item-heading .detail-list .swell-block-columns__inner .swell-block-column.license-register p {
  display: inline-block;
  margin-bottom: 0;
  padding: 4px 8px;
  color: #333333;
  font-size: 14px;
}
.two-column-a.simple .column-item .swell-block-columns__inner .item-heading .detail-list .swell-block-columns__inner .swell-block-column.license-register p:first-child {
  border-right: 1px solid #333333;
}
.two-column-a.simple .column-item .swell-block-columns__inner .column-img {
  position: absolute;
  top: 0;
  left: 510px;
  flex: 1;
  width: 80%;
  height: 370px;
  margin-bottom: 0;
  overflow: hidden;
}
.two-column-a.simple .column-item .swell-block-columns__inner .column-img figure {
  position: relative;
  z-index: -1;
}
.two-column-a.simple .column-item .swell-block-columns__inner .column-img figure img {
  width: 730px;
  height: 480px;
  -o-object-fit: cover;
     object-fit: cover;
}
.two-column-a.simple .column-item .swell-block-columns__inner .description {
  position: relative;
  max-width: 600px;
  width: 50%;
  margin-left: 0;
  padding-left: 48px;
  z-index: 1;
}
.two-column-a.simple .column-item .swell-block-columns__inner .description::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  width: calc(100vw - 60px);
  height: 290px;
  opacity: 0.9;
  z-index: -1;
  background-color: #f2f2f2;
}
.two-column-a.simple .column-item .swell-block-columns__inner .description::after {
  content: none;
}
.two-column-a.simple .column-item .swell-block-columns__inner .description .service-txt {
  margin-bottom: 30px;
}
.two-column-a.simple .column-item .swell-block-columns__inner .description .btn-simple:first-child {
  margin-right: 8px;
}
.two-column-a.simple .column-item:nth-of-type(even) {
  /*見出し*/
  /*画像 右*/
  /*説明文 左*/
}
.two-column-a.simple .column-item:nth-of-type(even) .item-heading {
  max-width: 600px;
  width: 50%;
  margin-left: auto;
  padding-left: 0;
}
.two-column-a.simple .column-item:nth-of-type(even) .item-heading::after {
  left: -16px;
}
.two-column-a.simple .column-item:nth-of-type(even) .column-img {
  left: auto;
  right: 510px;
}
.two-column-a.simple .column-item:nth-of-type(even) .column-img figure img {
  margin-left: auto;
}
.two-column-a.simple .column-item:nth-of-type(even) .description {
  margin-right: 0;
  padding-left: 0;
  margin-left: auto;
  padding-right: 60px;
}
.two-column-a.simple .column-item:nth-of-type(even) .description::before {
  left: auto;
  right: 0;
}
.two-column-a.simple .column-item:nth-of-type(even) .description::after {
  right: 0;
}

/* two-column-b 2カラム 商品情報 画像(テキスト付き) テーブルあり(別css)  */
.two-column-b {
  max-width: 1440px;
  margin: 0 auto;
  /* 商品名 全枠 */
}
.two-column-b .img-product {
  position: relative;
  /* 商品画像 */
  /* 商品名 英語orサブタイトル */
}
.two-column-b .img-product figure img {
  max-height: 400px;
  -o-object-fit: contain;
     object-fit: contain;
  filter: drop-shadow(8px 56px 4px #eee);
}
.two-column-b .img-product .product-sub-title {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  z-index: 1;
  margin-bottom: 0;
  padding: 8px 16px;
  background-color: rgba(255, 255, 255, 0.7);
  font-size: clamp(24px, 3vw, 32px);
  font-weight: bold;
  font-family: "Tektur", sans-serif;
}
.two-column-b .product-title {
  position: relative;
  margin-bottom: 0;
  padding: 16px;
  /* 商品名 */
  /* ワンポイント補足情報 */
}
.two-column-b .product-title h3 {
  margin-bottom: 0;
  color: white;
}
.two-column-b .product-title .supplement-accent {
  position: absolute;
  bottom: 12px;
  left: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 96px;
  height: 96px;
  background-color: white;
  border: 4px solid;
  border-radius: 50%;
  font-size: 16px;
  font-weight: bold;
}
.two-column-b .swell-block-column:nth-of-type(1) {
  /* 商品名 全枠 */
  /* 商品名 英語orサブタイトル */
}
.two-column-b .swell-block-column:nth-of-type(1) .product-title {
  background-color: #9C0020;
}
.two-column-b .swell-block-column:nth-of-type(1) .product-sub-title,
.two-column-b .swell-block-column:nth-of-type(1) .supplement-accent {
  color: #9C0020;
  border-color: #9C0020;
}
.two-column-b .swell-block-column:nth-of-type(1) tr td:nth-of-type(1) {
  background-color: #FCDFDF;
}
.two-column-b .swell-block-column:nth-of-type(1) tr td:nth-of-type(2) {
  background-color: #FBECEC;
}
.two-column-b .swell-block-column:nth-of-type(2) {
  /* 商品名 全枠 */
  /* 商品名 英語orサブタイトル */
}
.two-column-b .swell-block-column:nth-of-type(2) .product-title {
  background-color: #333333;
}
.two-column-b .swell-block-column:nth-of-type(2) .product-sub-title,
.two-column-b .swell-block-column:nth-of-type(2) .supplement-accent {
  border-color: #333333;
}
.two-column-b .swell-block-column:nth-of-type(2) tr td:nth-of-type(1) {
  background-color: #eee;
}
.two-column-b .swell-block-column:nth-of-type(2) tr td:nth-of-type(2) {
  background-color: #f2f2f2;
}

/* two-column-d 2カラム 中央配置 詳細情報 */
.two-column-d {
  margin-bottom: 0;
}
.two-column-d h3 {
  padding-left: 55px;
  color: #333333;
}
.two-column-d h3::before {
  top: 0;
  left: 0;
  width: 45px;
  height: 45px;
  background-repeat: no-repeat;
  background-size: contain;
}
.two-column-d h4 {
  padding: 10px 16px;
  background-color: #333333;
  color: white;
  border-left: none;
}
.two-column-d.swell-block-columns .swell-block-column:nth-of-type(1) h3::before {
  background-image: url("../images/icon/icon_memo.svg");
}
.two-column-d.swell-block-columns .swell-block-column:nth-of-type(2) h3::before {
  background-image: url("../images/icon/icon_box.svg");
}
.two-column-d .swell-block-step .swell-block-step__item {
  padding-bottom: 16px;
}
.two-column-d .swell-block-step .swell-block-step__item .swell-block-step__title + .swell-block-step__body {
  margin-top: 0;
}

/* 2カラム 枠付き */
.two-column-frame {
  padding: 20px;
  gap: 0;
  border: 1px solid #333333;
}
.two-column-frame p {
  font-size: 14px;
}

/* 背景画像上のテキスト 中央配置 */
.two-column-overall {
  margin-bottom: 0;
}
.two-column-overall figure {
  height: 720px;
  overflow: hidden;
}
.two-column-overall figure img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
}

/* 2カラム プロフィール用 ケース1 */
.two-column-profile-a {
  position: relative;
  background: linear-gradient(90deg, #333333 0, #333333 50%, #333333 50%);
}
.two-column-profile-a .swell-block-columns__inner {
  padding: 96px 48px 96px 0;
}
.two-column-profile-a .swell-block-columns__inner .swell-block-column:nth-of-type(1) {
  width: 60%;
}
.two-column-profile-a .swell-block-columns__inner .swell-block-column:nth-of-type(1) figure {
  width: 100%;
}
.two-column-profile-a .swell-block-columns__inner .swell-block-column:nth-of-type(1) figure img {
  width: 100%;
  height: 500px;
  -o-object-fit: cover;
     object-fit: cover;
}
.two-column-profile-a .swell-block-columns__inner .swell-block-column:nth-of-type(2) {
  position: absolute;
  top: 50%;
  right: 64px;
  transform: translateY(-50%);
  max-width: 660px;
  z-index: 1;
}
.two-column-profile-a .swell-block-columns__inner .swell-block-column:nth-of-type(2) * {
  color: white;
}

/*--------------------------------------------------------
*
* column 3カラム テンプレート
*
--------------------------------------------------------*/
/* 3カラム 全幅 */
.three-column-overall {
  margin-bottom: 0;
}
.three-column-overall .swell-block-column {
  position: relative;
  margin-bottom: 0;
}
.three-column-overall .swell-block-column figure img {
  width: 100%;
  height: 250px;
  -o-object-fit: cover;
     object-fit: cover;
}
.three-column-overall .swell-block-column .swell-block-button {
  position: absolute;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
  width: 270px;
  background-color: white;
  bottom: 30px;
  box-shadow: 0 0 40px gray;
}
.three-column-overall .swell-block-column .swell-block-button .swell-block-button__link {
  width: 100%;
  padding-right: 50px;
  border: none;
  text-align: left;
  font-weight: bold;
}
.three-column-overall .swell-block-column .swell-block-button .swell-block-button__link::before {
  position: absolute;
  content: "";
  top: 50%;
  right: 16px;
  transform: translate(0, -50%);
  font-weight: bold;
  font-family: "Font Awesome 6 Free";
  content: "\f0a9";
}
.three-column-overall .swell-block-column .swell-block-button .swell-block-button__link .count-txt {
  font-size: 12px;
}
/* 3カラム 均等配置 画像＋テキスト（2カラム） */
.three-column-a {
  margin-bottom: 60px;
}
.three-column-a .swell-block-columns__inner {
  margin: 0 auto;
  padding: 24px 0 0;
  background-color: #F8F8F8;
}
.three-column-a .swell-block-column .wp-block-columns {
  gap: 0;
}
.three-column-a .swell-block-column .wp-block-columns .wp-block-column:nth-of-type(1) {
  flex-basis: 80px !important;
}
.three-column-a .swell-block-column .wp-block-columns .wp-block-column:nth-of-type(2) {
  margin-left: 10px;
}
.three-column-a .swell-block-column .wp-block-columns h4 {
  margin-bottom: 5px;
  padding: 0;
  color: #333333;
  border-left: none;
}
.three-column-a .swell-block-column .wp-block-columns p {
  font-size: 14px;
}
.three-column-a .swell-block-column .wp-block-columns figure img {
  width: 100%;
}
.three-column-a .swell-block-column .wp-block-columns .btn-simple a {
  font-size: 14px;
}
.three-column-a .swell-block-column .wp-block-columns .btn-simple a::before {
  font-size: 16px;
}

/* 3カラム 各カラムに背景画像あり 情報多め */
.three-column-c {
  margin-bottom: 48px;
  /* スライダー用 */
}
.three-column-c .course-menu-item {
  position: relative;
  justify-content: space-between;
  align-self: flex-start;
  padding: 48px 0;
}
.three-column-c .course-menu-item::before {
  position: absolute;
  content: "";
  left: 0;
  bottom: 0;
  width: 100%;
  height: 70%;
  mix-blend-mode: multiply;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  z-index: -1;
}
.three-column-c .course-menu-item * {
  color: white;
  font-weight: bold;
}
.three-column-c .course-menu-item .course-menu-label {
  position: absolute;
  top: 0;
  left: 0;
  padding: 4px 8px;
  background-color: #333333;
  font-size: 14px;
}
.three-column-c .course-menu-item .course-menu-en {
  position: absolute;
  top: -24px;
  right: 24px;
  transform: rotate(8deg);
  white-space: nowrap;
  color: #f2f2f2;
  mix-blend-mode: overlay;
  letter-spacing: 8px;
  font-size: 64px;
}
.three-column-c .course-menu-item .course-menu-qualification {
  line-height: 1;
  text-align: center;
  font-size: clamp(20px, 2vw, 24px);
}
.three-column-c .course-menu-item .course-menu-qualification span {
  font-size: 14px !important;
}
.three-column-c .course-menu-item figure {
  position: relative;
}
.three-column-c .course-menu-item figure::before {
  position: absolute;
  content: "";
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: calc(100% - 48px);
  height: 220px;
  background-color: white;
  border-radius: 50%;
  box-shadow: 8px 12px 8px #ccc inset;
  z-index: -1;
}
.three-column-c .course-menu-item figure img {
  margin: 0 auto;
}
.three-column-c .course-menu-item .course-menu-bottom {
  align-items: center;
  padding: 0 24px;
}
.three-column-c .course-menu-item .course-menu-bottom .course-menu-summary {
  margin-bottom: 8px;
}
.three-column-c .course-menu-item .course-menu-bottom .course-menu-copy {
  margin-bottom: 8px;
  padding: 8px 16px;
  background-color: white;
  color: #333333;
  text-align: center;
  font-size: 16px;
}
.three-column-c .course-menu-item .course-menu-bottom .course-menu-detail {
  margin-bottom: 16px;
  text-align: left;
  font-weight: 400;
}
.three-column-c .course-menu-item .course-menu-bottom .btn-simple {
  text-align: center;
}
.three-column-c .course-menu-item.first-item .course-menu-qualification, .three-column-c .course-menu-item.second-item .course-menu-qualification {
  margin-bottom: 48px;
}
.three-column-c .course-menu-item.first-item {
  background-image: linear-gradient(#5F75E0 0%, #5F75E0 30%, #3D5AC6 30%);
}
.three-column-c .course-menu-item.first-item::before {
  background-image: url("../images/drone/course_menu_01.jpg");
}
.three-column-c .course-menu-item.first-item .course-menu-bottom {
  margin-top: 34px;
}
.three-column-c .course-menu-item.second-item {
  background-image: linear-gradient(#04C1CD 0%, #04C1CD 30%, #05686e 30%);
}
.three-column-c .course-menu-item.second-item::before {
  background-image: url("../images/drone/course_menu_02.jpg");
}
.three-column-c .course-menu-item.second-item .course-menu-bottom {
  margin-top: 45px;
}
.three-column-c .course-menu-item.agri-item {
  background-image: linear-gradient(#333333 0%, #333333 30%, #333333 30%);
}
.three-column-c .course-menu-item.agri-item::before {
  background: url("../images/drone/course_menu_03.jpg");
}
.three-column-c.slide-three {
  justify-content: center;
  /* 左右矢印 */
}
.three-column-c.slide-three.slick-dotted.slick-slider {
  margin-bottom: 96px;
}
.three-column-c.slide-three .slick-arrow {
  z-index: 1;
}
.three-column-c.slide-three .slick-arrow:before {
  font-size: 32px;
}
.three-column-c.slide-three .slick-prev {
  left: 0;
}
.three-column-c.slide-three .slick-next {
  right: 12px;
}
.three-column-c.slide-three .slick-list,
.three-column-c.slide-three .slick-track {
  display: flex;
}

/* 3カラム 背景画像あり Twitterプロフっぽいデザイン */
.three-column-d {
  max-width: 1200px;
  margin: 0 auto;
}
.three-column-d .swell-block-columns__inner {
  justify-content: space-between;
  align-items: flex-start;
}
.three-column-d .swell-block-columns__inner .column-item {
  position: relative;
  align-self: flex-start;
  width: calc(30% - 5px);
  padding: 48px 0 24px;
  background-color: #333333;
  mix-blend-mode: multiply;
}
.three-column-d .swell-block-columns__inner .column-item::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 40%;
  mix-blend-mode: multiply;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  z-index: -1;
}
.three-column-d .swell-block-columns__inner .column-item * {
  font-weight: bold;
}
.three-column-d .swell-block-columns__inner .column-item .column-copy-main {
  position: relative;
  top: -54px;
  padding-bottom: 12px;
  color: white;
}
.three-column-d .swell-block-columns__inner .column-item .column-copy-main::before {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  content: "";
  bottom: 0;
  width: 24px;
  height: 6px;
  background-color: #333333;
  border-radius: 10px;
}
.three-column-d .swell-block-columns__inner .column-item .column-title {
  position: absolute;
  top: 0;
  left: -12px;
  width: calc(100% + 24px);
  margin-top: 16px;
  padding: 16px 8px;
  background-color: #333333;
  color: white;
  border-radius: 5px;
  font-size: 14px;
  line-height: 1;
  text-align: center;
  box-shadow: 0 4px 12px #333333;
  font-size: clamp(16px, 1vw, 18px);
}
.three-column-d .swell-block-columns__inner .column-item .column-title::before {
  position: absolute;
  content: "";
  transform: translate(-50%, 0);
  border-top: 64px solid white;
  border-right: 50vw solid transparent;
  border-left: 50vw solid transparent;
  z-index: 1;
  bottom: -24px;
}
.three-column-d .swell-block-columns__inner .column-item figure {
  position: relative;
  width: calc(100% - 144px);
  margin: 32px auto 0;
  border-radius: 50%;
  overflow: hidden;
}
.three-column-d .swell-block-columns__inner .column-item figure::before {
  position: absolute;
  content: "";
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: calc(100% - 48px);
  height: 220px;
  background-color: white;
  border-radius: 50%;
  box-shadow: 8px 12px 8px #ccc inset;
  z-index: -1;
}
.three-column-d .swell-block-columns__inner .column-item .column-bottom {
  position: relative;
  align-items: center;
  margin-top: -56px;
  padding: 0 24px;
  color: white;
}
.three-column-d .swell-block-columns__inner .column-item .column-bottom .name-en {
  line-height: 1;
  font-size: clamp(24px, 3vw, 32px);
  font-weight: bold;
  font-family: "Tektur", sans-serif;
}
.three-column-d .swell-block-columns__inner .column-item .column-bottom .name-jp {
  font-size: clamp(18px, 2vw, 20px);
  font-weight: bold;
}
.three-column-d .swell-block-columns__inner .column-item .column-bottom .column-copy-txt {
  margin-bottom: 8px;
  text-align: center;
}
.three-column-d .swell-block-columns__inner .column-item .column-bottom .column-copy {
  max-width: 350px;
  width: 100%;
  padding: 16px;
  background-color: white;
  color: #333333;
  border-radius: 16px;
  text-align: left;
  font-size: 14px;
}
.three-column-d .swell-block-columns__inner .column-item:nth-of-type(1)::before {
  background-image: url("../images/drone/course_menu_01.jpg");
}
.three-column-d .swell-block-columns__inner .column-item:nth-of-type(2)::before {
  background-image: url("../images/drone/course_menu_02.jpg");
}
.three-column-d .swell-block-columns__inner .column-item:nth-of-type(3)::before {
  background: url("../images/drone/course_menu_03.jpg");
}

/* 3カラム 1カラム目が見出し テキスト */
.three-column-e {
  background-color: #f2f2f2;
}
.three-column-e .swell-block-columns__inner {
  justify-content: space-between;
  align-items: stretch;
  margin: 0;
}
.three-column-e .swell-block-columns__inner .swell-block-column {
  margin: 0 !important;
  padding: 24px;
}
.three-column-e .swell-block-columns__inner .swell-block-column:not(:nth-of-type(1)) {
  width: calc(35% + 25px);
}
.three-column-e .swell-block-columns__inner .swell-block-column:nth-of-type(2) {
  border-right: 3px solid white;
}
.three-column-e .swell-block-columns__inner .swell-block-column p:nth-of-type(1) {
  letter-spacing: 1px;
  font-size: clamp(16px, 2vw, 18px);
  font-weight: bold;
}
.three-column-e .swell-block-columns__inner .swell-block-column p:last-child {
  margin-bottom: 0;
}
.three-column-e .column-heading {
  display: flex;
  align-items: center;
  width: auto;
  margin-bottom: 0;
  background-color: #9C0020;
}
.three-column-e .column-heading h4 {
  margin-bottom: 0;
  padding: 8px 32px;
  color: white;
}

/*--------------------------------------------------------
*
* column 4カラム以上 テンプレート
*
--------------------------------------------------------*/
/* 4カラム 料金表示 バナースタイル 特殊 */
.l-column-a {
  max-width: 1023px;
  margin: 0 auto 16px;
}
.l-column-a .swell-block-columns__inner {
  justify-content: flex-start;
  max-width: 1000px;
  margin: 0 auto;
  line-height: 1.6;
}
.l-column-a .swell-block-columns__inner .swell-block-column {
  width: auto;
}
.l-column-a .swell-block-columns__inner .swell-block-column .wp-block-group {
  margin-bottom: 0;
  gap: 0;
}
.l-column-a .swell-block-columns__inner .swell-block-column .spraying-main-price {
  display: flex;
  align-items: flex-end;
  margin-bottom: 0;
}
.l-column-a .swell-block-columns__inner .swell-block-column .spraying-main-price .yen-box {
  margin-left: 4px;
  line-height: 1;
  text-align: center;
  font-size: 32px;
}
.l-column-a .swell-block-columns__inner .swell-block-column .spraying-main-price .yen-box span {
  display: block;
}
.l-column-a .swell-block-columns__inner .swell-block-column .spraying-main-price .yen-box .tax-small {
  font-size: 12px;
}
.l-column-a .swell-block-columns__inner .spraying-two,
.l-column-a .swell-block-columns__inner .spraying-four {
  margin-left: 8px;
}
.l-column-a .swell-block-columns__inner .spraying-two p,
.l-column-a .swell-block-columns__inner .spraying-four p {
  text-align: right;
}
.l-column-a .swell-block-columns__inner p {
  margin-bottom: 0;
  text-align: left;
}

/* 右上に三角形のカウント 画像下1/4に見出しが被る */
.l-column-b {
  /* 見出し 全枠 上に配置ずらし */
  /* 見出しの補足説明 */
}
.l-column-b .swell-block-columns__inner {
  justify-content: center;
}
.l-column-b .swell-block-column {
  position: relative;
  counter-increment: flow-counter;
}
.l-column-b .swell-block-column::after {
  position: absolute;
  content: counter(flow-counter, decimal-leading-zero);
  top: 0;
  left: 0;
  line-height: 1;
  letter-spacing: -1px;
  font-size: clamp(32px, 4vw, 40px);
  font-weight: bold;
  font-family: "Hind Siliguri", sans-serif;
}
.l-column-b .swell-block-column .column-txt {
  max-width: 416px;
  margin: 0 auto;
}
.l-column-b figure {
  position: relative;
  margin-bottom: 0;
}
.l-column-b figure::before {
  /* 三角形オブジェクト サイズによって配置調整必須 */
  position: absolute;
  content: "";
  top: -10px;
  left: -42px;
  transform: rotate(-45deg);
  border-left: 64px solid transparent;
  border-bottom: 64px solid white;
  border-right: 64px solid transparent;
}
.l-column-b figure img {
  height: 280px;
  -o-object-fit: cover;
     object-fit: cover;
}
.l-column-b .column-heading-wrap {
  position: relative;
  max-width: 314px;
  margin: -32px auto 0;
  padding: 16px 16px 8px;
  background-color: white;
}
.l-column-b .column-heading-wrap p {
  font-weight: bold;
}
.l-column-b .column-heading-wrap .main-heading {
  text-align: center;
  font-size: 20px;
}
.l-column-b .sub-heading {
  text-align: center;
  font-weight: bold;
}
.l-column-b.black-column {
  /* 見出し 全枠 上に配置ずらし */
}
.l-column-b.black-column .swell-block-column::after {
  color: white;
}
.l-column-b.black-column figure::before {
  /* 三角形オブジェクト サイズによって配置調整必須 */
  border-left: 64px solid transparent;
  border-bottom: 64px solid #333333;
  border-right: 64px solid transparent;
}
.l-column-b.black-column .column-heading-wrap {
  background-color: #333333;
}

/* 円ボーダー背景 テキスト 横並び */
.object-column-a {
  max-width: 1440px;
  margin: 0 auto;
}
.object-column-a .swell-block-columns__inner {
  justify-content: center;
  margin-left: 0;
}
.object-column-a .swell-block-columns__inner p:nth-of-type(1) {
  font-size: 24px;
}
.object-column-a .swell-block-columns__inner .swell-block-column {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 210px;
  height: 210px;
  border: 1px solid #eee;
  border-radius: 50%;
  padding: 20px;
  margin: 10px;
}

.l-column-c {
  position: relative;
}
.l-column-c .wp-block-columns {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  position: relative;
}
.l-column-c .object-title {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #f2f2f2;
  font-size: clamp(96px, 20vw, 160px);
  z-index: -1;
}

/* アイコン+テキスト 横並び */
/* メニューリスト 横並び */
.menu-content-a {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
}
.menu-content-a p:not(:last-child) {
  margin-right: 16px;
}
.menu-content-a p a {
  position: relative;
  padding: 8px 40px 8px 12px;
  background-color: #333333;
  color: white;
  border-radius: 5px;
  font-weight: bold;
  transition: 0.3s ease-in-out;
}
.menu-content-a p a::before {
  position: absolute;
  content: "";
  top: 50%;
  right: 16px;
  transform: translate(0, -50%);
  font-weight: bold;
  font-family: "Font Awesome 6 Free";
  content: "\f0ab";
  font-size: 14px;
  transition: 0.3s ease-in-out;
}
.menu-content-a p a:hover {
  opacity: 0.8;
}
.menu-content-a p a:hover::before {
  transform: translate(0, -51%);
}

/* 4カラム menu list 目次 */
.l-menu-list figure img {
  width: 100%;
}
.l-menu-list figure figcaption > a {
  position: relative;
  top: -15px;
  display: inline-block !important;
  max-width: 200px;
  width: 100%;
  margin: -10px auto 0;
  padding: 8px 20px 8px 7px;
  background-color: white;
  color: #333333;
  border: 2px solid #333333;
  line-height: 1;
  font-size: clamp(14px, 2vw, 16px);
  font-weight: bold;
}
.l-menu-list figure figcaption > a::before {
  position: absolute;
  content: "";
  top: 50%;
  right: 16px;
  transform: translate(0, -50%);
  font-weight: bold;
  font-family: "Font Awesome 6 Free";
  content: "\f107";
  right: 8px;
  font-size: 12px;
}

/*--------------------------------------------------------
*
* table テーブル テンプレート
*
--------------------------------------------------------*/
/* H4 見出し table用 ※不要なら削除 */
h3.heading-white {
  margin-bottom: 0;
  padding: 16px 8px;
  background-color: white;
  text-align: center;
}

/* H4 見出し table用 ※不要なら削除 */
h4.heading-white {
  margin-bottom: 0;
  padding: 16px 8px;
  background-color: white;
  text-align: center;
}

/* table-wrap-a 右上のtbセルを非表示 */
.table-wrap-a {
  /* テーブル全枠 */
}
.table-wrap-a .swell-block-column {
  position: relative;
  /* 背景に画像・イラスト表示 */
}
.table-wrap-a .swell-block-column:nth-of-type(1) .wp-block-table {
  background-color: #3D5AC6;
}
.table-wrap-a .swell-block-column:nth-of-type(1) .wp-block-table::before {
  background-image: url("../images/drone_illust/drone_delivery_03.svg");
}
.table-wrap-a .swell-block-column:nth-of-type(2) .wp-block-table {
  background-color: #00A8B2;
}
.table-wrap-a .swell-block-column:nth-of-type(2) .wp-block-table::before {
  background-image: url("../images/drone_illust/drone_with_camera.svg");
}
.table-wrap-a .wp-block-table {
  position: relative;
  padding: 24px 32px;
  /* テーブル サイズ・幅 */
}
.table-wrap-a .wp-block-table::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 120px;
  height: 100px;
  mix-blend-mode: multiply;
  background-repeat: no-repeat;
  background-position: left top;
  background-size: contain;
}
.table-wrap-a .wp-block-table table {
  position: relative;
  border-collapse: separate;
  max-width: 700px;
  margin: 0 auto;
}
.table-wrap-a .wp-block-table table tr {
  /* 最左tdセル 背景色 */
}
.table-wrap-a .wp-block-table table tr td {
  text-align: left;
}
.table-wrap-a .wp-block-table table tr:nth-of-type(1) {
  /* 1行目 背景色 */
  /* 右上tdセル 非表示 */
}
.table-wrap-a .wp-block-table table tr:nth-of-type(1) td {
  background-color: #333333;
  color: white;
  text-align: center;
  font-weight: bold;
}
.table-wrap-a .wp-block-table table tr:nth-of-type(1) td:nth-of-type(1) {
  background-color: transparent;
  border-top: none;
  border-left: none;
}
.table-wrap-a .wp-block-table table tr td:nth-of-type(1) {
  width: 56px;
  background-color: #f2f2f2;
  text-align: center;
  font-weight: 400;
}
.table-wrap-a .wp-block-table figcaption {
  color: white;
  text-align: left;
}

/* table-wrap-b 標準スタイル 最下にボタン付き */
.table-wrap-b .wp-block-table {
  position: relative;
  margin-bottom: 0;
  padding: 24px 24px 0;
  background-color: #87A6A6;
  /* テーブル サイズ・幅 */
}
.table-wrap-b .wp-block-table table {
  position: relative;
  border-collapse: separate;
  max-width: 700px;
  margin: 0 auto;
}
.table-wrap-b .wp-block-table table tr td:nth-of-type(1) {
  width: 60px;
  background-color: #f2f2f2;
  text-align: center;
  font-weight: bold;
}
.table-wrap-b .wp-block-table table tr td {
  text-align: left;
}
.table-wrap-b .wp-block-table figcaption {
  color: white;
  text-align: left;
}
.table-wrap-b .btn-simple {
  padding: 24px 16px;
  background-color: #87A6A6;
}
.table-wrap-b .btn-simple a {
  color: white;
}

/* table-wrap-c 最右にアイコン付き */
.table-wrap-c {
  max-width: 900px;
  margin: 0 auto 24px;
  /* テーブル全枠 */
}
.table-wrap-c .wp-block-table {
  position: relative;
  /* テーブル サイズ・幅 */
}
.table-wrap-c .wp-block-table table {
  position: relative;
  border-collapse: separate;
  max-width: 900px;
  margin: 0 auto;
}
.table-wrap-c .wp-block-table table tr {
  /* 最左tdセル アイコン付き */
}
.table-wrap-c .wp-block-table table tr td {
  position: relative;
}
.table-wrap-c .wp-block-table table tr:nth-of-type(1) {
  /* 1行目 背景色 */
}
.table-wrap-c .wp-block-table table tr:nth-of-type(1) td {
  background-color: #333333;
  color: white;
  text-align: center;
  font-weight: bold;
}
.table-wrap-c .wp-block-table table tr:nth-of-type(2), .table-wrap-c .wp-block-table table tr:nth-of-type(3) {
  /* 2〜3行目 最右td 余白調整 */
}
.table-wrap-c .wp-block-table table tr:nth-of-type(2) td:nth-of-type(1), .table-wrap-c .wp-block-table table tr:nth-of-type(3) td:nth-of-type(1) {
  padding-left: 48px;
}
.table-wrap-c .wp-block-table table tr:nth-of-type(2) {
  /* 2行目 最右tdアイコン */
}
.table-wrap-c .wp-block-table table tr:nth-of-type(2) td:before {
  background-image: url("../images/icon/icon_younger.svg");
}
.table-wrap-c .wp-block-table table tr:nth-of-type(3) {
  /* 3行目 最右tdアイコン */
}
.table-wrap-c .wp-block-table table tr:nth-of-type(3) td::before {
  background-image: url("../images/icon/icon_student_hat.svg");
}
.table-wrap-c .wp-block-table table tr td:nth-of-type(1)::before {
  position: absolute;
  content: "";
  top: 4px;
  left: 8px;
  width: 32px;
  height: 32px;
  mix-blend-mode: multiply;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

/* table-wrap-d テーブル単体 最下にボタン付き td右セル背景色 真上のタイトルを結合 */
.wp-block-table.table-wrap-d {
  position: relative;
  /* テーブル サイズ・幅 */
}
.wp-block-table.table-wrap-d table {
  position: relative;
  border-collapse: separate;
  margin: 0 auto;
}
.wp-block-table.table-wrap-d table tr td {
  border-color: white !important;
}
.wp-block-table.table-wrap-d table tr td:nth-of-type(1) {
  width: 100px;
  text-align: center;
  font-weight: bold;
}

/* table-wrap-company 会社概要テンプレート */
.table-wrap-company {
  max-width: 900px;
  margin: 0 auto;
  /* テーブル全枠 */
}
.table-wrap-company .swell-block-column {
  margin-bottom: 0;
}
.table-wrap-company .swell-block-column figure {
  margin-bottom: 0;
}
.table-wrap-company .wp-block-table {
  position: relative;
  /* テーブル サイズ・幅 */
}
.table-wrap-company .wp-block-table table {
  position: relative;
  border-collapse: separate;
  max-width: 900px;
  margin: 0 auto;
}
.table-wrap-company .wp-block-table table tr td {
  position: relative;
}

/*--------------------------------------------------------
*
* list リスト テンプレート
*
--------------------------------------------------------*/
/* 見出し リスト ボタンリンク */
.list-wrap-a {
  margin: 0 auto;
}
.list-wrap-a .list-heading {
  max-width: 400px;
  margin: 0 auto;
}
.list-wrap-a.small {
  max-width: 500px;
}
.list-wrap-a.wide .list-heading {
  max-width: 100%;
}
.list-wrap-a ul.list-content {
  margin: -48px auto 32px;
  padding: 48px 24px 24px;
  background-color: white;
}
.list-wrap-a ul.list-content li {
  position: relative;
  padding-left: 24px;
}
.list-wrap-a ul.list-content li::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  font-weight: bold;
  font-family: "Font Awesome 6 Free";
  content: "\f14a";
}

/* 縦並びリスト 左右交互に画像付き 矢印あり */
.list-wrap-b {
  margin: 0 auto;
  /* リスト途中に挿入される補足情報 */
}
.list-wrap-b .list-heading {
  max-width: 400px;
  margin: 0 auto;
  font-size: clamp(18px, 2vw, 24px);
}
.list-wrap-b .list-heading p {
  margin-bottom: 0;
}
.list-wrap-b.small {
  max-width: 600px;
}
.list-wrap-b.wide .list-heading {
  max-width: 100%;
}
.list-wrap-b .list-sub-heading {
  max-width: 900px;
  margin: 0 auto 48px;
  padding: 8px 24px;
  font-size: clamp(18px, 2vw, 24px);
}
.list-wrap-b .list-content {
  position: relative;
  margin: 0 auto;
}
.list-wrap-b .list-content.arrow-content-a::before, .list-wrap-b .list-content.arrow-content-a::after {
  position: absolute;
  content: "";
  left: 50%;
  transform: translateX(-50%);
}
.list-wrap-b .list-content.arrow-content-a::before {
  top: 0;
  width: 24px;
  height: calc(100% - 64px);
  background-color: #04C1CD;
}
.list-wrap-b .list-content.arrow-content-a::after {
  bottom: 80px;
  border-left: 56px solid transparent;
  border-top: 48px solid #04C1CD;
  border-right: 56px solid transparent;
}
.list-wrap-b .list-content .list-column {
  justify-content: center;
  margin: 0 auto;
  padding: 48px 24px;
}
.list-wrap-b .list-content .list-column:nth-of-type(1) {
  background-color: #f2f2f2;
}
.list-wrap-b .list-content .list-column:nth-of-type(2) {
  background-color: #E7EFEF;
}
.list-wrap-b .list-content .list-column > .wp-block-column {
  max-width: 900px;
  margin: auto;
}
.list-wrap-b .list-content .list-column .list-item {
  position: relative;
  width: 50%;
  height: 160px;
}
.list-wrap-b .list-content .list-column .list-item > .wp-block-column {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
.list-wrap-b .list-content .list-column .list-item.left {
  margin-right: auto;
}
.list-wrap-b .list-content .list-column .list-item.left > .wp-block-column {
  flex-direction: row-reverse;
}
.list-wrap-b .list-content .list-column .list-item.left .item-count {
  right: -48px;
}
.list-wrap-b .list-content .list-column .list-item.left .item-count::before {
  right: 100%;
}
.list-wrap-b .list-content .list-column .list-item.left .item-copy figure {
  bottom: 48px;
}
.list-wrap-b .list-content .list-column .list-item.right {
  margin-left: auto;
}
.list-wrap-b .list-content .list-column .list-item.right .item-count {
  left: -48px;
}
.list-wrap-b .list-content .list-column .list-item.right .item-count::before {
  left: 100%;
}
.list-wrap-b .list-content .list-column .list-item.right .item-copy figure {
  top: 48px;
}
.list-wrap-b .list-content .list-column .list-item .item-count {
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 96px;
  height: 96px;
  margin: auto 0;
  background-color: #04C1CD;
  color: white;
  border-radius: 50%;
  border: 5px solid #00A8B2;
  font-size: clamp(48px, 5vw, 56px);
  font-family: "Hind Siliguri", sans-serif;
}
.list-wrap-b .list-content .list-column .list-item .item-count::before {
  position: absolute;
  content: "";
  top: 50%;
  transform: translateY(-50%);
  background-color: #04C1CD;
  width: 300px;
  height: 10px;
  z-index: -1;
}
.list-wrap-b .list-content .list-column .list-item .item-copy {
  position: relative;
  max-width: 330px;
  width: 100%;
  margin-bottom: 0;
  padding: 16px 8px;
  background-color: white;
  border: 5px solid #00A8B2;
}
.list-wrap-b .list-content .list-column .list-item .item-copy p {
  margin: 0 auto;
  font-size: clamp(16px, 2vw, 20px);
  font-weight: bold;
}
.list-wrap-b .list-content .list-column .list-item .item-copy figure {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}

/* 矢印の最後 アイコン イラスト付き */
.flow-goal {
  position: relative;
  margin: 0 auto;
  background-color: #00A8B2;
}
.flow-goal .swell-block-columns__inner .swell-block-column {
  margin-bottom: 0 !important;
}
.flow-goal .swell-block-columns__inner .swell-block-column:nth-of-type(1) {
  position: absolute;
  bottom: -32px;
  left: calc(50% - 240px);
  transform: translateX(-50%);
  width: auto;
}
.flow-goal .swell-block-columns__inner .swell-block-column:nth-of-type(2) {
  padding: 16px;
  text-align: center;
}
.flow-goal .swell-block-columns__inner .swell-block-column:nth-of-type(2) p {
  margin-bottom: 0 !important;
  padding: 16px;
  background-color: white;
  font-size: clamp(22px, 3vw, 32px);
  font-weight: bold;
}
.flow-goal .person-goal figure img {
  width: 200px;
  height: 100%;
  -o-object-fit: content;
     object-fit: content;
}
.flow-goal .accent-txt {
  margin-left: -64px;
  margin-bottom: 0;
}

/* リスト 幅900px */
.list-wrap-c {
  margin-bottom: 48px;
}
.list-wrap-c .list-content {
  max-width: 900px;
  margin: 0 auto;
}
.list-wrap-c .list-content {
  padding-top: 24px;
}

/* 数字リスト 01 */
ol.list-count-a {
  list-style: none;
}
ol.list-count-a > li {
  position: relative;
  counter-increment: count-a;
  margin-bottom: 16px;
  padding-left: 48px;
  padding-bottom: 16px;
  border-bottom: 1px dashed #ccc;
}
ol.list-count-a > li::before {
  position: absolute;
  content: counter(count-a, decimal-leading-zero);
  top: 0;
  left: 0;
  font-family: "Hind Siliguri", sans-serif;
}
ol.list-count-a > li::after {
  position: absolute;
  content: "";
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  font-weight: bold;
  font-family: "Font Awesome 6 Free";
  content: "\f715";
  top: 2px;
  left: 24px;
  transform: translateY(0) scaleX(-1);
  font-size: 10px;
}
ol.list-count-a > li ol {
  list-style-type: decimal;
}
ol.list-count-a > li ol > li {
  padding-left: 8px;
}

/* リスト 枠付き */
.caution-list {
  padding: 24px;
  border: 1px solid;
}

/*--------------------------------------------------------
*
* cv コンバージョン
*
--------------------------------------------------------*/
/* シンプル | 見出し 訴求テキスト ボタン */
.cv-area {
  position: relative;
  padding-top: 96px;
  background-image: url("../images/drone/drone_agri_flight_eyecatch.jpg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
.cv-area::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #63820b;
  mix-blend-mode: multiply;
}
.cv-area .cv-copy {
  position: relative;
  max-width: 1023px;
  margin: 0 auto 48px;
  padding: 48px;
  background-color: white;
}
/*--------------------------------------------------------
*
* FAQ 初期値で回答タグが非表示 質問タグをクリックするとスライド開閉する
*
--------------------------------------------------------*/
.swell-block-faq {
  /* 開閉用の矢印アイコン */
  /* クリック時に矢印が回転 */
}
.swell-block-faq .faq_q::before,
.swell-block-faq .faq_a::before {
  left: 1px;
}
.swell-block-faq .faq_a {
  display: none;
}
.swell-block-faq .faq_a a {
  color: #00A8B2;
  text-decoration: underline;
}
.swell-block-faq .faq_q::after {
  content: "▼";
  float: right;
  transition: transform 0.3s ease-in-out;
}
.swell-block-faq .faq_q.open::after {
  transform: rotate(180deg);
}

/*--------------------------------------------------------
*
* Slick slider スライダー 
*
--------------------------------------------------------*/
/* 左右矢印 */
.slick-arrow {
  z-index: 1;
}
.slick-arrow:before {
  font-size: 32px;
}

.slick-prev {
  left: 0;
}

.slick-next {
  right: 12px;
}

/*--------------------------------------------------------
*
* animation 共通アニメーション
*
--------------------------------------------------------*/
.fadeUp {
  opacity: 0;
}
.fadeUp.fadeAnimation {
  /* アニメーション */
  -webkit-animation: fadeUp 0.5s ease-out forwards;
          animation: fadeUp 0.5s ease-out forwards;
}

/* アニメーション fadeAnimation */
@-webkit-keyframes fadeUp {
  0% {
    opacity: 0;
    transform: translateY(50px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes fadeUp {
  0% {
    opacity: 0;
    transform: translateY(50px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
/* アニメーション 下から 中央配置 */
.fadeUpCenter {
  opacity: 0;
}
.fadeUpCenter.fadeAnimation {
  /* アニメーション */
  -webkit-animation: fadeUpCenter 0.5s 0.5s ease-out forwards;
          animation: fadeUpCenter 0.5s 0.5s ease-out forwards;
}

/* アニメーション fadeAnimation */
@-webkit-keyframes fadeUpCenter {
  0% {
    top: calc(50% + 100px);
    opacity: 0;
  }
  100% {
    top: 50%;
    opacity: 1;
  }
}
@keyframes fadeUpCenter {
  0% {
    top: calc(50% + 100px);
    opacity: 0;
  }
  100% {
    top: 50%;
    opacity: 1;
  }
}
.fade_left {
  opacity: 0;
}
.fade_left.fadeAnimation {
  /* アニメーション */
  -webkit-animation: fadeLeft 0.5s ease-in-out forwards;
          animation: fadeLeft 0.5s ease-in-out forwards;
}

@-webkit-keyframes fadeLeft {
  0% {
    opacity: 0;
    transform: translateX(100px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes fadeLeft {
  0% {
    opacity: 0;
    transform: translateX(100px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
.fade_right {
  opacity: 0;
}
.fade_right.fadeAnimation {
  /* アニメーション */
  -webkit-animation: fadeRight 0.5s ease-in-out forwards;
          animation: fadeRight 0.5s ease-in-out forwards;
}

@-webkit-keyframes fadeRight {
  0% {
    opacity: 0;
    transform: translateX(-100px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes fadeRight {
  0% {
    opacity: 0;
    transform: translateX(-100px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
/*--------------------------------------------------------
レスポンシブ
--------------------------------------------------------*/
/* max-width:1199px */
@media screen and (max-width: 1199px) {
  /*--------------------------------------------------------
  共通CSS
  --------------------------------------------------------*/
  /*--------------------------------------------------------
  fv メインビジュアル（タイトル・アイキャッチ部分）
  --------------------------------------------------------*/
  .fv-wrap {
    height: 670px;
    padding: 208px 16px 0;
  }
  .fv-wrap > .swell-block-columns__inner {
    flex-direction: column;
    align-items: center;
    /* リッチカラム */
  }
  .fv-wrap > .swell-block-columns__inner .swell-block-column {
    width: 100%;
  }
  .fv-wrap .title-wrap {
    text-align: center;
  }
  /*--------------------------------------------------------
  about-data メタバースの特徴・ニーズ
  --------------------------------------------------------*/
  #about-data {
    margin-top: -56px;
  }
  #about-data .h2-heading {
    padding-top: 72px !important;
  }
}
/* max-width:959px */
@media screen and (max-width: 959px) {
  /*--------------------------------------------------------
  共通CSS
  --------------------------------------------------------*/
  .lp-template #content {
    padding: 0;
  }
  .lp-template .__pc {
    display: none;
  }
  .lp-template .__sp {
    display: block;
  }
  .lp-template .l-wrap {
    padding: 0 0 48px;
  }
  .lp-template .l-inner {
    padding-left: 16px;
    padding-right: 16px;
  }
  /* リッチカラム */
  .fv-wrap.__sp,
.list-wrap,
.trouble-wrap,
.reason-wrap,
#special-present,
.profile-wrap,
.qa-wrap {
    max-width: 499px;
    margin: 0 auto;
  }
  /* バンザイ */
  .banzai {
    text-indent: 0;
    line-height: 1.3;
  }
  .banzai::before, .banzai::after {
    width: 36px;
    height: 58px;
  }
  .banzai::before {
    left: -48px;
  }
  .banzai::after {
    right: -48px;
  }
  .banzai br {
    display: block;
  }
  /*--------------------------------------------------------
   header ヘッダー
  --------------------------------------------------------*/
  .header-lp {
    width: 100%;
    padding: 0;
    background-color: white;
  }
  .header-lp .swell-block-columns__inner {
    padding: 0;
  }
  .header-lp .logo-content {
    position: absolute;
  }
  .header-lp .logo-content a img {
    padding: 8px 16px;
  }
  /* ヘッダーボタン */
  .header-button {
    position: absolute;
    top: 0;
    right: 0;
    height: 60px;
    display: flex;
  }
  .header-button .header-icon {
    display: flex;
    align-items: center;
    margin: 0;
    padding: 0 16px;
    color: white;
    font-size: clamp(16px, 2vw, 24px);
    font-weight: bold;
  }
  .header-button .header-icon span {
    position: relative;
    display: inline-block;
    margin-bottom: 0;
    padding: 16px 16px 16px 40px;
  }
  .header-button .header-icon span::before {
    position: absolute;
    content: "";
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    font-weight: bold;
    font-family: "Font Awesome 6 Free";
    width: 32px;
    height: 32px;
    background-repeat: no-repeat;
    background-size: contain;
  }
  .header-button .header-icon.header-phone {
    margin-right: 64px;
    background-color: #42B3C4;
    transition: 0.3s ease-in-out;
  }
  .header-button .header-icon.header-phone span::before {
    background-image: url("../images/icon/icon_sp.svg");
  }
  .header-button .header-icon:hover {
    background-color: #77dbea;
  }
  /*--------------------------------------------------------
   cv-wrap コンバージョンエリア
  --------------------------------------------------------*/
  .cv-wrap .swell-block-columns__inner {
    justify-content: center;
    flex-direction: column;
    margin-left: 0;
  }
  .cv-wrap .swell-block-columns__inner .swell-block-column {
    width: 100%;
    margin: 0;
  }
  #cv-01 {
    padding-top: 72px;
  }
  /*--------------------------------------------------------
   column カラム
  --------------------------------------------------------*/
  /* 人物イラスト3人 */
  .three-column-b {
    max-width: 700px;
    margin: -64px auto;
    padding-bottom: 24px;
  }
  /*--------------------------------------------------------
  contact お問い合わせフォーム
  --------------------------------------------------------*/
  .contact-wrap {
    padding: 48px 16px;
  }
  .cf7_container {
    padding: 16px !important;
  }
  .wpcf7 {
    padding: 0;
  }
  .wpcf7 .form-bottom,
.wpcf7 .cf7_btn {
    padding: 16px !important;
  }
  .wpcf7 .cf7_row {
    flex-direction: column;
  }
  .wpcf7 .cf7_row .form-label {
    width: 100%;
    margin-bottom: 8px;
    margin-right: 0;
  }
  /*--------------------------------------------------------------
  footer-wrap フッター
  --------------------------------------------------------------*/
  /*--------------------------------------------------------------
  footer-btn フッターボタン（追従型）
  --------------------------------------------------------------*/
  .footer-btn .swell-block-column {
    font-size: clamp(16px, 2vw, 24px);
  }
  .footer-btn .swell-block-column span {
    padding: 12px 8px 12px 32px;
  }
  .footer-btn .swell-block-column span::before {
    width: clamp(20px, 3vw, 32px);
    height: clamp(20px, 3vw, 33px);
  }
  /* ページトップボタン */
  .p-fixBtnWrap {
    bottom: 4.25em;
  }
  /*--------------------------------------------------------
  *
  * column カラム
  *
  --------------------------------------------------------*/
  /* リッチカラム使用 1カラム背景ぼかし */
  .one-column-01 {
    padding: 16px;
  }
  .one-column-01 .swell-block-columns__inner {
    margin: 0;
  }
  .one-column-01 .swell-block-columns__inner .swell-block-column {
    margin: 0;
  }
  /* リッチカラム使用 2カラム背景ぼかし */
  .two-column-01 {
    padding-bottom: 24px;
  }
  .two-column-01 .swell-block-column {
    margin: 0;
  }
  /* リッチカラム使用 3カラム背景ぼかし */
  .three-column-01 .swell-block-columns__inner .swell-block-column {
    margin: 0;
    padding: 8px;
  }
  .three-column-01 .swell-block-columns__inner .swell-block-column .item-heading {
    margin-bottom: 24px;
  }
}
/* max-width:599px */
@media screen and (max-width: 599px) {
  /*--------------------------------------------------------
  *
  * 共通CSS
  *
  --------------------------------------------------------*/
  .lp-template {
    /* 改行 */
  }
  .lp-template .br-pc {
    display: none;
  }
  .lp-template .br-tb,
.lp-template .br-sp {
    display: block;
  }
  /*--------------------------------------------------------
   見出し H2 H3
  --------------------------------------------------------*/
  .h3-heading {
    padding-top: 0;
  }
  .h3-heading .jn {
    letter-spacing: 0px;
    text-indent: 0px;
  }
  /*--------------------------------------------------------
   テキスト
  --------------------------------------------------------*/
  .l-read {
    margin: 0 auto 24px;
  }
  /*--------------------------------------------------------
  list リスト
  --------------------------------------------------------*/
  .post_content .bubble-list {
    margin-bottom: 0;
    padding: 16px;
  }
  .post_content .bubble-list::before {
    bottom: -16px;
    border-top: 16px solid #ECF6FF;
    border-left: 16px solid transparent;
    border-right: 16px solid transparent;
  }
  .post_content .bubble-list.pc-right::before {
    top: auto;
    left: 48px;
    right: auto;
    bottom: -16px;
    transform: unset;
    border-top: 16px solid #ECF6FF;
    border-left: 16px solid transparent;
    border-right: 16px solid transparent;
    border-bottom: none;
  }
  .swell-block-columns .swell-block-column.flex-horizontal {
    flex-direction: column;
    padding: 0;
  }
  /*--------------------------------------------------------
  *
  * table テーブル 表
  *
  --------------------------------------------------------*/
  .wp-block-table.l-table td,
.wp-block-table.l-table th {
    padding: 8px;
  }
  .wp-block-table.l-table td:first-child {
    width: 80px;
  }
  /*--------------------------------------------------------
   header ヘッダー
  --------------------------------------------------------*/
  /* ヘッダーボタン */
  .header-button .header-icon span {
    padding: 0 0 0 32px;
    line-height: 1.3;
  }
  /*--------------------------------------------------------
   fv メインビジュアル（タイトル・アイキャッチ部分）
  --------------------------------------------------------*/
  .fv-wrap {
    height: 600px;
    padding: 128px 0 0;
    /* サブタイトル */
  }
  .fv-wrap .fv-left {
    padding: 0 16px;
  }
  .fv-wrap .title-wrap .sub-title {
    position: relative;
    top: 16px;
  }
  /*--------------------------------------------------------
  about-data メタバースの特徴・ニーズ
  --------------------------------------------------------*/
  #about-data {
    margin-top: -96px;
  }
  #about-data .h2-heading {
    padding-top: 96px !important;
    padding-bottom: 0;
  }
  /*--------------------------------------------------------
   cv-wrap コンバージョンエリア
  --------------------------------------------------------*/
  .cv-wrap .swell-block-columns__inner {
    padding: 80px 16px;
  }
  /*--------------------------------------------------------
   company 会社概要
  --------------------------------------------------------*/
  .company-inner .wp-block-column {
    padding-bottom: 64px;
  }
  /*--------------------------------------------------------
  *
  * column カラム
  *
  --------------------------------------------------------*/
  .lp-template {
    /* リッチカラム使用 1カラム背景ぼかし */
    /* リッチカラム使用 3カラム背景ぼかし */
  }
  .lp-template .one-column-01 {
    padding: 0;
  }
  .lp-template .one-column-01 .swell-block-columns__inner .swell-block-column {
    width: 100%;
  }
  .lp-template .three-column-01 .swell-block-columns__inner {
    row-gap: 48px;
  }
  .lp-template .three-column-01 .swell-block-columns__inner .swell-block-column {
    width: 100%;
    padding: 0;
  }
  .lp-template .three-column-01 .swell-block-columns__inner .swell-block-column figure img {
    height: auto;
  }
  /* 1枚画像の横スクロール */
  .scroll-img .scroll-column {
    position: relative;
    overflow: auto;
    display: flex;
  }
  .scroll-img .scroll-column .wp-block-image {
    flex-shrink: 0;
  }
  .scroll-img .scroll-column .wp-block-image img {
    width: 660px;
    -o-object-fit: contain;
       object-fit: contain;
  }
}
/*--------------------------------------------------------
*
* template01 テンプレート1
*
--------------------------------------------------------*/
.template01 {
  /*--------------------------------------------------------
   fv メインビジュアル（タイトル・アイキャッチ部分）
  --------------------------------------------------------*/
}
.template01 .fv-wrap {
  position: relative;
  height: 670px;
  padding: 208px 64px 32px;
}
.template01 .fv-wrap::before, .template01 .fv-wrap::after {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-size: cover;
}
.template01 .fv-wrap::before {
  background-image: url("../images/bg/vector_fv.svg");
  background-position: center;
}
.template01 .fv-wrap::after {
  background-image: linear-gradient(180deg, #0C5661 0%, #42B3C4 30%, transparent 100%);
  mix-blend-mode: multiply;
}
.template01 .fv-wrap > .swell-block-columns__inner {
  position: relative;
  max-width: 1440px;
  justify-content: space-between;
  margin: 0 auto;
  gap: 32px;
  z-index: 1;
  /* リッチカラム */
}
.template01 .fv-wrap > .swell-block-columns__inner .swell-block-column {
  margin: 0;
}
.template01 .fv-wrap .title-wrap {
  margin-bottom: 48px;
  color: white;
}
.template01 .fv-wrap .title-wrap .main-title {
  margin-bottom: 0;
}
.template01 .fv-wrap .title-wrap .main-title.en {
  line-height: 1;
  letter-spacing: 4px;
  font-size: clamp(52px, 7vw, 72px);
  font-weight: bold;
  font-family: "Tektur", sans-serif;
}
.template01 .fv-wrap .title-wrap .main-title.jn {
  font-size: clamp(20px, 2vw, 24px);
  font-weight: bold;
}
.template01 .fv-wrap .title-wrap .sub-title {
  color: white;
  filter: drop-shadow(0px 0px 8px white);
  letter-spacing: 1px;
  font-size: clamp(24px, 4vw, 40px);
  font-weight: bold;
}
.template01 .fv-wrap .fv-left {
  flex: 1.1;
}
.template01 .fv-wrap .fv-right {
  flex: 1;
}
.template01 .fv-wrap .button-wrap a {
  box-shadow: 0 0 48px rgba(255, 255, 255, 0.4);
}
.template01 .fv-wrap .button-wrap a span {
  position: relative;
  padding-left: 18px;
  font-size: clamp(16px, 2vw, 20px);
  font-weight: bold;
}
.template01 .fv-wrap .button-wrap a span::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  font-weight: bold;
  font-family: "Font Awesome 6 Free";
  left: -18px;
  width: 40px;
  height: 40px;
  background-image: url("../images/icon/icon_sp.svg");
  background-repeat: no-repeat;
  background-size: contain;
}

/*--------------------------------------------------------
*
* template01 テンプレート1
*
--------------------------------------------------------*/
/*--------------------------------------------------------
 変数定義
--------------------------------------------------------*/
/*--------------------------------------------------------
 ここから テンプレート1
--------------------------------------------------------*/
.template01 {
  /*--------------------------------------------------------
   共通CSS
  --------------------------------------------------------*/
  /* ハンバーガーボタン */
  /* ドロワーメニュー */
  /* ヘッダーボタン */
  /* l-wrap 下余白の調整 */
  /* 枠1 矢印付き 労務ロボ（Service>選定・相談） */
  /* 枠 矢印なし */
  /* 見出し H2 背景グラデーション */
  /* 見出し H3 カラー */
  /*--------------------------------------------------------
   fv メインビジュアル（左に画像：右にタイトル）
  --------------------------------------------------------*/
  /*--------------------------------------------------------
   cv コンバージョン
  --------------------------------------------------------*/
  /*--------------------------------------------------------
   service サービス
  --------------------------------------------------------*/
  /*--------------------------------------------------------
   about-us 当社が選ばれる6つの理由 
  --------------------------------------------------------*/
  /*--------------------------------------------------------
   price 料金 費用
  --------------------------------------------------------*/
  /*--------------------------------------------------------
   contact 申請フォーム 
  --------------------------------------------------------*/
  /*--------------------------------------------------------
   company 会社概要 
  --------------------------------------------------------*/
  /*--------------------------------------------------------
   footer フッター 
  --------------------------------------------------------*/
  /*--------------------------------------------------------
   footer-btn フッターボタン 
  --------------------------------------------------------*/
  /*--------------------------------------------------------
   button ボタン 
  --------------------------------------------------------*/
  /* ボタン コンテンツ */
  /*--------------------------------------------------------
   column カラム
  --------------------------------------------------------*/
  /*--------------------------------------------------------
  *
  * レスポンシブ  max-width:1199px
  *
  --------------------------------------------------------*/
  /*--------------------------------------------------------
  *
  * レスポンシブ  max-width:959px
  *
  --------------------------------------------------------*/
  /*--------------------------------------------------------
  *
  * レスポンシブ  max-width:599px
  *
  --------------------------------------------------------*/
}
.template01 .hamburger-btn {
  background-color: #0049AB;
}
.template01 .hamburger-btn .bar {
  background-color: white;
}
.template01 .drawer-menu ul.main-menu li a::before {
  background-image: url(../images/icon/arrow_apply_btn_robot.svg);
}
.template01 .header-button .header-icon.header-phone {
  background-color: #659DEA;
}
.template01 .l-wrap {
  padding-bottom: 48px;
}
.template01 .l-box {
  position: relative;
  max-width: 600px;
  height: auto;
  margin: 0 auto;
  background-color: #659DEA;
  color: white;
}
.template01 .l-box::before {
  position: absolute;
  content: "";
  top: -48px;
  bottom: auto;
  left: 50%;
  right: auto;
  transform: translateX(-50%);
  border-left: 78px solid transparent;
  border-top: 36px solid #ECE12C;
  border-right: 78px solid transparent;
  opacity: 1;
}
.template01 .l-box .l-read {
  margin-bottom: 8px;
  text-align: center;
  font-weight: bold;
}
.template01 .l-box .important-frame {
  position: relative;
  text-align: center;
  color: #ECE12C;
  font-size: clamp(20px, 2vw, 24px);
  font-weight: bold;
}
.template01 .l-box .important-frame::before, .template01 .l-box .important-frame::after {
  content: "";
  width: 30px;
  height: 30px;
  position: absolute;
}
.template01 .l-box .important-frame::before {
  border-left: solid 2px #ECE12C;
  border-top: solid 2px #ECE12C;
  top: 0;
  left: 0;
}
.template01 .l-box .important-frame::after {
  border-right: solid 2px #ECE12C;
  border-bottom: solid 2px #ECE12C;
  bottom: 0;
  right: 0;
}
.template01 .l-box-02 {
  position: relative;
  max-width: 600px;
  height: auto;
  margin: 0 auto;
  padding: 24px;
  background-color: #659DEA;
  color: white;
  border-radius: 8px;
  font-size: clamp(16px, 2vw, 20px);
}
.template01 .h2-heading {
  padding: 0 16px;
}
.template01 .h2-heading,
.template01 .h2-heading .en::before,
.template01 #contact .cv-wrap.contact-heading-wrap {
  background-image: linear-gradient(0, #0049AB 0%, #3078CC 50%, #659DEA 100%);
}
.template01 .h2-heading .en::before {
  bottom: -8px;
}
.template01 .h3-heading {
  padding-top: 0;
}
.template01 .h3-heading .en {
  color: #ECF6FF;
}
.template01 .h3-heading .jn {
  position: relative;
  color: #659DEA;
}
.template01 .h3-heading .jn::before {
  background-color: #659DEA;
}
.template01 .fv-wrap {
  padding-top: 128px;
  /* ボタン コンテンツ */
}
.template01 .fv-wrap::before {
  max-width: 1090px;
  width: 70%;
  background-image: url("../images/labor/vector_fv.svg");
  background-size: cover;
  background-position: -190px top;
}
.template01 .fv-wrap::after {
  content: none;
  background-image: linear-gradient(0, white 0%, white 50%, transparent 100%);
  mix-blend-mode: screen;
}
.template01 .fv-wrap > .swell-block-columns__inner {
  /* リッチカラム */
}
.template01 .fv-wrap > .swell-block-columns__inner > .swell-block-column {
  flex: none;
  width: 600px;
  margin-left: auto;
}
.template01 .fv-wrap .title-wrap {
  text-align: center;
}
.template01 .fv-wrap .title-wrap .main-title {
  margin-bottom: 16px;
}
.template01 .fv-wrap .title-wrap .main-title.en {
  color: #0049AB;
  letter-spacing: clamp(4px, 1vw, 6px);
  font-size: clamp(42px, 8vw, 80px);
  font-family: "Hammersmith One", sans-serif;
}
.template01 .fv-wrap .title-wrap .main-title.en span {
  display: inline-block;
}
.template01 .fv-wrap .title-wrap .main-title.en span:nth-child(1) {
  padding-right: 8px;
}
.template01 .fv-wrap .title-wrap .main-title.en span:nth-child(2) {
  padding-left: 8px;
}
.template01 .fv-wrap .title-wrap .main-title.jn {
  display: inline-block;
  padding: 0px 24px;
  background-color: rgba(255, 255, 255, 0.9);
  color: #659DEA;
  border-radius: 8px;
  font-size: clamp(20px, 3vw, 32px);
  font-weight: bold;
}
.template01 .fv-wrap .title-wrap .main-title.jn span {
  color: #0049AB;
  font-size: clamp(24px, 4vw, 40px);
}
.template01 .fv-wrap .title-wrap .fv-features > .swell-block-columns__inner {
  justify-content: center;
  gap: 12px;
}
.template01 .fv-wrap .title-wrap .fv-features .features-item {
  width: calc(33% - 20px);
  height: 100%;
  margin-bottom: 16px;
  padding: 8px 4px;
  background-color: #659DEA;
  border-radius: 8px;
  font-size: clamp(16px, 2vw, 24px);
  font-weight: bold;
}
.template01 .fv-wrap .button-tmp {
  /* ボタン 見出し */
}
.template01 .fv-wrap .button-tmp > .wp-block-column {
  text-align: center;
}
.template01 .fv-wrap .button-tmp > .wp-block-column p {
  margin-bottom: 4px;
}
.template01 .fv-wrap .button-tmp .button-heading {
  color: #0049AB;
  /* アクセント バンザイ */
}
.template01 .fv-wrap .button-tmp .button-heading::before, .template01 .fv-wrap .button-tmp .button-heading::after {
  position: absolute;
  content: "";
  top: 0;
  transform: unset;
  width: 20px;
  height: 32px;
  background-repeat: no-repeat;
  background-size: contain;
}
.template01 .fv-wrap .button-tmp .button-heading::before {
  left: -32px;
  background-image: url("../images/icon/sun_burst_navy_left.svg");
}
.template01 .fv-wrap .button-tmp .button-heading::after {
  right: -32px;
  background-image: url("../images/icon/sun_burst_navy_right.svg");
}
.template01 .fv-wrap .button-wrap {
  position: relative;
}
.template01 .fv-wrap .button-wrap::after {
  position: absolute;
  content: "";
  bottom: 0;
  right: 64px;
  width: 84px;
  height: 116px;
  filter: drop-shadow(6px 12px 4px rgba(0, 0, 0, 0.2));
  background-image: url("../images/labor/icon_robot.png");
  background-repeat: no-repeat;
  background-size: contain;
}
.template01 .cv-wrap .swell-block-columns__inner {
  padding-top: 16px;
}
.template01 .cv-wrap .swell-block-columns__inner::before {
  content: none;
}
.template01 .cv-wrap .swell-block-columns__inner::after {
  background-image: none;
}
.template01 .cv-wrap .swell-block-columns__inner .button-heading {
  color: #0049AB;
}
.template01 .cv-wrap .swell-block-columns__inner .button-heading::before {
  background-image: url("../images/icon/icon_sun_uni_navy_left.svg");
}
.template01 #service .two-column-01 > .swell-block-columns__inner {
  margin-left: 0;
}
.template01 #service .l-box {
  margin: 80px auto 0;
  padding: 24px;
  border-radius: 8px;
}
.template01 #service .count-wrap {
  counter-increment: service-counter;
}
.template01 #service .count-wrap .h3-heading {
  position: relative;
}
.template01 #service .count-wrap .h3-heading::before {
  position: absolute;
  content: "";
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 0);
  content: counter(service-counter, decimal-leading-zero);
  color: #ECF6FF;
  line-height: 1;
  font-size: 96px;
  font-weight: bold;
  font-family: "Hind Siliguri", sans-serif;
}
.template01 #about-us .swell-block-columns__inner {
  justify-content: center;
}
.template01 #price .h3-wrap-one {
  padding-top: 48px;
}
.template01 #price .h3-wrap-one .bubble-list {
  margin-bottom: 24px;
  z-index: 1;
}
.template01 #price .wp-block-image {
  margin-bottom: 24px;
}
.template01 #contact .cv-wrap.contact-heading-wrap .swell-block-columns__inner {
  padding-top: 48px;
}
.template01 #company .company-inner {
  background-image: linear-gradient(#eee 0%, white 100%);
}
.template01 .footer-wrap.swell-block-columns::before {
  background-image: url(../images/labor/vector_fv.svg);
}
.template01 .footer-wrap.swell-block-columns::after {
  background-image: linear-gradient(0, #0049AB 0%, #3078CC 50%, #659DEA 100%);
}
.template01 .footer-btn .swell-block-column:nth-child(1) {
  background-color: #0049AB;
}
.template01 .button-wrap {
  position: relative;
}
.template01 .button-wrap a {
  width: 100%;
  max-width: 480px;
  padding: 24px 8px;
  background-color: #0049AB;
  box-shadow: none;
}
.template01 .three-column-01 .item-heading {
  padding-top: 80px;
}
.template01 .three-column-01 .item-heading::after {
  top: 0;
  bottom: auto;
  color: #659DEA;
}
.template01 .three-column-01 .swell-block-columns__inner .swell-block-column figure img {
  height: 250px;
}
@media screen and (max-width: 1199px) {
  .template01 {
    /*--------------------------------------------------------
    fv メインビジュアル（タイトル・アイキャッチ部分）
    --------------------------------------------------------*/
  }
  .template01 .fv-wrap {
    padding: 128px 16px 0;
  }
  .template01 .fv-wrap::before {
    width: 100%;
    background-position: -300px center;
    background-size: contain;
  }
}
@media screen and (max-width: 959px) {
  .template01 {
    /*--------------------------------------------------------
    fv メインビジュアル（タイトル・アイキャッチ部分）
    --------------------------------------------------------*/
    /*--------------------------------------------------------
     service サービス
    --------------------------------------------------------*/
    /*--------------------------------------------------------
    column カラム
    --------------------------------------------------------*/
    /* 3カラム */
  }
  .template01 .h2-heading {
    padding: 0 16px;
  }
  .template01 .fv-wrap {
    height: 600px;
    padding: 176px 16px 0;
  }
  .template01 .fv-wrap::before {
    width: 100%;
    background-position: center top;
    background-size: contain;
  }
  .template01 .fv-wrap::after {
    content: "";
  }
  .template01 .fv-wrap > .swell-block-columns__inner > .swell-block-column {
    max-width: 600px;
    width: 100%;
    margin-right: auto;
    padding: 0;
  }
  .template01 .fv-wrap .title-wrap .main-title.jn {
    padding: 0;
  }
  .template01 #service .l-box {
    margin-top: 0;
  }
  .template01 .three-column-01 .swell-block-columns__inner .swell-block-column {
    display: flex;
    flex-direction: row-reverse;
    justify-content: center;
    align-items: center;
    gap: clamp(16px, 4vw, 48px);
  }
  .template01 .three-column-01 .swell-block-columns__inner .swell-block-column figure {
    max-width: 230px;
    width: 30%;
  }
  .template01 .three-column-01 .swell-block-columns__inner .swell-block-column figure img {
    height: auto;
  }
  .template01 .three-column-01 .item-heading {
    width: 220px;
    text-align: left;
  }
  .template01 .three-column-01 .item-heading::after {
    left: 0;
    bottom: 56px;
    transform: unset;
    width: auto;
    letter-spacing: 0;
  }
}
@media screen and (max-width: 599px) {
  .template01 {
    /*--------------------------------------------------------
    fv メインビジュアル（タイトル・アイキャッチ部分）
    --------------------------------------------------------*/
    /*--------------------------------------------------------
    service サービス
    --------------------------------------------------------*/
    /*--------------------------------------------------------
    about-us 当社が選ばれる3つの理由
    --------------------------------------------------------*/
    /*--------------------------------------------------------
    contact 申請フォーム
    --------------------------------------------------------*/
    /*--------------------------------------------------------
    bubble フキダシ
    --------------------------------------------------------*/
    /*--------------------------------------------------------
    step 
    --------------------------------------------------------*/
    /* 連結ライン */
    /*--------------------------------------------------------
    column カラム
    --------------------------------------------------------*/
    /* 3カラム */
  }
  .template01 .fv-wrap {
    height: 510px;
  }
  .template01 .fv-wrap .title-wrap {
    margin-bottom: 24px;
  }
  .template01 .fv-wrap .title-wrap .fv-features > .swell-block-columns__inner {
    justify-content: space-between;
  }
  .template01 .fv-wrap .title-wrap .fv-features .features-item {
    width: calc(33% - 8px);
  }
  .template01 .fv-wrap .button-wrap::after {
    right: 0;
    width: 70px;
    height: 96px;
  }
  .template01 #service .l-box {
    width: 100%;
    margin-top: 24px;
  }
  .template01 #service .count-wrap .h3-heading::before {
    left: 0;
    bottom: -12px;
    transform: unset;
    font-size: 64px;
  }
  .template01 #about-us .swell-block-columns .swell-block-column:last-child {
    margin-top: -24px;
  }
  .template01 #contact .cv-wrap.contact-heading-wrap .swell-block-columns__inner {
    padding: 48px 16px;
  }
  .template01 .tmp-bubble-01 .c-balloon .c-balloon__icon {
    left: 4px;
    width: 40px;
  }
  .template01 .swell-block-step__item:not(:last-child)::after {
    border-left: 1px dashed #0049AB;
    content: "";
    display: block;
    height: 100%;
    left: 23px;
    position: absolute;
    top: 0;
    width: 0;
    z-index: -1;
  }
  .template01 .swell-block-step:not(.is-style-big):not(.is-style-small) > .swell-block-step__item > .swell-block-step__body {
    margin-left: -24px;
  }
  .template01 .three-column-01 .swell-block-columns__inner {
    row-gap: 0;
  }
  .template01 .three-column-01 .swell-block-columns__inner .item-heading {
    width: 70%;
  }
}
/*# sourceMappingURL=style.css.map */