<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">@charset "UTF-8";
:root {
  --color-primary-100: 213,226, 242;
  --color-primary-500: 3, 99, 213;
  --color-grayscale-100: 255, 255, 255;
  --color-grayscale-200: 242, 242, 242;
  --color-grayscale-500: 204, 204, 204;
  --color-grayscale-800: 136, 136, 136;
  --color-grayscale-900: 0,0,0;
  --color-grad01-01: 0, 91, 207;
  --color-grad01-02: 79, 58, 210;
  --color-grad02-01: 206, 141, 255;
  --color-grad02-02: 167, 207, 255;
  --color-grad03-01: 148, 92, 239;
  --color-grad03-02: 3, 99, 213;
  --fontfamily_base: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", Meiryo, sans-serif;
  --font_color_base: rgb(var(--color-grayscale-900));
  --font_size_base: 1.4rem;
  --line-height_base: 2;
  --letter-spacing_base: .02em;
  --line-height_head: 1.6;
  --fontfamily_en: "Overpass", sans-serif;
  --font_weight_en: 600;
  --line-height_en: 1.8;
  --letter-spacing_en: .1em;
  --contents_width: 1100px;
  --contents_wide_width: 1400px;
  --body_padding_side: 20px;
  --contents_width_with_padding: 1160px;
  --contents_wide_width_with_padding: 1460px;
  --sidebar_width: 250px;
  --header_height: 60px;
}
@media (min-width: 768px) {
  :root {
    --body_padding_side: 30px;
    --header_height: 120px;
    --font_size_base: 1.6rem;
  }
}

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, a, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

html {
  font-size: 62.5%;
  word-break: break-all;
}

body {
  -webkit-text-size-adjust: 100%;
}

article, aside, details, figcaption, figure,
main, footer, header, menu, nav, section {
  display: block;
}

h1, h2, h3, h4, h5, h6 {
  word-break: break-word;
  line-break: strict;
  overflow-wrap: break-word;
  word-wrap: break-word;
}

ul:not([class]),
ol:not([class]) {
  padding-left: 1.25em;
}

ul[class],
ol[class] {
  list-style: none;
}

span {
  font-weight: inherit;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: "";
  content: none;
}

a {
  color: inherit;
}
@media (hover: hover) and (pointer: fine) {
  a:hover {
    text-decoration: none;
  }
}

a[class] {
  text-decoration: none;
}

ins {
  background-color: #ff9;
  text-decoration: none;
}

mark {
  background-color: #ff9;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

address {
  font-style: normal;
}

sup {
  vertical-align: text-top;
  font-size: 0.75em;
}

sub {
  vertical-align: text-bottom;
  font-size: 0.75em;
}

table {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
  border-spacing: 0;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid rgb(var(rgba(var(--color-grayscale-900), 0.6)));
  margin: 1em 0;
  padding: 0;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

iframe {
  max-width: 100%;
}

/* form
================================================== */
input[type=text], input[type=email], input[type=tel], textarea, button, select, option {
  display: block;
  width: 100%;
  max-width: 100%;
  font-family: inherit;
  outline: none;
  border: 1px solid;
  border-radius: 0;
  background: none;
}
@media (max-width: 767px) {
  input[type=text], input[type=email], input[type=tel], textarea, button, select, option {
    font-size: 1.6rem;
  }
}

input[type=text], input[type=email], input[type=tel], textarea, button {
  -webkit-appearance: none;
  appearance: none;
}

input[type=radio], input[type=checkbox] {
  margin: 0;
  padding: 0;
  vertical-align: middle;
}

select {
  color: inherit;
}

textarea {
  resize: vertical;
}

button {
  color: inherit;
  font-weight: normal;
  cursor: pointer;
  text-align: left;
  font: inherit;
}

/* 02_base
================================================ */
html:not([class=is-no-smooth]) {
  scroll-behavior: smooth;
  scroll-padding-top: var(--header_height);
}

body {
  min-width: 320px;
  font-family: var(--fontfamily_base);
  color: var(--font_color_base);
  font-size: var(--font_size_base);
  line-height: var(--line-height_base);
  letter-spacing: var(--letter-spacing_base);
  -webkit-text-size-adjust: 100%;
}
@media (min-width: 768px) {
  body {
    min-width: var(--contents_width_with_padding);
  }
}
@media (min-width: 768px) and (hover: none) {
  body {
    -webkit-text-size-adjust: none;
  }
}

h1, h2, h3, h4, h5, h6 {
  line-height: var(--line-height_head);
}

a[target=_blank]:not([class])::after {
  content: "";
  display: inline-block;
  width: 9px;
  height: 9px;
  background-color: currentColor;
  color: currentColor;
  -webkit-mask-image: url('data:image/svg+xml;utf8,&lt;svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 9.004 8.998"&gt;&lt;path d="M7566,22026v-5.334h1.78v.891h-.89v3.553h3.56v-.889h.885V22026Zm2.67-2.67V22018H7574v5.328Zm.89-.885h3.554v-3.559h-3.554Z" transform="translate(-7565.498 -22017.502)" stroke="rgba(0,0,0,0)" stroke-miterlimit="10" stroke-width="1"/&gt;&lt;/svg&gt;');
  mask-image: url('data:image/svg+xml;utf8,&lt;svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 9.004 8.998"&gt;&lt;path d="M7566,22026v-5.334h1.78v.891h-.89v3.553h3.56v-.889h.885V22026Zm2.67-2.67V22018H7574v5.328Zm.89-.885h3.554v-3.559h-3.554Z" transform="translate(-7565.498 -22017.502)" stroke="rgba(0,0,0,0)" stroke-miterlimit="10" stroke-width="1"/&gt;&lt;/svg&gt;');
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
  transition: all 0.3s ease;
  margin-left: 4px;
}
@media (min-width: 768px) {
  a[target=_blank]:not([class])::after {
    margin-left: 6px;
    width: 12px;
    height: 12px;
  }
}

.l-wrapper {
  overflow: hidden;
  position: relative;
}
.l-wrapper::before, .l-wrapper::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
}
.l-wrapper::before {
  background-color: rgba(var(--color-grayscale-900), 0.07);
}
.l-wrapper::after {
  background: url(../img/common/bg_surface01.jpg);
  opacity: 0.3;
}

@media (min-width: 768px) {
  .l-container.is-col2 {
    display: grid;
    grid-template-columns: var(--sidebar_width) auto;
    gap: 0 20px;
    width: var(--contents_width);
    margin: 0 auto;
  }
  .l-container.is-col2 .l-contents {
    flex: 1;
  }
  .l-container.is-col2 .l-sidebar {
    order: -1;
    flex-basis: var(--sidebar_width);
  }
}

/* sp &lt;--&gt; tb &lt;--&gt; pc
-------------------------------------- */
.u-media-query {
  display: none;
  font-family: "sp";
}
@media (min-width: 768px) {
  .u-media-query {
    font-family: "tb";
  }
}
@media (min-width: 1161px) {
  .u-media-query {
    font-family: "pc";
  }
}

@media (max-width: 1159px) {
  .u-view-pc {
    display: none !important;
  }
}

@media (max-width: 767px) {
  .u-view-tb {
    display: none !important;
  }
}
@media (min-width: 1161px) {
  .u-view-tb {
    display: none !important;
  }
}

@media (min-width: 768px) {
  .u-view-sp {
    display: none !important;
  }
}

@media (min-width: 1161px) {
  .u-view-under-tb {
    display: none !important;
  }
}

@media (max-width: 767px) {
  .u-view-upper-tb {
    display: none !important;
  }
}

/* overflow
-------------------------------------- */
.u-overflow-wrap {
  overflow: auto;
}
.u-overflow-wrap .u-overflow-sec {
  overflow: hidden;
}
@media (min-width: 768px) {
  .u-overflow-wrap .u-overflow-sec {
    min-width: var(--contents_width_with_padding);
  }
}

/* font
-------------------------------------- */
.u-font-en {
  font-family: var(--fontfamily_en);
  font-weight: var(--font_weight_en);
  line-height: var(--line-height_en);
  letter-spacing: var(--letter-spacing_en);
}

/* text
-------------------------------------- */
.u-uppercase {
  text-transform: uppercase;
}

.u-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}

.u-underline {
  text-decoration: underline;
}

/* link
-------------------------------------- */
a.u-alpha {
  display: block;
  text-decoration: none;
}
@media (hover: hover) and (pointer: fine) {
  a.u-alpha {
    transition: all 0.3s ease;
  }
  a.u-alpha:hover {
    opacity: 0.7;
  }
}

a.u-zoom {
  display: block;
  text-decoration: none;
}
a.u-zoom .u-zoom__img {
  display: block;
}
a.u-zoom .u-zoom__img-wrap {
  display: block;
  overflow: hidden;
}
@media (min-width: 768px) {
  a.u-zoom .u-zoom__img {
    transition: all 0.3s ease;
  }
}
@media (hover: hover) and (pointer: fine) {
  a.u-zoom:hover .u-zoom__img {
    transform: scale(1.1);
  }
}

a[class].u-text-underline {
  text-decoration: underline;
}
@media (hover: hover) and (pointer: fine) {
  a[class].u-text-underline:hover {
    text-decoration: none;
  }
}

/* layout
-------------------------------------- */
.u-iframe {
  position: relative;
  aspect-ratio: 16/9;
}
.u-iframe iframe, .u-iframe video {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
}

/* layout
-------------------------------------- */
.u-inner {
  box-sizing: border-box;
  padding-left: var(--body_padding_side);
  padding-right: var(--body_padding_side);
}
@media (min-width: 768px) {
  .u-inner {
    width: 100%;
    max-width: var(--contents_width_with_padding);
    margin-right: auto;
    margin-left: auto;
  }
}

.u-wide-inner {
  box-sizing: border-box;
  padding-left: var(--body_padding_side);
  padding-right: var(--body_padding_side);
}
@media (min-width: 768px) {
  .u-wide-inner {
    width: 100%;
    max-width: var(--contents_wide_width_with_padding);
    margin-right: auto;
    margin-left: auto;
  }
}

/*  .c-archive01
================================================== */
.c-archive01__item {
  border-style: solid;
  border-width: 1px 0 0;
}
.c-archive01__item:last-child {
  border-width: 1px 0;
}
.c-archive01__item-in {
  display: block;
  padding: 10px 0;
}
.c-archive01__item-meta {
  display: flex;
  flex-wrap: wrap;
}
.c-archive01__item-date {
  margin: 0 10px 0 0;
  padding: 5px 0;
}
.c-archive01__item-cat {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  margin: 0 -5px -5px 0;
}
.c-archive01__item-cat-item {
  margin: 0 5px 5px 0;
  padding: 5px 10px;
  background: rgb(var(--color-grayscale-900));
  color: #fff;
}
.c-archive01__item-head {
  overflow: hidden;
  display: -webkit-box;
  max-height: 1.8em;
  line-height: 1.8;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
  margin-top: 5px;
}
@media (min-width: 768px) {
  .c-archive01__item {
    display: block;
  }
  .c-archive01__item-head {
    max-height: 3.6em;
    -webkit-line-clamp: 2;
  }
}

/* .c-btn01.is-blue
===================================*/
.c-btn01.is-blue .c-btn01__link {
  background-color: rgb(var(--color-primary-500));
  color: rgb(var(--color-grayscale-100));
}
.c-btn01.is-blue .c-btn01__link::before {
  background-color: rgb(var(--color-primary-100));
}
.c-btn01.is-blue .c-btn01__link::after {
  background-color: rgb(var(--color-primary-500));
}

/* .c-btn01.is-sm
===================================*/
.c-btn01.is-sm {
  width: 234px;
}
.c-btn01.is-sm .c-btn01__link {
  border-radius: 30px;
  font-size: 1.5rem;
  min-height: 60px;
}
.c-btn01.is-sm .c-btn01__link::before, .c-btn01.is-sm .c-btn01__link::after {
  left: -77%;
}
@media (max-width: 767px) {
  .c-btn01.is-sm .c-btn01__link {
    padding-left: 48px;
  }
}
@media (min-width: 768px) {
  .c-btn01.is-sm {
    width: 340px;
  }
  .c-btn01.is-sm .c-btn01__link {
    border-radius: 35px;
    font-size: 1.8rem;
    min-height: 70px;
  }
  .c-btn01.is-sm .c-btn01__link::before, .c-btn01.is-sm .c-btn01__link::after {
    left: -84%;
  }
}

/* .c-btn01
===================================*/
.c-btn01 {
  width: 295px;
}
.c-btn01__link {
  background-color: rgb(var(--color-grayscale-100));
  border-radius: 35px;
  box-sizing: border-box;
  color: rgb(var(--color-primary-500));
  display: grid;
  place-items: center;
  font-size: 1.9rem;
  font-weight: 700;
  padding-inline: 30px;
  position: relative;
  min-height: 70px;
}
.c-btn01__link::before, .c-btn01__link::after {
  content: "";
  border-radius: 50%;
  position: absolute;
  margin: auto;
  inset: 0 0 0 -85%;
}
.c-btn01__link::before {
  background-color: rgb(var(--color-primary-500));
  width: 10px;
  height: 10px;
}
.c-btn01__link::after {
  background-color: rgb(var(--color-grayscale-100));
  width: 4px;
  height: 4px;
}
@media (min-width: 768px) {
  .c-btn01 {
    width: 523px;
  }
  .c-btn01__link {
    border-radius: 54px;
    font-size: 2.9rem;
    padding-inline: 60px;
    min-height: 108px;
  }
  .c-btn01__link::before, .c-btn01__link::after {
    left: -87%;
  }
}
@media (hover: hover) and (pointer: fine) {
  .c-btn01__link {
    transition: all 0.3s ease;
  }
  .c-btn01__link::before, .c-btn01__link::after {
    transition: all 0.3s ease;
  }
  .c-btn01__link:hover {
    opacity: 0.8;
  }
  .c-btn01__link:hover::before {
    width: 18px;
    height: 18px;
  }
  .c-btn01__link:hover::after {
    width: 10px;
    height: 10px;
  }
}

/* .c-color
================================================== */
.c-color-grayscale-900 {
  color: rgb(var(--color-grayscale-900));
}

.c-color-primary-500 {
  color: rgb(var(--color-primary-500));
}

/* .c-cv01
===================================*/
.c-cv01 {
  color: rgb(var(--color-grayscale-100));
  margin-top: -96px;
  position: relative;
  z-index: 3;
}
.c-cv01::before {
  content: "";
  background: url(../img/common/c-cv/bg_cv01_sp.jpg) no-repeat right bottom/cover;
  position: absolute;
  top: 0;
  left: 0;
  width: calc(100% - 20px);
  height: 100%;
  z-index: -1;
}
.c-cv01__head {
  background: linear-gradient(-135deg, rgb(var(--color-grad02-01)) 0%, rgb(var(--color-grad02-02)) 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  font-size: 4rem;
  letter-spacing: 0;
  line-height: var(--line-height_head);
  width: -moz-fit-content;
  width: fit-content;
}
.c-cv01__lead {
  font-size: 1.5rem;
}
.c-cv01__btn {
  display: grid;
  gap: 20px;
  margin: 25px auto 0;
  width: -moz-fit-content;
  width: fit-content;
}
.c-cv01__tel {
  background-color: transparent;
  border: 1px solid rgb(var(--color-grayscale-100));
  color: rgb(var(--color-primary-100));
}
.c-cv01__tel::before {
  background-color: rgb(var(--color-primary-100));
}
.c-cv01__tel::after {
  background-color: rgb(var(--color-primary-500));
}
.c-cv01__tel-num {
  font-size: 2.2rem;
  letter-spacing: var(--letter-spacing_head);
}
.c-cv01__tel-num::before {
  content: "";
  display: inline-block;
  width: 13px;
  height: 15px;
  background-color: currentColor;
  color: currentColor;
  -webkit-mask-image: url('data:image/svg+xml;utf8,&lt;svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14 16"&gt;&lt;path d="M2.90977 7.40036C3.94819 9.7422 5.62119 11.662 7.66196 12.8536L9.24843 11.0331C9.45034 10.8014 9.73158 10.7352 9.98397 10.8262C10.7916 11.1324 11.657 11.2979 12.5584 11.2979C12.7496 11.2979 12.933 11.3851 13.0683 11.5403C13.2035 11.6955 13.2795 11.9059 13.2795 12.1254V15.0217C13.2795 15.2411 13.2035 15.4516 13.0683 15.6068C12.933 15.762 12.7496 15.8492 12.5584 15.8492C9.30707 15.8492 6.18893 14.3671 3.88991 11.7289C1.59089 9.0907 0.299316 5.51256 0.299316 1.78161C0.299316 1.56214 0.375291 1.35166 0.510528 1.19647C0.645764 1.04128 0.829184 0.954102 1.02044 0.954102H3.54436C3.73561 0.954102 3.91903 1.04128 4.05427 1.19647C4.18951 1.35166 4.26548 1.56214 4.26548 1.78161C4.26548 2.81599 4.40971 3.80899 4.67652 4.7358C4.75584 5.02542 4.69815 5.34815 4.49624 5.57985L2.90977 7.40036Z" fill="currentColor"/&gt;&lt;/svg&gt;');
  mask-image: url('data:image/svg+xml;utf8,&lt;svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14 16"&gt;&lt;path d="M2.90977 7.40036C3.94819 9.7422 5.62119 11.662 7.66196 12.8536L9.24843 11.0331C9.45034 10.8014 9.73158 10.7352 9.98397 10.8262C10.7916 11.1324 11.657 11.2979 12.5584 11.2979C12.7496 11.2979 12.933 11.3851 13.0683 11.5403C13.2035 11.6955 13.2795 11.9059 13.2795 12.1254V15.0217C13.2795 15.2411 13.2035 15.4516 13.0683 15.6068C12.933 15.762 12.7496 15.8492 12.5584 15.8492C9.30707 15.8492 6.18893 14.3671 3.88991 11.7289C1.59089 9.0907 0.299316 5.51256 0.299316 1.78161C0.299316 1.56214 0.375291 1.35166 0.510528 1.19647C0.645764 1.04128 0.829184 0.954102 1.02044 0.954102H3.54436C3.73561 0.954102 3.91903 1.04128 4.05427 1.19647C4.18951 1.35166 4.26548 1.56214 4.26548 1.78161C4.26548 2.81599 4.40971 3.80899 4.67652 4.7358C4.75584 5.02542 4.69815 5.34815 4.49624 5.57985L2.90977 7.40036Z" fill="currentColor"/&gt;&lt;/svg&gt;');
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
  transition: all 0.3s ease;
  margin-right: 6px;
}
.c-cv01__tel-time {
  font-size: 1.3rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.06em;
  margin-top: -30px;
}
@media (max-width: 767px) {
  .c-cv01__inner {
    padding: 50px 50px 60px 30px;
  }
  .c-cv01__head {
    margin-inline: auto;
  }
}
@media (min-width: 768px) {
  .c-cv01 {
    margin-top: -116px;
  }
  .c-cv01::before {
    background-image: url(../img/common/c-cv/bg_cv01_pc.jpg);
    width: calc(100% - clamp(1.5rem, -15rem + 14.06vw, 12rem));
  }
  .c-cv01__inner {
    padding-block: 104px 124px;
  }
  .c-cv01__header {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 70px;
  }
  .c-cv01__head {
    font-size: 7rem;
  }
  .c-cv01__lead {
    font-size: 1.8rem;
    margin-top: 10px;
  }
  .c-cv01__btn {
    grid-template-columns: repeat(2, 1fr);
    gap: 54px;
  }
  .c-cv01__tel-num {
    align-self: end;
    font-size: 3.7rem;
  }
  .c-cv01__tel-num::before {
    margin-right: 11px;
    width: 23px;
    height: 22px;
  }
  .c-cv01__tel-time {
    font-size: 1.4rem;
    margin-top: -40px;
  }
}

/* .c-faq01-wrapper
===================================*/
.c-faq01-wrapper {
  display: grid;
  gap: 15px;
}
@media (min-width: 768px) {
  .c-faq01-wrapper {
    gap: 24px;
  }
}

/* .c-faq01
===================================*/
.c-faq01__ico {
  color: rgb(var(--color-primary-500));
  font-size: 1.9rem;
  position: absolute;
  top: 16px;
  left: 20px;
}
.c-faq01__head {
  background-color: rgb(var(--color-grayscale-100));
  font-size: 1.7rem;
  font-weight: 700;
  line-height: var(--line-height_head);
  padding: 20px 63px 20px 52px;
  position: relative;
}
.c-faq01__mark {
  background-color: rgba(var(--color-primary-100), 0.5);
  border-radius: 50%;
  margin-block: auto;
  position: absolute;
  inset: 0 20px 0 auto;
  width: 30px;
  height: 30px;
}
.c-faq01__mark::before, .c-faq01__mark::after {
  content: "";
  background-color: rgb(var(--color-primary-500));
  margin: auto;
  position: absolute;
  inset: 0;
  width: 13.5px;
  height: 2px;
  transition: all 0.3s ease;
}
.c-faq01__mark::after {
  transform: rotate(-90deg);
}
.is-active &gt; .c-faq01__mark::after {
  transform: rotate(0);
}
.c-faq01__txt {
  background-color: rgb(var(--color-grayscale-100));
  margin-top: 3px;
  padding: 20px;
}
@media (min-width: 768px) {
  .c-faq01__ico {
    font-size: 2.9rem;
    left: 30px;
  }
  .c-faq01__head {
    font-size: 2.3rem;
    padding: 24px 97px 24px 86px;
  }
  .c-faq01__mark {
    right: 30px;
    width: 40px;
    height: 40px;
  }
  .c-faq01__mark::before, .c-faq01__mark::after {
    width: 18px;
    height: 2px;
  }
  .c-faq01__txt {
    padding: 30px;
  }
}

/* .c-form-agreement
================================================== */
.c-form-agreement {
  letter-spacing: 0.06em;
  margin-top: 35px;
  margin-inline: auto;
  width: -moz-fit-content;
  width: fit-content;
}
.c-form-agreement .c-checkbox {
  margin-top: 30px;
  font-size: 1.6rem;
}
@media (min-width: 768px) {
  .c-form-agreement {
    text-align: center;
    margin-top: 50px;
  }
  .c-form-agreement .c-checkbox {
    margin-top: 24px;
  }
}

/* 確認画面
================================================ */
.mw_wp_form_confirm .c-form-agreement,
.is-confirm .c-form-agreement {
  display: none;
}

/* .c-form-btn
================================================== */
.c-form-area-btn {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 16px 40px;
  margin-top: 16px;
}
@media (min-width: 768px) {
  .c-form-area-btn {
    margin-top: 30px;
  }
}

.c-form-btn {
  position: relative;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 295px;
  margin: 0 auto;
  text-align: left;
  height: 60px;
  padding: 10px 24px 10px 32px;
  background: rgb(var(--color-grayscale-100));
  color: rgb(var(--color-primary-500));
  border: 1px solid rgb(var(--color-grayscale-100));
  font-size: 1.5rem;
  -webkit-appearance: none;
  appearance: none;
  font-weight: 700;
  border-radius: 30px;
  letter-spacing: 0.06em;
}
.c-form-btn::before, .c-form-btn::after {
  content: "";
  border-radius: 50%;
  margin: auto;
  position: absolute;
  inset: 0 0 0 -82%;
}
.c-form-btn::before {
  background-color: rgb(var(--color-primary-500));
  width: 10px;
  height: 10px;
}
.c-form-btn::after {
  background-color: rgb(var(--color-primary-100));
  width: 4px;
  height: 4px;
}
.c-form-btn.is-back {
  background: transparent;
  color: rgb(var(--color-grayscale-100));
}
.c-form-btn.is-back::before {
  background-color: rgb(var(--color-primary-100));
}
.c-form-btn.is-back::after {
  background-color: rgb(var(--color-primary-500));
}
@media (min-width: 768px) {
  .c-form-btn {
    max-width: 331px;
    height: 70px;
    font-size: 1.6rem;
    border-radius: 35px;
    transition: all 0.3s ease;
    margin: 0;
  }
}
@media (hover: hover) and (pointer: fine) {
  .c-form-btn::before, .c-form-btn::after {
    transition: all 0.3s ease;
  }
  .c-form-btn:hover {
    opacity: 0.8;
  }
  .c-form-btn:hover::before {
    width: 18px;
    height: 18px;
  }
  .c-form-btn:hover::after {
    width: 10px;
    height: 10px;
  }
}

.mw_wp_form_confirm .c-form-area-btn,
.is-confirm .c-form-area-btn {
  margin-top: 30px;
}
@media (min-width: 768px) {
  .mw_wp_form_confirm .c-form-area-btn,
.is-confirm .c-form-area-btn {
    margin-top: 60px;
  }
}

/* .c-form .mwform-checkbox-field
================================================ */
.c-form .mwform-checkbox-field,
.c-form .c-checkbox {
  display: block;
}
.c-form .mwform-checkbox-field + .mwform-checkbox-field,
.c-form .mwform-checkbox-field + .c-checkbox,
.c-form .c-checkbox + .mwform-checkbox-field,
.c-form .c-checkbox + .c-checkbox {
  margin-top: 10px;
}
.c-form .mwform-checkbox-field label,
.c-form .c-checkbox label {
  display: block;
  cursor: pointer;
}
.c-form .mwform-checkbox-field input,
.c-form .c-checkbox input {
  border-width: 0;
  clip: rect(0 0 0 0);
  -webkit-clip-path: inset(50%);
  clip-path: inset(50%);
  width: 1px;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
}
.c-form .mwform-checkbox-field input:focus-visible + .mwform-checkbox-field-text::before, .c-form .mwform-checkbox-field input:focus-visible + .c-checkbox__text::before,
.c-form .c-checkbox input:focus-visible + .mwform-checkbox-field-text::before,
.c-form .c-checkbox input:focus-visible + .c-checkbox__text::before {
  border-color: rgb(var(--color-grayscale-900));
  box-shadow: 0 0 0 2px rgba(var(--color-grayscale-900), 0.25);
}
.c-form .mwform-checkbox-field .mwform-checkbox-field-text,
.c-form .mwform-checkbox-field .c-checkbox__text,
.c-form .c-checkbox .mwform-checkbox-field-text,
.c-form .c-checkbox .c-checkbox__text {
  position: relative;
  display: inline-flex;
  align-items: center;
  padding-left: 28px;
  min-height: 20px;
  vertical-align: top;
  font-size: 1.5rem;
}
.c-form .mwform-checkbox-field .mwform-checkbox-field-text::before,
.c-form .mwform-checkbox-field .c-checkbox__text::before,
.c-form .c-checkbox .mwform-checkbox-field-text::before,
.c-form .c-checkbox .c-checkbox__text::before {
  content: "";
  position: absolute;
  top: 6px;
  left: 0;
  display: block;
  width: 20px;
  height: 20px;
  background: rgb(var(--color-grayscale-100));
  border: 1px solid rgb(var(--color-grayscale-500));
  box-sizing: border-box;
}
.c-form .mwform-checkbox-field .mwform-checkbox-field-text::after,
.c-form .mwform-checkbox-field .c-checkbox__text::after,
.c-form .c-checkbox .mwform-checkbox-field-text::after,
.c-form .c-checkbox .c-checkbox__text::after {
  content: "";
  position: absolute;
  top: 6px;
  left: 1px;
  width: 20px;
  height: 20px;
  background-color: rgb(var(--color-primary-500));
  -webkit-mask-image: url('data:image/svg+xml;uft8,&lt;svg xmlns="http://www.w3.org/2000/svg" width="16px" height="16px" viewBox="0 0 26 26" fill="none" stroke="currentColor" stroke-width="4px" stroke-linecap="square" stroke-linejoin="arcs"&gt;&lt;polyline points="20 6 9 17 4 12"&gt;&lt;/polyline&gt;&lt;/svg&gt;');
  mask-image: url('data:image/svg+xml;uft8,&lt;svg xmlns="http://www.w3.org/2000/svg" width="16px" height="16px" viewBox="0 0 26 26" fill="none" stroke="currentColor" stroke-width="4px" stroke-linecap="square" stroke-linejoin="arcs"&gt;&lt;polyline points="20 6 9 17 4 12"&gt;&lt;/polyline&gt;&lt;/svg&gt;');
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  transition: all 0.3s ease;
  transform: scale(0);
}
.c-form .mwform-checkbox-field input:checked + .mwform-checkbox-field-text::after,
.c-form .mwform-checkbox-field input:checked + .c-checkbox__text::after,
.c-form .c-checkbox input:checked + .mwform-checkbox-field-text::after,
.c-form .c-checkbox input:checked + .c-checkbox__text::after {
  transform: scale(1);
}
@media (min-width: 768px) {
  .c-form .mwform-checkbox-field .mwform-checkbox-field-text,
.c-form .mwform-checkbox-field .c-checkbox__text,
.c-form .c-checkbox .mwform-checkbox-field-text,
.c-form .c-checkbox .c-checkbox__text {
    font-size: 1.8rem;
    padding-left: 55px;
    min-height: 35px;
  }
  .c-form .mwform-checkbox-field .mwform-checkbox-field-text::before,
.c-form .mwform-checkbox-field .c-checkbox__text::before,
.c-form .c-checkbox .mwform-checkbox-field-text::before,
.c-form .c-checkbox .c-checkbox__text::before {
    top: 0;
    width: 35px;
    height: 35px;
  }
  .c-form .mwform-checkbox-field .mwform-checkbox-field-text::after,
.c-form .mwform-checkbox-field .c-checkbox__text::after,
.c-form .c-checkbox .mwform-checkbox-field-text::after,
.c-form .c-checkbox .c-checkbox__text::after {
    top: 1px;
    -webkit-mask-size: 24px 24px;
    mask-size: 24px 24px;
    width: 35px;
    height: 35px;
  }
}

.c-checkbox-list {
  display: flex;
  flex-wrap: wrap;
}
.c-checkbox-list .mwform-checkbox-field,
.c-checkbox-list .c-checkbox {
  display: inline-block;
  margin-right: 20px;
}
.c-checkbox-list .mwform-checkbox-field + .mwform-checkbox-field, .c-checkbox-list .mwform-checkbox-field + .c-checkbox,
.c-checkbox-list .c-checkbox + .mwform-checkbox-field,
.c-checkbox-list .c-checkbox + .c-checkbox {
  margin-top: 0;
}

/* c-flow-flow
------------------------------------- */
.c-form-flow {
  max-width: 170px;
  position: relative;
  display: flex;
  align-items: center;
  margin: 0 auto 20px;
}
.c-form-flow::before {
  content: "";
  position: absolute;
  top: 5px;
  left: 50%;
  transform: translate(-50%, 0);
  height: 1px;
  width: calc(100% - 25px);
  background: var(rgba(var(--color-grayscale-900), 0.6));
}
.c-form-flow__item {
  position: relative;
  padding-top: 20px;
  font-weight: 400;
  color: var(rgba(var(--color-grayscale-900), 0.6));
}
.c-form-flow__item::before {
  content: "";
  position: absolute;
  top: 2px;
  left: 50%;
  transform: translate(-50%, 0);
  width: 7px;
  height: 7px;
  background: var(rgba(var(--color-grayscale-900), 0.6));
  border-radius: 50%;
}
.c-form-flow__item:nth-child(2) {
  margin: auto;
}
@media (min-width: 768px) {
  .c-form-flow {
    max-width: 260px;
    margin: 0 auto 70px;
  }
  .c-form-flow::before {
    width: calc(100% - 35px);
  }
  .c-form-flow__item {
    padding-top: 25px;
    font-size: 2rem;
  }
  .c-form-flow__item::before {
    top: 0;
    width: 10px;
    height: 10px;
  }
}

.mw_wp_form_input .c-form-flow__item:nth-child(1), .is-input .c-form-flow__item:nth-child(1) {
  color: rgb(var(--color-accent01));
}
.mw_wp_form_input .c-form-flow__item:nth-child(1)::before, .is-input .c-form-flow__item:nth-child(1)::before {
  background: rgb(var(--color-accent01));
}

.mw_wp_form_confirm .c-form-flow__item:nth-child(2), .is-confirm .c-form-flow__item:nth-child(2) {
  color: rgb(var(--color-accent01));
}
.mw_wp_form_confirm .c-form-flow__item:nth-child(2)::before, .is-confirm .c-form-flow__item:nth-child(2)::before {
  background: rgb(var(--color-accent01));
}

.mw_wp_form_complete .c-form-flow__item:nth-child(2), .is-complete .c-form-flow__item:nth-child(2) {
  color: rgb(var(--color-accent01));
}
.mw_wp_form_complete .c-form-flow__item:nth-child(2)::before, .is-complete .c-form-flow__item:nth-child(2)::before {
  background: rgb(var(--color-accent01));
}

/* c-form-privacy
------------------------------------ */
.c-form-privacy {
  border: 1px solid rgb(var(--color-grayscale-100));
  margin-top: 20px;
}
.c-form-privacy__in {
  box-sizing: border-box;
  margin: 20px 10px 20px 20px;
  overflow: auto;
  padding-right: 30px;
  max-height: 216px;
  overscroll-behavior-y: none;
}
.c-form-privacy__in h3 {
  font-size: 1.6rem;
  line-height: var(--line-height_base);
  margin-bottom: 1.5em;
}
.c-form-privacy__in p {
  margin-top: 1em;
}
.c-form-privacy__in ol {
  margin-top: 1em;
}
.c-form-privacy__in::-webkit-scrollbar {
  width: 4px;
}
.c-form-privacy__in::-webkit-scrollbar-track {
  background-color: transparent;
  border-radius: 1000px;
}
.c-form-privacy__in::-webkit-scrollbar-thumb {
  background-color: rgba(32, 32, 32, 0.5);
  border-radius: 1000px;
}
@media (min-width: 768px) {
  .c-form-privacy {
    margin-top: 40px;
  }
  .c-form-privacy__in {
    letter-spacing: 0.06em;
    line-height: var(--line-height_head);
    margin: 36px 17px 40px 40px;
    padding-right: 45px;
    max-height: 220px;
  }
  .c-form-privacy__in h3 {
    font-size: 1.8rem;
  }
  .c-form-privacy__in p {
    margin-top: 1.5em;
  }
  .c-form-privacy__in ol {
    margin-top: 1.5em;
  }
  .c-form-privacy__in::-webkit-scrollbar {
    width: 8px;
  }
}

.mw_wp_form_confirm .c-form-privacy,
.is-confirm .c-form-privacy {
  display: none;
}

/* .c-form .mwform-radio-field
================================================ */
.c-form .mwform-radio-field, .c-form .c-radio {
  display: block;
}
.c-form .mwform-radio-field + .mwform-radio-field,
.c-form .mwform-radio-field + .c-radio, .c-form .c-radio + .mwform-radio-field,
.c-form .c-radio + .c-radio {
  margin-top: 10px;
}
.c-form .mwform-radio-field label, .c-form .c-radio label {
  display: block;
  cursor: pointer;
}
.c-form .mwform-radio-field input, .c-form .c-radio input {
  border-width: 0;
  clip: rect(0 0 0 0);
  -webkit-clip-path: inset(50%);
  clip-path: inset(50%);
  width: 1px;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
}
.c-form .mwform-radio-field input:focus-visible + .mwform-radio-field-text::before, .c-form .mwform-radio-field input:focus-visible + .c-radio__text::before, .c-form .c-radio input:focus-visible + .mwform-radio-field-text::before, .c-form .c-radio input:focus-visible + .c-radio__text::before {
  border-color: rgb(var(--color-grayscale-900));
  box-shadow: 0 0 0 2px rgba(var(--color-grayscale-900), 0.25);
}
.c-form .mwform-radio-field .mwform-radio-field-text,
.c-form .mwform-radio-field .c-radio__text, .c-form .c-radio .mwform-radio-field-text,
.c-form .c-radio .c-radio__text {
  position: relative;
  display: inline-flex;
  align-items: center;
  padding-left: 34px;
  min-height: 26px;
  vertical-align: top;
}
.c-form .mwform-radio-field .mwform-radio-field-text::before,
.c-form .mwform-radio-field .c-radio__text::before, .c-form .c-radio .mwform-radio-field-text::before,
.c-form .c-radio .c-radio__text::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 26px;
  height: 26px;
  background: #fff;
  border: 1px solid var(rgba(var(--color-grayscale-900), 0.6));
  border-radius: 50%;
  box-sizing: border-box;
}
.c-form .mwform-radio-field .mwform-radio-field-text::after,
.c-form .mwform-radio-field .c-radio__text::after, .c-form .c-radio .mwform-radio-field-text::after,
.c-form .c-radio .c-radio__text::after {
  content: "";
  position: absolute;
  top: calc((26px - 10px) / 2);
  left: calc((26px - 10px) / 2);
  display: block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: rgb(var(--color-grayscale-900));
  transform: scale(0);
  box-sizing: border-box;
  transition: all 0.3s ease;
}
.c-form .mwform-radio-field input:checked + .mwform-radio-field-text::after,
.c-form .mwform-radio-field input:checked + .c-radio__text::after, .c-form .c-radio input:checked + .mwform-radio-field-text::after,
.c-form .c-radio input:checked + .c-radio__text::after {
  transform: scale(1);
}

.c-radio-list {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
}
@media (min-width: 768px) {
  .c-radio-list {
    flex-direction: row;
  }
  .c-radio-list .mwform-radio-field,
.c-radio-list .c-radio {
    display: inline-block;
    margin-right: 20px;
  }
  .c-radio-list .mwform-radio-field + .mwform-radio-field, .c-radio-list .mwform-radio-field + .c-radio,
.c-radio-list .c-radio + .mwform-radio-field,
.c-radio-list .c-radio + .c-radio {
    margin-top: 0;
  }
}

/* /* c-form-txt
================================================== */
.c-form-txt {
  margin-bottom: 10px;
}
.c-form-txt.is-confirm {
  display: none;
}
@media (min-width: 768px) {
  .c-form-txt {
    margin-bottom: 35px;
    text-align: center;
  }
}

.mw_wp_form_confirm .c-form-txt {
  display: none;
}
.mw_wp_form_confirm .c-form-txt.is-confirm {
  display: block;
}

/* .c-form-placeholder
================================================== */
.c-form-placeholder {
  display: block;
  color: var(rgba(var(--color-grayscale-900), 0.6));
  font-size: 1.3rem;
  margin-bottom: 5px;
}
/* .c-form-note
================================================== */
.c-form-note {
  color: rgb(var(--color-grayscale-800));
  display: block;
  line-height: var(--line-height_head);
}
.c-form-note + .c-form-note {
  margin-top: 5px;
}
@media (max-width: 767px) {
  .c-form-note {
    font-size: 1.3rem;
  }
}
@media (min-width: 768px) {
  .c-form-note {
    margin-bottom: 2px;
  }
}

/* 確認画面
================================================ */
.mw_wp_form_confirm .c-form-note, .mw_wp_form_confirm .c-form-placeholder {
  display: none;
}

/* .c-form
================================================== */
input[type=text]:focus-visible, input[type=email]:focus-visible, input[type=tel]:focus-visible, textarea:focus-visible, button:focus-visible, select:focus-visible, option:focus-visible {
  border-color: rgb(var(--color-grayscale-900));
  box-shadow: 0 0 0 2px rgba(var(--color-grayscale-900), 0.25);
}

input.c-form-parts,
select.c-form-parts,
textarea.c-form-parts,
button.c-form-parts {
  box-sizing: border-box;
  display: block;
  width: 100%;
  height: 50px;
  padding: 5px 10px;
  font-size: 1.6rem;
  background: rgb(var(--color-grayscale-200));
  border: none;
  -webkit-appearance: none;
  appearance: none;
  font-family: inherit;
}
input.c-form-parts::placeholder,
select.c-form-parts::placeholder,
textarea.c-form-parts::placeholder,
button.c-form-parts::placeholder {
  color: rgb(var(--color-grayscale-900), 0.6);
}
@media (min-width: 768px) {
  input.c-form-parts,
select.c-form-parts,
textarea.c-form-parts,
button.c-form-parts {
    height: 60px;
  }
  input.c-form-parts.is-min,
select.c-form-parts.is-min,
textarea.c-form-parts.is-min,
button.c-form-parts.is-min {
    max-width: 220px;
  }
  input.c-form-parts.is-large,
select.c-form-parts.is-large,
textarea.c-form-parts.is-large,
button.c-form-parts.is-large {
    max-width: 100%;
  }
}

textarea.c-form-parts {
  height: 150px;
  resize: vertical;
}
@media (min-width: 768px) {
  textarea.c-form-parts {
    height: 196px;
  }
}

select.c-form-parts {
  padding-right: 20px;
  background: #fff no-repeat right 10px top 50%/12px;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2212%22%20height%3D%2210%22%20viewBox%3D%220%200%2012%2010%22%3E%3Cpath%20d%3D%22M6%2C0l6%2C10H0Z%22%20transform%3D%22translate(12%2010)%20rotate(180)%22%20fill%3D%22%231a1311%22%2F%3E%3C%2Fsvg%3E");
}

.c-form-parts-list {
  display: flex;
  flex-wrap: wrap;
  margin-right: -20px;
}
.c-form-parts-list .c-form-parts {
  margin-right: 20px;
  width: 300px;
}
.c-form-parts-list.is-flex-enb {
  justify-content: flex-end;
}

/* .c-form.is-default
================================================== */
.c-form.is-default .error + table,
.c-form.is-default .msg + table {
  margin-top: 25px;
}
.c-form.is-default .msg {
  color: rgb(var(--color-grayscale-900));
}
.c-form.is-default .error {
  color: #d30012;
  display: block;
  font-weight: 400;
}
.c-form.is-default .c-form__in {
  background-color: rgb(var(--color-grayscale-100));
  margin-top: 30px;
  padding: 40px 20px 22px;
}
.c-form.is-default table, .c-form.is-default thead, .c-form.is-default tbody, .c-form.is-default tr, .c-form.is-default th, .c-form.is-default td {
  display: block;
}
.c-form.is-default th, .c-form.is-default td {
  box-sizing: border-box;
  padding: 7px 0 18px;
}
.c-form.is-default th {
  color: rgb(var(--color-primary-500));
  font-size: 1.5rem;
  font-weight: 700;
  padding: 0;
  text-align: left;
}
@media (max-width: 767px) {
  .c-form.is-default .c-form__lead {
    margin-inline: 20px;
  }
  .c-form.is-default .c-form__in {
    border-radius: 3px;
  }
}
@media (min-width: 768px) {
  .c-form.is-default .c-form__lead {
    text-align: center;
  }
  .c-form.is-default .c-form__in {
    margin-top: 40px;
    padding: 76px 107px 50px;
  }
  .c-form.is-default th {
    font-size: 2rem;
  }
  .c-form.is-default td {
    padding-bottom: 34px;
  }
}

/* .c-form-label
================================================== */
.c-form-label {
  background-color: rgb(var(--color-primary-100));
  border: 1px solid rgb(var(--color-primary-500));
  box-sizing: border-box;
  display: inline-grid;
  place-content: center;
  font-size: 1.2rem;
  margin-left: 15px;
  width: 40px;
  height: 20px;
}
.c-form-label.is-required {
  background: rgb(var(--color-primary-500));
  color: rgb(var(--color-grayscale-100));
}
@media (min-width: 768px) {
  .c-form-label {
    font-size: 1.3rem;
    margin-left: 23px;
    vertical-align: 2px;
    width: 44px;
    height: 24px;
  }
}

/* .c-form-postcode
================================================== */
.c-form-postcode {
  display: flex;
  flex-wrap: wrap;
}
.c-form-postcode__prefix {
  max-width: 26px;
  margin-right: 12px;
  padding-top: 4px;
  font-size: 1.6rem;
}
.c-form-postcode__input {
  flex-basis: 120px;
}
.c-form-postcode__addr {
  margin-top: 15px;
}
.c-form-postcode__addr input {
  max-width: 100%;
}
@media (min-width: 768px) {
  .c-form-postcode__input {
    flex-basis: 200px;
  }
}

/* .c-form-item
================================================== */
.c-form-item {
  display: flex;
}
.c-form-item + .c-form-item {
  margin-top: 10px;
}
.c-form-item-list {
  display: flex;
}
.c-form-item-list .c-form-item + .c-form-item {
  margin-top: 0;
  margin-left: 14px;
}
.c-form-item__prefix {
  min-width: 20px;
  margin-right: 10px;
  padding-top: 5px;
}
.c-form-item__suffix {
  min-width: 20px;
  margin-left: 10px;
  padding-top: 5px;
}
.c-form-item__input {
  flex: 1;
  min-width: 80px;
}
@media (min-width: 768px) {
  .c-form-item {
    display: inline-flex;
  }
  .c-form-item + .c-form-item {
    margin: 0 0 0 20px;
  }
  .c-form-item__input {
    width: 200px;
  }
  .c-form-item-list .c-form-item__input {
    width: auto;
  }
}

/* 確認画面
================================================ */
.mw_wp_form_confirm .c-form-postcode .c-form-postcode__prefix,
.is-confirm .c-form-postcode .c-form-postcode__prefix {
  max-width: none;
  flex-basis: 0;
}
.mw_wp_form_confirm .c-form-item .c-form-item__prefix,
.mw_wp_form_confirm .c-form-item .c-form-item__suffix,
.is-confirm .c-form-item .c-form-item__prefix,
.is-confirm .c-form-item .c-form-item__suffix {
  min-width: 0;
  padding-top: 0;
}
.mw_wp_form_confirm .c-form-item .c-form-item__input,
.is-confirm .c-form-item .c-form-item__input {
  width: auto;
}
.mw_wp_form_confirm .c-form-note,
.is-confirm .c-form-note {
  display: none;
}
.mw_wp_form_confirm td,
.is-confirm td {
  color: rgb(var(--color-grayscale-900));
}

/* .c-form-address
================================================== */
.c-form-address {
  margin-top: 15px;
}

/* .mw_wp_form リセット
================================================ */
.mw_wp_form .c-form .horizontal-item + .horizontal-item {
  margin-left: 0;
}

/* .c-form-thanks
================================================ */
.is-complete .c-form__lead,
.is-complete .c-form__in,
.is-complete .c-form-privacy,
.is-complete .c-form-agreement {
  display: none;
}

.c-form-thanks__txt {
  margin-bottom: 1.5em;
}
.c-form-thanks__btn {
  margin: 30px auto 0;
}
@media (max-width: 767px) {
  .c-form-thanks {
    margin-inline: 20px;
  }
}
@media (min-width: 768px) {
  .c-form-thanks {
    text-align: center;
  }
  .c-form-thanks__btn {
    margin-top: 50px;
  }
}

.is-input .c-form-thanks,
.is-confirm .c-form-thanks {
  display: none;
}

/* .c-head01.is-left
===================================*/
.c-head01.is-left {
  text-align: left;
}

/* .c-head01.is-left-upper-tb
===================================*/
@media (min-width: 768px) {
  .c-head01.is-left-upper-tb {
    text-align: left;
  }
}

/* .c-head01.is-white
===================================*/
.c-head01.is-white .c-head01__sub {
  color: rgb(var(--color-grayscale-100));
}

/* .c-head01
===================================*/
.c-head01 {
  font-weight: 700;
  letter-spacing: 0.02em;
  line-height: var(--line-height_head);
  margin-bottom: 32px;
  text-align: center;
}
.c-head01__sub {
  color: rgb(var(--color-grayscale-800));
  display: inline-block;
  font-size: 1.7rem;
  margin-bottom: 6px;
  padding-bottom: 4px;
  position: relative;
}
.c-head01__sub::before {
  content: "";
  background-color: currentColor;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
}
.c-head01__sub.u-font-en {
  letter-spacing: inherit;
  line-height: inherit;
  padding-bottom: 0;
}
.c-head01__main {
  font-size: 2.8rem;
}
@media (min-width: 768px) {
  .c-head01 {
    margin-bottom: 70px;
  }
  .c-head01__sub {
    font-size: 2.3rem;
    margin-bottom: 12px;
  }
  .c-head01__main {
    font-size: 5.3rem;
  }
}

/* .c-head02
===================================*/
.c-head02 {
  line-height: var(--line-height_head);
  margin-bottom: 32px;
}
.c-head02__sub {
  background-color: rgb(var(--color-grayscale-100));
  color: rgb(var(--color-primary-500));
  display: inline-block;
  font-size: 1.7rem;
  font-weight: 700;
  margin-bottom: 10px;
  margin-left: 11px;
  padding: 2px 10px 0;
}
.c-head02__sub .u-font-en {
  letter-spacing: inherit;
  line-height: inherit;
}
.c-head02__main {
  font-size: 2.8rem;
  margin-left: 11px;
}
.c-head02__note {
  font-size: 1.5rem;
  margin-top: 3px;
}
@media (min-width: 768px) {
  .c-head02__sub {
    font-size: 2.3rem;
    margin-bottom: 20px;
    padding: 4px 20px 1px;
  }
  .c-head02__main {
    font-size: 5.3rem;
  }
  .c-head02__note {
    font-size: 1.8rem;
    margin-top: 9px;
  }
}

/* .c-ico
================================================== */
.c-ico {
  display: inline-block;
  vertical-align: baseline;
}
.c-ico svg {
  transition: all 0.3s ease;
}

/* .c-ico.is-arw01
================================================== */
.c-ico.is-arw01 {
  margin-left: 5px;
  color: red;
}
.c-ico.is-arw01::after {
  content: "";
  display: inline-block;
  width: 7px;
  height: 10px;
  background-color: currentColor;
  color: currentColor;
  -webkit-mask-image: url('data:image/svg+xml;utf8,&lt;svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 6.472 9.771"&gt;&lt;path d="M1.32,0,0,1.38,3.709,4.886,0,8.391l1.32,1.38L6.472,4.886Z"/&gt;&lt;/svg&gt;');
  mask-image: url('data:image/svg+xml;utf8,&lt;svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 6.472 9.771"&gt;&lt;path d="M1.32,0,0,1.38,3.709,4.886,0,8.391l1.32,1.38L6.472,4.886Z"/&gt;&lt;/svg&gt;');
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
  transition: all 0.3s ease;
}

/* .c-ico.is-arw02
================================================== */
.c-ico.is-arw02 {
  margin-left: 5px;
  color: green;
}
.c-ico.is-arw02::after {
  content: "";
  display: inline-block;
  width: 6px;
  height: 10px;
  background-color: currentColor;
  color: currentColor;
  -webkit-mask-image: url('data:image/svg+xml;utf8,&lt;svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 5.516 9.032"&gt;&lt;path d="M0,8.032a1,1,0,0,1-.707-.293,1,1,0,0,1,0-1.414L2.1,3.516-.707.707a1,1,0,0,1,0-1.414,1,1,0,0,1,1.414,0L4.223,2.809a1,1,0,0,1,0,1.414L.707,7.739A1,1,0,0,1,0,8.032Z" transform="translate(1 1)"/&gt;&lt;/svg&gt;');
  mask-image: url('data:image/svg+xml;utf8,&lt;svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 5.516 9.032"&gt;&lt;path d="M0,8.032a1,1,0,0,1-.707-.293,1,1,0,0,1,0-1.414L2.1,3.516-.707.707a1,1,0,0,1,0-1.414,1,1,0,0,1,1.414,0L4.223,2.809a1,1,0,0,1,0,1.414L.707,7.739A1,1,0,0,1,0,8.032Z" transform="translate(1 1)"/&gt;&lt;/svg&gt;');
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
  transition: all 0.3s ease;
}

/* .c-ico.is-arw03
================================================== */
.c-ico.is-arw03 {
  margin-left: 5px;
}
.c-ico.is-arw03::after {
  content: "";
  display: inline-block;
  width: 22px;
  height: 11px;
  background-color: currentColor;
  color: currentColor;
  -webkit-mask-image: url('data:image/svg+xml;utf8,&lt;svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 21.917 10.727"&gt;&lt;path d="M14.812,9.212l3.014-2.848H0v-2H17.827L14.812,1.515,16.261,0l5.656,5.363-5.656,5.363Z"/&gt;&lt;/svg&gt;');
  mask-image: url('data:image/svg+xml;utf8,&lt;svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 21.917 10.727"&gt;&lt;path d="M14.812,9.212l3.014-2.848H0v-2H17.827L14.812,1.515,16.261,0l5.656,5.363-5.656,5.363Z"/&gt;&lt;/svg&gt;');
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
  transition: all 0.3s ease;
  background: linear-gradient(to right, #22c1c3 0%, #fdbb2d 100%);
}

/* .c-ico.is-blank01
================================================== */
.c-ico.is-blank01 {
  color: red;
  margin-left: 5px;
}
.c-ico.is-blank01::after {
  content: "";
  display: inline-block;
  width: 10px;
  height: 9px;
  background-color: currentColor;
  color: currentColor;
  -webkit-mask-image: url('data:image/svg+xml;utf8,&lt;svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 9.004 8.998"&gt;&lt;path d="M7566,22026v-5.334h1.78v.891h-.89v3.553h3.56v-.889h.885V22026Zm2.67-2.67V22018H7574v5.328Zm.89-.885h3.554v-3.559h-3.554Z" transform="translate(-7565.498 -22017.502)" stroke="rgba(0,0,0,0)" stroke-miterlimit="10" stroke-width="1"/&gt;&lt;/svg&gt;');
  mask-image: url('data:image/svg+xml;utf8,&lt;svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 9.004 8.998"&gt;&lt;path d="M7566,22026v-5.334h1.78v.891h-.89v3.553h3.56v-.889h.885V22026Zm2.67-2.67V22018H7574v5.328Zm.89-.885h3.554v-3.559h-3.554Z" transform="translate(-7565.498 -22017.502)" stroke="rgba(0,0,0,0)" stroke-miterlimit="10" stroke-width="1"/&gt;&lt;/svg&gt;');
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
  transition: all 0.3s ease;
}

/* .c-ico.is-blank02
================================================== */
.c-ico.is-blank02 {
  color: green;
  margin-left: 5px;
}
.c-ico.is-blank02::after {
  content: "";
  display: inline-block;
  width: 14px;
  height: 14px;
  background-color: currentColor;
  color: currentColor;
  -webkit-mask-image: url('data:image/svg+xml;utf8,&lt;svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 13.435 13.434"&gt;&lt;path d="M15333.549,2248.428a.56.56,0,0,1-.559-.562V2237.79a.559.559,0,0,1,.559-.558h4.479a.56.56,0,1,1,0,1.121h-3.917v8.955h8.954v-3.917a.561.561,0,1,1,1.121,0v4.475a.56.56,0,0,1-.562.562Zm5.2-5.762a.562.562,0,0,1,0-.793l5.762-5.762h-3.686a.558.558,0,1,1,0-1.117h5.038a.559.559,0,0,1,.559.559v5.038a.559.559,0,0,1-1.117,0V2236.9l-5.762,5.762a.568.568,0,0,1-.794,0Z" transform="translate(-15332.99 -2234.994)"/&gt;&lt;/svg&gt;');
  mask-image: url('data:image/svg+xml;utf8,&lt;svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 13.435 13.434"&gt;&lt;path d="M15333.549,2248.428a.56.56,0,0,1-.559-.562V2237.79a.559.559,0,0,1,.559-.558h4.479a.56.56,0,1,1,0,1.121h-3.917v8.955h8.954v-3.917a.561.561,0,1,1,1.121,0v4.475a.56.56,0,0,1-.562.562Zm5.2-5.762a.562.562,0,0,1,0-.793l5.762-5.762h-3.686a.558.558,0,1,1,0-1.117h5.038a.559.559,0,0,1,.559.559v5.038a.559.559,0,0,1-1.117,0V2236.9l-5.762,5.762a.568.568,0,0,1-.794,0Z" transform="translate(-15332.99 -2234.994)"/&gt;&lt;/svg&gt;');
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
  transition: all 0.3s ease;
}

/* .c-ico.is-blank03
================================================== */
.c-ico.is-blank03 {
  margin-left: 5px;
}
.c-ico.is-blank03::after {
  background: linear-gradient(to right, #22c1c3 0%, #fdbb2d 100%);
}

/* .c-ico.is-mail01
================================================== */
.c-ico.is-mail01 {
  color: skyblue;
  margin-right: 5px;
}
.c-ico.is-mail01::after {
  content: "";
  display: inline-block;
  width: 17px;
  height: 13px;
  background-color: currentColor;
  color: currentColor;
  -webkit-mask-image: url('data:image/svg+xml;utf8,&lt;svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 17 12.147"&gt;&lt;path d="M16.19,1.415v9.923H.81V1.415L8.5,8.29ZM1.348.81h14.3L8.5,7.2ZM0,12.147H17V0H0Z"/&gt;&lt;/svg&gt;');
  mask-image: url('data:image/svg+xml;utf8,&lt;svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 17 12.147"&gt;&lt;path d="M16.19,1.415v9.923H.81V1.415L8.5,8.29ZM1.348.81h14.3L8.5,7.2ZM0,12.147H17V0H0Z"/&gt;&lt;/svg&gt;');
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
  transition: all 0.3s ease;
}

/* .c-ico.is-map01
================================================== */
.c-ico.is-map01 {
  color: violet;
  margin-right: 5px;
}
.c-ico.is-map01::after {
  content: "";
  display: inline-block;
  width: 12px;
  height: 16px;
  background-color: currentColor;
  color: currentColor;
  -webkit-mask-image: url('data:image/svg+xml;utf8,&lt;svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12.016 16.221"&gt;&lt;path d="M6.008,0A6.026,6.026,0,0,0,0,6.041C0,10.188,4.166,14.8,5.684,16.1a.5.5,0,0,0,.647,0c1.519-1.3,5.684-5.909,5.684-10.057A6.026,6.026,0,0,0,6.008,0m0,9.864A3.633,3.633,0,1,1,9.619,6.227,3.622,3.622,0,0,1,6.008,9.86" transform="translate(0 0.004)"/&gt;&lt;/svg&gt;');
  mask-image: url('data:image/svg+xml;utf8,&lt;svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12.016 16.221"&gt;&lt;path d="M6.008,0A6.026,6.026,0,0,0,0,6.041C0,10.188,4.166,14.8,5.684,16.1a.5.5,0,0,0,.647,0c1.519-1.3,5.684-5.909,5.684-10.057A6.026,6.026,0,0,0,6.008,0m0,9.864A3.633,3.633,0,1,1,9.619,6.227,3.622,3.622,0,0,1,6.008,9.86" transform="translate(0 0.004)"/&gt;&lt;/svg&gt;');
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
  transition: all 0.3s ease;
}

/* .c-ico.is-search01
================================================== */
.c-ico.is-search01 {
  color: red;
  margin-right: 5px;
}
.c-ico.is-search01::after {
  content: "";
  display: inline-block;
  width: 19px;
  height: 19px;
  background-color: currentColor;
  color: currentColor;
  -webkit-mask-image: url('data:image/svg+xml;utf8,&lt;svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18.814 18.814"&gt;&lt;path d="M12491.646,13519.027l-4.409-4.409,0,0a7.6,7.6,0,1,1,1.386-1.387l4.409,4.413a.979.979,0,0,1,0,1.381.975.975,0,0,1-1.384,0Zm-14.97-10.43a5.922,5.922,0,1,0,5.921-5.921A5.926,5.926,0,0,0,12476.677,13508.6Z" transform="translate(-12474.751 -13500.751)" stroke-width="0.5"/&gt;&lt;/svg&gt;');
  mask-image: url('data:image/svg+xml;utf8,&lt;svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18.814 18.814"&gt;&lt;path d="M12491.646,13519.027l-4.409-4.409,0,0a7.6,7.6,0,1,1,1.386-1.387l4.409,4.413a.979.979,0,0,1,0,1.381.975.975,0,0,1-1.384,0Zm-14.97-10.43a5.922,5.922,0,1,0,5.921-5.921A5.926,5.926,0,0,0,12476.677,13508.6Z" transform="translate(-12474.751 -13500.751)" stroke-width="0.5"/&gt;&lt;/svg&gt;');
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
  transition: all 0.3s ease;
}

/* .c-ico.is-tel01
================================================== */
.c-ico.is-tel01 {
  color: pink;
  margin-right: 5px;
}
.c-ico.is-tel01::after {
  content: "";
  display: inline-block;
  width: 24px;
  height: 24px;
  background-color: currentColor;
  color: currentColor;
  -webkit-mask-image: url('data:image/svg+xml;utf8,&lt;svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 23.5 23.5"&gt;&lt;path d="M18.019,23.5c-2.313,0-7.045-.741-12.147-5.844C-.641,11.143-.085,5.26.093,4.147a3.661,3.661,0,0,1,1.045-2.1L2.405.778a2.668,2.668,0,0,1,3.767,0l3.19,3.191a2.669,2.669,0,0,1,0,3.768L7.81,9.29a18.573,18.573,0,0,0,2.752,3.674A18.585,18.585,0,0,0,14.217,15.7l1.554-1.557a2.671,2.671,0,0,1,3.77,0l3.181,3.184a2.669,2.669,0,0,1,0,3.767l-1.25,1.25A3.7,3.7,0,0,1,19.5,23.378a7.471,7.471,0,0,1-1.479.122M4.29,2.148a.516.516,0,0,0-.367.149L2.658,3.564a1.554,1.554,0,0,0-.441.9c-.1.594-.725,5.777,5.174,11.675,6.21,6.213,11.472,5.18,11.692,5.133a1.6,1.6,0,0,0,.873-.441L21.2,19.581a.522.522,0,0,0,0-.731l-3.182-3.184a.526.526,0,0,0-.733,0l-2.708,2.71-.708-.393a21.871,21.871,0,0,1-4.828-3.5A21.8,21.8,0,0,1,5.532,9.632l-.393-.708L7.845,6.218a.522.522,0,0,0,0-.731L4.655,2.3a.515.515,0,0,0-.365-.148" transform="translate(0 0)"/&gt;&lt;/svg&gt;');
  mask-image: url('data:image/svg+xml;utf8,&lt;svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 23.5 23.5"&gt;&lt;path d="M18.019,23.5c-2.313,0-7.045-.741-12.147-5.844C-.641,11.143-.085,5.26.093,4.147a3.661,3.661,0,0,1,1.045-2.1L2.405.778a2.668,2.668,0,0,1,3.767,0l3.19,3.191a2.669,2.669,0,0,1,0,3.768L7.81,9.29a18.573,18.573,0,0,0,2.752,3.674A18.585,18.585,0,0,0,14.217,15.7l1.554-1.557a2.671,2.671,0,0,1,3.77,0l3.181,3.184a2.669,2.669,0,0,1,0,3.767l-1.25,1.25A3.7,3.7,0,0,1,19.5,23.378a7.471,7.471,0,0,1-1.479.122M4.29,2.148a.516.516,0,0,0-.367.149L2.658,3.564a1.554,1.554,0,0,0-.441.9c-.1.594-.725,5.777,5.174,11.675,6.21,6.213,11.472,5.18,11.692,5.133a1.6,1.6,0,0,0,.873-.441L21.2,19.581a.522.522,0,0,0,0-.731l-3.182-3.184a.526.526,0,0,0-.733,0l-2.708,2.71-.708-.393a21.871,21.871,0,0,1-4.828-3.5A21.8,21.8,0,0,1,5.532,9.632l-.393-.708L7.845,6.218a.522.522,0,0,0,0-.731L4.655,2.3a.515.515,0,0,0-.365-.148" transform="translate(0 0)"/&gt;&lt;/svg&gt;');
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
  transition: all 0.3s ease;
}

.c-list-decimal01 {
  counter-reset: num;
}
.c-list-decimal01__item {
  counter-increment: num;
  position: relative;
  display: flex;
  align-items: flex-start;
  box-sizing: border-box;
  flex: 1;
}
.c-list-decimal01__item::before {
  content: counter(num, decimal-leading-zero) ".";
  display: inline-block;
  padding-right: 0.5em;
  white-space: nowrap;
  color: rgb(var(--main));
}

/*  .c-list01
================================================== */
.c-list01 {
  list-style: none;
}
.c-list01__item {
  position: relative;
  padding-left: 1em;
  box-sizing: border-box;
}
.c-list01__item::before {
  content: "";
  position: absolute;
  top: calc(1em - 3px);
  left: 0;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: blue;
}
@media (min-width: 768px) {
  .c-list01.is-column2-upper-tb {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }
}

/* c-modal01
=============================== */
.c-modal01 {
  position: relative;
  z-index: 20;
}
.c-modal01[aria-hidden=false] .c-modal01__overlay {
  animation: c-modal01-fadein 0.3s cubic-bezier(0, 0, 0.2, 1);
}
.c-modal01[aria-hidden=false] .c-modal01__container {
  animation: c-modal01-slideIn 0.3s cubic-bezier(0, 0, 0.2, 1);
}
.c-modal01[aria-hidden=true] .c-modal01__overlay {
  animation: c-modal01-fadeout 0.3s cubic-bezier(0, 0, 0.2, 1);
}
.c-modal01[aria-hidden=true] .c-modal01__container {
  animation: c-modal01-slideOut 0.3s cubic-bezier(0, 0, 0.2, 1);
}
.c-modal01__overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(var(--color-grayscale-900), 0.6);
  display: flex;
  justify-content: center;
  align-items: center;
}
.c-modal01__container {
  background-color: #fff;
  border-radius: 10px;
  box-sizing: border-box;
  overflow: hidden;
  position: relative;
  max-width: calc(100% - 40px);
  max-height: 80vh;
}
.c-modal01__container-in {
  overflow-y: auto;
  max-height: 80vh;
}
.c-modal01__area-img {
  background-color: #fff;
  border-radius: inherit;
  overflow: hidden;
  position: relative;
}
.c-modal01__num {
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2277%22%20height%3D%2277%22%20viewBox%3D%220%200%2077%2077%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M77%200C77%2042.5259%2042.5259%2077%200%2077V0C0%200%2046.9296%200%2077%200Z%22%20fill%3D%22url(%23paint0_radial_50_10456)%22%2F%3E%3Cdefs%3E%3CradialGradient%20id%3D%22paint0_radial_50_10456%22%20cx%3D%220%22%20cy%3D%220%22%20r%3D%221%22%20gradientUnits%3D%22userSpaceOnUse%22%20gradientTransform%3D%22translate(77%20-7.53691e-05)%20rotate(134.697)%20scale(109.822%201082.55)%22%3E%3Cstop%20stop-color%3D%22%23005BCF%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%234F3AD2%22%2F%3E%3C%2FradialGradient%3E%3C%2Fdefs%3E%3C%2Fsvg%3E") no-repeat center/contain;
  box-sizing: border-box;
  font-size: 1.8rem;
  padding-top: 2px;
  padding-left: 10px;
  position: absolute;
  width: 50px;
  height: 50px;
}
.c-modal01__area-txt {
  color: rgb(var(--color-grayscale-900));
  padding: 24px 20px;
}
.c-modal01__head {
  font-size: 1.9rem;
  letter-spacing: 0.06em;
  text-align: center;
}
.c-modal01__txt {
  margin-top: 5px;
}
.c-modal01__close {
  -webkit-appearance: none;
  appearance: none;
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2229%22%20height%3D%2229%22%20viewBox%3D%220%200%2029%2029%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M7.07104%207.07129L21.2131%2021.2134%22%20stroke%3D%22%23888888%22%20stroke-width%3D%222%22%2F%3E%3Cpath%20d%3D%22M7.07104%2021.2129L21.2131%207.07085%22%20stroke%3D%22%23888888%22%20stroke-width%3D%222%22%2F%3E%3C%2Fsvg%3E") no-repeat center/contain;
  border: 0;
  padding: 0;
  position: absolute;
  right: 3px;
  bottom: 3px;
  width: 28px;
  height: 28px;
}
@media (min-width: 768px) {
  .c-modal01__num {
    font-size: 2.6rem;
    padding-top: 5px;
    padding-left: 15px;
    width: 77px;
    height: 77px;
  }
  .c-modal01__area-txt {
    padding: 40px 40px 50px;
  }
  .c-modal01__head {
    font-size: 2.9rem;
  }
  .c-modal01__txt {
    margin-top: 15px;
    margin-inline: auto;
    max-width: 440px;
  }
  .c-modal01__close {
    width: 56px;
    height: 56px;
  }
}

@keyframes c-modal01-fadein {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes c-modal01-fadeout {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes c-modal01-slideIn {
  from {
    transform: translateY(15%);
  }
  to {
    transform: translateY(0);
  }
}
@keyframes c-modal01-slideOut {
  from {
    transform: translateY(0);
  }
  to {
    transform: translateY(-10%);
  }
}
/* .c-pager01
===================================*/
.c-pager01 {
  overflow: hidden;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  text-align: center;
  margin: 30px -5px -10px;
}
.c-pager01 li {
  margin: 0 5px 10px;
}
.c-pager01 li a, .c-pager01 li span {
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  width: 30px;
  height: 30px;
  line-height: 1;
  border: 1px solid rgb(var(--color-grayscale-900));
  text-decoration: none;
}
.c-pager01 li.pages span {
  width: auto;
  border: 0;
}
.c-pager01 li.current span {
  color: #fff;
  background: rgb(var(--color-grayscale-900));
}
.c-pager01 li.first, .c-pager01 li.previous {
  margin-right: 15px;
}
.c-pager01 li.first a, .c-pager01 li.last a {
  width: auto;
  border-color: transparent;
  padding-right: 15px;
  padding-left: 15px;
}
.c-pager01 li.next, .c-pager01 li.last {
  margin-left: 15px;
}
.c-pager01 li.extend span {
  border: 0;
}
@media (hover: hover) and (pointer: fine) {
  .c-pager01 li a:hover {
    text-decoration: none;
    border: 1px solid rgb(var(--color-grayscale-900));
    background-color: rgb(var(--color-grayscale-900));
    color: #fff;
  }
}

/*  .c-pager02
================================================== */
.c-pager02 {
  position: relative;
  overflow: hidden;
  margin-top: 30px;
  line-height: 1;
}
.c-pager02 a {
  box-sizing: border-box;
  position: relative;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  height: 50px;
  padding: 15px;
  border: 1px solid;
  text-decoration: none;
}
.c-pager02__previous, .c-pager02__next {
  width: calc(50% - 10px);
}
.c-pager02__previous {
  float: left;
}
.c-pager02__previous a {
  justify-content: flex-start;
  padding-left: 30px;
}
.c-pager02__next {
  float: right;
}
.c-pager02__next a {
  justify-content: flex-end;
  padding-right: 30px;
}
.c-pager02__all {
  width: 100%;
  clear: both;
  padding-top: 20px;
}
.c-pager02__all a {
  justify-content: center;
}
@media (hover: hover) and (pointer: fine) {
  .c-pager02 a {
    transition: all 0.3s ease;
  }
  .c-pager02 a:hover {
    background: rgb(var(--color-grayscale-900));
    color: #fff;
    border-color: rgb(var(--color-grayscale-900));
  }
}

/* c-single01
------------------------------------- */
.c-single01__head {
  padding-bottom: 10px;
  margin-bottom: 10px;
  border-bottom: 1px solid var(rgba(var(--color-grayscale-900), 0.6));
}
.c-single01__head-meta {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 5px;
}
.c-single01__head h1 {
  font-size: 2rem;
  font-weight: 600;
}
.c-single01__date {
  margin-right: 1em;
}
.c-single01__cat {
  display: flex;
  flex-wrap: wrap;
  flex: 1;
}
.c-single01__cat-label {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 90px;
  background: rgb(var(--color-grayscale-900));
  margin: 0 0 5px 5px;
  color: #fff;
}

/* .c-single-content
================================================== */
.c-single-content *:first-child {
  margin-top: 0;
}
.c-single-content *:last-child {
  margin-bottom: 0;
}
.c-single-content p {
  margin: 1em 0;
}
.c-single-content h2 {
  font-size: 2em;
}
.c-single-content h3 {
  font-size: 1.5em;
}
.c-single-content h4 {
  font-size: 1.25em;
}
.c-single-content strong {
  color: rgb(var(--red));
}
.c-single-content a[target=_blank]::after {
  margin-left: 5px;
  content: "";
  display: inline-block;
  width: 10px;
  height: 9px;
  background-color: currentColor;
  color: currentColor;
  -webkit-mask-image: url('data:image/svg+xml;utf8,&lt;svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 9.004 8.998"&gt;&lt;path d="M7566,22026v-5.334h1.78v.891h-.89v3.553h3.56v-.889h.885V22026Zm2.67-2.67V22018H7574v5.328Zm.89-.885h3.554v-3.559h-3.554Z" transform="translate(-7565.498 -22017.502)" stroke="rgba(0,0,0,0)" stroke-miterlimit="10" stroke-width="1"/&gt;&lt;/svg&gt;');
  mask-image: url('data:image/svg+xml;utf8,&lt;svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 9.004 8.998"&gt;&lt;path d="M7566,22026v-5.334h1.78v.891h-.89v3.553h3.56v-.889h.885V22026Zm2.67-2.67V22018H7574v5.328Zm.89-.885h3.554v-3.559h-3.554Z" transform="translate(-7565.498 -22017.502)" stroke="rgba(0,0,0,0)" stroke-miterlimit="10" stroke-width="1"/&gt;&lt;/svg&gt;');
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
  transition: all 0.3s ease;
}
.c-single-content ul {
  margin: 1em 0;
  padding-left: 1.25em;
}
.c-single-content ul li {
  box-sizing: border-box;
}
.c-single-content ul li::marker {
  content: "・";
  color: blue;
}
.c-single-content ol {
  margin: 1em 0;
  padding-left: 0;
  counter-reset: num;
}
.c-single-content ol li {
  counter-increment: num;
  position: relative;
  display: flex;
  align-items: flex-start;
  box-sizing: border-box;
  flex: 1;
}
.c-single-content ol li::before {
  content: counter(num, decimal-leading-zero) ".";
  display: inline-block;
  padding-right: 0.5em;
  white-space: nowrap;
  color: rgb(var(--main));
}
.c-single-content blockquote {
  position: relative;
  line-height: 1.6;
  margin: 1.5em 0;
  padding: 0 0 0 1em;
  clear: both;
}
.c-single-content blockquote:before {
  content: "";
  position: absolute;
  top: 0.25em;
  left: 0;
  height: calc(100% - 0.5em);
  width: 2px;
  background: var(rgba(var(--color-grayscale-900), 0.6));
}
@media (min-width: 768px) {
  .c-single-content {
    display: flow-root;
  }
  .c-single-content .alignleft {
    float: left;
    margin: 0 1em 1em 0;
    clear: right;
  }
  .c-single-content .alignleft + .alignleft {
    clear: left;
  }
  .c-single-content .alignright {
    float: right;
    margin: 0 0 1em 1em;
  }
  .c-single-content .aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    clear: both;
  }
}
@media (hover: hover) and (pointer: fine) {
  .c-single-content a:hover {
    text-decoration: none;
  }
}

/*  .c-table01.is-block-sp
================================================== */
@media (max-width: 767px) {
  .c-table01.is-block-sp table, .c-table01.is-block-sp thead, .c-table01.is-block-sp tbody, .c-table01.is-block-sp tr, .c-table01.is-block-sp th, .c-table01.is-block-sp td {
    display: block;
  }
  .c-table01.is-block-sp th {
    border-bottom: 0;
  }
  .c-table01.is-block-sp tr + tr th {
    border-top: 0;
  }
}

/*  .c-table01
================================================== */
.c-table01 th {
  background: var(--color-accent01);
}
.c-table01 th, .c-table01 td {
  vertical-align: top;
  text-align: left;
  padding: 15px;
  border: 1px solid;
}

/* .l-breadcrumb
================================================ */
.l-breadcrumb-list {
  display: flex;
  flex-wrap: wrap;
  padding-top: 20px;
  padding-bottom: 20px;
}
.l-breadcrumb-list__item {
  display: inline-block;
  vertical-align: top;
}
.l-breadcrumb-list__item + .l-breadcrumb-list__item {
  margin-left: 5px;
}
.l-breadcrumb-list__item + .l-breadcrumb-list__item:before {
  content: "&gt;";
  margin-right: 5px;
}
@media (max-width: 767px) {
  .l-breadcrumb-list {
    white-space: nowrap;
    flex-wrap: nowrap;
    -webkit-overflow-scrolling: touch;
    overflow: auto;
  }
  .l-breadcrumb-list::-webkit-scrollbar {
    display: none;
  }
}

@keyframes cookieSlideIn {
  from {
    transform: translateY(150%);
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}
@keyframes cookieSlideOut {
  from {
    transform: translateY(0);
    opacity: 1;
  }
  to {
    transform: translateY(150%);
    opacity: 0;
  }
}
/*! 通知バー */
.l-cookie {
  animation-duration: 0.6s;
  animation-name: cookieSlideIn;
  background-color: rgb(var(--color-grayscale-100));
  box-sizing: border-box;
  line-height: 1.5;
  font-size: 1.3rem;
  position: fixed;
  left: 0;
  bottom: 20px;
  width: 355px;
  z-index: 9000;
}
.l-cookie__inner {
  display: grid;
  grid-template-columns: 1fr 120px;
  align-items: center;
  gap: 15px;
  padding: 15px;
}
.l-cookie.state-remove {
  animation-duration: 0.6s;
  animation-name: cookieSlideOut;
  animation-fill-mode: forwards;
  pointer-events: none;
}
.l-cookie__txt {
  color: rgb(var(--color-grayscale-900));
  font-size: 1.2rem;
  letter-spacing: 0.06em;
}
.l-cookie__txt a {
  display: inline-block;
}
.l-cookie__accept {
  -webkit-appearance: none;
  appearance: none;
  background-color: rgb(var(--color-primary-500));
  border: 1px solid rgb(var(--color-primary-500));
  color: rgba(var(--color-grayscale-100));
  cursor: pointer;
  display: grid;
  place-items: center;
  height: 33px;
  transition: all 0.3s ease;
}
.l-cookie__deny {
  order: -1;
  -webkit-appearance: none;
  appearance: none;
  border: 1px solid rgb(var(--color-grayscale-900));
  cursor: pointer;
  display: grid;
  place-items: center;
  height: 33px;
  transition: all 0.3s ease;
}
.l-cookie__btns {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
}
@media (max-width: 767px) {
  .l-cookie {
    box-shadow: 0 -4px 20px rgba(var(--color-grayscale-900), 0.1);
  }
}
@media (min-width: 768px) {
  .l-cookie {
    bottom: 104px;
    width: -moz-fit-content;
    width: fit-content;
    max-width: 600px;
  }
  .l-cookie__inner {
    grid-template-columns: 1fr 140px;
    padding: 20px 30px;
  }
  .l-cookie__accept:hover, .l-cookie__deny:hover {
    opacity: 0.7;
  }
}

/* .l-footer
================================================ */
.l-footer {
  color: rgb(var(--color-grayscale-100));
  position: relative;
  z-index: 1;
}
.l-footer::before, .l-footer::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
}
.l-footer::before {
  background-color: rgb(var(--color-grayscale-900));
}
.l-footer::after {
  background: url(../img/common/bg_surface01.jpg);
  opacity: 0.2;
}
@media (max-width: 767px) {
  .l-footer__inner {
    padding: 67px 40px 34px;
  }
}
@media (min-width: 768px) {
  .l-footer__inner {
    display: flex;
    justify-content: space-between;
    padding-block: 120px 96px;
  }
}

/* .l-footer-info
===================================*/
.l-footer-info__company {
  font-size: 1.6rem;
  margin-top: 22px;
}
.l-footer-info__detail {
  line-height: var(--line-height_head);
  margin-top: 27px;
}
@media (max-width: 767px) {
  .l-footer-info__logo {
    width: 180px;
  }
}
@media (min-width: 768px) {
  .l-footer-info__company {
    font-size: 2rem;
    margin-top: 25px;
  }
}

/* .l-footer-nav
===================================*/
@media (max-width: 767px) {
  .l-footer-nav {
    margin-top: 36px;
  }
}
@media (min-width: 768px) {
  .l-footer-nav {
    display: grid;
    grid-template-columns: repeat(2, 300px);
    gap: 40px;
  }
}
@media (min-width: 1461px) {
  .l-footer-nav {
    grid-template-columns: repeat(2, 364px);
    gap: 65px;
  }
}

/* .l-footer-nav-list
===================================*/
.l-footer-nav-list__link {
  display: block;
  font-size: 1.5rem;
  padding-block: 16px 13px;
}
@media (max-width: 767px) {
  .l-footer-nav-list__link {
    border-bottom: 1px solid rgba(var(--color-grayscale-100), 0.2);
  }
}
@media (min-width: 768px) {
  .l-footer-nav-list__link {
    border-top: 1px solid rgba(var(--color-grayscale-100), 0.2);
    font-size: 1.7rem;
    padding-block: 21px;
  }
}
@media (hover: hover) and (pointer: fine) {
  .l-footer-nav-list__link {
    transition: all 0.3s ease;
  }
  .l-footer-nav-list__link:not(span):hover {
    opacity: 0.7;
  }
}

/* .l-footer-nav-child
===================================*/
.l-footer-nav-child {
  margin-top: 18px;
  margin-bottom: 8px;
}
.l-footer-nav-child__item {
  font-size: 1.3rem;
  letter-spacing: 0.1em;
  padding-left: 14px;
  position: relative;
}
.l-footer-nav-child__item::before {
  content: "";
  background-color: rgb(var(--color-primary-500));
  margin-block: auto;
  position: absolute;
  inset: 0 auto 0 0;
  width: 7px;
  height: 1px;
}
.l-footer-nav-child__item + .l-footer-nav-child__item {
  margin-top: 5px;
}
@media (min-width: 768px) {
  .l-footer-nav-child {
    margin-top: 5px;
  }
  .l-footer-nav-child__item {
    font-size: 1.4rem;
  }
  .l-footer-nav-child__item + .l-footer-nav-child__item {
    margin-top: 6px;
  }
}
@media (hover: hover) and (pointer: fine) {
  .l-footer-nav-child__link {
    transition: all 0.3s ease;
  }
  .l-footer-nav-child__link:hover {
    color: rgb(var(--color-primary-500));
  }
}

/* .l-footer-cr
===================================*/
.l-footer-cr {
  position: relative;
  text-align: center;
  z-index: 1;
}
.l-footer-cr::before, .l-footer-cr::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
}
.l-footer-cr::before {
  background-color: #0d0d0d;
}
.l-footer-cr::after {
  background: url(../img/common/bg_surface01.jpg);
  opacity: 0.2;
}
.l-footer-cr__bnr {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
  width: -moz-fit-content;
  width: fit-content;
}
.l-footer-cr__bnr-link {
  display: block;
}
.l-footer-cr__txt {
  color: rgb(var(--color-grayscale-200));
  font-size: 1.2rem;
  letter-spacing: 0.02em;
  opacity: 0.5;
}
@media (max-width: 767px) {
  .l-footer-cr__inner {
    padding: 28px 40px 24px;
  }
  .l-footer-cr__bnr {
    margin-inline: auto;
    margin-bottom: 4px;
  }
}
@media (min-width: 768px) {
  .l-footer-cr__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-direction: row-reverse;
    padding-block: 30px;
  }
  .l-footer-cr__bnr {
    gap: 20px;
  }
}

/* .l-footer-page-top
================================================ */
/* .l-header
================================================ */
.l-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  min-width: 320px;
  z-index: 2000;
}
@media (min-width: 768px) {
  .l-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    min-width: var(--contents_width_with_padding);
  }
}
@media (min-width: 768px) and (hover: none) {
  .l-header {
    left: 0 !important;
  }
}

/* .l-header-info
================================================== */
.l-header-info {
  box-sizing: border-box;
  padding: 3px 20px 0;
  height: var(--header_height);
  z-index: 3;
}
.l-header-info img {
  vertical-align: initial;
}
.l-header-info__inner {
  display: flex;
  align-items: center;
  height: 100%;
}
.l-header-info__logo.is-logo01 {
  width: 112px;
}
.l-header-info__logo.is-logo02 {
  margin-left: 15px;
  width: 88px;
}
.l-header-info__logo-link {
  display: block;
}
@media (min-width: 768px) {
  .l-header-info {
    padding: 16px 0 0 36px;
  }
  .l-header-info__logo.is-logo01 {
    width: 205px;
  }
  .l-header-info__logo.is-logo02 {
    margin-left: 20px;
    width: 160px;
  }
}
@media (min-width: 1461px) {
  .l-header-info {
    padding: 16px 0 0 40px;
  }
  .l-header-info__logo.is-logo01 {
    width: 266px;
  }
  .l-header-info__logo.is-logo02 {
    margin-left: 35px;
    width: 198px;
  }
}

/* .l-nav-btn
================================================== */
.l-nav-btn {
  background: linear-gradient(-135deg, rgb(var(--color-grad01-01)) 0%, rgb(var(--color-grad01-02)) 100%);
  border: none;
  cursor: pointer;
  position: absolute;
  top: 0;
  right: 0;
  width: 63px;
  height: 60px;
}
.l-nav-btn__line {
  content: "";
  background: #fff;
  margin: auto;
  position: absolute;
  right: 0;
  left: 0;
  width: 24px;
  height: 1px;
  transition: all 0.3s ease;
}
.l-nav-btn__line:nth-child(1) {
  top: 23px;
}
.l-nav-btn__line:nth-child(2) {
  top: 29px;
}
.l-nav-btn__line:nth-child(3) {
  top: 35px;
}
.l-nav-btn.is-open .l-nav-btn__line {
  top: 29px;
}
.l-nav-btn.is-open .l-nav-btn__line:nth-child(1) {
  transform: rotate(-45deg);
}
.l-nav-btn.is-open .l-nav-btn__line:nth-child(2) {
  opacity: 0;
}
.l-nav-btn.is-open .l-nav-btn__line:nth-child(3) {
  transform: rotate(45deg);
}

/* .l-nav
================================================ */
.l-nav {
  position: absolute;
  top: var(--header_height);
  left: 0;
  z-index: 2;
  width: 100%;
  min-width: 320px;
  padding: 56px 40px;
  box-sizing: border-box;
  overscroll-behavior-y: none;
  -webkit-overflow-scrolling: touch;
}
@media (max-width: 767px) {
  .l-nav {
    background: url(../img/common/bg_surface02.jpg);
    overflow: auto;
    transform: translateX(120%);
    height: calc(100svh - var(--header_height));
    transition: all 0.3s ease;
  }
  .l-nav::-webkit-scrollbar {
    display: none;
  }
  .l-nav.is-open {
    transform: translateX(0);
  }
}
@media (min-width: 768px) {
  .l-nav {
    margin-right: 30px;
    padding: 0;
    position: static;
    min-width: auto;
  }
}

/* .l-nav-list
================================================== */
.l-nav-list__item-link {
  display: block;
}
.l-nav-list__child-item {
  letter-spacing: 0.1em;
  padding-left: 1em;
  position: relative;
}
.l-nav-list__child-item::before {
  content: "";
  background-color: rgb(var(--color-grayscale-100));
  margin-block: auto;
  position: absolute;
  inset: -2px auto 0 -1px;
  width: 7px;
  height: 1px;
}
.l-nav-list__child-item + .l-nav-list__child-item {
  margin-top: 5px;
}
@media (max-width: 767px) {
  .l-nav-list {
    color: rgb(var(--color-grayscale-100));
  }
  .l-nav-list__item-link {
    border-bottom: 1px solid rgba(var(--color-grayscale-100), 0.5);
    font-size: 1.5rem;
    padding-block: 16px 13px;
    position: relative;
  }
  .l-nav-list__item-link:is(button) {
    border-width: 0 0 1px 0;
    padding-inline: 0;
    pointer-events: none;
  }
  .l-nav-list__child-wrap {
    box-sizing: border-box;
    display: block;
    margin-block: 14px 10px;
  }
  .l-nav-list__child-item {
    font-size: 1.3rem;
  }
}
@media (min-width: 768px) {
  .l-nav-list {
    display: flex;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: clamp(4rem, -8rem + 9.38vw, 10rem);
  }
  .l-nav-list__item {
    position: relative;
  }
  .l-nav-list__item-link {
    border: 0;
    font-size: 1.9rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    padding: 18px 0 20px;
    position: relative;
  }
  .l-nav-list__item-link::after {
    content: "";
    background-color: currentColor;
    position: absolute;
    bottom: 16px;
    left: 0;
    transform: scaleX(0);
    transform-origin: left top;
    width: 100%;
    height: 1px;
    transition: all 0.3s ease;
  }
  .l-nav-list__item-link:is(button) {
    padding-right: 18px;
  }
  .l-nav-list__item-link:is(button)::before {
    content: "";
    background-color: rgb(var(--color-primary-500));
    -webkit-clip-path: polygon(0 0, 100% 0%, 50% 100%);
    clip-path: polygon(0 0, 100% 0%, 50% 100%);
    margin-block: auto;
    position: absolute;
    inset: 1px 0 0 auto;
    width: 8px;
    height: 6px;
    transition: all 0.3s ease;
  }
  .l-nav-list__item-link:is(button).is-active::before {
    transform: rotate(180deg);
  }
  .is-contact &gt; .l-nav-list__item-link {
    background: linear-gradient(to right, rgb(var(--color-grad01-01)) 0%, rgb(var(--color-grad01-02)) 50%, rgb(var(--color-grad01-01)) 100%) right center/200%;
    border-radius: 35px;
    color: rgb(var(--color-grayscale-100));
    font-size: 1.6rem;
    margin-left: -14px;
    padding-inline: 45px;
  }
  .is-contact &gt; .l-nav-list__item-link::before, .is-contact &gt; .l-nav-list__item-link::after {
    content: "";
    border-radius: 50%;
    margin: auto;
    position: absolute;
    inset: 0 0 0 -75%;
  }
  .is-contact &gt; .l-nav-list__item-link::before {
    background-color: rgb(var(--color-primary-100));
    width: 10px;
    height: 10px;
  }
  .is-contact &gt; .l-nav-list__item-link::after {
    background-color: rgb(var(--color-primary-500));
    transform: initial;
    width: 4px;
    height: 4px;
  }
  .l-nav-list__child-wrap {
    background: url(../img/common/bg_surface02.jpg);
    border-radius: 10px;
    box-sizing: border-box;
    padding: 40px;
    position: absolute;
    top: calc(100% + 12px);
    left: 50%;
    transform: translate(-50%, 0);
    width: max-content;
    height: auto;
    transition: visibility 0s linear, all 0.3s ease;
  }
  .l-nav-list__child-wrap:not(.is-active) {
    opacity: 0;
    pointer-events: none;
    visibility: hidden;
    transform: translate(-50%, -30px);
  }
  .l-nav-list__child-item {
    padding-left: 20px;
  }
  .l-nav-list__child-item::before {
    width: 13px;
  }
  .l-nav-list__child-item + .l-nav-list__child-item {
    margin-top: 12px;
  }
  .l-nav-list__child-item-link {
    color: rgb(var(--color-grayscale-100));
  }
}
@media (hover: hover) and (pointer: fine) {
  .l-nav-list__item-link {
    transition: all 0.3s ease;
  }
  .l-nav-list__item-link:hover::after {
    transform: scaleX(1);
  }
  .is-contact &gt; .l-nav-list__item-link::before {
    transition: width 0.3s ease, height 0.3s ease;
  }
  .is-contact &gt; .l-nav-list__item-link:hover {
    background-position: left center;
  }
  .is-contact &gt; .l-nav-list__item-link:hover::before {
    width: 18px;
    height: 18px;
  }
  .is-contact &gt; .l-nav-list__item-link:hover::after {
    width: 10px;
    height: 10px;
  }
  .l-nav-list__child-item-link {
    transition: all 0.3s ease;
  }
  .l-nav-list__child-item-link:hover {
    opacity: 0.7;
  }
}

/* .l-nav-overlay
================================================ */
@media (max-width: 767px) {
  .l-nav-overlay {
    background-color: rgb(var(--color-grayscale-100));
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1000;
  }
  .l-nav-overlay::before, .l-nav-overlay::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
  }
  .l-nav-overlay::before {
    background-color: rgba(var(--color-grayscale-900), 0.07);
  }
  .l-nav-overlay::after {
    background: url(../img/common/bg_surface01.jpg);
    opacity: 0.3;
  }
}

/* .l-ie-attention
================================================ */
.l-ie-attention {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #fff;
  z-index: 9999;
  font-weight: 700;
  text-align: center;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  padding: 0 20px;
  box-sizing: border-box;
}
.l-ie-attention__txt {
  font-size: 3rem;
  margin-bottom: 18px;
}
.l-ie-attention__note {
  color: #989898;
}
.l-ie-attention__note .l-ie-attention__note-link {
  display: inline-block;
}
.l-ie-attention__note-link {
  font-size: 1.8rem;
  border-bottom: 1px solid;
  position: relative;
  margin-right: 25px;
  display: inline-block;
}
.l-ie-attention__note-link::after {
  content: "";
  position: absolute;
  right: -18px;
  top: 13px;
  width: 11px;
  height: 11px;
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2212%22%20height%3D%2212%22%20viewBox%3D%220%200%2012%2012%22%3E%20%3Cg%20id%3D%22link%22%20transform%3D%22translate(0.5%200.5)%22%3E%20%3Crect%20id%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2_23829%22%20data-name%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2%2023829%22%20width%3D%228%22%20height%3D%228%22%20transform%3D%22translate(3)%22%20fill%3D%22none%22%20stroke%3D%22%23989898%22%20stroke-width%3D%221%22%2F%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_4323%22%20data-name%3D%22%E3%83%91%E3%82%B9%204323%22%20d%3D%22M688%2C718.025h-6v-6%22%20transform%3D%22translate(-682%20-707.025)%22%20fill%3D%22none%22%20stroke%3D%22%23989898%22%20stroke-width%3D%221%22%2F%3E%20%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat center/100%;
}

/* .l-main-img HOME
================================================ */
.l-main-img {
  background: url(../img/home/bg_mv01_sp.jpg) no-repeat center/cover;
}
.l-main-img__inner {
  padding: 80px 20px 50px;
}
.l-main-img__copy-sub {
  border: 1px solid rgb(var(--color-primary-500));
  color: rgb(var(--color-primary-500));
  display: inline-block;
  font-size: 1.7rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  line-height: 1.1;
  margin-bottom: 14px;
  padding: 4px 10px 0 8px;
}
.l-main-img__copy-sub span {
  letter-spacing: 0.02em;
  vertical-align: middle;
}
.l-main-img__copy-head {
  font-size: 3.6rem;
  font-weight: 700;
  letter-spacing: -0.02em;
  line-height: 1.5;
}
.l-main-img__copy-head-min {
  display: block;
  font-size: 2.2rem;
  line-height: 1.4;
  margin-bottom: 5px;
}
.l-main-img__copy-lead {
  line-height: var(--line-height_head);
  margin-top: 10px;
}
@media (max-width: 767px) {
  .l-main-img__copy {
    margin-top: 40px;
    margin-inline: 20px;
  }
  .l-main-img__img {
    margin-top: 22px;
  }
}
@media (min-width: 768px) {
  .l-main-img {
    background-image: url(../img/home/bg_mv01_pc.jpg);
  }
  .l-main-img__inner {
    display: grid;
    grid-template-columns: 48% 52%;
    align-items: center;
    padding: 176px 48px 68px;
  }
  .l-main-img__copy {
    margin-left: 1.5vw;
  }
  .l-main-img__copy-sub {
    font-size: clamp(2.4rem, 1.443rem + 0.811vw, 3rem);
    margin-bottom: 34px;
  }
  .l-main-img__copy-head {
    font-size: clamp(4.8rem, 2.249rem + 2.162vw, 6.4rem);
  }
  .l-main-img__copy-head-min {
    font-size: clamp(2.9rem, 1.624rem + 1.081vw, 3.7rem);
    margin-bottom: 15px;
  }
  .l-main-img__copy-lead {
    font-size: clamp(1.8rem, 0.843rem + 0.811vw, 2.4rem);
    margin-top: 20px;
  }
}
@media (min-width: 1461px) {
  .l-main-img__inner {
    grid-template-columns: 698px calc(100% - 698px);
    margin-inline: auto;
    padding: 216px 100px 96px;
    width: -moz-fit-content;
    width: fit-content;
  }
  .l-main-img__copy {
    margin-top: -4vw;
    margin-left: 0;
  }
}

.l-main-img__copy-sub, .l-main-img__copy-head, .l-main-img__copy-lead {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.7s ease, transform 0.7s ease;
}
.l-main-img__copy-sub {
  transition-delay: 0.3s;
}
.l-main-img__copy-head {
  transition-delay: 0.6s;
}
.l-main-img__copy-lead {
  transition-delay: 0.9s;
}
.l-main-img.is-shown .l-main-img__copy-sub,
.l-main-img.is-shown .l-main-img__copy-head,
.l-main-img.is-shown .l-main-img__copy-lead {
  transform: translateY(0);
  opacity: 1;
}

/* .l-sub-img
================================================ */
.l-sub-img {
  background: #ccc;
  font-size: 1.5rem;
  text-align: center;
}
.l-sub-img__inner {
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  height: 120px;
}
@media (min-width: 768px) {
  .l-sub-img {
    font-size: 2rem;
  }
}

/* .l-sidebar
================================================== */
.js-c-anime-elem[data-anime=fadein-up] {
  opacity: 0;
  transform: translateY(30px);
  transition: all 0.6s ease;
}
.js-c-anime-elem[data-anime=fadein-up].is-animated {
  opacity: 1;
  transform: translateY(0);
}

.js-c-anime-elem[data-anime=fadein-left] {
  opacity: 0;
  transform: translateX(-30px);
  transition: all 0.6s ease;
}
.js-c-anime-elem[data-anime=fadein-left].is-animated {
  opacity: 1;
  transform: translateX(0);
}

.js-c-anime-elem[data-anime=fadein-right] {
  opacity: 0;
  transform: translateX(30px);
  transition: all 0.6s ease;
}
.js-c-anime-elem[data-anime=fadein-right].is-animated {
  opacity: 1;
  transform: translateX(0);
}

.js-c-anime-elem[data-anime-delay="0.1"] {
  transition-delay: 0.1s;
}
.js-c-anime-elem[data-anime-delay="0.2"] {
  transition-delay: 0.2s;
}
.js-c-anime-elem[data-anime-delay="0.3"] {
  transition-delay: 0.3s;
}
.js-c-anime-elem[data-anime-delay="0.4"] {
  transition-delay: 0.4s;
}
.js-c-anime-elem[data-anime-delay="0.5"] {
  transition-delay: 0.5s;
}
.js-c-anime-elem[data-anime-delay="0.6"] {
  transition-delay: 0.6s;
}
.js-c-anime-elem[data-anime-delay="0.7"] {
  transition-delay: 0.7s;
}
.js-c-anime-elem[data-anime-delay="0.8"] {
  transition-delay: 0.8s;
}
.js-c-anime-elem[data-anime-delay="0.9"] {
  transition-delay: 0.9s;
}
.js-c-anime-elem[data-anime-delay="1"] {
  transition-delay: 1s;
}
.js-c-anime-elem[data-anime-delay="1.1"] {
  transition-delay: 1.1s;
}
.js-c-anime-elem[data-anime-delay="1.2"] {
  transition-delay: 1.2s;
}
.js-c-anime-elem[data-anime-delay="1.3"] {
  transition-delay: 1.3s;
}
.js-c-anime-elem[data-anime-delay="1.4"] {
  transition-delay: 1.4s;
}
.js-c-anime-elem[data-anime-delay="1.5"] {
  transition-delay: 1.5s;
}
.js-c-anime-elem[data-anime-delay="1.6"] {
  transition-delay: 1.6s;
}
.js-c-anime-elem[data-anime-delay="1.7"] {
  transition-delay: 1.7s;
}
.js-c-anime-elem[data-anime-delay="1.8"] {
  transition-delay: 1.8s;
}
.js-c-anime-elem[data-anime-delay="1.9"] {
  transition-delay: 1.9s;
}
.js-c-anime-elem[data-anime-delay="2"] {
  transition-delay: 2s;
}

/* js-c-modal01
=============================== */
.js-c-modal01 {
  display: none;
}
.js-c-modal01.is-open {
  display: block;
}

.js-c-switch-tab {
  cursor: pointer;
}

.js-c-switch-content {
  display: none;
}
.js-c-switch-content.is-active {
  display: block;
}

.js-c-toggle-trigger {
  cursor: pointer;
}

.js-c-toggle-content {
  display: none;
}

@keyframes splide-loading {
  0% {
    transform: rotate(0);
  }
  to {
    transform: rotate(1turn);
  }
}
.splide__track--draggable {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  user-select: none;
}

.splide__track--fade &gt; .splide__list &gt; .splide__slide {
  margin: 0 !important;
  opacity: 0;
  z-index: 0;
}

.splide__track--fade &gt; .splide__list &gt; .splide__slide.is-active {
  opacity: 1;
  z-index: 1;
}

.splide--rtl {
  direction: rtl;
}

.splide__track--ttb &gt; .splide__list {
  display: block;
}

.splide__container {
  box-sizing: border-box;
  position: relative;
}

.splide__list {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  display: flex;
  height: 100%;
  margin: 0 !important;
  padding: 0 !important;
}

.splide.is-initialized:not(.is-active) .splide__list {
  display: block;
}

.splide__pagination {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 0;
  pointer-events: none;
}

.splide__pagination li {
  display: inline-block;
  line-height: 1;
  list-style-type: none;
  margin: 0;
  pointer-events: auto;
}

.splide:not(.is-overflow) .splide__pagination {
  display: none;
}

.splide__progress__bar {
  width: 0;
}

.splide {
  position: relative;
  visibility: hidden;
}

.splide.is-initialized, .splide.is-rendered {
  visibility: visible;
}

.splide__slide {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  box-sizing: border-box;
  flex-shrink: 0;
  list-style-type: none !important;
  margin: 0;
  position: relative;
}

.splide__slide img {
  vertical-align: bottom;
}

.splide__spinner {
  animation: splide-loading 1s linear infinite;
  border: 2px solid #999;
  border-left-color: transparent;
  border-radius: 50%;
  bottom: 0;
  contain: strict;
  display: inline-block;
  height: 20px;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: 0;
  width: 20px;
}

.splide__sr {
  clip: rect(0 0 0 0);
  border: 0;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

.splide__toggle.is-active .splide__toggle__play, .splide__toggle__pause {
  display: none;
}

.splide__toggle.is-active .splide__toggle__pause {
  display: inline;
}

.splide__track {
  overflow: hidden;
  position: relative;
  z-index: 0;
}

.splide__pagination {
  padding: 0 1em;
  position: absolute;
  right: 0;
  left: 0;
  z-index: 1;
}

.splide__pagination__page {
  background: transparent;
  border: 1px solid rgb(var(--color-primary-500));
  border-radius: 50%;
  display: inline-block;
  margin: 10px;
  opacity: 1;
  padding: 0;
  position: relative;
  width: 9px;
  height: 9px;
  transition: all 0.3s ease;
}
.splide__pagination__page.is-active {
  background: rgb(var(--color-primary-500));
  transform: scale(1);
}

.splide__progress {
  margin-top: 30px;
  position: relative;
}
.splide__progress::before {
  content: "";
  background-color: rgb(var(--color-grayscale-500));
  position: absolute;
  top: 1px;
  left: 0;
  width: 100%;
  height: 1px;
  z-index: -1;
}

.splide__progress__bar {
  background: rgb(var(--color-primary-500));
  height: 3px;
}

/* .error-page404
================================================ */
.error-page404__inner {
  padding-top: 50px;
  padding-bottom: 50px;
}
@media (min-width: 768px) {
  .error-page404__inner {
    padding-top: 100px;
    padding-bottom: 100px;
  }
}

/* .home-intro
===================================*/
.home-intro {
  color: rgb(var(--color-grayscale-100));
  position: relative;
  z-index: 1;
}
.home-intro::before {
  content: "";
  background: url(../img/common/bg_surface02.jpg);
  position: absolute;
  inset: 0;
  z-index: -1;
}
.home-intro__inner {
  padding-block: 74px 70px;
}
.home-intro__summary {
  font-size: 2rem;
  font-weight: 700;
  line-height: var(--line-height_head);
  margin-top: 35px;
  text-align: center;
}
.home-intro__summary-lead {
  display: block;
  font-size: 1.6rem;
  line-height: 2.1;
  margin-bottom: 20px;
  text-decoration: underline;
  text-decoration-thickness: 0.05em;
  text-underline-offset: 0.6em;
}
@media (max-width: 767px) {
  .home-intro__header {
    margin-inline: 20px;
  }
  .home-intro__summary {
    margin-inline: 30px;
  }
}
@media (min-width: 768px) {
  .home-intro__inner {
    padding-block: 140px 90px;
  }
  .home-intro__header {
    display: grid;
    grid-template-columns: 390px 1fr;
    gap: 109px;
  }
  .home-intro__lead {
    font-size: 2rem;
  }
  .home-intro__summary {
    font-size: 3.3rem;
    margin-top: 66px;
  }
  .home-intro__summary-lead {
    font-size: 2rem;
  }
}
@media (min-width: 1461px) {
  .home-intro__header {
    gap: 120px;
  }
}

/* .home-intro-box
===================================*/
.home-intro-box {
  border: 1px solid rgb(var(--color-grayscale-100));
  margin-top: 68px;
  padding: 0 20px 20px;
  position: relative;
}
.home-intro-box::after {
  content: "";
  background-color: rgb(var(--color-grayscale-100));
  display: block;
  margin-inline: auto;
  position: absolute;
  inset: auto 0 -19px;
  width: 1px;
  height: 35px;
}
.home-intro-box__head {
  font-size: 1.8rem;
  font-weight: 700;
  margin-top: -1.6em;
  margin-inline: auto;
  padding-inline: 40px;
  position: relative;
  text-align: center;
  width: -moz-fit-content;
  width: fit-content;
  z-index: 1;
}
.home-intro-box__head::before {
  content: "";
  background: url(../img/common/bg_surface02.jpg);
  position: absolute;
  inset: 0;
  z-index: -1;
}
.home-intro-box__list {
  display: grid;
  gap: 2px;
  margin-top: 10px;
}
.home-intro-box__list-item {
  background: linear-gradient(-135deg, rgb(var(--color-grad01-01)) 0%, rgb(var(--color-grad01-02)) 100%);
  font-size: 1.5rem;
  font-weight: 700;
  line-height: var(--line-height_head);
  padding: 15px 19px 15px 51px;
  position: relative;
}
.home-intro-box__list-item::before {
  content: "";
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2223%22%20height%3D%2218%22%20viewBox%3D%220%200%2023%2018%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Crect%20width%3D%2223%22%20height%3D%2218%22%20rx%3D%229%22%20fill%3D%22%23D5E2F2%22%2F%3E%3Cpath%20d%3D%22M9.10261%208.9997L11.7355%2011.5L17%206.5M6%208.9997L8.63288%2011.5M13.898%206.5L11.895%208.41927%22%20stroke%3D%22url(%23paint0_radial_98_17658)%22%20stroke-width%3D%221.2%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3Cdefs%3E%3CradialGradient%20id%3D%22paint0_radial_98_17658%22%20cx%3D%220%22%20cy%3D%220%22%20r%3D%221%22%20gradientUnits%3D%22userSpaceOnUse%22%20gradientTransform%3D%22translate(17%206.5)%20rotate(155.327)%20scale(12.1436%2090.8177)%22%3E%3Cstop%20stop-color%3D%22%23005BCF%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%234F3AD2%22%2F%3E%3C%2FradialGradient%3E%3C%2Fdefs%3E%3C%2Fsvg%3E") no-repeat center/contain;
  position: absolute;
  top: 19px;
  left: 20px;
  width: 23px;
  height: 18px;
}
@media (min-width: 768px) {
  .home-intro-box {
    margin-top: 101px;
    padding: 0 50px 50px;
  }
  .home-intro-box::after {
    bottom: -30px;
    height: 58px;
  }
  .home-intro-box__head {
    font-size: 2.6rem;
    margin-top: -0.9em;
    padding-inline: 20px;
  }
  .home-intro-box__list {
    gap: 4px;
    margin-top: 32px;
  }
  .home-intro-box__list-item {
    font-size: 1.8rem;
    padding: 25px 40px 25px 93px;
  }
  .home-intro-box__list-item::before {
    top: 25px;
    left: 40px;
    width: 37px;
    height: 28px;
  }
}

/* .home-about
===================================*/
.home-about {
  position: relative;
  z-index: 1;
}
.home-about::before, .home-about::after {
  content: "";
  position: absolute;
  z-index: -1;
}
.home-about::before {
  background: url(../img/common/bg_surface02.jpg);
  inset: 0 0 18% -20px;
}
.home-about::after {
  background: url(../img/home/bg_about01.png) no-repeat left top/cover;
  inset: 0;
}
.home-about__inner {
  padding: 74px 30px 70px;
}
.home-about__header {
  margin-bottom: 24px;
}
.home-about__area-img {
  margin-top: 30px;
}
.home-about__img-item {
  border: 7px solid rgb(var(--color-primary-500));
  border-radius: 10px;
}
.home-about__circle {
  background: linear-gradient(135deg, rgb(var(--color-grad03-01)) 0%, rgb(var(--color-grad03-02)) 75%);
  border-radius: 50%;
  box-sizing: border-box;
  color: rgb(var(--color-grayscale-100));
  display: grid;
  align-content: center;
  font-size: 1.1rem;
  font-weight: 700;
  line-height: var(--line-height_head);
  padding-top: 16px;
  position: relative;
  text-align: center;
  width: 136px;
  height: 136px;
  z-index: 1;
}
.home-about__circle-note {
  display: block;
  font-size: 1rem;
  font-weight: initial;
  margin-top: 7px;
}
.home-about__lead {
  font-size: 2rem;
  font-weight: 700;
  line-height: var(--line-height_head);
  margin-bottom: 15px;
}
@media (max-width: 767px) {
  .home-about {
    margin-inline: auto 0;
    width: calc(100% - 20px);
  }
  .home-about__calc {
    margin-inline: auto;
    width: -moz-fit-content;
    width: fit-content;
  }
  .home-about__area-img {
    margin-inline: -30px;
  }
  .home-about__img-item {
    margin-right: 10px;
  }
  .home-about__circle {
    margin: -8em -20px auto auto;
  }
}
@media (min-width: 768px) {
  .home-about {
    overflow: hidden;
  }
  .home-about::after {
    inset: 0 0 0 30px;
  }
  .home-about__inner {
    display: grid;
    align-content: center;
    padding: 140px 60px 130px;
    position: relative;
    min-height: 924px;
  }
  .home-about__area-txt {
    max-width: 572px;
  }
  .home-about__header {
    margin-bottom: 54px;
  }
  .home-about__circle {
    font-size: 1.8rem;
    position: absolute;
    top: 113px;
    right: 275px;
    width: 260px;
    height: 260px;
  }
  .home-about__circle-note {
    font-size: 1.6rem;
    margin-top: 14px;
  }
  .home-about__lead {
    font-size: 3.3rem;
    margin-block: 50px 30px;
  }
  .home-about__area-img {
    position: absolute;
    top: 55%;
    right: -240px;
    transform: translateY(-50%);
  }
  .home-about__img-list {
    display: grid;
    gap: 42px;
  }
  .home-about__img-item {
    border-width: 14px;
    border-radius: 20px;
  }
}
@media (min-width: 1461px) {
  .home-about::after {
    left: 120px;
  }
  .home-about__inner {
    padding-inline: 30px;
  }
}

/* .home-structure
===================================*/
.home-structure {
  position: relative;
}
.home-structure::before, .home-structure::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 88%;
  z-index: -1;
}
.home-structure::before {
  background-color: #dfe8fd;
}
.home-structure::after {
  background: url(../img/common/bg_surface01.jpg);
  opacity: 0.2;
}
.home-structure__inner {
  padding-block: 74px 166px;
}
.home-structure__header {
  margin-bottom: 18px;
}
.home-structure__img {
  margin-inline: auto;
  width: -moz-fit-content;
  width: fit-content;
}
.home-structure__area-txt {
  border-top: 2px solid rgb(var(--color-primary-500));
  border-bottom: 2px solid rgb(var(--color-primary-500));
  margin-top: 30px;
  padding: 18px 20px;
}
.home-structure__box {
  background-color: rgb(var(--color-grayscale-100));
  border-radius: 20px;
  margin-top: 40px;
  padding: 20px;
}
.home-structure__box-head {
  font-size: 1.8rem;
  line-height: var(--line-height_head);
  text-align: center;
}
.home-structure__box-img {
  margin-top: 15px;
}
.home-structure__box-txt {
  margin-top: 15px;
}
@media (max-width: 767px) {
  .home-structure__area-txt {
    margin-inline: 20px;
  }
}
@media (min-width: 768px) {
  .home-structure::before, .home-structure::after {
    height: 80%;
  }
  .home-structure__inner {
    padding-block: 130px 272px;
  }
  .home-structure__header {
    margin-bottom: 52px;
  }
  .home-structure__area-txt {
    margin-top: 38px;
    padding: 40px 50px;
  }
  .home-structure__box {
    margin-top: 70px;
    padding: 40px 100px;
  }
  .home-structure__box-head {
    font-size: 2.6rem;
  }
  .home-structure__box-img {
    margin-top: 30px;
  }
  .home-structure__box-txt {
    margin-top: 30px;
  }
}

/* .home-merit
===================================*/
.home-merit {
  color: rgb(var(--color-grayscale-100));
  position: relative;
  z-index: 2;
}
.home-merit::before {
  content: "";
  background: url(../img/home/bg_merit01.jpg) no-repeat center/cover;
  position: absolute;
  inset: -352px 0 0;
  z-index: -1;
}
.home-merit__inner {
  padding-block: 74px 62px;
}
.home-merit__list {
  display: grid;
  gap: 35px;
}
.home-merit__list-area-img {
  border-radius: 6.5px;
  overflow: hidden;
}
.home-merit__list-num {
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2277%22%20height%3D%2277%22%20viewBox%3D%220%200%2077%2077%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M77%200C77%2042.5259%2042.5259%2077%200%2077V0C0%200%2046.9296%200%2077%200Z%22%20fill%3D%22url(%23paint0_radial_50_10456)%22%2F%3E%3Cdefs%3E%3CradialGradient%20id%3D%22paint0_radial_50_10456%22%20cx%3D%220%22%20cy%3D%220%22%20r%3D%221%22%20gradientUnits%3D%22userSpaceOnUse%22%20gradientTransform%3D%22translate(77%20-7.53691e-05)%20rotate(134.697)%20scale(109.822%201082.55)%22%3E%3Cstop%20stop-color%3D%22%23005BCF%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%234F3AD2%22%2F%3E%3C%2FradialGradient%3E%3C%2Fdefs%3E%3C%2Fsvg%3E") no-repeat center/contain;
  border-top-left-radius: 6.5px;
  box-sizing: border-box;
  font-size: 1.8rem;
  padding-top: 8px;
  padding-left: 9px;
  position: absolute;
  width: 50px;
  height: 50px;
  z-index: 1;
}
.home-merit__list-btn {
  border: 0;
  padding: 0;
  position: relative;
}
.home-merit__list-btn::before {
  content: "";
  display: inline-block;
  width: 16px;
  height: 16px;
  background-color: currentColor;
  color: rgb(var(--color-grayscale-800));
  -webkit-mask-image: url('data:image/svg+xml;utf8,&lt;svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18.814 18.814"&gt;&lt;path d="M12491.646,13519.027l-4.409-4.409,0,0a7.6,7.6,0,1,1,1.386-1.387l4.409,4.413a.979.979,0,0,1,0,1.381.975.975,0,0,1-1.384,0Zm-14.97-10.43a5.922,5.922,0,1,0,5.921-5.921A5.926,5.926,0,0,0,12476.677,13508.6Z" transform="translate(-12474.751 -13500.751)" stroke-width="0.5"/&gt;&lt;/svg&gt;');
  mask-image: url('data:image/svg+xml;utf8,&lt;svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18.814 18.814"&gt;&lt;path d="M12491.646,13519.027l-4.409-4.409,0,0a7.6,7.6,0,1,1,1.386-1.387l4.409,4.413a.979.979,0,0,1,0,1.381.975.975,0,0,1-1.384,0Zm-14.97-10.43a5.922,5.922,0,1,0,5.921-5.921A5.926,5.926,0,0,0,12476.677,13508.6Z" transform="translate(-12474.751 -13500.751)" stroke-width="0.5"/&gt;&lt;/svg&gt;');
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
  transition: all 0.3s ease;
  position: absolute;
  right: 10px;
  bottom: 10px;
}
.home-merit__list-item-head {
  font-size: 1.9rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  line-height: var(--line-height_head);
  margin-top: 25px;
  text-align: center;
}
.home-merit__list-item-txt {
  margin-top: 5px;
}
@media (max-width: 767px) {
  .home-merit__list {
    margin-inline: auto;
    max-width: 520px;
  }
}
@media (min-width: 768px) {
  .home-merit::before {
    top: -357px;
  }
  .home-merit__inner {
    padding-block: 130px 123px;
  }
  .home-merit__list {
    grid-template-columns: repeat(2, 1fr);
    gap: 0 60px;
  }
  .home-merit__list-item:nth-child(even) {
    margin-top: 60px;
  }
  .home-merit__list-area-img {
    border-radius: 10px;
  }
  .home-merit__list-num {
    border-top-left-radius: 10px;
    font-size: 2.6rem;
    padding-top: 13px;
    padding-left: 15px;
    width: 77px;
    height: 77px;
  }
  .home-merit__list-btn::before {
    right: 16px;
    bottom: 15px;
    width: 25px;
    height: 25px;
  }
  .home-merit__list-item-head {
    font-size: 2.9rem;
  }
  .home-merit__list-item-txt {
    margin-top: 12px;
    padding-inline: 40px;
  }
}

/* .home-function
===================================*/
.home-function {
  position: relative;
  z-index: 1;
}
.home-function::before, .home-function::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
}
.home-function::before {
  background-color: rgb(var(--color-grayscale-100));
}
.home-function::after {
  background: url(../img/common/bg_surface01.jpg);
  opacity: 0.6;
}
.home-function__inner {
  padding-block: 74px 166px;
}
@media (min-width: 768px) {
  .home-function__inner {
    padding-block: 130px 272px;
  }
}

/* .home-functiion-main
===================================*/
.home-function-main__slider-item {
  height: auto;
}
.home-function-main__slider-img {
  border: 7px solid rgb(var(--color-primary-500));
  border-radius: 10px;
}
.home-function-main__slider-area-txt {
  margin-top: 52px;
}
.home-function-main__slider-head {
  display: grid;
  grid-template-columns: 40px 1fr;
  align-items: center;
  gap: 10px;
  font-size: 2rem;
  font-weight: 700;
  line-height: var(--line-height_head);
  margin-bottom: 15px;
}
.home-function-main__slider-num {
  background-color: rgb(var(--color-primary-500));
  border-radius: 50%;
  box-sizing: border-box;
  color: rgb(var(--color-primary-100));
  display: grid;
  place-items: center;
  font-size: 1.5rem;
  padding-top: 3px;
  width: 40px;
  height: 40px;
}
.home-function-main__slider-pagination {
  top: 64vw;
  bottom: auto;
}
@media (max-width: 767px) {
  .home-function-main__area-txt {
    padding-inline: 20px;
  }
}
@media (min-width: 768px) {
  .home-function-main {
    display: grid;
    grid-template-columns: 410px calc(100% - 474px);
    align-items: end;
    gap: 64px;
    margin-right: 0;
  }
  .home-function-main__nav {
    margin-bottom: 1px;
  }
  .home-function-main__nav-list {
    border-top: 1px solid rgb(var(--color-grayscale-500));
    display: grid;
  }
  .home-function-main__nav-item {
    cursor: pointer;
    border-bottom: 1px solid rgb(var(--color-grayscale-500));
    display: grid;
    grid-template-columns: 50px 1fr;
    align-items: center;
    gap: 10px;
    font-size: 2.6rem;
    font-weight: 700;
    padding: 28px 20px;
    position: relative;
  }
  .home-function-main__nav-item::before {
    content: "";
    background-color: rgb(var(--color-primary-500));
    position: absolute;
    bottom: -1px;
    left: 0;
    transform: scaleX(0);
    transform-origin: left top;
    width: 100%;
    height: 1px;
    transition: all 0.3s ease;
  }
  .home-function-main__nav-item::after {
    content: "";
    display: inline-block;
    width: 8px;
    height: 12px;
    background-color: currentColor;
    color: rgb(var(--color-grayscale-500));
    -webkit-mask-image: url('data:image/svg+xml;utf8,&lt;svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 6.472 9.771"&gt;&lt;path d="M1.32,0,0,1.38,3.709,4.886,0,8.391l1.32,1.38L6.472,4.886Z"/&gt;&lt;/svg&gt;');
    mask-image: url('data:image/svg+xml;utf8,&lt;svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 6.472 9.771"&gt;&lt;path d="M1.32,0,0,1.38,3.709,4.886,0,8.391l1.32,1.38L6.472,4.886Z"/&gt;&lt;/svg&gt;');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: contain;
    mask-size: contain;
    transition: all 0.3s ease;
    margin-block: auto;
    position: absolute;
    inset: 0 20px 0 auto;
  }
  .home-function-main__nav-item.is-active {
    color: rgb(var(--color-primary-500));
  }
  .home-function-main__nav-item.is-active::before {
    transform: scaleX(1);
  }
  .home-function-main__nav-item.is-active::after {
    color: rgb(var(--color-primary-500));
  }
  .home-function-main__nav-num {
    background-color: rgb(var(--color-primary-100));
    border-radius: 50%;
    box-sizing: border-box;
    color: rgb(var(--color-primary-500));
    display: grid;
    place-items: center;
    font-size: 1.5rem;
    padding-top: 3px;
    width: 50px;
    height: 50px;
    transition: all 0.3s ease;
  }
  .is-active &gt; .home-function-main__nav-num {
    background-color: rgb(var(--color-primary-500));
    color: rgb(var(--color-primary-100));
  }
  .home-function-main__slider-img {
    border-width: 14px;
    border-radius: 28px;
  }
  .home-function-main__slider-area-txt {
    margin-top: 57px;
  }
  .home-function-main__slider-head {
    font-size: 3.3rem;
    gap: 30px;
    margin-bottom: 20px;
  }
  .home-function-main__slider-num {
    width: 50px;
    height: 50px;
  }
  .home-function-main__slider-pagination {
    justify-content: flex-end;
    margin-right: -24px;
    top: 448px;
  }
}
@media (min-width: 1461px) {
  .home-function-main {
    gap: 70px;
    margin-right: -144px;
  }
  .home-function-main__slider-pagination {
    top: 540px;
  }
}
@media (hover: hover) and (pointer: fine) {
  .home-function-main__nav-item:hover {
    color: rgb(var(--color-primary-500));
  }
  .home-function-main__nav-item:hover::before {
    transform: scaleX(1);
  }
  .home-function-main__nav-item:hover::after {
    color: rgb(var(--color-primary-500));
  }
  :hover &gt; .home-function-main__nav-num {
    background-color: rgb(var(--color-primary-500));
    color: rgb(var(--color-primary-100));
  }
}

/* .home-function-other
===================================*/
.home-function-other {
  border: 1px solid rgb(var(--color-primary-500));
  margin-top: 62px;
  padding: 0 20px 20px;
}
.home-function-other__head {
  color: rgb(var(--color-primary-500));
  font-size: 1.8rem;
  font-weight: 700;
  margin-top: -16px;
  margin-inline: auto;
  padding-inline: 45px;
  position: relative;
  text-align: center;
  width: -moz-fit-content;
  width: fit-content;
  z-index: 1;
}
.home-function-other__head::before, .home-function-other__head::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
}
.home-function-other__head::before {
  background-color: rgb(var(--color-grayscale-100));
}
.home-function-other__head::after {
  background: url(../img/common/bg_surface01.jpg);
  opacity: 0.6;
}
.home-function-other__content {
  display: grid;
  gap: 12px;
  margin-top: 8px;
}
.home-function-other__card {
  background-color: rgb(var(--color-grayscale-200));
  color: rgb(var(--color-primary-500));
  line-height: var(--line-height_head);
  padding: 20px;
}
.home-function-other__card-header {
  border-bottom: 1px solid rgb(var(--color-grayscale-500));
  padding-bottom: 16px;
}
.home-function-other__card-head {
  font-size: 1.6rem;
  font-weight: 700;
}
.home-function-other__card-txt {
  margin-top: 10px;
}
.home-function-other__card-txt + .home-function-other__card-txt {
  margin-top: 10px;
}
@media (max-width: 767px) {
  .home-function-other__card-header {
    display: grid;
    grid-template-columns: 70px 1fr;
    align-items: center;
    gap: 10px;
  }
}
@media (min-width: 768px) {
  .home-function-other {
    margin-top: 115px;
    padding: 0 50px 50px;
  }
  .home-function-other__head {
    margin-top: -22px;
    font-size: 2.6rem;
  }
  .home-function-other__content {
    grid-template-columns: repeat(3, 1fr);
    margin-top: 28px;
  }
  .home-function-other__card {
    padding: 40px 30px 30px;
  }
  .home-function-other__card-header {
    text-align: center;
  }
  .home-function-other__card-head {
    font-size: 2rem;
    margin-top: 10px;
  }
  .home-function-other__card-txt {
    margin-top: 20px;
  }
}

/* .home-function-note
===================================*/
.home-function-note {
  background-color: rgb(var(--color-grayscale-200));
  display: grid;
  gap: 15px;
  margin-top: 20px;
  padding: 30px 20px;
}
.home-function-note__btn {
  margin-inline: auto;
}
@media (min-width: 768px) {
  .home-function-note {
    grid-template-columns: 1fr 340px;
    gap: 30px;
    margin-top: 32px;
    padding: 40px 50px;
  }
}

/* .home-reason
===================================*/
.home-reason {
  position: relative;
}
.home-reason::before {
  content: "";
  background: url(../img/home/bg_reason01_sp.jpg) no-repeat center/cover;
  position: absolute;
  inset: -352px 0 0;
  z-index: -1;
}
.home-reason__area-txt {
  padding-block: 70px;
}
.home-reason__lead {
  font-size: 2rem;
  font-weight: 700;
  line-height: var(--line-height_head);
  margin-bottom: 15px;
}
.home-reason__txt + .home-reason__txt {
  margin-top: 2em;
}
@media (max-width: 767px) {
  .home-reason__img {
    width: calc(100% - 20px);
  }
  .home-reason__content {
    padding: 0 40px;
  }
}
@media (min-width: 768px) {
  .home-reason::before {
    background-image: url(../img/home/bg_reason01_pc.jpg);
    top: -357px;
  }
  .home-reason__header {
    margin-bottom: 108px;
  }
  .home-reason__inner {
    display: grid;
    grid-template-columns: 37.5% calc(62.5% - max(100px, 7.3vw));
    align-items: end;
    gap: 0 max(100px, 7.3vw);
  }
  .home-reason__img {
    width: 100%;
    height: 100%;
  }
  .home-reason__img img {
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
    width: 100%;
    height: 100%;
  }
  .home-reason__area-txt {
    padding-right: 30px;
    max-width: 650px;
  }
  .home-reason__lead {
    font-size: 3.3rem;
    margin-bottom: 30px;
  }
}

/* .home-flow
===================================*/
.home-flow__inner {
  padding-block: 74px 70px;
}
@media (min-width: 768px) {
  .home-flow__inner {
    padding-block: 130px;
  }
}

/* .home-flow-list
===================================*/
.home-flow-list {
  display: grid;
  gap: 15px;
  margin-inline: auto;
  width: calc(100% - 40px);
}
.home-flow-list__item {
  background-color: rgb(var(--color-grayscale-100));
  padding: 20px;
  position: relative;
}
.home-flow-list__item + .home-flow-list__item::before {
  content: "";
  background-color: rgb(var(--color-primary-500));
  margin: auto;
  position: absolute;
  inset: -15px 0 auto 0;
  width: 1px;
  height: 15px;
}
.home-flow-list__item-head {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: var(--line-height_head);
}
@media (max-width: 767px) {
  .home-flow-list__item-header {
    border-bottom: 1px solid rgb(var(--color-grayscale-500));
    display: grid;
    grid-template-columns: 50px 1fr;
    align-items: center;
    gap: 10px;
    margin-bottom: 9px;
    padding-bottom: 16px;
  }
}
@media (min-width: 768px) {
  .home-flow-list {
    gap: 32px;
    width: 870px;
  }
  .home-flow-list__item {
    display: grid;
    grid-template: "ico head" auto "ico txt" auto/106px 1fr;
    gap: 10px 80px;
    padding: 40px 50px;
  }
  .home-flow-list__item + .home-flow-list__item::before {
    inset: -32px auto auto 103px;
    height: 32px;
  }
  .home-flow-list__item-header {
    display: contents;
  }
  .home-flow-list__item-ico {
    grid-area: ico;
    position: relative;
  }
  .home-flow-list__item-ico::after {
    content: "";
    background-color: rgb(var(--color-grayscale-500));
    margin: auto;
    position: absolute;
    inset: -4px auto 0 125px;
    width: 40px;
    height: 1px;
  }
  .home-flow-list__item-head {
    grid-area: head;
    align-self: flex-end;
    font-size: 2.3rem;
  }
  .home-flow-list__item-txt {
    grid-area: txt;
  }
}
@media (min-width: 768px){
  .home-flow-list__item-ico {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 1;
  }
  .home-flow-list__item-head {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .home-flow-list__item-txt {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
  }
}

/* .home-faq
===================================*/
.home-faq {
  position: relative;
  z-index: 1;
}
.home-faq::before, .home-faq::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
}
.home-faq::before {
  background-color: rgb(var(--color-grayscale-100));
}
.home-faq::after {
  background: url(../img/common/bg_surface01.jpg);
  opacity: 0.5;
}
.home-faq__inner {
  padding-block: 74px 70px;
}
@media (min-width: 768px) {
  .home-faq__inner {
    padding-block: 130px;
  }
}

/* .home-form
===================================*/
.home-form {
  background: url(../img/home/bg_form01_sp.jpg) no-repeat left top/100% 100%;
  color: rgb(var(--color-grayscale-100));
}
.home-form__inner {
  padding-block: 74px 70px;
}
@media (min-width: 768px) {
  .home-form {
    background-image: url(../img/home/bg_form01_pc.jpg);
  }
  .home-form__inner {
    padding-block: 130px 150px;
  }
}</pre></body></html>