/*
Theme Name: Lightning Child
Theme URI:https://nikkanren-ks.jp
Template: lightning
Description:親テーマを「lightning」とする、その子テーマ
Author:日管連管理組合サポートセンター
Tags:
Version: 0.6.1
*/

:root {
  /* ===============================
     ■ Width
  =============================== */
  --width-full: 100%;
  --width-md: 1100px;

  /* ===============================
     ■ Spacing / Gap
  =============================== */
  --padding-block: var(--scale-80);
  --padding-inline: var(--scale-20);
  --gap-row: var(--scale-56);
  --gap-column: var(--scale-40);

  /* ===============================
     ■ Scale
  =============================== */
  --scale-2: min(2px, 100vw / 375 * 2);
  --scale-4: min(4px, 100vw / 375 * 3);
  --scale-8: min(8px, 100vw / 375 * 6);
  --scale-12: min(12px, 100vw / 375 * 10);
  --scale-14: min(14px, 100vw / 375 * 12);
  --scale-16: min(16px, 100vw / 375 * 13);
  --scale-18: min(18px, 100vw / 375 * 15);
  --scale-20: min(20px, 100vw / 375 * 16);
  --scale-24: min(24px, 100vw / 375 * 18);
  /*--scale-28: min(28px, 100vw / 375 * 20);*/
  --scale-32: min(32px, 100vw / 375 * 24);
  --scale-40: min(40px, 100vw / 375 * 28);
  /*--scale-48: min(48px, 100vw / 375 * 28);*/
  --scale-56: min(56px, 100vw / 375 * 40);
  --scale-64: min(64px, 100vw / 375 * 44);
  --scale-80: min(80px, 100vw / 375 * 56);
  --scale-160: min(80px, 100vw / 375 * 80);
}
body {
  overflow-y: auto !important;
}

@media screen and (max-width: 768px) {
  .pc {
    display: none;
  }
}
@media not screen and (max-width: 768px) {
  .sp {
    display: none;
  }
}

.c-h2 {
  color: var(--primary, #105e9a);
  text-align: center;

  /* h2 */
  font-family: "Shippori Mincho";
  font-size: var(--scale-40, 40px);
  font-style: normal;
  font-weight: 500;
  line-height: 150%; /* 60px */
  letter-spacing: calc(1em / 40 * 3.2);
  margin: 0 auto;
  padding: 0;
  border: none;
}
.c-h2:after {
  display: none;
}

.c-h3 {
  color: var(--primary, #105e9a);

  /* h3 */
  font-family: "Shippori Mincho";
  font-size: min(28px, 100vw / 375 * 20);
  font-style: normal;
  font-weight: 500;
  line-height: 150%; /* 42px */
  display: flex;
  align-items: center;
  gap: var(--scale-8);
  align-self: stretch;
  padding: 0;
  border: 0;
  width: 100%;
  max-width: 1080px;
  margin-inline: auto;
  margin-block: 0;
}
.c-h3:before {
  content: "";
  background: linear-gradient(
    137deg,
    var(--primary, #105e9a) 1.61%,
    #63bbff 98.39%
  );
  width: calc(1em / 28 * 14);
  aspect-ratio: 1 / 1;
}
.c-h3:after {
  display: none;
}

.c-bg-surface-variant {
  background: var(--surface-variant, #f5f7f8);
}

.pad-bl-80 {
  padding-block: var(--scale-80, 80px);
}

.c-dls {
  width: 100%;
  max-width: 1080px;
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  align-self: stretch;
  border-top: 1px solid var(--border, #c2c3c7);
}
.c-dls dl {
  display: flex;
  align-self: stretch;
  margin-block: 0;
}
.c-dls dl dt {
  width: 11em;
  padding: var(--scale-16, 16px);
  align-items: flex-start;
  align-self: stretch;
  border-bottom: 1px solid var(--border, #c2c3c7);
  background: var(--thead, #dbeaf5);
  margin-block: 0;
  flex: 1 0 0;
}
@media screen and (max-width: 768px) {
  .c-dls dl {
    flex-direction: column;
  }
  .c-dls dl dt {
    width: 100%;
    max-width: unset !important;
  }
}

.c-dls dl dd {
  padding: var(--scale-16, 16px);
  align-items: center;
  flex: 1 0 0;
  border-bottom: 1px solid var(--border, #c2c3c7);
}

section ul.c-links {
  display: flex;
  flex-direction: column;
  width: 100%;
  max-width: 1080px;
  margin-inline: auto;
  list-style-type: none;
  border-top: 1px solid var(--border, #c2c3c7);
  padding: 0;
  margin-block: 0;
}
section ul.c-links li {
  display: flex;
  padding: var(--scale-20, 20px) 0;
  align-items: center;
  gap: var(--scale-32, 32px);
  align-self: stretch;
  border-bottom: 1px solid var(--border, #c2c3c7);
  margin-block: 0;
  background: url(./assets/images/icon-arrow.svg) right center /
    calc(1em / 24 * 20) auto no-repeat;
  padding-right: calc(1em / 24 * 28);
}
section ul.c-links li a {
  text-decoration: none;
}

.c-button {
  display: flex;
  width: 100%;
  max-width: 400px;
  padding: var(--scale-16, 16px) calc((1em / 24 * 20) + var(--scale-20, 20px))
    var(--scale-16, 16px) var(--scale-20, 20px);
  align-items: center;
  gap: var(--scale-32, 32px);
  border-radius: var(--scale-4, 4px);
  border: 1px solid var(--primary, #105e9a);
  color: var(--primary, #105e9a);
  font-feature-settings: "palt" on;
  font-family: "Shippori Mincho";
  font-size: var(--scale-24, 24px);
  font-style: normal;
  font-weight: 500;
  line-height: 160%; /* 38.4px */
  letter-spacing: 0.96px;
  background: url(./assets/images/icon-arrow.svg) right var(--scale-20, 20px)
    center / calc(1em / 24 * 20) auto no-repeat;
  background-color: rgba(255, 255, 255, 0.8);
}

body.post-name-member-edit #wpmem_reg {
  width: 100%;
}
body.post-name-member-edit #wpmem_reg form {
  width: 100%;
  max-width: 800px;
  margin-inline: auto;
}

body.post-name-member-edit #wpmem_reg fieldset span.req {
  display: none;
}

body.post-name-member-edit #wpmem_reg fieldset label {
  margin-bottom: 0.5em;
  color: var(--on-surface, #132f4e);
  font-feature-settings: "palt" on;
  align-items: center;
  margin-top: 1em;

  /* body_bold */
  font-family: "Noto Sans JP";
  font-size: var(--scale-18, 18px);
  font-style: normal;
  font-weight: 700;
  line-height: 200%; /* 36px */

  display: grid;
  grid-template-columns: auto 1fr auto;
}

body.post-name-member-edit #wpmem_reg fieldset div.div_multicheckbox label {
  display: inline-block;
}

body.post-name-member-edit
  #wpmem_reg
  fieldset
  div.div_multicheckbox
  label:before {
  display: none;
}

body.post-name-member-edit #wpmem_reg fieldset label:before {
  content: "任意";
  color: var(--on-surface-variant, #646e81);
  background: var(--thead, #dbeaf5);
  text-align: center;
  font-feature-settings: "palt" on;

  /* body_bold */
  font-family: "Noto Sans JP";
  font-size: 1em;
  font-style: normal;
  font-weight: 700;
  line-height: 100%; /* 36px */
  display: inline-block;
  padding: 0.4em 0.4em;
  margin-right: 0.5em;
  align-content: center;
}
body.post-name-member-edit #wpmem_reg fieldset label:has(span.req):before {
  content: "必須";
  background: #f95a4b;
  color: var(--surface, #fff);
}
body.post-name-member-edit
  :is(
    label[for="last_name"],
    label[for="first_name"],
    label[for="lastname_furigana"],
    label[for="firstname_furigana"],
    label[for="kanrishi_number"],
    label[for="kanrishi_registration_date"],
    label[for="houtei_date"],
    label[for="nintei_kanrishi_number"],
    label[for="affiliation"],
    label[for="license"],
    label[for="career"],
    label[for="catch_copy"],
    label[for="comment"],
    label[for="features"],
    label[for="face"],
    label[for="sns_x"],
    label[for="sns_facebook"],
    label[for="sns_instagram"],
    label[for="sns_tiktok"],
    label[for="youtube_01"],
    label[for="youtube_02"],
    label[for="youtube_03"],
    label[for="youtube_04"],
    label[for="youtube_05"],
    label[for="youtube_06"],

  ):after {
  content: "公開";
  background: url(./assets/images/form-icon-open.svg) left 0.8em center / 1.5em
    auto no-repeat;
  background-color: var(--on-surface, #132f4e);
  color: var(--surface, #fff);
  text-align: center;
  font-feature-settings: "palt" on;
  line-height: 100%;
  padding: 0.2em 0.9em 0.2em 2.4em;
  border-radius: 1000px;

  /* body_bold */
  font-family: "Noto Sans JP";
  font-size: var(--scale-18, 18px);
  font-style: normal;
  font-weight: 700;
  line-height: 200%; /* 36px */
}

body.post-name-member-edit
  :is(
    label[for="birthday"],
    label[for="user_email"],
    label[for="renraku"],
    label[for="user_url"],
    label[for="yubin"],
    label[for="address_01"],
    label[for="address_02"],
    label[for="address_03"],

  ):after {
  content: "選択可";
  background: url(./assets/images/form-icon-changeable.svg) left 0.8em center /
    1.5em auto no-repeat;
  color: var(--on-surface, #132f4e);
  text-align: center;
  font-feature-settings: "palt" on;
  line-height: 100%;
  padding: 0.2em 0.9em 0.2em 2.4em;
  border-radius: 1000px;

  /* body_bold */
  font-family: "Noto Sans JP";
  font-size: var(--scale-18, 18px);
  font-style: normal;
  font-weight: 700;
  line-height: 200%; /* 36px */

  border: 1px solid var(--on-surface, #132f4e);
}

body.post-name-member-edit
  :is(
    label[for="nyukai_moushikomisho"],
    label[for="seiyakusho"],
    label[for="jimusho"],
    label[for="kanrishi_tourokusho"],
    label[for="nintei_kanrishisho"],
    label[for="houteikoushu_shuryousho"],
    label[for="hokensho"]
  ):after {
  content: "非公開";
  background: url(./assets/images/form-icon-private.svg) left 0.8em center /
    1.5em auto no-repeat;
  background-color: var(--thead, #dbeaf5);
  color: var(--on-surface-variant, #646e81);
  text-align: center;
  font-feature-settings: "palt" on;
  line-height: 100%;
  padding: 0.2em 0.9em 0.2em 2.4em;
  border-radius: 1000px;

  /* body_bold */
  font-family: "Noto Sans JP";
  font-size: var(--scale-18, 18px);
  font-style: normal;
  font-weight: 700;
  line-height: 200%; /* 36px */
}

body.post-name-member-edit input[name="submit"] {
  display: flex;
  max-width: 400px;
  padding: var(--scale-16, 16px) var(--scale-32, 32px);
  justify-content: center;
  align-items: center;
  gap: var(--scale-8, 8px);
  align-self: stretch;
  border-radius: var(--scale-4, 4px);
  background: var(--secondary, #56c255);
  color: var(--surface, #fff);
  font-family: "Noto Sans JP";
  font-size: var(--scale-24, 24px);
  font-style: normal;
  font-weight: 700;
  line-height: 160%; /* 38.4px */
  letter-spacing: 0.96px;
  width: 100%;
  margin-inline: auto;
  border: none;
}

body.post-name-member-edit .req-text {
  display: none;
}
/*============================
#site-header
============================*/
header#site-header {
  padding: 0 var(--padding-inline, 24px) var(--scale-20, 20px);
}

/*============================
#site-header-container
============================*/
header#site-header div#site-header-container {
  display: flex;
  gap: var(--scale-16, 16px);
  align-self: stretch;
  width: 100%;
  max-width: none;
}
.site-header__logo {
  margin-bottom: unset;
  display: flex;
  align-items: flex-end;
  flex: 1 0 0;
}
.site-header__logo a {
  width: min(160px, 100vw / 375 * 120);
  aspect-ratio: 8/3;
  display: block;
}

header#site-header div#site-header-container div.site-header__nav {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: var(--scale-20, 20px);
  flex: 1 0 0;
  justify-content: end;
}

header#site-header
  div#site-header-container
  div.site-header__nav
  nav.nav__upper-row
  ul.header-utility-nav__list {
  display: flex;
  align-items: center;
  gap: var(--scale-16, 16px);
  margin: var(--scale-16) 0 0 auto;
  flex-wrap: wrap;
}

header#site-header
  div#site-header-container
  div.site-header__nav
  nav.nav__upper-row
  ul.header-utility-nav__list
  li
  a {
  display: flex;
  padding: 0.3em 0.5em 0.3em 2.4em;
  align-items: center;
  gap: var(--scale-4, 4px);
  border-radius: var(--scale-2, 2px);
  text-align: center;
  font-family: "Noto Sans JP";
  font-size: var(--scale-14, 14px);
  font-style: normal;
  font-weight: 500;
  line-height: normal;
  letter-spacing: 0.56px;
}

header#site-header
  div#site-header-container
  div.site-header__nav
  nav.nav__upper-row
  ul.header-utility-nav__list
  li:nth-of-type(1)
  a {
  border: 1px solid var(--primary, #105e9a);
  color: var(--primary, #105e9a);
  background: url(./assets/images/header-icon01.svg) left 0.4em center /
    calc(1em / 14 * 20) auto no-repeat;
}

header#site-header
  div#site-header-container
  div.site-header__nav
  nav.nav__upper-row
  ul.header-utility-nav__list
  li:nth-of-type(2)
  a {
  background: url(./assets/images/header-icon02.svg) left 0.4em center /
    calc(1em / 14 * 20) auto no-repeat;
  background-color: var(--primary, #105e9a);
  color: var(--surface, #fff);
}

/*============================
#global-nav
============================*/

header#site-header
  div#site-header-container
  div.site-header__nav
  nav#global-nav.nav__lower-row
  ul {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: var(--scale-32, 32px);
}

header#site-header
  div#site-header-container
  div.site-header__nav
  nav#global-nav.nav__lower-row
  ul
  li {
  padding: 0;
}
header#site-header
  div#site-header-container
  div.site-header__nav
  nav#global-nav.nav__lower-row
  ul
  li
  a {
}
header#site-header
  div#site-header-container
  div.site-header__nav
  nav#global-nav.nav__lower-row
  ul
  li
  a
  .global-nav-name {
  color: var(--on-surface, #132f4e);
  text-align: center;
  font-family: "Noto Sans JP";
  font-size: var(--scale-16, 16px);
  font-style: normal;
  font-weight: 500;
  line-height: normal;
  letter-spacing: clac(1em / 16 * 0.64);
}

header#site-header div#site-header-container div.site-header__cta a {
  display: flex;
  max-width: 184px;
  padding: var(--scale-16, 16px);
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: var(--scale-8, 8px);
  align-self: stretch;
  border-radius: 0 0 var(--scale-4, 4px) var(--scale-4, 4px);
  background: var(--secondary, #56c255);
  color: var(--surface, #fff);
  text-align: center;
  font-family: "Noto Sans JP";
  font-size: var(--scale-16, 16px);
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  letter-spacing: 0.64px;
}
header#site-header div#site-header-container div.site-header__cta a svg {
  width: var(--scale-40, 40px);
  aspect-ratio: 1/1;
}

.header_scrolled .site-header {
  clear: both;
  z-index: 1000;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  max-width: 100vw;
  min-height: unset;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
  animation: header_drop 0.5s ease-out 0s 1 alternate none running;
}

@media screen and (max-width: 991.98px) {
  header#site-header {
    padding: 0 var(--padding-inline, 24px) var(--scale-20, 20px)
      var(--scale-56, 56px);
  }

  header#site-header div#site-header-container div.site-header__nav {
    display: none;
  }
  header#site-header div#site-header-container div.site-header__cta a {
    flex-direction: row;
  }
  .site-header__logo a {
    margin-top: var(--scale-16);
  }
}

div.page-header {
  display: flex;
  padding: var(--padding-block, 80px) var(--padding-inline);
  flex-direction: column;
  justify-content: center;
  align-items: center;
  align-self: stretch;
  background: url(./assets/images/page-header-bg.jpg) center center / cover
    no-repeat;
}
div.page-header div.page-header-inner.container {
  width: 100%;
  max-width: 1080px;
  margin-inline: auto;
  margin: 0 auto;
  padding: 0;
  text-align: left;
}
div.page-header div.page-header-inner.container h1.page-header-title {
  color: var(--surface, #fff);

  /* h1 */
  font-family: "Shippori Mincho";
  font-size: min(56px, 100vw / 375 * 32);
  font-style: normal;
  font-weight: 500;
  line-height: 170%; /* 95.2px */
  letter-spacing: calc(1em / 56 * 3);
}

/*============================
.c-lead
============================*/
section.c-lead {
  display: flex;
  padding: var(--padding-block, 80px) 0;
  flex-direction: column;
  align-items: flex-start;
  align-self: stretch;
  background: url(./assets/images/front-about-bg.jpg) center top
    var(--padding-block, 80px) / auto 502px no-repeat;
}

@media screen and (max-width: 1080px) {
  section.c-lead {
    background-position: left top var(--padding-block, 80px);
    padding-top: min(400px, 100vw / 375 * 200);
    background-size: auto min(400px, 100vw / 375 * 200);
  }
}

section.c-lead div.lead__container {
  width: 100%;
  max-width: 1080px;
  margin-inline: auto;
}
section.c-lead div.lead__body {
  display: flex;
  padding: var(--scale-56, 56px);
  flex-direction: column;
  align-items: flex-start;
  gap: var(--scale-32, 32px);
  align-self: stretch;
  background: rgba(219, 234, 245, 0.9);
  max-width: 652px;
  margin: var(--scale-56) 0 0 auto;
}
section.c-lead div.lead__body h3 {
  color: var(--on-surface, #132f4e);

  /* h3 */
  font-family: "Shippori Mincho";
  font-size: min(28px, 100vw / 375 * 20);
  font-style: normal;
  font-weight: 500;
  line-height: 150%; /* 42px */
  margin-block: 0;
  padding: 0;
  border: none;
}
section.c-lead div.lead__body h3:after {
  display: none;
}
section.c-lead div.lead__container h2 {
  border: none;
  margin: 0;
  align-self: stretch;
  color: var(--primary, #105e9a);

  /* h3 */
  font-family: "Shippori Mincho";
  font-size: var(--scale-28, 28px);
  font-style: normal;
  font-weight: 500;
  line-height: 150%; /* 42px */
}
section.c-lead div.lead__container p {
  align-self: stretch;
  color: var(--on-surface, #132f4e);
  font-feature-settings: "palt" on;
  margin-block: 0;

  /* body */
  font-family: "Noto Sans JP";
  font-size: var(--scale-18, 18px);
  font-style: normal;
  font-weight: 400;
  line-height: 200%; /* 36px */
}
section.c-lead div.lead__container ul {
  padding: var(--scale-24, 24px);
  justify-content: center;
  align-items: center;
  background: rgba(255, 255, 255, 0.8);
  align-self: stretch;
  margin-block: 0;
}
section.c-lead div.lead__container ul li {
  margin-left: 1em;
  color: var(--on-surface, #132f4e);
  font-feature-settings: "palt" on;

  /* body */
  font-family: "Noto Sans JP";
  font-size: var(--scale-18, 18px);
  font-style: normal;
  font-weight: 400;
  line-height: 200%; /* 36px */
}

section.c-lead div.lead__container div.lead__button {
  width: 100%;
  display: flex;
  justify-content: flex-end;
}

/*============================
#news
============================*/
section#news {
  display: flex;
  padding: var(--padding-block, 80px) var(--padding-inline);
  flex-direction: column;
  align-items: center;
  align-self: stretch;
}
section#news div.news__heading {
  display: flex;
  width: 100%;
  max-width: 1080px;
  flex-direction: column;
  align-items: flex-start;
  margin-inline: auto;
}
section#news div.news__heading h2 {
  color: var(--primary, #105e9a);

  /* h2_ja_small */
  font-family: "Shippori Mincho";
  font-size: var(--scale-24, 24px);
  font-style: normal;
  font-weight: 500;
  line-height: 150%; /* 36px */
  letter-spacing: 0.96px;
  margin: 0;
  padding: 0;
  border: none;
}
section#news div.news__heading h2:after {
  display: none;
}
section#news div.news__heading div.en {
  color: var(--primary, #105e9a);
  font-feature-settings: "palt" on;

  /* h2_eng */
  font-family: "Cormorant Garamond";
  font-size: var(--scale-64, 64px);
  font-style: normal;
  font-weight: 600;
  line-height: 120%; /* 76.8px */
  letter-spacing: calc(1em / 64 * 2);
  align-self: stretch;
}
section#news ul.news__list {
  display: flex;
  max-width: 1080px;
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
  border-top: 1px solid var(--border, #c2c3c7);
}
section#news ul.news__list li.news__item {
  display: flex;
  padding: var(--scale-20, 20px) 0;
  align-items: center;
  gap: var(--scale-32, 32px);
  align-self: stretch;
  border-bottom: 1px solid var(--border, #c2c3c7);
}
section#news ul.news__list li.news__item .news__body {
  display: flex;
  align-items: center;
  gap: var(--scale-16, 16px) var(--scale-32, 32px);
  align-self: stretch;
  flex: 1 0 0;
  align-items: flex-start;
}

@media screen and (max-width: 768px) {
  section#news ul.news__list li.news__item .news__body {
    flex-direction: column;
  }
}
section#news ul.news__list li.news__item a {
  display: contents;
}
section#news ul.news__list li.news__item div.news__data {
  display: flex;
  align-items: center;
  gap: var(--scale-16, 16px);
  align-self: stretch;
}
section#news ul.news__list li.news__item div.news__date {
  color: var(--on-surface-variant, #646e81);
  text-align: center;
  font-feature-settings: "palt" on;
  font-family: "Noto Sans JP";
  font-size: var(--scale-16, 16px);
  font-style: normal;
  font-weight: 500;
  line-height: 160%; /* 25.6px */
  letter-spacing: 0.64px;
}
section#news ul.news__list li.news__item div.news__date a {
}
section#news ul.news__list li.news__item a {
}
section#news ul.news__list li.news__item a div.news__cate {
  display: flex;
  min-width: 120px;
  padding: var(--scale-4, 4px) 0;
  justify-content: center;
  align-items: center;
  gap: 10px;
  background: var(--surface-variant, #c2c3c7);
  color: var(--surface, #fff);
  text-align: center;
  font-feature-settings: "palt" on;
  font-family: "Noto Sans JP";
  font-size: var(--scale-16, 16px);
  font-style: normal;
  font-weight: 500;
  line-height: 150%; /* 24px */
  letter-spacing: 0.64px;
}
section#news ul.news__list li.news__item a div.news__cate--nks-members {
  background: var(--primary, #105e9a);
}
section#news ul.news__list li.news__item a h3 {
  color: var(--on-surface, #132f4e);
  font-feature-settings: "palt" on;
  font-family: "Noto Sans JP";
  font-size: var(--scale-18, 18px);
  font-style: normal;
  font-weight: 500;
  line-height: 160%; /* 28.8px */
  letter-spacing: 0.72px;
  margin: 0;
  padding: 0;
  border: none;
  flex: 1 0 0;
}
section#news ul.news__list li.news__item a h3:after {
  display: none;
}
section#news ul.news__list li.news__item a figure.news__arrow {
}
section#news ul.news__list li.news__item a figure.news__arrow img {
}
section#news
  ul.news__list
  li.news__item
  a
  div.news__cate.news__cate--information {
}
section#news div.news__more {
  width: 100%;
  max-width: 1080px;
  display: flex;
  justify-content: flex-end;
}
section#news div.news__more a.news__more-btn.c-button {
}

/*============================
#footer-cta
============================*/
section#footer-cta {
  display: flex;
  width: 100%;
  padding: var(--scale-80, 80px) var(--padding-inline, 24px);
  flex-direction: column;
  align-items: center;
  background: url(../lightning-child/assets/images/footer-cta-bg.jpg) center
    center/ cover no-repeat;
  gap: var(--scale-40, 40px);
}
section#footer-cta div.footer-cta__heading {
  display: flex;
  gap: var(--scale-80, 80px);
  align-self: stretch;
  width: 100%;
  max-width: 1080px;
  margin-inline: auto;
}
section#footer-cta div.footer-cta__heading div.heading__title {
}
section#footer-cta div.footer-cta__heading div.heading__title h2 {
  border: none;
  margin: 0;
  padding: 0;
  color: var(--surface, #fff);

  /* h2_ja_small */
  font-family: "Shippori Mincho";
  font-size: var(--scale-24, 24px);
  font-style: normal;
  font-weight: 500;
  line-height: 150%; /* 36px */
  letter-spacing: 0.96px;
}
section#footer-cta div.footer-cta__heading div.heading__title h2:after {
  display: none;
}
section#footer-cta div.footer-cta__heading div.heading__title div.en {
  color: var(--surface, #fff);
  font-feature-settings: "palt" on;

  /* h2_eng */
  font-family: "Cormorant Garamond";
  font-size: 64px;
  font-style: normal;
  font-weight: 600;
  line-height: 120%; /* 76.8px */
  letter-spacing: 2.56px;
}
section#footer-cta div.footer-cta__heading p {
  color: #fff;
  font-family: "Noto Sans JP";
  font-size: var(--scale-20, 20px);
  font-style: normal;
  font-weight: 500;
  line-height: 170%; /* 34px */
  margin: 0;
}
section#footer-cta nav {
  flex: 1 0 0;
  width: 100%;
}
section#footer-cta nav ul.fotter-cta__list {
  display: flex;
  gap: var(--scale-40, 40px);
  align-self: stretch;
  width: 100%;
  max-width: 1080px;
  margin-inline: auto;
  flex: 1 0 0;
  align-items: normal;
  margin: 0 auto;
  padding: 0;
}
@media screen and (max-width: 768px) {
  section#footer-cta div.footer-cta__heading {
    flex-direction: column;
    gap: var(--scale-24, 24px);
  }
  section#footer-cta nav ul.fotter-cta__list {
    flex-direction: column;
  }
}

section#footer-cta nav ul.fotter-cta__list li {
  display: flex;
  padding: var(--scale-40, 40px) var(--scale-24, 24px);
  justify-content: center;
  align-items: center;
  gap: var(--scale-16, 16px);
  flex: 1 0 0;
  border-radius: var(--scale-4, 4px);
  background: var(--surface, #fff);
  box-shadow: 0 var(--scale-8, 8px) var(--scale-16, 16px) 0 rgba(0, 0, 0, 0.16);
}
section#footer-cta nav ul.fotter-cta__list li:first-of-type {
  background: var(--secondary, #56c255);
}
section#footer-cta nav ul.fotter-cta__list li:before {
  content: "";
  display: flex;
  width: var(--scale-32, 32px);
  align-items: center;
  aspect-ratio: 1/1;
  background: url(../lightning-child/assets/images/footer-cta-icon02.svg) center
    center/ contain no-repeat;
}
section#footer-cta nav ul.fotter-cta__list li:after {
  content: "";
  display: flex;
  width: var(--scale-20, 20px);
  align-items: center;
  aspect-ratio: 1/1;
  background: url(../lightning-child/assets/images/icon-arrow.svg) center
    center/ contain no-repeat;
}
section#footer-cta nav ul.fotter-cta__list li:first-of-type:before {
  background: url(../lightning-child/assets/images/footer-cta-icon01.svg) center
    center/ contain no-repeat;
}
section#footer-cta nav ul.fotter-cta__list li:first-of-type:after {
  background: url(../lightning-child/assets/images/icon-arrow-white.svg) center
    center/ contain no-repeat;
}

section#footer-cta nav ul.fotter-cta__list li a {
  display: contents;

  color: var(--primary, #105e9a);
  text-align: center;
  font-family: "Shippori Mincho";
  font-size: var(--scale-32, 32px);
  font-style: normal;
  font-weight: 600;
  line-height: normal;
  letter-spacing: calc(1em / 32 * 1.28);
}
section#footer-cta nav ul.fotter-cta__list li:first-of-type a {
  color: var(--surface, #fff);
}
/*============================
#footer-info
============================*/
section#footer-info {
  display: flex;
  padding: var(--scale-40, 40px) var(--padding-inline);
  flex-direction: column;
  align-items: center;
  align-items: flex-start;
  gap: var(--scale-16, 16px);
  align-self: stretch;
  background: var(--surface-variant, #f5f7f8);
}
section#footer-info h2 {
  max-width: var(--width-m, 1080px);
  width: 100%;
  margin-inline: auto;

  font-family: "Shippori Mincho";
  font-size: var(--scale-24, 24px);
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  letter-spacing: 0.96px;
  padding: 0;
  margin: 0 auto;
  border: 0;
  color: var(--primary, #105e9a);
}
section#footer-info h2:after {
  display: none;
}
section#footer-info p {
  max-width: var(--width-m, 1080px);
  width: 100%;
  margin-inline: auto;
  color: var(--on-surface, #132f4e);
  font-family: "Noto Sans JP";
  font-size: var(--scale-16, 16px);
  font-style: normal;
  font-weight: 500;
  line-height: 170%; /* 27.2px */
  padding: 0;
  margin: 0 auto;
}
section#footer-info p img {
  width: auto;
  height: 1.5em;
}

footer .site-footer-copyright {
  width: 100%;
  display: flex;
  padding: var(--scale-16, 16px) var(--padding-inline);
  justify-content: center;
  align-items: center;
  background: var(--surface-variant, #f5f7f8);
  color: var(--on-surface-variant, #646e81);
  text-align: center;
  font-family: "Noto Sans JP";
  font-size: var(--scale-14, 14px);
  font-style: normal;
  font-weight: 500;
  line-height: normal;
  letter-spacing: 0.56px;
  max-width: unset;
}
footer .site-footer-copyright p:nth-of-type(2) {
  display: none;
}
