@charset "UTF-8";
/* ============================================================
 * Reset CSS — HTML Living Standard 準拠
 * WordPress コーポレートサイト向け
 * （エントリ SCSS から @use で同梱される partial）
 * ============================================================
 *
 * 対象サイト構成:
 *   - 共通: ヘッダー / フッター
 *   - トップページ（キービジュアル、アバウトアス、モーダル、ニュース一覧、
 *     コラム一覧、メンバー紹介、イベント告知、コンタクト入り口）
 *   - ニュース一覧（アーカイブ）/ ニュース詳細
 *   - コラム一覧（アーカイブ）/ コラム詳細
 *   - コンタクトフォーム（固定ページ）
 *
 * 方針:
 *   1. すべての要素から余計なマージン・パディングを除去
 *   2. box-sizing: border-box をグローバルに適用
 *   3. フォント関連のリセットは継承ベースで統一
 *   4. HTML Living Standard で廃止・非推奨の要素は対象外
 *   5. WAI-ARIA・アクセシビリティに配慮したリセット
 * ============================================================ */
/* ------------------------------------------------------------
 * 1. Box Model — すべての要素を border-box に統一
 * ------------------------------------------------------------ */
*,
*::before,
*::after {
  box-sizing: border-box;
}

/* ------------------------------------------------------------
 * 2. Document Root
 * ------------------------------------------------------------ */
:where(html) {
  line-height: 1.5;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
       text-size-adjust: 100%;
  -webkit-tap-highlight-color: transparent;
  scroll-behavior: smooth;
}

@media (prefers-reduced-motion: reduce) {
  :where(html) {
    scroll-behavior: auto;
  }
  /*
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
  */
}
/* ------------------------------------------------------------
 * 3. Body
 * ------------------------------------------------------------ */
:where(body) {
  margin: 0;
  min-height: 100dvh;
  line-height: inherit;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

/* ------------------------------------------------------------
 * 4. Sectioning & Heading — 構造化コンテンツ
 *    header, footer, main, nav, aside, section, article,
 *    hgroup, search, h1–h6, address
 * ------------------------------------------------------------ */
:where(header, footer, main, nav, aside, section, article, hgroup, search) {
  display: block;
}

:where(h1, h2, h3, h4, h5, h6) {
  margin: 0;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
}

:where(address) {
  font-style: inherit;
}

/* ------------------------------------------------------------
 * 5. Grouping Content — テキストブロック系
 *    p, blockquote, pre, figure, figcaption, hr,
 *    ol, ul, menu, dl, dt, dd
 * ------------------------------------------------------------ */
:where(p, blockquote, figure, figcaption, dl, dd) {
  margin: 0;
}

:where(pre) {
  margin: 0;
  font-family: ui-monospace, "SFMono-Regular", "Cascadia Code", "Source Code Pro", Menlo, Consolas, "DejaVu Sans Mono", monospace;
  font-size: inherit;
  overflow-x: auto;
}

:where(blockquote) {
  padding: 0;
}

:where(hr) {
  margin: 0;
  border: 0;
  border-top: 1px solid;
  color: inherit;
  height: 0;
}

:where(ol, ul, menu) {
  margin: 0;
  padding: 0;
  list-style: none;
}

/* ------------------------------------------------------------
 * 6. Text-level Semantics — インラインテキスト
 *    a, abbr, b, strong, em, i, small, s, u, code, kbd, samp,
 *    var, sub, sup, mark, time, data, ruby, bdi, bdo, span, br, wbr
 * ------------------------------------------------------------ */
:where(a) {
  color: inherit;
  text-decoration: inherit;
  background-color: transparent;
}

:where(b, strong) {
  font-weight: bolder;
}

:where(small) {
  font-size: 80%;
}

:where(code, kbd, samp) {
  font-family: ui-monospace, "SFMono-Regular", "Cascadia Code", "Source Code Pro", Menlo, Consolas, "DejaVu Sans Mono", monospace;
  font-size: 1em;
}

:where(sub, sup) {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

:where(sub) {
  bottom: -0.25em;
}

:where(sup) {
  top: -0.5em;
}

:where(abbr[title]) {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
  cursor: help;
  border-bottom: none;
}

:where(mark) {
  background: transparent;
  color: inherit;
}

/* ------------------------------------------------------------
 * 7. Embedded Content — メディア系
 *    img, picture, video, audio, canvas, svg, iframe,
 *    object, embed, source
 * ------------------------------------------------------------ */
:where(img, picture, video, canvas, svg) {
  display: block;
  max-width: 100%;
}

:where(img, video) {
  height: auto;
}

:where(img) {
  border-style: none;
}

:where(svg) {
  overflow: visible;
}

:where(svg:not([fill])) {
  fill: currentColor;
}

:where(iframe) {
  border: 0;
}

/* ------------------------------------------------------------
 * 8. Tabular Data — テーブル
 *    table, caption, thead, tbody, tfoot, tr, th, td, colgroup, col
 * ------------------------------------------------------------ */
:where(table) {
  border-collapse: collapse;
  border-spacing: 0;
  text-indent: 0;
}

:where(caption) {
  text-align: left;
}

:where(th) {
  font-weight: inherit;
  text-align: inherit;
}

:where(td, th) {
  padding: 0;
}

/* ------------------------------------------------------------
 * 9. Forms — フォーム要素（コンタクトフォーム対応）
 *    form, fieldset, legend, label, input, textarea, select,
 *    button, output, progress, meter, datalist, option, optgroup
 * ------------------------------------------------------------ */
:where(form) {
  margin: 0;
}

:where(fieldset) {
  margin: 0;
  padding: 0;
  border: 0;
  min-width: 0;
}

:where(legend) {
  padding: 0;
  white-space: normal;
}

:where(label) {
  display: inline-block;
}

:where(button, input, select, textarea, optgroup) {
  margin: 0;
  padding: 0;
  font: inherit;
  color: inherit;
  letter-spacing: inherit;
  line-height: inherit;
}

:where(button, input) {
  overflow: visible;
}

:where(button, [type=button], [type=reset], [type=submit]) {
  -webkit-appearance: button;
  -moz-appearance: button;
       appearance: button;
  cursor: pointer;
  background: transparent;
  border: 0;
}

:where(button::-moz-focus-inner, [type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner) {
  border-style: none;
  padding: 0;
}

:where(select) {
  text-transform: none;
}

:where(textarea) {
  overflow: auto;
  resize: vertical;
}

:where([type=number]::-webkit-inner-spin-button, [type=number]::-webkit-outer-spin-button) {
  height: auto;
}

:where([type=search]) {
  -webkit-appearance: textfield;
  -moz-appearance: textfield;
       appearance: textfield;
  outline-offset: -2px;
}

:where([type=search]::-webkit-search-decoration) {
  -webkit-appearance: none;
}

:where(::-webkit-file-upload-button) {
  -webkit-appearance: button;
  font: inherit;
}

:where(output) {
  display: inline-block;
}

:where(progress) {
  vertical-align: baseline;
}

/* ------------------------------------------------------------
 * 10. Interactive Elements — インタラクティブ要素
 *     details, summary, dialog
 * ------------------------------------------------------------ */
:where(details) {
  display: block;
}

:where(summary) {
  display: list-item;
  cursor: pointer;
}

:where(dialog) {
  margin: auto;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  max-width: unset;
  max-height: unset;
}

:where(dialog::backdrop) {
  background: rgba(0, 0, 0, 0.5);
}

/* ------------------------------------------------------------
 * 11. Accessibility — フォーカス・非表示要素
 * ------------------------------------------------------------ */
:where([hidden]) {
  display: none !important;
}

:where(:focus-visible) {
  outline: 2px solid currentColor;
  outline-offset: 2px;
}

:where(:focus:not(:focus-visible)) {
  outline: none;
}

/* ------------------------------------------------------------
 * 12. WordPress 固有のリセット
 *     WP が出力するクラス・要素への対応
 * ------------------------------------------------------------ */
/* WordPress 画像キャプション */
:where(.wp-caption) {
  max-width: 100%;
}

/* WordPress 配置クラス */
:where(.alignnone,
.aligncenter,
.alignleft,
.alignright,
.alignwide,
.alignfull) {
  margin-left: 0;
  margin-right: 0;
}

:where(.aligncenter) {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

/* WordPress ギャラリー */
:where(.gallery) {
  margin: 0;
  padding: 0;
}

/* WordPress 管理バー表示時の調整 */
:where(html.wp-toolbar) {
  scroll-padding-top: 32px;
}

/* WordPress スクリーンリーダー用テキスト */
:where(.screen-reader-text) {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

:where(.screen-reader-text:focus) {
  position: static;
  width: auto;
  height: auto;
  padding: 0;
  margin: 0;
  overflow: visible;
  clip: auto;
  white-space: normal;
  background: #fff;
  color: #000;
  z-index: 100000;
}

html {
  scroll-behavior: smooth;
  scroll-padding-top: 88px;
}
html:has(.logged-in.admin-bar) {
  scroll-padding-top: 120px;
}

body {
  min-width: 1280px;
  margin: 0 auto;
  font-family: "Poppins", "Noto Sans JP", sans-serif;
}
body.logged-in.admin-bar.post-type-archive-news, body.logged-in.admin-bar.post-type-archive-columns, body.logged-in.admin-bar.page-template-page-contact, body.logged-in.admin-bar.page, body.logged-in.admin-bar.single-news, body.logged-in.admin-bar.single-columns {
  margin-top: 120px;
}

img {
  display: block;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

.header {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 9999;
  width: 100%;
  min-width: 1280px;
  margin: 0 auto;
  background-color: transparent;
  transition: background-color 0.3s;
}
body.logged-in.admin-bar .header {
  top: 32px;
}
body.single-news .header {
  background-color: #fff;
}
.header__hamburger {
  display: none;
  position: relative;
  z-index: 1000;
  width: 44px;
  height: 44px;
  background: transparent;
  border: none;
  cursor: pointer;
}
.header__hamburger-line {
  display: block;
  width: 24px;
  height: 2px;
  background-color: #1A162E;
  transition: transform 0.3s, opacity 0.3s;
}
.header.is-scrolled {
  background-color: #FFF;
}
.header .header__inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  max-width: 1012px;
  height: 88px;
  margin: 0 auto;
  padding: 0 16px;
}
.header .header__inner .header__logo a {
  display: block;
  text-decoration: none;
}
.header .header__inner .header__logo a .header__logo-image {
  width: 112px;
  height: auto;
}
.header .header__inner .header__nav .header__nav-list {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 0 40px;
  list-style: none;
}
.header .header__inner .header__nav .header__nav-list .header__nav-item .header__nav-logo {
  display: none;
}
.header .header__inner .header__nav .header__nav-list .header__nav-item .header__nav-link {
  color: #1A162E;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.06;
  letter-spacing: normal;
  text-decoration: none;
  white-space: nowrap;
}
.header .header__inner .header__nav .header__nav-list .header__nav-item .header__nav-link--btn {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0 8px;
  width: 200px;
  height: 56px;
  border-radius: 60px;
  background-color: #1A162E;
  color: #FFF;
  font-family: "Poppins", sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.3;
  letter-spacing: 1px;
}
.header .header__inner .header__nav .header__nav-list .header__nav-item .header__nav-link--btn .fa-regular {
  font-family: "Font Awesome 7 Free";
  font-size: 23px;
  font-weight: 400;
}
.header .header__inner .header__nav .header__nav-list .header__nav-item .header__nav-link--btn svg {
  width: 23px;
  height: 23px;
}
.header .header__inner .header__nav .header__nav-list .header__nav-item .header__nav-link--btn-blank {
  width: 200px;
  height: 56px;
  border-radius: 60px;
  background-color: transparent;
  color: transparent;
  pointer-events: none;
}
.header.header--except-home {
  background-color: #fff;
}

.breadcrumbs {
  min-width: 1280px;
}
.breadcrumbs .breadcrumbs__content {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
  gap: 0 10px;
  width: 980px;
  margin: 0 auto;
  color: #45556C;
  font-family: "Poppins", "Noto Sans JP", sans-serif;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
}

main {
  background-color: #FFF;
}

@keyframes blinking {
  0% {
    opacity: 1;
  }
  20% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
.kv .kv__inner {
  position: relative;
  padding: 160px 0;
  background: url(../img/img_kv_bg.avif) no-repeat top center/cover;
  overflow: hidden;
}
.kv .kv__inner::before {
  position: absolute;
  top: -315px;
  right: 0;
  left: 0;
  width: 1701px;
  height: 1510px;
  margin: 0 auto;
  background: url(../img/img_kv_gradationBall.avif) no-repeat top center/1701px 1510px;
  content: "";
  pointer-events: none;
}
.kv .kv__inner::after {
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
  width: 100%;
  height: 115px;
  margin: 0 auto;
  background: url(../img/img_waves_top.png) no-repeat top center/100% 115px;
  content: "";
  pointer-events: none;
}
.kv .kv__inner .kv__content {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 1012px;
  padding: 0 16px;
  margin: 0 auto;
}
.kv .kv__inner .kv__content .kv__text-wrapper {
  width: 567px;
}
.kv .kv__inner .kv__content .kv__text-wrapper .kv__title {
  color: #1A162E;
  font-size: 72px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -1.344px;
}
.kv .kv__inner .kv__content .kv__text-wrapper .kv__description {
  margin-top: 60px;
}
.kv .kv__inner .kv__content .kv__text-wrapper .kv__description .kv__text {
  color: #1A162E;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: normal;
}
.kv .kv__inner .kv__content .kv__text-wrapper .kv__description .kv__text:nth-of-type(n + 2) {
  margin-top: 20px;
}
.kv .kv__inner .kv__content .kv__logo .kv__logo-wrapper {
  position: relative;
  width: 310px;
  height: 282px;
}
.kv .kv__inner .kv__content .kv__logo .kv__logo-wrapper .kv__logo-bg {
  position: absolute;
  top: 0;
  left: 18px;
  z-index: 10;
  width: 273px;
  height: auto;
  animation: blinking 5s ease-in-out infinite alternate;
}
.kv .kv__inner .kv__content .kv__logo .kv__logo-wrapper .kv__logo-main {
  position: relative;
  z-index: 20;
  width: 310px;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
}

.section__inner {
  width: 1012px;
  margin: 0 auto;
  padding: 96px 16px;
}

.section__title .section__title-ja {
  display: block;
  color: #2962B9;
  text-align: center;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.14;
  letter-spacing: 3.6px;
}
.section__title .section__title-en {
  display: block;
  margin-top: 16px;
  color: #1A162E;
  text-align: center;
  font-family: "Poppins", sans-serif;
  font-size: 100px;
  font-weight: 600;
  line-height: 1;
  letter-spacing: normal;
}

.about .about__description {
  margin-top: 48px;
  color: #1A162E;
  text-align: center;
  font-size: 20px;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: normal;
}
.about .about__features {
  display: flex;
  justify-content: center;
  align-items: stretch;
  gap: 0 16px;
  margin-top: 48px;
}
.about .about__features .about__feature-card {
  width: 316px;
  padding: 25px 23px 31px;
  border-radius: 16px;
  border: 1px solid rgba(91, 153, 194, 0.22);
  background-color: rgba(255, 255, 255, 0.65);
  box-shadow: 0 4px 24px 0 rgba(100, 130, 200, 0.08);
}
.about .about__features .about__feature-card .about__feature-title-en {
  color: #51A2FF;
  font-family: "Poppins", sans-serif;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.33;
  letter-spacing: 1.2px;
}
.about .about__features .about__feature-card .about__feature-title-ja {
  margin-top: 4px;
  min-height: 64px;
  color: #1A162E;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.33;
  letter-spacing: normal;
}
.about .about__features .about__feature-card .about__feature-description {
  margin-top: 16px;
  color: #45556C;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.43;
  letter-spacing: normal;
}
.about .about__statement {
  margin-top: 48px;
}
.about .about__statement .about__statement-button {
  position: relative;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 0 8px;
  width: 600px;
  height: 56px;
  padding: 15px 16px;
  margin: 0 auto;
  border-top: 1px solid #1A162E;
  border-bottom: 1px solid #1A162E;
}
.about .about__statement .about__statement-button .about__statement-button-ja {
  color: #1A162E;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.33;
  letter-spacing: normal;
}
.about .about__statement .about__statement-button .about__statement-button-separator {
  color: #1A162E;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.33;
  letter-spacing: normal;
}
.about .about__statement .about__statement-button .about__statement-button-en {
  margin-top: 3px;
  color: #1A162E;
  font-family: "Poppins", sans-serif;
  font-size: 10px;
  font-weight: 400;
  line-height: 2.4;
  letter-spacing: normal;
}
.about .about__statement .about__statement-button::after {
  position: absolute;
  right: 16px;
  top: 0;
  bottom: 0;
  margin: auto 0;
  content: "";
  width: 24px;
  height: 24px;
  background-color: transparent;
  background-image: url("../img/ico_arrow_right_1a162e.svg");
  background-repeat: no-repeat;
  background-position: top 50% left 50%;
  background-size: 24px;
}
.about .about__statement .about__modal {
  overflow: visible;
}
.about .about__statement .about__modal::backdrop {
  background: rgba(0, 0, 0, 0.5);
}
.about .about__statement .about__modal .about__modal-close {
  position: absolute;
  z-index: 100;
  top: -40px;
  right: 0;
  width: 1em;
  height: 1em;
  color: #FFF;
  font-size: 30px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: normal;
  background: transparent;
  border: none;
  cursor: pointer;
  padding: 0;
}
.about .about__statement .about__modal .about__modal-close svg {
  width: 30px;
  height: 30px;
}
.about .about__statement .about__modal .about__modal-content {
  width: 900px;
  height: 70vh;
  padding: 75px 100px;
  border-radius: 16px;
  border: 1px solid rgba(91, 153, 194, 0.22);
  background-color: #FFF;
  box-shadow: 0 4px 24px 0 rgba(100, 130, 200, 0.08);
  overflow-y: scroll;
}
.about .about__statement .about__modal .about__modal-content::-webkit-scrollbar {
  display: none;
}
.about .about__statement .about__modal .about__modal-content .about__modal-content-title {
  color: #1A162E;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.33;
  letter-spacing: normal;
  text-align: center;
}
.about .about__statement .about__modal .about__modal-content .about__modal-content-text {
  margin-top: 50px;
  color: #1A162E;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.85;
  letter-spacing: normal;
}
.about .about__statement .about__modal .about__modal-content .about__modal-content-text p:nth-of-type(n + 2) {
  margin-top: 1.5em;
}

section.news {
  position: relative;
  background-color: #FAFAFA;
}
section.news .news__list-wrapper {
  margin-top: 48px;
}
section.news .news__list-wrapper .news__list {
  list-style: none;
}
section.news .news__list-wrapper .news__list .news__item:nth-last-of-type(1) .news__link {
  border-bottom: 1px solid #1A162E;
}
section.news .news__list-wrapper .news__list .news__item .news__link {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  padding: 16px 16px;
  border-top: 1px solid #1A162E;
}
section.news .news__list-wrapper .news__list .news__item .news__link .news__date {
  margin-right: 12px;
  color: #1A162E;
  font-family: "Poppins", sans-serif;
  font-size: 12px;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 1px;
}
section.news .news__list-wrapper .news__list .news__item .news__link .news__title {
  min-width: 0;
  width: 831px;
  color: #1A162E;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.3;
  letter-spacing: normal;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
section.news .news__list-wrapper .news__list .news__item .news__link::after {
  margin-left: 10px;
  content: "";
  width: 24px;
  height: 24px;
  background-color: transparent;
  background-image: url("../img/ico_arrow_right_1a162e.svg");
  background-repeat: no-repeat;
  background-position: top 50% left 50%;
  background-size: 24;
}
section.news .news__list-wrapper .news__uc {
  margin-top: 48px;
  display: block;
  width: 100%;
  text-align: center;
}
section.news.news--list-page {
  min-height: calc(100vh - 49px);
  background-color: #FFF;
}
section.news.news--list-page .section__inner {
  padding: 80px 16px;
}
section.news.news--list-page .section__inner .news__list-wrapper .news-archive__pagination {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  gap: 0 10px;
  margin-top: 50px;
}
section.news.news--list-page .section__inner .news__list-wrapper .news-archive__pagination .page-numbers {
  width: 55px;
  height: 55px;
  border-radius: 50%;
  background-color: #1A162E;
  color: #fff;
  font-family: "Poppins", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 55px;
  letter-spacing: 0;
  text-align: center;
}
section.news.news--list-page .section__inner .news__list-wrapper .news-archive__pagination .page-numbers.current {
  background-color: #51A2FF;
}
section.news.news--list-page .section__inner .news__list-wrapper .news-archive__pagination .page-numbers.prev i.fa-solid {
  color: #fff;
}
section.news.news--list-page .section__inner .news__list-wrapper .news-archive__pagination .page-numbers.next i.fa-solid {
  color: #fff;
}

.view__more {
  margin-top: 48px;
}
.view__more .view__more-link {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0 10px;
  width: 200px;
  height: 56px;
  margin: 0 auto;
  border-radius: 60px;
  background-color: #1A162E;
  color: #FFF;
  font-family: "Poppins", sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.3;
  letter-spacing: 1px;
}
.view__more .view__more-link .fa-solid {
  font-family: "Font Awesome 7 Free";
  font-size: 20px;
  font-weight: 900;
}

.media {
  position: relative;
  background: url(../img/img_kv_bg.avif) no-repeat top center/cover;
  overflow: hidden;
}
.media::before {
  position: absolute;
  top: -315px;
  right: 0;
  left: 0;
  width: 1701px;
  height: 1510px;
  margin: 0 auto;
  background: url(../img/img_kv_gradationBall.avif) no-repeat top center/1701px 1510px;
  content: "";
}
.media .media__inner {
  position: relative;
  background: rgba(255, 255, 255, 0.5);
}
.media .media__inner::before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  width: 100%;
  height: 120px;
  margin: 0 auto;
  background: url(../img/img_waves_bottom_gray.png) no-repeat top center/100% 120px;
  content: "";
}
.media .media__inner::after {
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
  width: 100%;
  height: 120px;
  margin: 0 auto;
  background: url(../img/img_waves_top_gray.png) no-repeat top center/100% 120px;
  content: "";
}
.media .section__inner {
  padding: 176px 16px;
}
.media .media__list {
  display: flex;
  justify-content: center;
  align-items: stretch;
  flex-wrap: wrap;
  gap: 48px 16px;
  margin-top: 48px;
}
.media .media__list .media__item {
  width: 316px;
  border-radius: 16px;
  border: 1px solid rgba(91, 153, 194, 0.18);
  background-color: rgba(255, 255, 255, 0.8);
  box-shadow: 0 4px 24px 0 rgba(100, 130, 200, 0.08);
}
.media .media__list .media__item .media__link {
  text-decoration: none;
}
.media .media__list .media__item .media__link .media__image-wrapper {
  position: relative;
}
.media .media__list .media__item .media__link .media__image-wrapper .media__image {
  width: 100%;
  height: 176px;
  border-radius: 15px 15px 0 0;
  -o-object-fit: cover;
     object-fit: cover;
}
.media .media__list .media__item .media__link .media__image-wrapper .media__category {
  display: block;
  position: absolute;
  top: 15px;
  left: 15px;
  width: -moz-fit-content;
  width: fit-content;
  height: 29px;
  padding: 0 8px;
  border-radius: 20px;
  background-color: #2962B9;
  color: #FFF;
  text-align: center;
  font-size: 11px;
  font-weight: 400;
  line-height: 29px;
  letter-spacing: 0.5px;
}
.media .media__list .media__item .media__link .media__image-wrapper .status-draft {
  position: absolute;
  bottom: 0;
  right: 0;
  width: -moz-fit-content;
  width: fit-content;
  height: -moz-fit-content;
  height: fit-content;
  padding: 0 10px;
  background-color: #45556c;
  border-radius: 8px 0 0 0;
  height: 30px;
  color: #fff;
  font-family: Poppins;
  font-size: 12px;
  font-weight: 400;
  line-height: 30px;
  letter-spacing: normal;
}
.media .media__list .media__item .media__link .media__body {
  padding: 9px 15px 15px 15px;
}
.media .media__list .media__item .media__link .media__body .media__date {
  color: #51A2FF;
  font-family: "Poppins", sans-serif;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.33;
  letter-spacing: 1.2px;
}
.media .media__list .media__item .media__link .media__body .media__title {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  overflow: hidden;
  margin-top: 12px;
  min-height: 3.99em;
  color: #1A162E;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.33;
  letter-spacing: normal;
}
.media.media--list-page {
  min-height: calc(100vh - 49px);
  background: #FFF;
}
.media.media--list-page::before {
  display: none;
}
.media.media--list-page .section__inner {
  padding: 80px 16px;
}
.media.media--list-page .media__inner::before, .media.media--list-page .media__inner::after {
  display: none;
}
.media.media--list-page .media__list {
  justify-content: flex-start;
}
.media.media--list-page .media__list.media-list--interview-picked-up {
  overflow: visible;
}
.media.media--list-page .media__list.media-list--interview-picked-up .splide__slide {
  height: auto;
}
.media.media--list-page .media__list.media-list--interview-picked-up .media__item {
  flex-shrink: 0;
}
.media.media--list-page .media__list.media-list--mnlp {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: stretch;
  gap: 16px 16px;
  margin-top: 64px;
}
.media.media--list-page .media__list.media-list--mnlp .media__item {
  width: 100%;
}
.media.media--list-page .media__list.media-list--mnlp .media__item .media__link {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: stretch;
  gap: 0;
}
.media.media--list-page .media__list.media-list--mnlp .media__item .media__link .media__image-wrapper {
  position: relative;
  width: 160px;
}
.media.media--list-page .media__list.media-list--mnlp .media__item .media__link .media__image-wrapper .media__image {
  width: 160px;
  height: 106px;
  border-radius: 15px 0 0 15px;
}
.media.media--list-page .media__list.media-list--mnlp .media__item .media__link .media__image-wrapper .status-draft {
  position: absolute;
  top: unset;
  bottom: 0;
  left: unset;
  right: 0;
  width: -moz-fit-content;
  width: fit-content;
  height: -moz-fit-content;
  height: fit-content;
  padding: 0 10px;
  background-color: #45556c;
}
.media.media--list-page .media__list.media-list--mnlp .media__item .media__link .media__body {
  width: 820px;
}
.media.media--list-page .media__list.media-list--mnlp .media__item .media__link .media__body .media__meta-data {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
  gap: 0 10px;
}
.media.media--list-page .media__list.media-list--mnlp .media__item .media__link .media__body .media__meta-data .media__category {
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  height: 22px;
  padding: 0 10px;
  border-radius: 22px;
  background-color: #2962B9;
  color: #FFF;
  text-align: center;
  font-size: 11px;
  font-weight: 400;
  line-height: 22px;
  letter-spacing: 0.5px;
  white-space: nowrap;
}
.media.media--list-page .media__list.media-list--mnlp .media__item .media__link .media__body .media__meta-data .status-draft {
  width: -moz-fit-content;
  width: fit-content;
  height: -moz-fit-content;
  height: fit-content;
  padding: 0 10px;
  background-color: #45556c;
  border-radius: 22px;
  height: 22px;
  color: #fff;
  font-family: Poppins;
  font-size: 11px;
  font-weight: 400;
  line-height: 22px;
  letter-spacing: 0.5px;
  white-space: nowrap;
}
.media.media--list-page .media__list.media-list--mnlp .media__item .media__link .media__body .media__title {
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow: hidden;
  min-height: 2.66em;
}
.media.media--list-page .columns-archive__pagination {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  gap: 0 10px;
  margin-top: 50px;
}
.media.media--list-page .columns-archive__pagination .page-numbers {
  width: 55px;
  height: 55px;
  border-radius: 50%;
  background-color: #1A162E;
  color: #fff;
  font-family: "Poppins", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 55px;
  letter-spacing: 0;
  text-align: center;
}
.media.media--list-page .columns-archive__pagination .page-numbers.current {
  background-color: #51A2FF;
}
.media.media--list-page .columns-archive__pagination .page-numbers.prev i.fa-solid {
  color: #fff;
}
.media.media--list-page .columns-archive__pagination .page-numbers.next i.fa-solid {
  color: #fff;
}
.media .media__uc {
  margin-top: 48px;
  display: block;
  width: 100%;
  text-align: center;
}

.media__detail .section__inner {
  padding: 75px 16px;
}
.media__detail .media__detail-wrapper .media__dital-display-metadata {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  gap: 30px;
  margin-bottom: 48px;
}
.media__detail .media__detail-wrapper .media__dital-display-metadata .media__category {
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  height: 29px;
  padding: 0 16px;
  border-radius: 20px;
  background-color: #2962B9;
  color: #FFF;
  text-align: center;
  font-size: 11px;
  font-weight: 400;
  line-height: 29px;
  letter-spacing: 0.5px;
}
.media__detail .media__detail-wrapper .media__dital-display-metadata .media__detail-date {
  color: #1A162E;
  font-family: "Poppins", sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 29px;
  letter-spacing: 3.6px;
}
.media__detail .media__detail-wrapper .media__detail-title,
.media__detail .media__detail-wrapper h1 {
  color: #1A162E;
  font-size: 48px;
  font-weight: 700;
  line-height: 1.95;
  letter-spacing: normal;
}
.media__detail .media__detail-wrapper .media__detail-description,
.media__detail .media__detail-wrapper p {
  margin: 48px auto;
  color: #1A162E;
  font-size: 20px;
  font-weight: 400;
  line-height: 1.85;
  letter-spacing: normal;
}
.media__detail .media__detail-wrapper .media__detail-sub-title,
.media__detail .media__detail-wrapper h2 {
  margin: 96px auto 48px;
  color: #1A162E;
  font-size: 36px;
  font-weight: 700;
  line-height: 1.33;
  letter-spacing: normal;
}
.media__detail .media__detail-wrapper .media__detail-question {
  margin: 48px auto;
  color: #1A162E;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.85;
  letter-spacing: normal;
}
.media__detail .media__detail-wrapper .media__detail-image {
  width: 980px;
  height: auto;
  margin: 48px auto;
}
.media__detail .media__detail-wrapper .media__detail-lawyer {
  margin: 96px auto 48px;
  color: #1A162E;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.43;
  letter-spacing: normal;
}
.media__detail .media__detail-wrapper .media__detail-lawyer b {
  font-weight: 700;
}
.media__detail .media__detail-wrapper .media__detail-bottom {
  padding-top: 48px;
  border-top: 1px solid #1A162E;
}

.members {
  background: #FAFAFA;
}
.members.members--decorated {
  position: relative;
  background: url(../img/img_kv_bg.avif) no-repeat top center/cover;
  overflow: hidden;
}
.members.members--decorated::before {
  position: absolute;
  top: -315px;
  right: 0;
  left: 0;
  width: 1701px;
  height: 1510px;
  margin: 0 auto;
  background: url(../img/img_kv_gradationBall.avif) no-repeat top center/1701px 1510px;
  content: "";
}
.members .members__inner--decorated {
  position: relative;
  background: rgba(255, 255, 255, 0.5);
}
.members .members__inner--decorated::before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  width: 100%;
  height: 120px;
  margin: 0 auto;
  background: url(../img/img_waves_bottom.png) no-repeat top center/100% 120px;
  content: "";
}
.members .members__inner--decorated::after {
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
  width: 100%;
  height: 120px;
  margin: 0 auto;
  background: url(../img/img_waves_top.png) no-repeat top center/100% 120px;
  content: "";
}
.members .members__inner--decorated .section__inner {
  padding: 176px 16px;
}
.members .members__list {
  display: flex;
  justify-content: center;
  align-items: stretch;
  flex-wrap: wrap;
  gap: 40px;
  margin-top: 48px;
  list-style: none;
}
.members .members__list .members__item {
  width: 300px;
  padding: 19px 29px;
  border-radius: 16px;
  border: 1px solid rgba(91, 153, 194, 0.22);
  background-color: rgba(255, 255, 255, 0.65);
  box-shadow: 0 4px 24px 0 rgba(100, 130, 200, 0.08);
}
.members .members__list .members__item .members__name {
  color: #1A162E;
  text-align: center;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: normal;
}
.members .members__list .members__item .members__role {
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  height: 24px;
  padding: 0 8px;
  margin: 8px auto 0;
  border-radius: 30px;
  background: #51A2FF;
  color: #FFF;
  text-align: center;
  font-size: 12px;
  font-weight: 700;
  line-height: 24px;
  letter-spacing: normal;
}
.members .members__list .members__item .members__role.members__role--top {
  background: linear-gradient(180deg, #51A2FF 0%, #2962B9 100%);
}
.members .members__list .members__item .members__description {
  margin-top: 20px;
  color: #45556C;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: normal;
}

.seminar {
  background-color: #E9F1FB;
}
.seminar .seminar__list {
  margin-top: 48px;
}
.seminar .seminar__list .seminar__item {
  display: flex;
  justify-content: flex-start;
  align-items: stretch;
  border-radius: 16px;
  border: 1px solid rgba(91, 153, 194, 0.22);
  background-color: rgba(255, 255, 255, 0.65);
  box-shadow: 0 4px 24px 0 rgba(100, 130, 200, 0.08);
}
.seminar .seminar__list .seminar__item .seminar__image-wrapper {
  position: relative;
  width: 371px;
  flex-shrink: 0;
}
.seminar .seminar__list .seminar__item .seminar__image-wrapper .status-draft {
  position: absolute;
  top: 0;
  left: 0;
  width: -moz-fit-content;
  width: fit-content;
  height: -moz-fit-content;
  height: fit-content;
  padding: 0 20px;
  background-color: #45556c;
  border-radius: 16px 0 8px 0;
  height: 30px;
  color: #fff;
  font-family: Poppins;
  font-size: 12px;
  font-weight: 400;
  line-height: 30px;
  letter-spacing: normal;
}
.seminar .seminar__list .seminar__item .seminar__image-wrapper .seminar__image {
  width: 371px;
  height: 100%;
  border-radius: 15px 0 0 15px;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center top;
     object-position: center top;
}
.seminar .seminar__list .seminar__item .seminar__body {
  padding: 30px 19px 30px 20px;
}
.seminar .seminar__list .seminar__item .seminar__body .seminar__title {
  color: #1A162E;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: normal;
}
.seminar .seminar__list .seminar__item .seminar__body .seminar__location {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin-top: 8px;
  color: #51A2FF;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.25;
  letter-spacing: normal;
}
.seminar .seminar__list .seminar__item .seminar__body .seminar__location::before {
  width: 16px;
  height: 16px;
  margin-right: 4px;
  background: url(../img/icon_map_pin.svg) no-repeat top center/16px 16px;
  content: "";
}
.seminar .seminar__list .seminar__item .seminar__body .seminar__details {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 5px 16px;
  margin-top: 9px;
}
.seminar .seminar__list .seminar__item .seminar__body .seminar__details .seminar__detail-item {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin-top: 8px;
  color: #45556C;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.33;
  letter-spacing: 1.2px;
}
.seminar .seminar__list .seminar__item .seminar__body .seminar__details .seminar__detail-item::before {
  width: 16px;
  height: 16px;
  margin-right: 4px;
  content: "";
}
.seminar .seminar__list .seminar__item .seminar__body .seminar__details .seminar__detail-item.item--date::before {
  background: url(../img/icon_calendar.svg) no-repeat top center/16px 16px;
}
.seminar .seminar__list .seminar__item .seminar__body .seminar__details .seminar__detail-item.item--time::before {
  background: url(../img/icon_clock.svg) no-repeat top center/16px 16px;
}
.seminar .seminar__list .seminar__item .seminar__body .seminar__details .seminar__detail-item.item--capacity::before {
  background: url(../img/icon_earch_person.svg) no-repeat top center/16px 16px;
}
.seminar .seminar__list .seminar__item .seminar__body .seminar__details .seminar__detail-item.item--fee::before {
  background: url(../img/icon_fee.svg) no-repeat top center/16px 16px;
}
.seminar .seminar__list .seminar__item .seminar__body .seminar__description {
  margin-top: 16px;
  color: #45556C;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.43;
  letter-spacing: normal;
}
.seminar .seminar__list .seminar__item .seminar__body .seminar__button-wrapper {
  margin-top: 16px;
}
.seminar .seminar__list .seminar__item .seminar__body .seminar__button-wrapper .seminar__button {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0 8px;
  width: 200px;
  height: 56px;
  margin-left: auto;
  border-radius: 60px;
  background-color: #1A162E;
  color: #FFF;
  font-family: "Poppins", sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.3;
  letter-spacing: 1px;
}
.seminar .seminar__list .seminar__item:nth-of-type(n+2) {
  margin-top: 24px;
}
.seminar .seminar__uc {
  margin-top: 48px;
  display: block;
  width: 100%;
  text-align: center;
}

.overview {
  background-color: #fff;
}
.overview.contact--form-page {
  min-height: calc(100vh - 49px);
}
.overview.contact--form-page .section__inner {
  padding: 85px 16px;
}
.overview .overview-table {
  margin: 48px auto 0;
  width: 600px;
}
.overview .overview-table tbody tr th {
  width: 200px;
  padding: 16px 0;
  background-color: #fff;
  color: #45556C;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.37;
  letter-spacing: normal;
  vertical-align: middle;
  text-align: left;
  border-bottom: 1px solid #E8E9EE;
}
.overview .overview-table tbody tr td {
  width: 400px;
  padding: 16px 0;
  color: #45556C;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.43;
  letter-spacing: normal;
  vertical-align: middle;
  border-bottom: 1px solid #E8E9EE;
}

.contact {
  background-color: #E9F1FB;
}
.contact.contact--form-page {
  min-height: calc(100vh - 49px);
}
.contact.contact--form-page .section__inner {
  padding: 85px 16px;
}
.contact .contact__description {
  margin-top: 48px;
  color: #1A162E;
  text-align: center;
  font-size: 20px;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: normal;
}
.contact .contact__form {
  width: 100%;
  max-width: 800px;
  margin: 60px auto 0;
}
.contact .contact__form .contact__form-list {
  display: flex;
  flex-direction: column;
  gap: 32px;
}
.contact .contact__form .contact__form-item {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 24px;
}
.contact .contact__form .contact__form-item .contact__form-label {
  width: 200px;
  padding-top: 14px;
  flex-shrink: 0;
  font-weight: 700;
  color: #1A162E;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.66;
  letter-spacing: normal;
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}
.contact .contact__form .contact__form-item .contact__form-required {
  display: inline-block;
  padding: 0 8px;
  margin-left: auto;
  width: 52px;
  height: 24px;
  border-radius: 30px;
  background-color: #51A2FF;
  color: #FFF;
  text-align: center;
  font-size: 12px;
  font-weight: 700;
  line-height: 24px;
  letter-spacing: normal;
}
.contact .contact__form .contact__form-item .contact__form-input {
  flex: 1;
  width: 100%;
}
.contact .contact__form .contact__form-item .contact__form-input input,
.contact .contact__form .contact__form-item .contact__form-input textarea {
  width: 100%;
  padding: 16px;
  border: 1px solid rgba(91, 153, 194, 0.22);
  border-radius: 8px;
  color: #1A162E;
  font-size: 16px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: normal;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.contact .contact__form .contact__form-item .contact__form-input textarea {
  height: 240px;
  resize: vertical;
}
.contact .page-detail {
  margin-top: 96px;
}
.contact .page-detail .page-detail__inner .page-detail__content .wpforms-container {
  width: 640px;
  margin: 0 auto;
}
.contact .page-detail .page-detail__inner .page-detail__content .wpforms-container .wpforms-form .wpforms-field-container {
  display: flex;
  flex-direction: column;
  gap: 32px;
}
.contact .page-detail .page-detail__inner .page-detail__content .wpforms-container .wpforms-form .wpforms-field-container .wpforms-field {
  padding: 0;
}
.contact .page-detail .page-detail__inner .page-detail__content .wpforms-container .wpforms-form .wpforms-field-container .wpforms-field .wpforms-field-label {
  line-height: 24px;
}
.contact .page-detail .page-detail__inner .page-detail__content .wpforms-container .wpforms-form .wpforms-field-container .wpforms-field .wpforms-field-label .wpforms-required-label {
  position: relative;
  display: inline-block;
  padding: 0 8px;
  margin-left: 15px;
  width: 52px;
  height: 24px;
  border-radius: 30px;
  background-color: #51A2FF;
  color: #51A2FF;
  text-align: center;
  font-size: 0;
  font-weight: 700;
  line-height: 24px;
  letter-spacing: normal;
}
.contact .page-detail .page-detail__inner .page-detail__content .wpforms-container .wpforms-form .wpforms-field-container .wpforms-field .wpforms-field-label .wpforms-required-label::after {
  content: "必須";
  color: #fff;
  text-align: center;
  font-size: 12px;
  font-weight: 700;
  line-height: 24px;
  letter-spacing: normal;
}
.contact .page-detail .page-detail__inner .page-detail__content .wpforms-container .wpforms-form .wpforms-field-container .wpforms-field input[type=text] {
  height: 55px;
  border-radius: 8px;
  border: 1px solid rgba(91, 153, 194, 0.22);
  background: rgba(255, 255, 255, 0.65);
  box-shadow: 0 4px 12px 0 rgba(100, 130, 200, 0.08);
  font-family: "Poppins", "Noto Sans JP", sans-serif;
  color: #1A162E;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.85;
}
.contact .page-detail .page-detail__inner .page-detail__content .wpforms-container .wpforms-form .wpforms-field-container .wpforms-field fieldset .wpforms-field-row {
  max-width: 100%;
  flex-wrap: nowrap;
  flex-direction: row-reverse;
  justify-content: flex-start;
  gap: 0 20px;
}
.contact .page-detail .page-detail__inner .page-detail__content .wpforms-container .wpforms-form .wpforms-field-container .wpforms-field fieldset .wpforms-field-row::before, .contact .page-detail .page-detail__inner .page-detail__content .wpforms-container .wpforms-form .wpforms-field-container .wpforms-field fieldset .wpforms-field-row::after {
  display: none;
}
.contact .page-detail .page-detail__inner .page-detail__content .wpforms-container .wpforms-form .wpforms-field-container .wpforms-field fieldset .wpforms-field-row .wpforms-field-row-block {
  padding: 0;
}
.contact .page-detail .page-detail__inner .page-detail__content .wpforms-container .wpforms-form .wpforms-field-container .wpforms-field fieldset .wpforms-field-row .wpforms-field-row-block.wpforms-one-half {
  width: 310px;
}
.contact .page-detail .page-detail__inner .page-detail__content .wpforms-container .wpforms-form .wpforms-field-container .wpforms-field .wpforms-field-medium {
  max-width: 100%;
}
.contact .page-detail .page-detail__inner .page-detail__content .wpforms-container .wpforms-form .wpforms-field-container .wpforms-field.wpforms-field-textarea textarea {
  field-sizing: content;
  min-height: 120px;
  height: unset;
  border-radius: 8px;
  border: 1px solid rgba(91, 153, 194, 0.22);
  background: rgba(255, 255, 255, 0.65);
  box-shadow: 0 4px 12px 0 rgba(100, 130, 200, 0.08);
  font-family: "Poppins", "Noto Sans JP", sans-serif;
  color: #1A162E;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.85;
}
.contact .page-detail .page-detail__inner .page-detail__content .wpforms-container .wpforms-form .form-privacy-policy {
  margin-top: 32px;
  font-size: 16px;
}
.contact .page-detail .page-detail__inner .page-detail__content .wpforms-container .wpforms-form .form-privacy-policy a {
  text-decoration: underline;
  text-underline-offset: 2px;
}
.contact .page-detail .page-detail__inner .page-detail__content .wpforms-container .wpforms-form .wpforms-submit-container {
  margin-top: 30px;
}
.contact .page-detail .page-detail__inner .page-detail__content .wpforms-container .wpforms-form .wpforms-submit-container .wpforms-submit {
  width: 100%;
  height: 55px;
  background-color: #51A2FF;
  border-radius: 8px;
}
.contact .page-detail .page-detail__inner .page-detail__content .wpforms-container:has(.wpforms-confirmation-container-full) {
  width: 720px;
}
.contact .page-detail .page-detail__inner .page-detail__content .wpforms-container .wpforms-confirmation-container-full {
  border-radius: 16px;
  border: 1px solid rgba(91, 153, 194, 0.22);
  background: rgba(255, 255, 255, 0.65);
  box-shadow: 0 4px 24px 0 rgba(100, 130, 200, 0.08);
  padding: 30px 40px;
}

.contact__button-wrapper {
  margin-top: 48px;
}
.contact__button-wrapper .contact__button {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0 12px;
  width: 240px;
  height: 69px;
  margin: 0 auto;
  border-radius: 72px;
  background-color: #1A162E;
  color: #FFF;
  font-family: "Poppins", sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 1.2px;
  border: none;
  cursor: pointer;
}
.contact__button-wrapper .contact__button .fa-regular {
  font-family: "Font Awesome 7 Free";
  font-size: 23px;
  font-weight: 400;
}
.contact__button-wrapper .contact__button svg {
  width: 23px;
  height: 23px;
}

.footer {
  background-color: #111827;
}
.footer .footer-content {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: stretch;
  gap: 0 50px;
  width: 980px;
  margin: 0 auto;
  padding: 60px 0;
}
.footer .footer-content .footer-branding {
  width: 350px;
}
.footer .footer-content .footer-branding .footer-logo {
  height: 30px;
  filter: grayscale(100%);
}
.footer .footer-content .footer-branding .branding-name {
  margin-top: 15px;
  color: #f7f7f7;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.43;
  letter-spacing: normal;
}
.footer .footer-content .footer-nav {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: stretch;
  gap: 0;
  width: 630px;
}
.footer .footer-content .footer-nav .nav-item-group {
  width: -moz-fit-content;
  width: fit-content;
  width: 250px;
}
.footer .footer-content .footer-nav .nav-item-group .group-heading {
  color: #f7f7f7;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.43;
  letter-spacing: normal;
  white-space: nowrap;
}
.footer .footer-content .footer-nav .nav-item-group .nav-item-list {
  margin-top: 15px;
}
.footer .footer-content .footer-nav .nav-item-group .nav-item-list li {
  color: #f7f7f7;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.43;
  letter-spacing: normal;
}
.footer .footer-content .footer-nav .nav-item-group .nav-item-list li:nth-of-type(n+2) {
  margin-top: 10px;
}
.footer .footer-content .footer-nav .notice {
  margin-top: 15px;
  color: #f7f7f7;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.43;
  letter-spacing: normal;
}
.footer .footer__inner {
  padding: 12px 16px;
}
.footer .footer__inner .footer__copyright {
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}
.footer .footer__inner .footer__copyright small {
  color: #777;
  text-align: center;
  font-family: "Poppins", sans-serif;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: normal;
}
.footer .footer__inner .footer__copyright small svg {
  display: inline;
  width: 12px;
  height: 12px;
}/*# sourceMappingURL=fmti-site-desktop.css.map */