@charset "UTF-8";
/* ↓↓ reset.css ↓↓ */
/*! destyle.css v1.0.14 | MIT License | https://github.com/nicolas-cusan/destyle.css */
/* Reset box-model */
/* ============================================ */
* {
  box-sizing: border-box;
}

::before,
::after {
  box-sizing: inherit;
}

/* Document */
/* ============================================ */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 * 3. Remove gray overlay on links for iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
  -webkit-tap-highlight-color: transparent;
  /* 3*/
}

/* Sections */
/* ============================================ */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/* Vertical rhythm */
/* ============================================ */
p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
  margin: 0;
}

/* Headings */
/* ============================================ */
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  line-height: inherit;
  font-weight: inherit;
  margin: 0;
}

/* Lists (enumeration) */
/* ============================================ */
ul,
ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

/* Lists (definition) */
/* ============================================ */
dt {
  font-weight: bold;
}

dd {
  margin-left: 0;
}

/* Grouping content */
/* ============================================ */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
  border: 0;
  border-top: 1px solid;
  margin: 0;
  clear: both;
  color: inherit;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: inherit;
  /* 2 */
}

address {
  font-style: inherit;
}

/* Text-level semantics */
/* ============================================ */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
  text-decoration: none;
  color: inherit;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: inherit;
  /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content */
/* ============================================ */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
  vertical-align: bottom;
}

embed,
object,
iframe {
  border: 0;
  vertical-align: bottom;
}

/* Forms */
/* ============================================ */
/**
 * Reset form fields to make them styleable
 */
button,
input,
optgroup,
select,
textarea {
  -webkit-appearance: none;
  appearance: none;
  vertical-align: middle;
  color: inherit;
  font: inherit;
  border: 0;
  background: transparent;
  padding: 0;
  margin: 0;
  outline: 0;
  border-radius: 0;
  text-align: inherit;
}

/**
 * Reset radio and checkbox appearance to preserve their look in iOS.
 */
[type=checkbox] {
  -webkit-appearance: checkbox;
  appearance: checkbox;
}

[type=radio] {
  -webkit-appearance: radio;
  appearance: radio;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
}

button[disabled],
[type=button][disabled],
[type=reset][disabled],
[type=submit][disabled] {
  cursor: default;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Remove arrow in IE10 & IE11
 */
select::-ms-expand {
  display: none;
}

/**
 * Remove padding
 */
option {
  padding: 0;
}

/**
 * Reset to invisible
 */
fieldset {
  margin: 0;
  padding: 0;
  border: 0;
  min-width: 0;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the outline style in Safari.
 */
[type=search] {
  outline-offset: -2px;
  /* 1 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/**
 * Clickable labels
 */
label[for] {
  cursor: pointer;
}

/* Interactive */
/* ============================================ */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/*
 * Remove outline for editable content.
 */
[contenteditable] {
  outline: none;
}

/* Table */
/* ============================================ */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption {
  text-align: left;
}

td,
th {
  vertical-align: top;
  padding: 0;
}

th {
  text-align: left;
  font-weight: bold;
}

/* Misc */
/* ============================================ */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

* {
  box-sizing: border-box;
}

/* ↑↑ reset.css ↑↑ */
/* ==============================
全体設定
============================== */
html {
  font-size: 62.5%;
  height: 100%;
  scroll-behavior: smooth;
}

@media screen and (max-width: 1439px) and (min-width: 768px) {
  html {
    font-size: 0.6944444444vw;
  }
}
@media screen and (max-width: 767px) {
  html {
    font-size: 2.5641025641vw;
  }
}
body {
  font-size: 1.6rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
}
body.js-fixed {
  width: 100%;
  position: fixed;
  overflow: hidden;
}

img {
  display: block;
  width: 100%;
  height: auto;
}

a[href^="tel:"] {
  pointer-events: none;
}

@media screen and (max-width: 767px) {
  a[href^="tel:"] {
    pointer-events: auto;
  }
}
.l-header {
  height: 10rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 100;
}
@media screen and (max-width: 767px) {
  .l-header {
    height: auto;
    position: absolute;
    padding: 2rem 0 0;
  }
}
.l-header.js-scroll {
  height: 8rem;
  background: #fff;
  transition: 0.3s;
}
.l-header.js-scroll .l-header__title a {
  color: #3a3a3a;
  margin: 0 0 0 2.4rem;
  transition: 0.3s;
}
.l-header.js-scroll .l-header__nav-btn {
  transform: scale(0.9);
  top: 0.45rem;
  right: 2.4rem;
}
.l-header.js-scroll .l-header__cta {
  margin: 0 11rem 0 0;
}
.l-header__title a {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 1.6rem;
  font-weight: 500;
  letter-spacing: 0.08em;
  white-space: nowrap;
  margin: 0 0 0 3rem;
  transition: 0.3s;
}
@media screen and (max-width: 767px) {
  .l-header__title a {
    font-size: 1rem;
    margin: 0 0 0 1.6rem;
  }
}
.l-header__title a span {
  display: block;
  font-size: 2.4rem;
  font-weight: 600;
  letter-spacing: 0.06em;
}
@media screen and (max-width: 767px) {
  .l-header__title a span {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  .l-header__title a.js-active {
    display: none;
  }
}
.l-header__title a:hover {
  opacity: 0.5;
}
.l-header__cta {
  display: flex;
  align-items: center;
  justify-content: right;
  gap: 2rem;
  margin: 0 12rem 0 0;
}
@media screen and (max-width: 767px) {
  .l-header__cta {
    display: none;
  }
}
.l-header__cta .c-btn {
  font-size: 1.6rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  margin: 0;
}
.l-header__nav {
  width: 100%;
  height: 100vh;
  background: rgba(255, 255, 255, 0.4);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  opacity: 0;
  visibility: hidden;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  transition: 0.3s;
}
@media screen and (max-width: 767px) {
  .l-header__nav {
    position: fixed;
  }
}
.l-header__nav.js-active {
  opacity: 1;
  visibility: visible;
}
.l-header__nav.js-active .l-header__nav-hum {
  transform: translateX(0);
}
.l-header__nav-btn {
  cursor: pointer;
  text-align: center;
  width: 6.8rem;
  height: 6.8rem;
  color: #3a3a3a;
  background: #fff;
  font-size: 1.2rem;
  font-weight: 600;
  line-height: 1.7rem;
  letter-spacing: 0.04em;
  box-shadow: 0 0 0 0.1rem #3a3a3a;
  border-radius: 50%;
  padding: 2.5rem 0 0;
  position: absolute;
  top: 2rem;
  right: 3rem;
  z-index: 100;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
@media screen and (max-width: 767px) {
  .l-header__nav-btn {
    width: 6.8rem;
    height: 4.2rem;
    font-size: 1.1rem;
    line-height: 1.6rem;
    border: none;
    border-left: solid 0.1rem #acacac;
    border-radius: unset;
    box-shadow: unset;
    padding: 1.25rem 0 0;
    transform: scale(1);
    position: fixed;
    top: auto;
    bottom: 0;
    right: 0;
  }
}
.l-header__nav-btn-deco, .l-header__nav-btn-deco::before, .l-header__nav-btn-deco::after {
  content: "";
  background: #3a3a3a;
  width: 0.5rem;
  flex: 0 0 0.5rem;
  height: 0.5rem;
  border-radius: 50%;
  transition: 0.3s;
}
@media screen and (max-width: 767px) {
  .l-header__nav-btn-deco, .l-header__nav-btn-deco::before, .l-header__nav-btn-deco::after {
    width: 0.33rem;
    flex: 0 0 0.33rem;
    height: 0.33rem;
  }
}
.l-header__nav-btn-deco {
  display: block;
  margin: auto;
  position: relative;
}
.l-header__nav-btn-deco::before, .l-header__nav-btn-deco::after {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
}
.l-header__nav-btn-deco::before {
  transform: translateX(-0.98rem);
}
@media screen and (max-width: 767px) {
  .l-header__nav-btn-deco::before {
    transform: translateX(-0.58rem);
  }
}
.l-header__nav-btn-deco::after {
  transform: translateX(0.98rem);
}
@media screen and (max-width: 767px) {
  .l-header__nav-btn-deco::after {
    transform: translateX(0.58rem);
  }
}
@media screen and (min-width: 768px) {
  .l-header__nav-btn:hover {
    box-shadow: 0 0 0 0.15rem #3a3a3a;
    transform: scale(1.07);
  }
  .l-header__nav-btn:hover .l-header__nav-btn-deco::before,
  .l-header__nav-btn:hover .l-header__nav-btn-deco::after {
    transform: translateX(0);
    opacity: 0;
  }
}
.l-header__nav-btn.js-active {
  font-size: 0;
}
.l-header__nav-btn.js-active .l-header__nav-btn-deco,
.l-header__nav-btn.js-active .l-header__nav-btn-deco::before,
.l-header__nav-btn.js-active .l-header__nav-btn-deco::after {
  display: none;
}
.l-header__nav-btn.js-active::before, .l-header__nav-btn.js-active::after {
  content: "";
  display: block;
  width: 1.6rem;
  height: 0.1rem;
  background: #000;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.l-header__nav-btn.js-active::before {
  transform: translate(-50%, -50%) rotate(45deg);
}
.l-header__nav-btn.js-active::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}
.l-header__nav-hum {
  width: 44rem;
  height: 100%;
  background: #fafafa;
  padding: 12rem 4rem 4rem;
  margin: 0 0 0 auto;
  overflow-y: auto;
  transform: translateX(100%);
}
@media screen and (max-width: 767px) {
  .l-header__nav-hum {
    width: 100%;
    padding: 1.6rem 1.6rem 8rem;
  }
}
.l-header__nav-title {
  display: none;
}
@media screen and (max-width: 767px) {
  .l-header__nav-title {
    display: block;
    color: #3a3a3a;
    font-size: 1rem;
    font-weight: 500;
    letter-spacing: 0.08em;
    white-space: nowrap;
  }
}
@media screen and (max-width: 767px) {
  .l-header__nav-title span {
    display: block;
    font-size: 1.3rem;
    font-weight: 600;
    letter-spacing: 0.1em;
    margin: 0.4rem 0 0;
  }
}
.l-header__nav-cta {
  display: flex;
  align-items: flex-end;
  gap: 2.4rem;
  position: sticky;
  top: 0;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .l-header__nav-cta {
    position: static;
    margin: 2.4rem 0 0;
  }
}
.l-header__nav-cta .c-btn {
  width: 34rem;
  font-size: 1.6rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  white-space: nowrap;
  padding: 0;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .l-header__nav-cta .c-btn {
    width: 100%;
    font-size: 1.2rem;
  }
}
.l-header__nav-cta-bubble {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.8rem;
  font-size: 1.3rem;
  font-weight: 500;
  letter-spacing: 0.08em;
  margin: 0 0 0.8rem;
}
@media screen and (max-width: 767px) {
  .l-header__nav-cta-bubble {
    font-size: 1rem;
  }
}
.l-header__nav-cta-bubble::before, .l-header__nav-cta-bubble::after {
  content: "";
  display: block;
  width: 0.1rem;
  height: 1rem;
  background: #343434;
}
.l-header__nav-cta-bubble::before {
  transform: rotate(-20deg);
}
.l-header__nav-cta-bubble::after {
  transform: rotate(20deg);
}
.l-header__nav-list {
  border-top: solid 0.1rem #e5e5e5;
  margin: 3.2rem 0 0;
}
.l-header__nav-list-item {
  color: #3a3a3a;
  font-size: 1.6rem;
  font-weight: 500;
  letter-spacing: 0.08em;
  line-height: 1.5;
  border-bottom: solid 0.1rem #e5e5e5;
  position: relative;
}
@media screen and (max-width: 767px) {
  .l-header__nav-list-item {
    font-size: 1.4rem;
  }
}
.l-header__nav-list-item::after {
  content: "";
  display: block;
  width: 1.8rem;
  height: 0.9rem;
  background-image: url(../img/icon-nav-arrow-right.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  top: 50%;
  right: 1.6rem;
  transform: translateY(-50%);
}
.l-header__nav-list-item a {
  display: block;
  padding: 2.4rem 0;
}
@media screen and (max-width: 767px) {
  .l-header__nav-list-item a {
    padding: 2rem 0;
  }
}
.l-header__nav-list-item:hover::after {
  animation: arrow-hover 0.3s ease-out;
}
@keyframes arrow-hover {
  0% {
    opacity: 1;
    background-position: left center;
  }
  80% {
    opacity: 0;
    background-position: center right -100%;
  }
  81% {
    opacity: 0;
    background-position: left -10% center;
  }
  100% {
    opacity: 1;
    background-position: left center;
  }
}
.l-header__nav-list--aco {
  cursor: pointer;
  padding: 0;
}
.l-header__nav-list--aco::after {
  display: none;
}
.l-header__nav-list--aco-btn {
  padding: 2.4rem 0;
  position: relative;
}
.l-header__nav-list--aco-btn:hover {
  animation: aco-btn-hover 0.3s ease-in-out;
}
@keyframes aco-btn-hover {
  0% {
    opacity: 1;
  }
  40% {
    opacity: 0.5;
  }
  60% {
    opacity: 0.5;
  }
  100% {
    opacity: 1;
  }
}
.l-header__nav-list--aco-btn::before, .l-header__nav-list--aco-btn::after {
  content: "";
  display: block;
  width: 1.2rem;
  height: 0.1rem;
  background: #3a3a3a;
  position: absolute;
  top: 50%;
  right: 1.6rem;
  transform: translateY(-50%);
  transition: 0.3s;
}
.l-header__nav-list--aco-btn::after {
  transform: translateY(-50%) rotate(270deg);
}
.l-header__nav-list--aco-btn.js-open {
  color: #a9a9a9;
  border-bottom: solid 0.1rem #e5e5e5;
}
.l-header__nav-list--aco-btn.js-open::after {
  transform: translateY(-50%) rotate(0);
}
.l-header__nav-list--aco-child {
  display: none;
  border-top: 0;
  margin: 0 1.6rem;
}
.l-header__nav-list--aco-child .l-header__nav-list-item {
  font-size: 1.5rem;
}
@media screen and (max-width: 767px) {
  .l-header__nav-list--aco-child .l-header__nav-list-item {
    font-size: 1.2rem;
  }
  .l-header__nav-list--aco-child .l-header__nav-list-item a {
    padding: 1.6rem 0;
  }
}
.l-header__nav-list--aco-child .l-header__nav-list-item:last-of-type {
  border-bottom: 0;
}
.l-header__nav-contact {
  text-align: center;
  border: solid 0.1rem #3a3a3a;
  border-radius: 2rem;
  padding: 3.2rem 0 2.8rem;
  margin: 3.2rem 0 0;
}
.l-header__nav-contact-title {
  color: #000;
  font-size: 1.6rem;
  font-weight: 500;
  letter-spacing: 0.08em;
}
.l-header__nav-contact-desc {
  color: #000;
  font-size: 1.4rem;
  letter-spacing: 0.08em;
  line-height: 1.6;
  margin: 1.2rem 0 0;
}
.l-header__nav-contact-tel {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  color: #3a3a3a;
  font-family: "Barlow Condensed", sans-serif;
  font-size: 3.4rem;
  letter-spacing: 0.08em;
}
.l-header__nav-contact-tel span {
  font-size: 1.8rem;
  margin: 0 0.2rem 0.3rem 0;
}
.l-header__nav-contact-time {
  color: #3a3a3a;
  font-size: 1.2rem;
  letter-spacing: 0.08em;
  line-height: 1.6;
  margin: 1.2rem 0 0;
}
.l-header__nav-contact .c-btn {
  margin: 1.6rem auto 0;
}
.l-header__nav-foot {
  display: flex;
  align-items: center;
  gap: 2.4rem;
  margin: 2.4rem 0 0;
}
@media screen and (max-width: 767px) {
  .l-header__nav-foot {
    margin: 2rem 0 0;
  }
}
.l-header__nav-foot-link.c-link--line {
  flex: 0 0 auto;
  color: #3a3a3a;
  font-size: 1.4rem;
  font-weight: 500;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 767px) {
  .l-header__nav-foot-link.c-link--line {
    font-size: 1.2rem;
  }
}
.l-header__sns {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 3rem;
  color: #3a3a3a;
  font-size: 1.4rem;
  font-family: "Noto Sans JP", serif;
  letter-spacing: 0.08em;
  white-space: nowrap;
  margin: 2.4rem 0 3.2rem;
}
@media screen and (max-width: 767px) {
  .l-header__sns {
    text-align: center;
    letter-spacing: 0.04em;
    margin: 3.5rem 0 0;
  }
}
.l-header__sns img {
  width: 2.4rem;
}
.l-header__sns-hum {
  width: 44rem;
  height: 100%;
  background: #fafafa;
  padding: 12rem 4rem 4rem;
  margin: 0 0 0 auto;
  overflow-y: auto;
  transform: translateX(100%);
}
@media screen and (max-width: 767px) {
  .l-header__sns-hum {
    width: 100%;
    padding: 6rem 1.6rem;
  }
}
.l-header__sns-cta.c-btn {
  width: 34rem;
  font-size: 1.6rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .l-header__sns-cta.c-btn {
    width: 100%;
    font-size: 1.2rem;
  }
}
.l-header__sns-list {
  border-top: solid 0.1rem #e5e5e5;
  margin: 3.2rem 0 0;
}
.l-header__sns-list-item {
  color: #3a3a3a;
  font-size: 1.6rem;
  font-weight: 500;
  letter-spacing: 0.08em;
  line-height: 1.5;
  border-bottom: solid 0.1rem #e5e5e5;
  position: relative;
}
@media screen and (max-width: 767px) {
  .l-header__sns-list-item {
    font-size: 1.4rem;
  }
}
.l-header__sns-list-item::after {
  content: "";
  display: block;
  width: 1.8rem;
  height: 0.9rem;
  background-image: url(../img/icon-nav-arrow-right.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  top: 50%;
  right: 1.6rem;
  transform: translateY(-50%);
}
.l-header__sns-list-item a {
  display: block;
  padding: 2.4rem 0;
}
@media screen and (max-width: 767px) {
  .l-header__sns-list-item a {
    padding: 2rem 0;
  }
}
.l-header__sns-list-item:hover::after {
  animation: arrow-hover 0.3s ease-out;
}
@keyframes arrow-hover {
  0% {
    opacity: 1;
    background-position: left center;
  }
  80% {
    opacity: 0;
    background-position: center right -100%;
  }
  81% {
    opacity: 0;
    background-position: left -10% center;
  }
  100% {
    opacity: 1;
    background-position: left center;
  }
}
.l-header__sns-list--aco {
  cursor: pointer;
  padding: 0;
}
.l-header__sns-list--aco::after {
  display: none;
}
.l-header__sns-list--aco-btn {
  padding: 2.4rem 0;
  position: relative;
}
.l-header__sns-list--aco-btn::before, .l-header__sns-list--aco-btn::after {
  content: "";
  display: block;
  width: 1.2rem;
  height: 0.1rem;
  background: #3a3a3a;
  position: absolute;
  top: 50%;
  right: 1.6rem;
  transform: translateY(-50%);
  transition: 0.3s;
}
.l-header__sns-list--aco-btn::after {
  transform: translateY(-50%) rotate(270deg);
}
.l-header__sns-list--aco-btn.js-open {
  color: #a9a9a9;
  border-bottom: solid 0.1rem #e5e5e5;
}
.l-header__sns-list--aco-btn.js-open::after {
  transform: translateY(-50%) rotate(0);
}
.l-header__sns-list--aco-child {
  display: none;
  border-top: 0;
  margin: 0 1.6rem;
}
.l-header__sns-list--aco-child .l-header__nav-list-item {
  font-size: 1.5rem;
}
@media screen and (max-width: 767px) {
  .l-header__sns-list--aco-child .l-header__nav-list-item {
    font-size: 1.2rem;
  }
  .l-header__sns-list--aco-child .l-header__nav-list-item a {
    padding: 1.6rem 0;
  }
}
.l-header__sns-list--aco-child .l-header__nav-list-item:last-of-type {
  border-bottom: 0;
}
.l-header__sns-foot {
  display: flex;
  align-items: center;
  gap: 3rem;
  margin: 2.4rem 0 0;
}
@media screen and (max-width: 767px) {
  .l-header__sns-foot {
    margin: 2rem 0 0;
  }
}
.l-header__sns-foot-link.c-link--line {
  color: #3a3a3a;
  font-size: 1.5rem;
  font-weight: 500;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 767px) {
  .l-header__sns-foot-link.c-link--line {
    font-size: 1.2rem;
  }
}
.l-header__fixed {
  display: none;
  width: calc(100% - 6.8rem);
}
@media screen and (max-width: 767px) {
  .l-header__fixed {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
    height: 4.2rem;
    background: #fff;
    padding: 0.8rem 1.6rem 0.8rem 2rem;
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
  }
}
.l-header__fixed-top {
  color: #3a3a3a;
  font-size: 1.1rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  line-height: 1.6rem;
  margin: 0 0 -0.25rem;
}
.l-header__fixed-top-img {
  width: 1.35rem;
  height: auto;
  margin: auto;
}
.l-header__fixed-cta.c-btn {
  width: 100%;
  height: 100%;
  font-size: 1.2rem;
  font-weight: 600;
  padding: 0.2rem 0;
  margin: 0;
}
.l-header-news .l-header__title a {
  color: #fff;
}
.l-header-news .l-header__nav-title {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.l-header-news .l-header__nav-title span {
  margin: 0;
}

.l-container {
  text-align: center;
  color: #3a3a3a;
}

.l-footer {
  font-family: "Noto Sans JP", sans-serif;
  color: #fff;
  background-color: #3a3a3a;
  padding: 8rem 12rem 6.4rem;
}
@media screen and (max-width: 767px) {
  .l-footer {
    padding: 2.4rem 1.6rem 7.4rem;
  }
}
.l-footer .c-link--line {
  --line-color: #fff;
  --line-hover-color: #fff;
}
.l-footer__nav--pc {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 3rem;
}
@media screen and (max-width: 767px) {
  .l-footer__nav--pc {
    display: none;
  }
}
.l-footer__nav--sp {
  display: none;
}
@media screen and (max-width: 767px) {
  .l-footer__nav--sp {
    display: block;
  }
}
.l-footer__nav-side .c-link--line {
  width: fit-content;
  display: block;
  color: #fff;
  margin: 0 0 3rem;
}
.l-footer__nav-list-item {
  color: #fff;
  font-size: 1.4rem;
  letter-spacing: 0.08em;
  margin: 0 0 2.8rem;
  position: relative;
  background-repeat: no-repeat;
  background-position: left bottom;
  background-size: 100% 0.1rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .l-footer__nav-list-item {
    border-bottom: solid 0.1rem #4a4a4a;
    padding: 0;
    margin: 0;
  }
  .l-footer__nav-list-item::after {
    content: "";
    display: block;
    width: 1.8rem;
    height: 0.9rem;
    background-image: url(../img/icon-nav-arrow-right-white.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    position: absolute;
    top: 50%;
    right: 1.6rem;
    transform: translateY(-50%);
  }
}
.l-footer__nav-list-item a {
  display: block;
  padding: 0 0 1rem;
}
@media screen and (max-width: 767px) {
  .l-footer__nav-list-item a {
    padding: 2rem 0 1.8rem;
  }
}
.l-footer__nav-list-item .c-link--line {
  width: 100%;
  display: inline-block;
  --line-h: 0.1rem;
  --line-color: #4a4a4a;
  --line-hover-color: #fff;
  --duration: .6s;
}
.l-footer__nav-list--aco {
  background-image: linear-gradient(#4a4a4a, #4a4a4a);
  background-repeat: no-repeat;
  background-position: left bottom;
  background-size: 100% 0.1rem;
  color: #a9a9a9;
  padding: 0 0 1rem;
  margin: 0;
}
@media screen and (max-width: 767px) {
  .l-footer__nav-list--aco {
    color: #fff;
    background-image: 0;
    border-bottom: 0;
    padding: 0;
  }
  .l-footer__nav-list--aco::after {
    display: none;
  }
  .l-footer__nav-list--aco-btn.c-link--line {
    --line-color: #4a4a4a;
    --line-hover-color: #4a4a4a;
    padding: 2rem 0 1.8rem;
    position: relative;
  }
  .l-footer__nav-list--aco-btn.c-link--line::before, .l-footer__nav-list--aco-btn.c-link--line::after {
    content: "";
    display: block;
    width: 1.2rem;
    height: 0.1rem;
    background: #fff;
    position: absolute;
    top: 50%;
    right: 1.6rem;
    transition: 0.3s;
  }
  .l-footer__nav-list--aco-btn.c-link--line::after {
    transform: translateY(-50%) rotate(270deg);
  }
  .l-footer__nav-list--aco-btn.c-link--line.js-open {
    color: #a9a9a9;
    --line-color: #4a4a4a;
    --line-hover-color: #fff;
    animation: none;
  }
  .l-footer__nav-list--aco-btn.c-link--line.js-open::after {
    transform: translateY(-50%) rotate(0);
  }
}
@media screen and (max-width: 767px) {
  .l-footer__nav-list--aco-child {
    display: none;
    margin: 0 1.6rem;
  }
  .l-footer__nav-list--aco-child .l-footer__nav-list-item {
    font-size: 1.2rem;
  }
  .l-footer__nav-list--aco-child .l-footer__nav-list-item:last-child {
    background-image: none;
  }
  .l-footer__nav-list--aco-child .l-footer__nav-list-item::after {
    content: "";
    display: block;
    width: 1.2rem;
    height: 0.9rem;
    background-image: url(../img/icon-nav-arrow-right-white.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    position: absolute;
    top: 50%;
    right: 1.6rem;
    transform: translateY(-50%);
  }
}
.l-footer__nav-list--aco-child .c-link--line {
  display: inline-block;
  width: fit-content;
  color: #fff;
  font-size: 1.2rem;
  margin: 2rem 0 0;
}
.l-footer__nav-list--aco-child--flex .c-link--line {
  margin: 2rem 2.4rem 0 0;
}
.l-footer__nav-foot {
  display: flex;
  align-items: center;
  gap: 3rem;
  margin: 3.2rem 0 0;
}
.l-footer__nav-foot-link {
  color: #fff;
  font-size: 1.3rem;
  font-weight: 500;
  letter-spacing: 0.08em;
}
.l-footer__title {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
  color: #fff;
  font-size: 2.4rem;
  font-weight: 500;
  letter-spacing: 0.08em;
  margin: 4rem 0 0;
}
@media screen and (max-width: 767px) {
  .l-footer__title {
    text-align: center;
    font-size: 1.2rem;
    margin: 4.6rem 0 0;
  }
  .l-footer__title span {
    font-size: 1.7rem;
  }
}
.l-footer__inner {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .l-footer__inner {
    display: block;
  }
}
.l-footer__info {
  color: #fff;
  font-size: 1.2rem;
  letter-spacing: 0.08em;
  margin: 2.4rem 0 0;
}
@media screen and (max-width: 767px) {
  .l-footer__info {
    text-align: center;
    margin: 2.4rem 0 0;
  }
}
.l-footer__info-foot {
  display: flex;
  gap: 2.4rem;
  margin: 3rem 0 0;
}
.l-footer__address {
  margin: 2rem 0 0;
}
@media screen and (max-width: 767px) {
  .l-footer__address {
    line-height: 1.5;
  }
}
.l-footer__map {
  vertical-align: top;
  margin: 0 0 0 1.2rem;
  font-size: 1.2rem;
}
@media screen and (max-width: 767px) {
  .l-footer__map {
    margin: 0 0 0 0.8rem;
  }
}
.l-footer__tel {
  display: inline-block;
  letter-spacing: 0.08em;
  margin: 1.5rem 0 0;
}
.l-footer__tel .u-pc {
  display: inline-block;
  font-size: 1.4rem;
}
@media screen and (max-width: 767px) {
  .l-footer__tel .u-pc {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .l-footer__tel {
    display: block;
    font-family: "Barlow Condensed", sans-serif;
    margin: 1.8rem 0 0;
  }
  .l-footer__tel .u-sp {
    display: inline-block;
    font-size: 1.8rem;
  }
}
.l-footer__tel-link {
  font-size: 1.6rem;
  margin: 0 1rem 0 0.4rem;
}
@media screen and (max-width: 767px) {
  .l-footer__tel-link {
    font-size: 2.7rem;
    --line-color: #fff;
    --line-hover-color: #fff;
  }
}
.l-footer__tel-link.c-link--line {
  --line-color: #3a3a3a;
  --line-hover-color: #3a3a3a;
}
@media screen and (max-width: 767px) {
  .l-footer__tel-link.c-link--line {
    --line-color: #fff;
    --line-hover-color: #fff;
  }
}
.l-footer__time {
  display: inline-block;
}
@media screen and (max-width: 767px) {
  .l-footer__time {
    display: block;
    font-size: 1.2rem;
    margin: 1rem 0 0;
  }
}
.l-footer__sns {
  display: flex;
  justify-content: right;
  align-items: center;
  gap: 2.8rem;
  color: #fff;
  font-size: 1.4rem;
  font-family: "Noto Sans JP", serif;
  letter-spacing: 0.08em;
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  .l-footer__sns {
    justify-content: center;
    margin: 3rem 0 0;
  }
}
.l-footer__sns img {
  width: 2.4rem;
}
.l-footer__copy {
  text-align: right;
  color: #fff;
  font-size: 1rem;
  letter-spacing: 0.08em;
  margin: 3.6rem 0 0;
}
@media screen and (max-width: 767px) {
  .l-footer__copy {
    text-align: center;
    letter-spacing: 0.04em;
    margin: 3.5rem 0 0;
  }
}

.u-sp {
  display: block;
}
@media screen and (min-width: 768px) {
  .u-sp {
    display: none;
  }
}

.u-pc {
  display: none;
}
@media screen and (min-width: 768px) {
  .u-pc {
    display: block;
  }
}

.c-cta__title {
  display: flex;
  align-items: center;
  gap: 4rem;
  color: #343434;
  font-size: 3.8rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  white-space: nowrap;
  width: 36rem;
}
@media screen and (max-width: 767px) {
  .c-cta__title {
    flex-direction: column;
    align-items: flex-start;
    gap: 1.6rem;
    font-size: 2.4rem;
    position: relative;
    z-index: 1;
  }
}
.c-cta__title-sub {
  text-align: left;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.6;
}
.c-cta__link {
  background: #fff;
  display: flex;
  align-items: center;
  height: 26rem;
  padding: 0 12rem;
  position: relative;
  overflow: hidden;
  transition: 0.3s;
}
@media screen and (max-width: 767px) {
  .c-cta__link {
    height: auto;
    border-top: solid 0.1rem #707070;
    padding: 3.2rem 1.6rem;
  }
}
.c-cta__link::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  opacity: 0;
}
.c-cta__link .c-icon-arrow {
  width: 4rem;
  height: 4rem;
  position: absolute;
  top: 50%;
  right: 12rem;
  transform: translateY(-50%);
  z-index: 1;
  transition: 0.3s;
}
@media screen and (max-width: 767px) {
  .c-cta__link .c-icon-arrow {
    width: 2.4rem;
    height: 2.4rem;
    top: 3.6rem;
    right: 1.6rem;
    transform: translateY(0);
  }
}
.c-cta__link:hover .c-icon-arrow {
  background: #3a3a3a;
  transform: translateY(-50%) scale(1.1);
}
.c-cta__link:hover .c-icon-arrow::after {
  background-image: url(../img/icon-arrow-right-white.svg);
  animation: icon-arrow-hover 0.3s ease-in-out;
}
@keyframes icon-arrow-hover {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(1.8rem);
  }
}
.c-cta__img {
  width: 30rem;
  position: absolute;
  bottom: 0;
  right: 24rem;
}
@media screen and (max-width: 767px) {
  .c-cta__img {
    width: 17rem;
    right: -2.7rem;
  }
}
.c-cta__deco {
  text-align: right;
  color: #f4f4f4;
  font-size: 9rem;
  line-height: 7rem;
  font-weight: bold;
  letter-spacing: 0.08em;
  font-family: "Barlow Condensed", sans-serif;
  position: absolute;
  bottom: 0;
  right: -0.8rem;
  opacity: 0.3;
}
@media screen and (max-width: 767px) {
  .c-cta__deco {
    font-size: 6.5rem;
    line-height: 5.5rem;
  }
}
.c-cta .c-cta__grid--seika,
.c-cta .c-cta__grid--design {
  position: relative;
  display: grid;
  grid-template-columns: repeat(2, 58rem);
  gap: 3rem;
  background: #fff;
  padding-block: 22rem 6rem;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  .c-cta .c-cta__grid--seika,
  .c-cta .c-cta__grid--design {
    grid-template-columns: 1fr;
    padding-block: 14rem 3rem;
    gap: 3rem;
    padding-inline: 1.6rem;
  }
}
.c-cta .c-cta__grid--seika .c-cta__link,
.c-cta .c-cta__grid--design .c-cta__link {
  border: solid 0.1rem #3a3a3a;
  padding: 5rem 5rem;
  background: #E56B96;
  border-radius: 2rem;
  overflow: visible;
  align-items: normal;
}
@media screen and (max-width: 767px) {
  .c-cta .c-cta__grid--seika .c-cta__link,
  .c-cta .c-cta__grid--design .c-cta__link {
    padding: 2.4rem;
    border-radius: 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  .c-cta .c-cta__grid--seika .c-cta__link--materials,
  .c-cta .c-cta__grid--design .c-cta__link--materials {
    order: 2;
  }
}
.c-cta .c-cta__grid--seika .c-cta__link--materials:hover,
.c-cta .c-cta__grid--design .c-cta__link--materials:hover {
  background: #E05586;
}
.c-cta .c-cta__grid--seika .c-cta__link-head-title,
.c-cta .c-cta__grid--design .c-cta__link-head-title {
  font-size: 1.4rem;
  font-weight: 700;
  position: absolute;
  top: -9rem;
  right: 11rem;
  white-space: nowrap;
  display: inline-block;
  letter-spacing: 0.06rem;
}
@media screen and (max-width: 767px) {
  .c-cta .c-cta__grid--seika .c-cta__link-head-title,
  .c-cta .c-cta__grid--design .c-cta__link-head-title {
    top: -7rem;
    right: 2rem;
  }
}
.c-cta .c-cta__grid--seika .c-cta__link-head-title::after,
.c-cta .c-cta__grid--design .c-cta__link-head-title::after {
  content: "";
  position: absolute;
  transform: translate(-50%, -50%);
  top: 6rem;
  right: -8rem;
  background: url(../img/cta-banner-img-07.svg) no-repeat center center/cover;
  width: 17rem;
  height: 2.2rem;
}
@media screen and (max-width: 767px) {
  .c-cta .c-cta__grid--seika .c-cta__link-head-title::after,
  .c-cta .c-cta__grid--design .c-cta__link-head-title::after {
    top: 5rem;
    right: -7rem;
    width: 16rem;
    height: 1.8rem;
  }
}
.c-cta .c-cta__grid--seika .c-cta__link-head-title--strong,
.c-cta .c-cta__grid--design .c-cta__link-head-title--strong {
  font-size: 3.3rem;
  font-family: "Barlow Condensed", sans-serif;
  letter-spacing: 0.03rem;
  font-weight: 600;
  padding-inline: 0.6rem;
}
@media screen and (max-width: 767px) {
  .c-cta .c-cta__grid--seika .c-cta__link-head-title--strong,
  .c-cta .c-cta__grid--design .c-cta__link-head-title--strong {
    font-size: 3.1rem;
  }
}
.c-cta .c-cta__grid--seika .c-cta__link--open-design,
.c-cta .c-cta__grid--design .c-cta__link--open-design {
  background: url(../img/) no-repeat center center/cover;
  background: #FFE762;
  position: relative;
}
.c-cta .c-cta__grid--seika .c-cta__link--open-design:hover,
.c-cta .c-cta__grid--design .c-cta__link--open-design:hover {
  background: #FFDF4A;
}
.c-cta .c-cta__grid--seika .c-cta__link--open-design::before,
.c-cta .c-cta__grid--design .c-cta__link--open-design::before {
  content: "";
  position: absolute;
  top: -12.1rem;
  left: 13rem;
  background: url(../img/cta-banner-img-03.png) no-repeat center center/cover;
  width: 15rem;
  height: 12rem;
}
@media screen and (max-width: 767px) {
  .c-cta .c-cta__grid--seika .c-cta__link--open-design::before,
  .c-cta .c-cta__grid--design .c-cta__link--open-design::before {
    top: -8.1rem;
    left: 3rem;
    width: 11rem;
    height: 8rem;
  }
}
@media screen and (max-width: 767px) {
  .c-cta .c-cta__grid--seika .c-cta__link--open-design,
  .c-cta .c-cta__grid--design .c-cta__link--open-design {
    order: 1;
  }
}
.c-cta .c-cta__grid--seika .c-cta__link--open-seika,
.c-cta .c-cta__grid--design .c-cta__link--open-seika {
  background: url(../img/) no-repeat center center/cover;
  background: #FCEF8E;
  position: relative;
}
.c-cta .c-cta__grid--seika .c-cta__link--open-seika:hover,
.c-cta .c-cta__grid--design .c-cta__link--open-seika:hover {
  background: #FDEA7A;
}
.c-cta .c-cta__grid--seika .c-cta__link--open-seika::before,
.c-cta .c-cta__grid--design .c-cta__link--open-seika::before {
  content: "";
  position: absolute;
  top: -12.1rem;
  left: 13rem;
  background: url(../img/cta-banner-img-04.png) no-repeat center center/cover;
  width: 15rem;
  height: 12rem;
}
@media screen and (max-width: 767px) {
  .c-cta .c-cta__grid--seika .c-cta__link--open-seika::before,
  .c-cta .c-cta__grid--design .c-cta__link--open-seika::before {
    top: -8.1rem;
    left: 3rem;
    width: 11rem;
    height: 8rem;
  }
}
@media screen and (max-width: 767px) {
  .c-cta .c-cta__grid--seika .c-cta__link--open-seika,
  .c-cta .c-cta__grid--design .c-cta__link--open-seika {
    order: 1;
  }
}
.c-cta .c-cta__grid--seika .c-cta__title,
.c-cta .c-cta__grid--design .c-cta__title {
  text-align: left;
  align-items: normal;
  flex-direction: column;
  gap: 2rem;
  width: 36rem;
  font-size: 4rem;
  font-weight: 700;
}
.c-cta .c-cta__grid--seika .c-cta__title--white,
.c-cta .c-cta__grid--design .c-cta__title--white {
  color: #fff;
}
@media screen and (max-width: 767px) {
  .c-cta .c-cta__grid--seika .c-cta__title,
  .c-cta .c-cta__grid--design .c-cta__title {
    font-size: 2.2rem;
    width: 21rem;
    gap: 1.6rem;
  }
}
.c-cta .c-cta__grid--seika .c-cta__title-sub,
.c-cta .c-cta__grid--design .c-cta__title-sub {
  white-space: wrap;
  line-height: 2;
  font-size: 1.6rem;
  letter-spacing: 0.06rem;
  font-weight: 400;
}
@media screen and (max-width: 767px) {
  .c-cta .c-cta__grid--seika .c-cta__title-sub,
  .c-cta .c-cta__grid--design .c-cta__title-sub {
    font-size: 1.4rem;
  }
}
.c-cta .c-cta__grid--seika .c-cta__deco,
.c-cta .c-cta__grid--design .c-cta__deco {
  color: #fff;
  font-size: 8.9rem;
}
@media screen and (max-width: 767px) {
  .c-cta .c-cta__grid--seika .c-cta__deco,
  .c-cta .c-cta__grid--design .c-cta__deco {
    font-size: 6.3rem;
  }
}
.c-cta .c-cta__grid--seika .c-cta__img,
.c-cta .c-cta__grid--design .c-cta__img {
  width: 18rem;
  right: 0;
  bottom: 0;
}
@media screen and (max-width: 767px) {
  .c-cta .c-cta__grid--seika .c-cta__img,
  .c-cta .c-cta__grid--design .c-cta__img {
    width: 13rem;
    right: -0.6rem;
  }
}
.c-cta .c-cta__grid--seika .c-icon-arrow,
.c-cta .c-cta__grid--design .c-icon-arrow {
  top: 5.8rem;
  right: 5rem;
  transform: unset;
}
.c-cta .c-cta__grid--seika .c-icon-arrow--white,
.c-cta .c-cta__grid--design .c-icon-arrow--white {
  border: solid 0.1rem #fff;
}
.c-cta .c-cta__grid--seika .c-icon-arrow--white:hover,
.c-cta .c-cta__grid--design .c-icon-arrow--white:hover {
  border: solid 0.1rem #3a3a3a;
}
.c-cta .c-cta__grid--seika .c-icon-arrow--white::after,
.c-cta .c-cta__grid--design .c-icon-arrow--white::after {
  background-image: url(../img/icon-arrow-right-white.svg);
}
.c-cta .c-cta__grid--seika .c-icon-arrow--white::after:hover,
.c-cta .c-cta__grid--design .c-icon-arrow--white::after:hover {
  background-image: url(../img/icon-arrow-right.svg);
}
@media screen and (max-width: 767px) {
  .c-cta .c-cta__grid--seika .c-icon-arrow,
  .c-cta .c-cta__grid--design .c-icon-arrow {
    width: 2.4rem;
    height: 2.4rem;
    top: 2.6rem;
    right: 2.4rem;
    transform: translateY(0);
  }
}
.c-cta .c-cta__grid--seika:hover .c-icon-arrow,
.c-cta .c-cta__grid--design:hover .c-icon-arrow {
  transform: scale(1.1);
}
.c-cta .c-cta__grid--design .c-cta__link:hover .c-icon-arrow--white::after {
  background-image: url(../img/icon-arrow-right.svg);
}
.c-cta .c-cta__grid--design .c-cta__link:hover .c-icon-arrow--white {
  background: #fff;
}
.c-cta .c-cta__grid--seika .c-cta__link--open {
  background: #FCEF8E;
}
.c-cta .c-cta__grid--seika .c-cta__link--open:hover {
  background: #FDEA7A;
}
.c-cta .c-cta__grid--seika .c-cta__link--materials {
  background: #F1C9D1;
}
.c-cta .c-cta__grid--seika .c-cta__link--materials:hover {
  background: #F0BFCB;
}
.c-cta__info {
  background: #F4F4F4;
  padding: 8.4rem 0 8rem;
}
@media screen and (max-width: 767px) {
  .c-cta__info {
    padding: 5rem 1.6rem;
  }
}
.c-cta__info .c-cta__title {
  display: block;
}
.c-cta__info .c-cta__title-sub {
  text-align: center;
  margin: 2.4rem 0 0;
}
@media screen and (max-width: 767px) {
  .c-cta__info .c-cta__title-sub {
    text-align: left;
  }
}
.c-cta__info-links {
  display: flex;
  justify-content: center;
  gap: 3rem;
  margin: 5rem 0 0;
}
@media screen and (max-width: 767px) {
  .c-cta__info-links {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.6rem;
    margin: 2.4rem 0 0;
  }
}
.c-cta__info-links .c-btn {
  flex: 0 0 18rem;
}
@media screen and (max-width: 767px) {
  .c-cta__info-links .c-btn {
    width: 100%;
  }
}

.c-btn__cols {
  display: flex;
  gap: 2rem;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  .c-btn__cols {
    flex-direction: column;
    align-items: center;
    gap: 1rem;
  }
}

.c-btn {
  display: block;
  width: fit-content;
  height: 4.4rem;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #3a3a3a;
  background: #fff;
  font-size: 1.4rem;
  font-weight: 500;
  letter-spacing: 0.08em;
  box-shadow: 0 0 0 0.1rem #3a3a3a;
  border-radius: 2.4rem;
  padding: 0 2.4rem;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
@media screen and (max-width: 767px) {
  .c-btn {
    font-size: 1.3rem;
    height: 4rem;
    border-radius: 2.2rem;
  }
}
.c-btn:hover {
  box-shadow: 0 0 0 0.15rem #3a3a3a;
  transform: scale(1.06);
}
.c-btn--arrow {
  padding: 0 4rem 0 2.4rem;
  position: relative;
}
.c-btn--arrow::after {
  content: "";
  display: block;
  width: 1.8rem;
  height: 0.9rem;
  background-image: url(../img/icon-arrow-right.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  top: 50%;
  right: 2rem;
  transform: translateY(-50%);
}
.c-btn--arrow:hover::after {
  animation: btn-arrow-hover 0.3s ease-out;
}
.c-btn--external {
  position: relative;
  padding: 0 4.4rem 0 2.2rem;
  font-size: 1.6rem;
  letter-spacing: 0.05em;
  height: 4.8rem;
  border-radius: 5rem;
}
@media screen and (max-width: 767px) {
  .c-btn--external {
    font-size: 1.4rem;
    height: 4.4rem;
    padding: 0 3.8rem 0 1.9rem;
  }
}
.c-btn--external::after {
  content: "";
  width: 1.3rem;
  aspect-ratio: 1/1;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14.859' height='14.859' viewBox='0 0 14.859 14.859'%3E%3Cg id='Group_6478' data-name='Group 6478' transform='translate(-2.25 -1.939)'%3E%3Cpath id='Path_1027' data-name='Path 1027' d='M16.048,10.249V14.6a1.45,1.45,0,0,1-1.45,1.45H4.45A1.45,1.45,0,0,1,3,14.6V4.45A1.45,1.45,0,0,1,4.45,3H8.8' transform='translate(0 0)' fill='none' stroke='%233a3a3a' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5'/%3E%3Cpath id='Path_1028' data-name='Path 1028' d='M18.524,3,12,9.524' transform='translate(-2.476)' fill='none' stroke='%233a3a3a' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5'/%3E%3Cpath id='Path_1029' data-name='Path 1029' d='M15,3h4.349V7.349' transform='translate(-3.301)' fill='none' stroke='%233a3a3a' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5'/%3E%3C/g%3E%3C/svg%3E%0A");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  top: 50%;
  right: 2.4rem;
  transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
  .c-btn--external::after {
    right: 1.8rem;
  }
}
.c-btn--download {
  position: relative;
  padding-inline: 4.5rem;
}
.c-btn--download::after {
  content: "";
  width: 1.8rem;
  aspect-ratio: 1/1;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 18 18'%3E%3Cg id='Group_6193' data-name='Group 6193' transform='translate(-2.25 -2.25)'%3E%3Cpath id='パス_1006' data-name='パス 1006' d='M11.945,14.767a.7.7,0,0,1-.7-.7V2.945a.7.7,0,1,1,1.391,0V14.072A.7.7,0,0,1,11.945,14.767Z' transform='translate(-0.695 0)' fill='%233a3a3a'/%3E%3Cpath id='パス_1007' data-name='パス 1007' d='M17.712,21.2H4.788a2.547,2.547,0,0,1-2.538-2.55V14.945a.692.692,0,1,1,1.385,0v3.709a1.158,1.158,0,0,0,1.154,1.159H17.712a1.158,1.158,0,0,0,1.154-1.159V14.945a.692.692,0,1,1,1.385,0v3.709A2.547,2.547,0,0,1,17.712,21.2Z' transform='translate(0 -0.954)' fill='%233a3a3a'/%3E%3Cpath id='パス_1008' data-name='パス 1008' d='M11.541,15.277a.685.685,0,0,1-.488-.2l-4.6-4.636a.7.7,0,0,1,0-.983.686.686,0,0,1,.976,0L11.541,13.6l4.113-4.144a.686.686,0,0,1,.976,0,.7.7,0,0,1,0,.983l-4.6,4.636A.685.685,0,0,1,11.541,15.277Z' transform='translate(-0.291 -0.553)' fill='%233a3a3a'/%3E%3C/g%3E%3C/svg%3E%0A");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  top: 50%;
  right: 2.45rem;
  transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
  .c-btn--download::after {
    width: 1.6rem;
    right: 2rem;
  }
}
.c-btn--anchor {
  position: relative;
  padding-inline: 2.4rem 9.4rem;
  font-size: 1.6rem;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .c-btn--anchor {
    padding-inline: 2.8rem 0.5rem;
    font-size: 1.4rem;
    height: 4.2rem;
  }
}
.c-btn--anchor::after {
  content: "";
  width: 1.2rem;
  height: auto;
  aspect-ratio: 1/1;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cg id='arrow-right' transform='translate(16 -4) rotate(90)'%3E%3Cpath id='線_355' data-name='線 355' d='M10.25.507H-.25A.752.752,0,0,1-1-.246.752.752,0,0,1-.25-1h10.5A.752.752,0,0,1,11-.246.752.752,0,0,1,10.25.507Z' transform='translate(5 10.246)' fill='%233a3a3a'/%3E%3Cpath id='パス_66' data-name='パス 66' d='M11.754,16a.75.75,0,0,1-.533-1.28L15.964,10,11.221,5.28a.747.747,0,0,1,0-1.061.756.756,0,0,1,1.066,0l5.276,5.25a.747.747,0,0,1,0,1.061l-5.276,5.25A.753.753,0,0,1,11.754,16Z' transform='translate(-1.783)' fill='%233a3a3a'/%3E%3C/g%3E%3C/svg%3E%0A");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  top: 50%;
  right: 2.4rem;
  transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
  .c-btn--anchor::after {
    right: 1.8rem;
  }
}
.c-btn__sub {
  font-size: 1.4rem;
}
@media screen and (max-width: 767px) {
  .c-btn__sub--smaller {
    font-size: 1.2rem;
  }
}

@keyframes btn-arrow-hover {
  0% {
    opacity: 1;
    background-position: left center;
  }
  80% {
    opacity: 0;
    background-position: center right -100%;
  }
  81% {
    opacity: 0;
    background-position: left -10% center;
  }
  100% {
    opacity: 1;
    background-position: left center;
  }
}
.c-arrow {
  position: relative;
}
.c-arrow::after {
  content: "";
  display: block;
  width: 1.8rem;
  height: 0.9rem;
  background-image: url(../img/icon-arrow-right.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  top: 50%;
  right: 2rem;
  transform: translateY(-50%);
}
.c-arrow:hover::after {
  animation: arrow-hover 0.3s ease-out;
}

@keyframes arrow-hover {
  0% {
    opacity: 1;
    background-position: left center;
  }
  80% {
    opacity: 0;
    background-position: center right -100%;
  }
  81% {
    opacity: 0;
    background-position: left -10% center;
  }
  100% {
    opacity: 1;
    background-position: left center;
  }
}
.c-icon-arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 4rem;
  flex: 0 0 4rem;
  height: 4rem;
  border: solid 0.1rem #3a3a3a;
  border-radius: 50%;
  transition: 0.3s;
}
@media screen and (max-width: 767px) {
  .c-icon-arrow {
    width: 2.4rem;
    height: 2.4rem;
  }
}
.c-icon-arrow::after {
  content: "";
  display: block;
  width: 1.8rem;
  height: 0.9rem;
  background-image: url(../img/icon-arrow-right.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}
@media screen and (max-width: 767px) {
  .c-icon-arrow::after {
    width: 0.8rem;
    height: 0.8rem;
  }
}
.c-icon-arrow:hover {
  background: #3a3a3a;
  transform: scale(1.1);
}
.c-icon-arrow:hover::after {
  background-image: url(../img/icon-arrow-right-white.svg);
  animation: icon-arrow-hover 0.3s ease-out;
}

@keyframes icon-arrow-hover {
  0% {
    opacity: 1;
    background-position: left center;
  }
  80% {
    opacity: 0;
    background-position: center right -100%;
  }
  81% {
    opacity: 0;
    background-position: left -10% center;
  }
  100% {
    opacity: 1;
    background-position: left center;
  }
}
.c-bubble {
  display: block;
  width: fit-content;
  color: #fff;
  background: #3a3a3a;
  font-size: 1.3rem;
  font-weight: 500;
  letter-spacing: 0.08em;
  border-radius: 1.6rem;
  white-space: nowrap;
  padding: 0.6rem 1.2rem 0.6rem 1.6rem;
  margin: 0 auto 0.6rem;
  position: relative;
  animation: float-small 1s cubic-bezier(0.42, 0, 0.58, 1) infinite alternate;
  -webkit-animation: float-small 1s cubic-bezier(0.42, 0, 0.58, 1) infinite alternate;
}
.c-bubble span {
  letter-spacing: 0.15em;
}
.c-bubble::after {
  content: "";
  display: block;
  width: 1.2rem;
  height: 0.6rem;
  background: #3a3a3a;
  clip-path: polygon(0 0, 100% 0%, 50% 100%);
  position: absolute;
  bottom: -0.6rem;
  left: 50%;
  transform: translateX(-50%);
}

.c-link--line {
  --line-h: 0.05rem;
  --line-color: #707070;
  --line-hover-color: #707070;
  --duration: .4s;
  padding: 0 0 0.2rem;
  background-image: linear-gradient(var(--line-color), var(--line-color));
  background-repeat: no-repeat;
  background-position: left bottom;
  background-size: 100% var(--line-h);
}
.c-link--line:hover {
  background-image: linear-gradient(var(--line-hover-color), var(--line-hover-color));
  animation: line-slide var(--duration) ease 1;
}

@keyframes line-slide {
  0% {
    background-position: right bottom;
    background-size: 100% var(--line-h);
  }
  50% {
    background-position: right bottom;
    background-size: 0 var(--line-h);
  }
  51% {
    background-position: left bottom;
    background-size: 0 var(--line-h);
  }
  100% {
    background-position: left bottom;
    background-size: 100% var(--line-h);
  }
}
.c-link--line--multi {
  --lh: 1;
  --line-h: 0.05rem;
  --line-color: #707070;
  --line-hover-color: #707070;
  --duration: .4s;
  line-height: var(--lh);
  padding-bottom: 0.2rem;
  background-image: repeating-linear-gradient(to bottom, transparent 0, transparent calc(var(--lh) * 1em - var(--line-h)), var(--line-color) calc(var(--lh) * 1em - var(--line-h)), var(--line-color) calc(var(--lh) * 1em));
  background-repeat: repeat-y;
  background-size: 0% calc(var(--lh) * 1em);
  background-position: left bottom;
  transition: background-size var(--duration) ease, background-image 0s linear;
}
.c-link--line--multi:hover {
  background-image: repeating-linear-gradient(to bottom, transparent 0, transparent calc(var(--lh) * 1em - var(--line-h)), var(--line-hover-color) calc(var(--lh) * 1em - var(--line-h)), var(--line-hover-color) calc(var(--lh) * 1em));
  background-size: 100% calc(var(--lh) * 1em);
}

.c-title {
  color: #343434;
  font-size: 3.8rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  line-height: 1.6;
}
@media screen and (max-width: 767px) {
  .c-title {
    text-align: center;
    font-size: 2.4rem;
  }
}
.c-title__sub {
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.6;
}
@media screen and (max-width: 767px) {
  .c-title__sub {
    margin: 2.4rem 0 0;
  }
}
.c-title__sub--big {
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.8;
}
@media screen and (max-width: 767px) {
  .c-title__sub--big {
    margin: 2.4rem 0 0;
  }
}

.c-marquee {
  overflow: hidden;
  width: 100%;
}
.c-marquee-track {
  display: flex;
  align-items: center;
  width: max-content;
  animation: marquee 20s linear infinite;
}
.c-marquee-track--slow {
  animation: marquee 40s linear infinite;
}
.c-marquee-track--slow-reverse {
  animation: marquee-reverse 40s linear infinite;
}
.c-marquee-track > * {
  flex-shrink: 0;
}
.c-marquee span {
  font-family: "Barlow Condensed", serif;
  white-space: nowrap;
  padding-right: 6rem;
}

@keyframes marquee {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}
@keyframes marquee-reverse {
  0% {
    transform: translateX(-50%);
  }
  100% {
    transform: translateX(0);
  }
}
.c-float--big {
  animation: float-big 2s cubic-bezier(0.42, 0, 0.58, 1) infinite alternate;
  -webkit-animation: float-big 2s cubic-bezier(0.42, 0, 0.58, 1) infinite alternate;
}
.c-float--small {
  animation: float-small 1s cubic-bezier(0.42, 0, 0.58, 1) infinite alternate;
  -webkit-animation: float-small 1s cubic-bezier(0.42, 0, 0.58, 1) infinite alternate;
}

@keyframes float-big {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  100% {
    -webkit-transform: translateY(-1rem);
    transform: translateY(-1rem);
  }
}
@keyframes float-small {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  100% {
    -webkit-transform: translateY(-0.5rem);
    transform: translateY(-0.5rem);
  }
}
.c-breadcrumb {
  position: relative;
  z-index: 1;
  background: #fff;
  padding-block: 3.2rem;
}
@media screen and (max-width: 767px) {
  .c-breadcrumb {
    padding: 2.4rem 0;
  }
}
.c-breadcrumb__list {
  display: flex;
  align-items: center;
  gap: 1.2rem;
  list-style: none;
  max-width: 123.2rem;
  padding-inline: 1.6rem;
  margin-inline: auto;
}
.c-breadcrumb__item {
  display: flex;
  align-items: center;
  gap: 0.7rem;
  font-size: 1.2rem;
  font-weight: 400;
  letter-spacing: 0.06em;
}
@media screen and (max-width: 767px) {
  .c-breadcrumb__item {
    font-size: 1.1rem;
    letter-spacing: 0.05em;
  }
}
.c-breadcrumb__item + .c-breadcrumb__item::before {
  content: "";
  display: block;
  width: 0.6rem;
  aspect-ratio: 6/10;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='5.657' height='9.899' viewBox='0 0 5.657 9.899'%3E%3Cg id='Group_4709' data-name='Group 4709' transform='translate(136.667 -236.198) rotate(45)'%3E%3Cline id='Line_220' data-name='Line 220' x2='6' transform='translate(77.379 263.655) rotate(90)' fill='none' stroke='%233e3e3e' stroke-linecap='square' stroke-width='1'/%3E%3Cline id='Line_221' data-name='Line 221' x2='6' transform='translate(71.379 263.655)' fill='none' stroke='%233e3e3e' stroke-linecap='square' stroke-width='1'/%3E%3C/g%3E%3C/svg%3E%0A");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  flex-shrink: 0;
}
.c-breadcrumb__item:last-child {
  max-width: 100%;
  overflow: hidden;
  white-space: nowrap;
}
.c-breadcrumb__link {
  color: #3a3a3a;
  text-decoration: underline;
  white-space: nowrap;
}
.c-breadcrumb__link:hover {
  text-decoration: none;
}
.c-breadcrumb__current {
  color: #9E9E9E;
  font-weight: 500;
  overflow: hidden;
  text-overflow: ellipsis;
  display: block;
}

.c-sidebar {
  width: 31.8rem;
  flex-shrink: 0;
  padding-right: 2.4rem;
  text-align: left;
  position: sticky;
  top: 10rem;
}
@media screen and (max-width: 767px) {
  .c-sidebar {
    width: 100vw;
    margin: 0 -1.6rem 4rem;
    min-height: unset;
    padding: 1rem 1.6rem 1.3rem;
    max-width: 100vw;
    overflow-x: auto;
    border-bottom: 1px solid #E5E5E5;
    top: 0;
    z-index: 10;
    background: #fff;
  }
}
.c-sidebar__title {
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.06em;
  position: relative;
  z-index: 1;
  padding-left: 0.8em;
}
@media screen and (max-width: 767px) {
  .c-sidebar__title {
    display: none;
  }
}
.c-sidebar__title::before {
  content: "";
  width: 0.6rem;
  aspect-ratio: 1/1;
  border-radius: 50%;
  background: #3A3A3A;
  position: absolute;
  top: 1.2rem;
  left: 0;
}
.c-sidebar__list {
  list-style: none;
  counter-reset: sidebar;
  margin-top: 2rem;
}
@media screen and (max-width: 767px) {
  .c-sidebar__list {
    margin-top: 0;
    display: flex;
    flex-wrap: nowrap;
    gap: 1.6rem;
  }
}
.c-sidebar__list--number .c-sidebar__link {
  counter-increment: sidebar;
}
.c-sidebar__list--number .c-sidebar__link::before {
  content: counter(sidebar, decimal-leading-zero);
  font-family: "Barlow Condensed", serif;
  font-size: 1.6rem;
  letter-spacing: 0.1em;
  font-weight: 400;
  color: #9E9E9E;
  margin-right: 0.6rem;
}
@media screen and (max-width: 767px) {
  .c-sidebar__list--number .c-sidebar__link::before {
    font-size: 1.3rem;
    margin-right: 0.2rem;
  }
}
.c-sidebar__item:not(:first-child) {
  margin-top: 1.35rem;
}
@media screen and (max-width: 767px) {
  .c-sidebar__item:not(:first-child) {
    margin-top: 0;
  }
}
@media screen and (max-width: 767px) {
  .c-sidebar__item:last-child {
    padding-right: 1.6rem;
  }
}
@media screen and (max-width: 767px) {
  .c-sidebar__item:last-child::before {
    width: calc(100% - 1.6rem) !important;
  }
}
@media screen and (max-width: 767px) {
  .c-sidebar__item--active, .c-sidebar__item:hover {
    position: relative;
    z-index: 1;
  }
  .c-sidebar__item--active::before, .c-sidebar__item:hover::before {
    content: "";
    width: 100%;
    height: 2px;
    position: absolute;
    background: #3A3A3A;
    bottom: -1.3rem;
    left: 0;
  }
}
@media screen and (max-width: 767px) and (max-width: 767px) {
  .c-sidebar__item--active::before, .c-sidebar__item:hover::before {
    height: 1px;
  }
}
.c-sidebar__item--active .c-sidebar__link, .c-sidebar__item:hover .c-sidebar__link {
  font-weight: 500;
  color: #3A3A3A;
}
.c-sidebar__item--active .c-sidebar__label, .c-sidebar__item:hover .c-sidebar__label {
  text-decoration: underline;
  text-underline-offset: 0.6rem;
}
@media screen and (max-width: 767px) {
  .c-sidebar__item--active .c-sidebar__label, .c-sidebar__item:hover .c-sidebar__label {
    text-decoration: none;
  }
}
.c-sidebar__link {
  display: flex;
  align-items: center;
  font-size: 1.6rem;
  font-weight: 400;
  letter-spacing: 0.06em;
  line-height: 1.5;
  color: #777777;
  transition: 0.3s;
}
@media screen and (max-width: 767px) {
  .c-sidebar__link {
    font-size: 1.3rem;
    white-space: nowrap;
    color: #3A3A3A;
  }
}
.c-sidebar__sub-list {
  position: relative;
  z-index: 1;
  padding-left: 2rem;
  margin-top: 0.8rem;
}
@media screen and (max-width: 767px) {
  .c-sidebar__sub-list {
    display: none;
  }
}
.c-sidebar__sub-list::before {
  content: "";
  width: 1px;
  height: 100%;
  background: #EDEDED;
  position: absolute;
  left: 0.8rem;
  top: 0;
}
.c-sidebar__sub-item:not(:first-child) {
  margin-top: 1rem;
}
.c-sidebar__sub-item--active .c-sidebar__sub-link, .c-sidebar__sub-item:hover .c-sidebar__sub-link {
  font-weight: 500;
  color: #3A3A3A;
}
.c-sidebar__sub-link {
  font-size: 1.4rem;
  letter-spacing: 0.06em;
  line-height: 1.4285714286;
  position: relative;
  display: block;
  padding-left: 1.4rem;
  color: #777;
  transition: all 0.3s;
}
.c-sidebar__sub-link::before {
  content: "・";
  position: absolute;
  left: 0;
  top: 0;
}

.c-article {
  text-align: left;
}
.c-article__head {
  position: relative;
  z-index: 1;
}
.c-article__num {
  display: block;
  font-family: "Barlow Condensed", serif;
  font-size: 11rem;
  line-height: 1;
  color: #3A3A3A;
  font-weight: 600;
  opacity: 0.08;
  position: absolute;
  z-index: -1;
  top: -7.4rem;
  left: -2.1rem;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 767px) {
  .c-article__num {
    font-size: 5.6rem;
    top: -0.5em;
    left: -0.6rem;
  }
}
.c-article__title {
  font-size: 3.2rem;
  letter-spacing: 0.06em;
  font-weight: 700;
  line-height: 1.3;
}
@media screen and (max-width: 767px) {
  .c-article__title {
    font-size: 2.2rem;
    letter-spacing: 0.05em;
    margin-right: -0.4rem;
    line-height: 1.4;
  }
}
.c-article__title-sub:not(.u-pc, .u-sp) {
  font-size: 3rem;
}
@media screen and (max-width: 767px) {
  .c-article__title-sub:not(.u-pc, .u-sp) {
    font-size: 2rem;
  }
}
@media screen and (max-width: 767px) {
  .c-article__title-sub--small {
    font-size: 1.5rem !important;
  }
}
.c-article__title .u-pc {
  display: inline-block;
}
@media screen and (max-width: 767px) {
  .c-article__title .u-pc {
    display: none;
  }
}
.c-article__title .u-sp {
  display: none;
}
@media screen and (max-width: 767px) {
  .c-article__title .u-sp {
    display: inline-block;
  }
}
.c-article__title-border {
  position: relative;
  z-index: 1;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
}
.c-article__title-border::before {
  content: "";
  width: 100%;
  height: 1px;
  background: #707070;
  position: absolute;
  z-index: -1;
  top: 50%;
  left: 0;
}
@media screen and (max-width: 767px) {
  .c-article__title-border::before {
    display: none;
  }
}
.c-article__title-border-label {
  background: #fff;
  position: relative;
  z-index: 1;
  padding-right: 2.4rem;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.2222222222;
  letter-spacing: 0.06em;
}
@media screen and (max-width: 767px) {
  .c-article__title-border-label {
    font-size: 1.5rem;
    letter-spacing: 0.05em;
    line-height: 1.5866666667;
  }
}
.c-article__links {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem 3rem;
  margin-top: 3.2rem;
}
@media screen and (max-width: 767px) {
  .c-article__links {
    margin-top: 2.4rem;
    gap: 1.2rem 1.5rem;
  }
}
.c-article__link-underline {
  display: flex;
  gap: 0.8rem;
  align-items: flex-start;
}
.c-article__link-underline::before {
  content: "";
  width: 1.9rem;
  height: auto;
  aspect-ratio: 1/1;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='19' height='19' viewBox='0 0 19 19'%3E%3Cg id='arrow-right-circle' transform='translate(18.671 0.5) rotate(90)'%3E%3Ccircle id='Ellipse_41' data-name='Ellipse 41' cx='9' cy='9' r='9' transform='translate(0 0.171)' fill='rgba(255,255,255,0)' stroke='%233a3a3a' stroke-linecap='round' stroke-linejoin='round' stroke-width='1'/%3E%3Cpath id='Path_359' data-name='Path 359' d='M12,13.215l2.608-2.608L12,8' transform='translate(-4 -1.436)' fill='none' stroke='%233a3a3a' stroke-linecap='round' stroke-linejoin='round' stroke-width='1'/%3E%3C/g%3E%3C/svg%3E%0A");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  flex-shrink: 0;
  margin-top: 0.3rem;
  display: block;
}
@media screen and (max-width: 767px) {
  .c-article__link-underline::before {
    width: 1.6rem;
  }
}
.c-article__link-label {
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.06em;
  text-decoration: underline;
  text-underline-offset: 0.2rem;
}
@media screen and (max-width: 767px) {
  .c-article__link-label {
    font-size: 1.4rem;
    letter-spacing: 0.08em;
    line-height: 1.7;
  }
}
.c-article__link-label:hover {
  text-decoration: none;
}
.c-article__desc {
  font-size: 1.6rem;
  line-height: 1.8;
  letter-spacing: 0.06em;
  margin-top: 3.2rem;
}
@media screen and (max-width: 767px) {
  .c-article__desc {
    font-size: 1.4rem;
    line-height: 1.7;
    margin-top: 2.4rem;
    letter-spacing: 0.05em;
  }
}
.c-article__desc p span {
  background: #3A3A3A;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .c-article__desc p span {
    background: linear-gradient(transparent 0, transparent 10%, #3a3a3a 10%, #3a3a3a 90%, transparent 90%);
  }
}
.c-article__desc a {
  text-decoration: underline;
}
.c-article__desc a:hover {
  text-decoration: none;
}
.c-article__desc strong {
  font-weight: 500;
}
.c-article__desc + .c-article__desc {
  margin-top: 1.8em;
}
.c-article__desc + .c-article__sub-heading {
  margin-top: 4.5rem;
}
@media screen and (max-width: 767px) {
  .c-article__desc + .c-article__sub-heading {
    margin-top: 2.8rem;
  }
}
.c-article__desc + .c-faq {
  margin-top: 3.2rem;
}
@media screen and (max-width: 767px) {
  .c-article__desc + .c-faq {
    margin-top: 2.4rem;
  }
}
.c-article__desc-link {
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.06em;
  text-decoration: underline;
}
@media screen and (max-width: 767px) {
  .c-article__desc-link {
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    line-height: 1.7;
  }
}
.c-article__desc-link:hover {
  text-decoration: none;
}
.c-article__block:not(:first-child) {
  padding-top: 12.2rem;
  margin-top: 8.9rem;
  border-top: 0.1rem solid #3E3E3E;
}
@media screen and (max-width: 767px) {
  .c-article__block:not(:first-child) {
    padding-top: 5.6rem;
    margin-top: 5.4rem;
  }
}
.c-article__block-row {
  display: flex;
  flex-wrap: wrap;
  gap: 2.4rem 2.9rem;
  margin-top: 3.2rem;
}
@media screen and (max-width: 767px) {
  .c-article__block-row {
    margin-top: 2.5rem;
    gap: 2.7rem 1.5rem;
  }
}
.c-article__block-row .c-btn {
  width: calc(50% - 1.45rem);
}
@media screen and (max-width: 767px) {
  .c-article__block-row .c-btn {
    width: calc(50% - 0.75rem);
    height: auto;
    font-size: 1.4rem;
    padding: 1.1rem 2.5rem;
    text-align: center;
    border-radius: 5rem;
    line-height: 1.4;
  }
}
@media screen and (min-width: 768px) {
  .c-article__block-row .c-btn {
    height: 4.8rem;
    font-size: 1.6rem;
    padding-inline: 4.5rem;
  }
}
.c-article__block-row .c-btn--download {
  height: auto;
  padding: 1.1rem 4.5rem;
  font-size: 1.4rem;
  line-height: 1.5;
  border-radius: 5rem;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .c-article__block-row .c-btn--download {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 767px) {
  .c-article__block-row .c-btn--download {
    letter-spacing: 0.05em;
    line-height: 1.4;
  }
}
.c-article__block-row--large .c-btn {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .c-article__block-row--large-sp .c-btn {
    width: 100%;
  }
}
.c-article__heading {
  font-size: 2.4rem;
  letter-spacing: 0.06em;
  font-weight: 700;
  line-height: 1.4;
  border-bottom: 1px solid #D5D5D5;
  padding-bottom: 0.8rem;
  padding-right: 1.6rem;
  margin-top: 6.4rem;
}
@media screen and (max-width: 767px) {
  .c-article__heading {
    font-size: 1.6rem;
    letter-spacing: 0.05em;
    padding-bottom: 0.7rem;
    padding-right: 0;
    line-height: 1.5;
    margin-top: 3.4rem;
  }
}
.c-article__heading:not(:first-of-type) {
  margin-top: 6.4rem;
}
@media screen and (max-width: 767px) {
  .c-article__heading:not(:first-of-type) {
    margin-top: 4rem;
  }
}
.c-article__heading + .c-article__desc {
  margin-top: 2.4rem;
}
@media screen and (max-width: 767px) {
  .c-article__heading + .c-article__desc {
    margin-top: 2.2rem;
  }
}
.c-article__heading-small {
  font-size: 2.2rem;
}
@media screen and (max-width: 767px) {
  .c-article__heading-small {
    font-size: 1.4rem;
  }
}
.c-article__sub {
  margin: 4.8rem 0 0;
}
@media screen and (max-width: 767px) {
  .c-article__sub {
    margin: 2rem 0 0;
  }
}
@media screen and (max-width: 767px) {
  .c-article__sub + .c-article__sub {
    margin-top: 3rem;
  }
}
.c-article__sub-heading {
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0.06em;
  padding-left: 1.4rem;
  position: relative;
  z-index: 1;
  margin-top: 5rem;
}
@media screen and (max-width: 767px) {
  .c-article__sub-heading {
    font-size: 1.5rem;
    padding-left: 0.9em;
    letter-spacing: 0.08em;
    line-height: 1.5;
    margin-top: 3rem;
  }
}
.c-article__sub-heading::before {
  content: "";
  width: 0.6rem;
  aspect-ratio: 1/1;
  border-radius: 50%;
  background: #3A3A3A;
  position: absolute;
  top: 1.2rem;
  left: 0;
  z-index: -1;
}
@media screen and (max-width: 767px) {
  .c-article__sub-heading::before {
    width: 0.5rem;
    top: 1rem;
    left: 0rem;
  }
}
.c-article__sub-heading--no-desc {
  padding-left: 0;
  margin-top: 3.2rem;
}
@media screen and (max-width: 767px) {
  .c-article__sub-heading--no-desc {
    margin-top: 2.4rem;
  }
}
.c-article__sub-heading--no-desc::before {
  display: none;
}
.c-article__sub-heading + .c-article__desc {
  margin-top: 1.6rem;
}
.c-article__sub-heading + .c-table-info {
  margin-top: 2.2rem;
}
@media screen and (max-width: 767px) {
  .c-article__sub-heading + .c-table-info {
    margin-top: 1.8rem;
  }
}
.c-article__sub-heading-note {
  font-size: 1.6rem;
  font-weight: 400;
}
@media screen and (max-width: 767px) {
  .c-article__sub-heading-note {
    font-size: 1.1rem;
  }
}
.c-article__sub-heading-highlight {
  padding-inline: 1rem 0;
  background: #3E3E3E;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .c-article__sub-heading-highlight {
    font-size: 1.4rem;
    padding-left: 0.5rem;
  }
}
.c-article__note {
  font-size: 1.4rem;
  letter-spacing: 0.06em;
  font-weight: 400;
  line-height: 1.8;
  margin-top: 0.4rem;
}
@media screen and (max-width: 767px) {
  .c-article__note {
    font-size: 1.2rem;
    letter-spacing: 0.05em;
    line-height: 1.7;
    margin-top: 0.5rem;
  }
}
.c-article__note a {
  text-decoration: underline;
}
.c-article__note a:hover {
  text-decoration: none;
}
.c-article__note--grey {
  color: #6F6F6F;
}
.c-article__note--grey + .c-article__note {
  margin-top: 2.6rem;
}
@media screen and (max-width: 767px) {
  .c-article__note--grey + .c-article__note {
    margin-top: 2rem;
  }
}
@media screen and (max-width: 767px) {
  .c-article__note--grey + .c-article__note p {
    line-height: 1.7;
    letter-spacing: 0.05em;
    font-size: 1.4rem;
  }
}
.c-article__note + .c-article__desc {
  margin-top: 3.2rem;
}
@media screen and (max-width: 767px) {
  .c-article__note + .c-article__desc {
    margin-top: 2.4rem;
  }
}
.c-article__note + .c-table-info, .c-article__note + .c-table-price {
  margin-top: 2rem;
}
@media screen and (max-width: 767px) {
  .c-article__note + .c-table-info, .c-article__note + .c-table-price {
    margin-top: 1.4rem;
  }
}
.c-article__cta {
  display: flex;
  justify-content: center;
  margin: 5.8rem 0 0;
}
@media screen and (max-width: 767px) {
  .c-article__cta {
    margin: 3rem 0 0;
  }
}
.c-article__cta + .c-accordion {
  margin-top: 4.7rem;
}
@media screen and (max-width: 767px) {
  .c-article__cta + .c-accordion {
    margin-top: 4rem;
  }
}
@media screen and (min-width: 768px) {
  .c-article__cta .c-btn {
    font-size: 1.6rem;
    height: 4.6rem;
  }
}
@media screen and (max-width: 767px) {
  .c-article__cta .c-btn {
    font-size: 1.4rem;
    height: 4.4rem;
    padding: 0 4rem 0 2.2rem;
    letter-spacing: 0.05em;
    width: 100%;
    max-width: 28rem;
    justify-content: flex-start;
  }
}
.c-article__btn-sample {
  display: flex;
  flex-wrap: wrap;
  gap: 0 3.2rem;
  margin-top: 10.4rem;
}
@media screen and (max-width: 767px) {
  .c-article__btn-sample {
    margin-top: 3.8rem;
  }
}
.c-article__btn-sample .c-article__desc {
  margin-top: 4rem;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .c-article__btn-sample .c-article__desc {
    margin-top: 1.3rem;
  }
}
.c-article__btn-sample .c-article__desc + .c-article__desc {
  margin-top: 3.6rem;
}
@media screen and (max-width: 767px) {
  .c-article__btn-sample .c-article__desc + .c-article__desc {
    margin-top: 2.1rem;
  }
}
.c-article__btn-sample-col {
  flex: 1;
  margin-top: 1.5rem;
}
@media screen and (max-width: 767px) {
  .c-article__btn-sample-col {
    margin-top: 0;
  }
}
@media screen and (min-width: 768px) {
  .c-article__btn-sample-col .c-btn {
    margin-top: 3.8rem;
    height: 4.6rem;
    font-size: 1.6rem;
    padding: 0 10.6rem 0 2.4rem;
  }
}
@media screen and (max-width: 767px) {
  .c-article__btn-sample-col .c-btn {
    margin-top: 4rem;
    height: 4.2rem;
    padding: 0 3.8rem 0 1.9rem;
    letter-spacing: 0.05em;
    min-width: 28rem;
    justify-content: flex-start;
    margin-inline: auto;
  }
}
.c-article__btn-sample-col .c-btn.is-hover {
  box-shadow: 0 0 0 0.15rem #3a3a3a;
  transform: scale(1.05);
  margin-top: 2.6rem;
  margin-left: 0.8rem;
}
.c-article__btn-sample-col:nth-child(2) {
  font-weight: 500;
}
.c-article__btn-sample-label {
  font-size: 1.6rem;
  line-height: 1.375;
  letter-spacing: 0.06em;
}
@media screen and (max-width: 767px) {
  .c-article__btn-sample-label {
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    line-height: 1.7;
  }
}
.c-article__btn-sample-note {
  font-size: 1.6rem;
  line-height: 1.8;
  letter-spacing: 0.06em;
  margin-top: 0.4rem;
}
@media screen and (max-width: 767px) {
  .c-article__btn-sample-note {
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    line-height: 1.7;
    margin-top: 0;
  }
}
.c-article__btn-sample-spec {
  list-style: none;
  font-size: 1.6rem;
  line-height: 1.375;
  letter-spacing: 0.06em;
}
.c-article__btn-sample-spec li {
  padding-left: 1em;
  text-indent: -1em;
}
.c-article__heading3 {
  font-size: 1.8rem;
  font-weight: 500;
  letter-spacing: 0.06em;
  line-height: 1.4;
  margin-top: 4rem;
}
@media screen and (max-width: 767px) {
  .c-article__heading3 {
    font-size: 1.4rem;
    letter-spacing: 0.08em;
    margin-top: 2.1rem;
    line-height: 1.6;
  }
}
.c-article__heading3 + .c-article__desc {
  margin-top: 1.2rem;
}
.c-article__heading3 + .c-table-info, .c-article__heading3 + .c-table-price {
  margin-top: 2.2rem;
}
@media screen and (max-width: 767px) {
  .c-article__heading3 + .c-table-info, .c-article__heading3 + .c-table-price {
    margin-top: 1.2rem;
  }
}
.c-article__heading3 + .c-article__note {
  margin-top: 0.4rem;
}
.c-article__anchor {
  display: flex;
  justify-content: flex-end;
  margin-top: 1.6rem;
}
@media screen and (max-width: 767px) {
  .c-article__anchor {
    margin-top: 1.3rem;
  }
}
@media screen and (max-width: 767px) {
  .c-article__anchor + .c-article__sub {
    margin-top: 3rem;
  }
}
.c-article__anchor-link {
  display: inline-flex;
  align-items: center;
  gap: 0.8rem;
  font-size: 1.4rem;
  font-weight: 400;
  letter-spacing: 0.06em;
  color: #ACACAC;
  transition: opacity 0.3s;
  text-decoration: underline;
  margin-right: 0.2rem;
}
@media screen and (max-width: 767px) {
  .c-article__anchor-link {
    letter-spacing: 0.08em;
    line-height: 1.4285714286;
    margin-right: 0;
  }
}
.c-article__anchor-link::before {
  content: "";
  display: block;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='19' height='19' viewBox='0 0 19 19'%3E%3Cg id='arrow-right-circle' transform='translate(0.329 18.5) rotate(-90)'%3E%3Ccircle id='Ellipse_41' data-name='Ellipse 41' cx='9' cy='9' r='9' transform='translate(0 0.171)' fill='rgba(255,255,255,0)' stroke='%23acacac' stroke-linecap='round' stroke-linejoin='round' stroke-width='1'/%3E%3Cpath id='Path_359' data-name='Path 359' d='M12,13.215l2.608-2.608L12,8' transform='translate(-4 -1.436)' fill='none' stroke='%23acacac' stroke-linecap='round' stroke-linejoin='round' stroke-width='1'/%3E%3C/g%3E%3C/svg%3E%0A");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  flex-shrink: 0;
  width: 1.9rem;
  height: auto;
  aspect-ratio: 1/1;
}
@media screen and (max-width: 767px) {
  .c-article__anchor-link::before {
    width: 1.6rem;
  }
}
.c-article__anchor-link:hover {
  text-decoration: none;
}
.c-article__sub-heading--num {
  padding-inline: 3.2rem 1.6rem;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .c-article__sub-heading--num {
    padding-inline: 2.8rem 0.5rem;
  }
}
.c-article__sub-heading--num::before {
  display: none;
}
.c-article__sub-heading-num {
  font-size: 1.6rem;
  font-family: "Barlow Condensed", serif;
  font-weight: 600;
  color: #fff;
  background: #3A3A3A;
  width: 2.3rem;
  height: 2.3rem;
  aspect-ratio: 1/1;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-bottom: 0.2rem;
  border-radius: 50%;
  position: absolute;
  left: 0;
  top: 0.2rem;
}
@media screen and (max-width: 767px) {
  .c-article__sub-heading-num {
    width: 2rem;
    height: 2rem;
    font-size: 1.4rem;
  }
}
.c-article__box {
  background: #F5F5F5;
  border-radius: 2rem;
  padding: 2.4rem 2.8rem 2.4rem 2.4rem;
  margin-top: 3rem;
}
@media screen and (max-width: 767px) {
  .c-article__box {
    gap: 1.5rem;
    padding: 1.6rem;
    border-radius: 1.5rem;
    margin-top: 2.4rem;
  }
}
.c-article__box + .c-article__note {
  margin-top: 1.6rem;
}
@media screen and (max-width: 767px) {
  .c-article__box + .c-article__note {
    margin-top: 1.2rem;
  }
}
.c-article__box-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2.4rem;
  padding-block: 1.6rem;
}
@media screen and (max-width: 767px) {
  .c-article__box-row {
    flex-direction: column;
    align-items: flex-start;
    gap: 1.6rem;
  }
}
.c-article__box-row:first-child {
  padding-top: 0;
}
.c-article__box-row:last-child {
  padding-bottom: 0;
}
.c-article__box-row:not(:first-child) {
  border-top: 1px solid #CBCBCB;
}
.c-article__box .c-btn {
  min-width: 20rem;
  justify-content: flex-start;
}
@media screen and (max-width: 767px) {
  .c-article__box .c-btn {
    margin-inline: auto;
    padding-inline: 1.8rem 3.5rem;
    min-width: 27.6rem;
    justify-content: flex-start;
  }
}
.c-article__box-content {
  flex: 1;
  min-width: 0;
}
.c-article__box-content .c-article__desc {
  margin-top: 1rem;
}
@media screen and (max-width: 767px) {
  .c-article__box-content .c-article__desc {
    margin-top: 1.3rem;
  }
}
.c-article__box-content > :first-child {
  margin-top: 0;
}
.c-article__box-title {
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0.06em;
  background: #3A3A3A;
  width: fit-content;
  color: #fff;
  padding: 0.2rem 1.2rem;
  border-radius: 5rem;
}
@media screen and (max-width: 767px) {
  .c-article__box-title {
    font-size: 1.4rem;
    padding: 0.1rem 1rem;
  }
}
.c-article__box-bonus {
  display: flex;
  gap: 1.6rem;
  width: 33.6rem;
  flex-wrap: wrap;
}
@media screen and (max-width: 767px) {
  .c-article__box-bonus {
    width: 100%;
  }
}
.c-article__box-bonus-label {
  background: #fff;
  border-radius: 1.5rem;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0.08em;
  color: #3A3A3A;
  padding: 1.2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .c-article__box-bonus-label {
    font-size: 1.3rem;
    letter-spacing: 0.06em;
    line-height: 1.5;
    padding: 1.6rem 1.8rem;
  }
}
.c-article__box-bonus-label:nth-child(2n+1) {
  width: 15.2rem;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .c-article__box-bonus-label:nth-child(2n+1) {
    width: calc(50% - 0.8rem);
  }
}
.c-article__box-bonus-label:nth-child(2n+1)::before {
  content: "";
  width: 2.7rem;
  aspect-ratio: 1/1;
  height: auto;
  position: absolute;
  top: 50%;
  left: calc(100% + 0.8rem);
  transform: translate(-50%, -50%);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='27' height='27' viewBox='0 0 27 27'%3E%3Cg id='Group_6556' data-name='Group 6556' transform='translate(-1109.5 -6251.442)'%3E%3Ccircle id='Ellipse_509' data-name='Ellipse 509' cx='13.5' cy='13.5' r='13.5' transform='translate(1109.5 6251.442)' fill='%233e3e3e'/%3E%3Cline id='Line_111' data-name='Line 111' y2='12.002' transform='translate(1123 6258.942)' fill='none' stroke='%23fff' stroke-width='1.5'/%3E%3Cline id='Line_112' data-name='Line 112' y2='12' transform='translate(1129 6264.942) rotate(90)' fill='none' stroke='%23fff' stroke-width='1.5'/%3E%3C/g%3E%3C/svg%3E%0A");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}
.c-article__box-bonus-label:nth-child(2n+2) {
  width: 16.8rem;
}
@media screen and (max-width: 767px) {
  .c-article__box-bonus-label:nth-child(2n+2) {
    width: calc(50% - 0.8rem);
  }
}
.c-article__box-table {
  table-layout: fixed;
  width: 100%;
  font-size: 1.6rem;
  line-height: 1.8;
  line-height: 0.06;
  margin-top: 1.4rem;
}
@media screen and (max-width: 767px) {
  .c-article__box-table {
    font-size: 1.4rem;
    line-height: 1.7;
  }
}
.c-article__box-table tr:first-child .c-article__box-table-head,
.c-article__box-table tr:first-child .c-article__box-table-body {
  padding-top: 0;
}
.c-article__box-table-head, .c-article__box-table-body {
  padding-block: 0.6rem;
}
.c-article__box-table-head {
  font-weight: 400;
}
@media screen and (max-width: 767px) {
  .c-article__box-table-head {
    width: 6.2rem;
  }
}
.c-article__ext-links {
  display: flex;
  justify-content: center;
  margin-top: 4rem;
  gap: 3.5rem;
}
@media screen and (max-width: 767px) {
  .c-article__ext-links {
    margin-top: 3.4rem;
    flex-direction: column;
    gap: 2.2rem;
  }
}
.c-article__ext-links + .c-article__note {
  text-align: center;
  color: #6F6F6F;
  margin-top: 0.8rem;
}
@media screen and (max-width: 767px) {
  .c-article__ext-links + .c-article__note {
    margin-top: 0.7rem;
    text-align: left;
  }
}
.c-article__ext-links + .c-article__box {
  margin-top: 3.6rem;
}
@media screen and (max-width: 767px) {
  .c-article__ext-links + .c-article__box {
    margin-top: 2.7rem;
  }
}
.c-article__ext-links--row {
  flex-wrap: wrap;
  gap: 1.6rem;
}
@media screen and (max-width: 767px) {
  .c-article__ext-links--row {
    gap: 1.2rem;
  }
}
.c-article__ext-links .c-btn {
  min-width: 20rem;
}
@media screen and (max-width: 767px) {
  .c-article__ext-links .c-btn {
    min-width: 28rem;
    margin-inline: auto;
    justify-content: flex-start;
  }
}
.c-article__figure {
  margin-top: 2.8rem;
}
@media screen and (max-width: 767px) {
  .c-article__figure {
    margin-top: 2rem;
    margin-inline: -1.6rem;
    overflow: hidden;
  }
}
.c-article__figure figure {
  overflow-x: auto;
}
@media screen and (max-width: 767px) {
  .c-article__figure figure {
    padding-left: 1.6rem;
  }
}
.c-article__figure figure img {
  width: 100%;
  height: auto;
  display: block;
}
@media screen and (max-width: 767px) {
  .c-article__figure figure img {
    border-radius: 0;
    max-width: 63.2rem;
    width: 63.2rem;
    height: auto;
    margin-right: 1.6rem;
  }
}
.c-article__figure-placeholder {
  width: 100%;
  aspect-ratio: 16/9;
  background: #E5E5E5;
  border-radius: 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 2rem;
  font-weight: 500;
  color: #999;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 767px) {
  .c-article__figure-placeholder {
    border-radius: 1.5rem;
    font-size: 1.6rem;
  }
}
.c-article__info-card {
  display: flex;
  align-items: center;
  gap: 2.4rem;
  background: #F5F5F5;
  border-radius: 2rem;
  padding: 2rem 2.4rem;
  margin-top: 3.2rem;
}
@media screen and (max-width: 767px) {
  .c-article__info-card {
    flex-direction: column;
    align-items: flex-start;
    gap: 1.6rem;
    padding: 1.6rem;
    border-radius: 1.5rem;
    margin-top: 2.4rem;
  }
}
.c-article__info-card-head {
  flex: 1;
  min-width: 0;
}
.c-article__info-card-label {
  display: inline-block;
  font-size: 1.4rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  color: #fff;
  background: #3a3a3a;
  padding: 0.4rem 1.2rem;
  border-radius: 0.4rem;
  line-height: 1.5714285714;
}
@media screen and (max-width: 767px) {
  .c-article__info-card-label {
    font-size: 1.2rem;
  }
}
.c-article__info-card-text {
  font-size: 1.4rem;
  font-weight: 400;
  letter-spacing: 0.06em;
  line-height: 1.8;
  margin-top: 0.8rem;
}
@media screen and (max-width: 767px) {
  .c-article__info-card-text {
    font-size: 1.2rem;
    margin-top: 0.6rem;
  }
}
.c-article__info-card-body {
  display: flex;
  align-items: center;
  gap: 1.2rem;
  flex-shrink: 0;
}
@media screen and (max-width: 767px) {
  .c-article__info-card-body {
    width: 100%;
    justify-content: center;
    gap: 0.8rem;
  }
}
.c-article__info-card-item {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  border: 0.1rem solid #D5D5D5;
  border-radius: 1.2rem;
  padding: 1.6rem 2rem;
  background: #fff;
  font-size: 1.4rem;
  font-weight: 500;
  letter-spacing: 0.06em;
  line-height: 1.5714285714;
  min-width: 14rem;
}
@media screen and (max-width: 767px) {
  .c-article__info-card-item {
    font-size: 1.2rem;
    padding: 1.2rem 1rem;
    min-width: 0;
    flex: 1;
  }
}
.c-article__info-card-plus {
  font-size: 2rem;
  font-weight: 500;
  color: #3a3a3a;
  flex-shrink: 0;
}
@media screen and (max-width: 767px) {
  .c-article__info-card-plus {
    font-size: 1.6rem;
  }
}

.p-privacy .c-article__heading {
  padding-bottom: 1.8rem;
}
.p-privacy .c-article__block:last-child {
  padding-bottom: 6rem;
}
@media screen and (max-width: 767px) {
  .p-privacy .c-article__block:last-child {
    padding-bottom: 4rem;
  }
}
.p-privacy .c-article__block:not(:first-child) {
  padding-top: 0;
  margin-top: 8.9rem;
  border-top: none;
}
@media screen and (max-width: 767px) {
  .p-privacy .c-article__block:not(:first-child) {
    margin-top: 4.6rem;
  }
}

.c-accordion {
  margin: 3.8rem 0 0;
}
@media screen and (max-width: 767px) {
  .c-accordion {
    margin: 3rem 0 0;
  }
}
.c-accordion + .c-accordion {
  margin-top: 6rem;
}
@media screen and (max-width: 767px) {
  .c-accordion + .c-accordion {
    margin-top: 4rem;
  }
}
@media screen and (max-width: 767px) {
  .c-accordion + .c-article__heading {
    margin-top: 4.1rem;
  }
}
.c-accordion__item {
  border: 0.1rem solid #E5E5E5;
  border-radius: 2rem;
  overflow: hidden;
  background: #F4F4F4;
}
@media screen and (max-width: 767px) {
  .c-accordion__item {
    border-radius: 1.5rem;
  }
}
.c-accordion__item:not(:last-of-type) {
  margin-bottom: 3.2rem;
}
@media screen and (max-width: 767px) {
  .c-accordion__item:not(:last-of-type) {
    margin-bottom: 2.4rem;
  }
}
.c-accordion__item.is-open .c-accordion__icon::after {
  transform: translate(-50%, -50%) rotate(90deg);
}
.c-accordion__header {
  text-align: left;
  padding: 2rem 3rem;
  cursor: pointer;
  list-style: none;
  position: relative;
  z-index: 1;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.06em;
  display: flex;
  align-items: flex-start;
}
@media screen and (max-width: 767px) {
  .c-accordion__header {
    padding: 1.2rem 2rem;
    align-items: center;
  }
}
.c-accordion__header::-webkit-details-marker {
  display: none;
}
.c-accordion__header::before {
  content: "";
  width: 3.2rem;
  aspect-ratio: 1/1;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32'%3E%3Cg id='Group_6865' data-name='Group 6865' transform='translate(-549 -1281)'%3E%3Ccircle id='Ellipse_524' data-name='Ellipse 524' cx='16' cy='16' r='16' transform='translate(549 1281)' fill='%233e3e3e'/%3E%3Cg id='Group_6864' data-name='Group 6864' transform='translate(554 1285.755)'%3E%3Cpath id='パス_1070' data-name='パス 1070' d='M11.168,14.783H3.787A2.54,2.54,0,0,1,1.25,12.246V5.787A2.54,2.54,0,0,1,3.787,3.25H14.859A2.54,2.54,0,0,1,17.4,5.787V7.632a.692.692,0,1,1-1.384,0V5.787a1.155,1.155,0,0,0-1.153-1.153H3.787A1.155,1.155,0,0,0,2.634,5.787v6.458A1.155,1.155,0,0,0,3.787,13.4h7.381a.692.692,0,1,1,0,1.384Z' transform='translate(0 0)' fill='%23fff'/%3E%3Cpath id='パス_1071' data-name='パス 1071' d='M9.942,19.328a.692.692,0,0,1-.692-.692V14.982a.692.692,0,1,1,1.384,0v3.654A.692.692,0,0,1,9.942,19.328Z' transform='translate(-0.619 -0.854)' fill='%23fff'/%3E%3Cpath id='パス_1072' data-name='パス 1072' d='M11.555,19.634H6.942a.692.692,0,1,1,0-1.384h4.613a.692.692,0,1,1,0,1.384Z' transform='translate(-0.387 -1.161)' fill='%23fff'/%3E%3Cpath id='長方形_2481' data-name='長方形 2481' d='M1.787-.75H3.632A2.54,2.54,0,0,1,6.17,1.787V7.323A2.54,2.54,0,0,1,3.632,9.86H1.787A2.54,2.54,0,0,1-.75,7.323V1.787A2.54,2.54,0,0,1,1.787-.75ZM3.632,8.476A1.155,1.155,0,0,0,4.786,7.323V1.787A1.155,1.155,0,0,0,3.632.634H1.787A1.155,1.155,0,0,0,.634,1.787V7.323A1.155,1.155,0,0,0,1.787,8.476Z' transform='translate(14.917 11.381)' fill='%23fff'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  flex-shrink: 0;
  display: block;
}
@media screen and (max-width: 767px) {
  .c-accordion__header::before {
    width: 2.6rem;
  }
}
.c-accordion__header--category::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32'%3E%3Cg id='Group_6862' data-name='Group 6862' transform='translate(-541 -3178)'%3E%3Ccircle id='Ellipse_523' data-name='Ellipse 523' cx='16' cy='16' r='16' transform='translate(541 3178)' fill='%233e3e3e'/%3E%3Cg id='Group_6849' data-name='Group 6849' transform='translate(547 3183.783)'%3E%3Cpath id='パス_1070' data-name='パス 1070' d='M15.557,19.234H5.538A2.34,2.34,0,0,1,3.2,16.9V3.538A2.34,2.34,0,0,1,5.538,1.2h6.679a2.692,2.692,0,0,1,1.9.786l2.995,2.995a2.688,2.688,0,0,1,.787,1.9V16.9A2.34,2.34,0,0,1,15.557,19.234ZM5.538,2.536a1,1,0,0,0-1,1V16.9a1,1,0,0,0,1,1H15.557a1,1,0,0,0,1-1V6.877a1.345,1.345,0,0,0-.394-.951l-3-3a1.346,1.346,0,0,0-.947-.394Z' transform='translate(0 0)' fill='%23fff'/%3E%3Cpath id='パス_1071' data-name='パス 1071' d='M18.877,7.545H14.7a1.5,1.5,0,0,1-1.5-1.5V1.868a.668.668,0,0,1,1.336,0V6.042a.167.167,0,0,0,.167.167h4.174a.668.668,0,0,1,0,1.336Z' transform='translate(-1.651)' fill='%23fff'/%3E%3Cpath id='パス_1072' data-name='パス 1072' d='M10.538,16.875a.666.666,0,0,1-.472-.2L8.4,15.01a.668.668,0,1,1,.945-.945l1.2,1.2L13.405,12.4a.668.668,0,0,1,.945.945l-3.34,3.34A.666.666,0,0,1,10.538,16.875Z' transform='translate(-0.826 -1.816)' fill='%23fff'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.c-accordion__header--video::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32'%3E%3Cg id='Group_6858' data-name='Group 6858' transform='translate(-541 -3282)'%3E%3Ccircle id='Ellipse_524' data-name='Ellipse 524' cx='16' cy='16' r='16' transform='translate(541 3282)' fill='%233e3e3e'/%3E%3Cg id='Group_6854' data-name='Group 6854' transform='translate(546.834 3288.665)'%3E%3Cpath id='パス_1074' data-name='パス 1074' d='M10.407,6.252a1.159,1.159,0,0,1,.578.154l3.373,1.951a1.159,1.159,0,0,1,0,2.006l-3.372,1.951a1.157,1.157,0,0,1-1.736-1V7.41a1.157,1.157,0,0,1,1.157-1.158Zm3.2,3.109-3.113-1.8v3.6Z' transform='translate(-1.365 -0.683)' fill='%23fff'/%3E%3Cpath id='パス_1075' data-name='パス 1075' d='M11.872,20.812a.622.622,0,0,1-.622-.622V16.872a.622.622,0,0,1,1.244,0V20.19A.622.622,0,0,1,11.872,20.812Z' transform='translate(-1.706 -2.389)' fill='%23fff'/%3E%3Cpath id='パス_1076' data-name='パス 1076' d='M14.507,21.494H7.872a.622.622,0,0,1,0-1.244h6.635a.622.622,0,0,1,0,1.244Z' transform='translate(-1.024 -3.071)' fill='%23fff'/%3E%3Cpath id='長方形_2481' data-name='長方形 2481' d='M1.531-.75H14.8a2.283,2.283,0,0,1,2.281,2.281V9.825A2.283,2.283,0,0,1,14.8,12.106H1.531A2.283,2.283,0,0,1-.75,9.825V1.531A2.283,2.283,0,0,1,1.531-.75ZM14.8,10.861a1.038,1.038,0,0,0,1.037-1.037V1.531A1.038,1.038,0,0,0,14.8.494H1.531A1.038,1.038,0,0,0,.494,1.531V9.825a1.038,1.038,0,0,0,1.037,1.037Z' transform='translate(2 3)' fill='%23fff'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.c-accordion__title {
  font-size: 1.6rem;
  font-weight: 500;
  letter-spacing: 0.08em;
  padding-inline: 1.3rem 3rem;
  margin-top: 0.2rem;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .c-accordion__title {
    font-size: 1.4rem;
    padding-inline: 0.7rem 2rem;
    letter-spacing: 0.05em;
  }
}
.c-accordion__title-sub {
  font-weight: 400;
}
.c-accordion__icon {
  position: absolute;
  right: 3rem;
  top: 50%;
  transform: translateY(-50%);
  width: 2rem;
  height: auto;
  aspect-ratio: 1/1;
  flex-shrink: 0;
}
@media screen and (max-width: 767px) {
  .c-accordion__icon {
    width: 1.2rem;
    right: 1.8rem;
  }
}
.c-accordion__icon::before, .c-accordion__icon::after {
  content: "";
  display: block;
  background: #3a3a3a;
  position: absolute;
  top: 50%;
  left: 50%;
  transition: transform 0.3s;
}
.c-accordion__icon::before {
  width: 1.6rem;
  height: 0.1rem;
  transform: translate(-50%, -50%);
}
@media screen and (max-width: 767px) {
  .c-accordion__icon::before {
    width: 1.2rem;
  }
}
.c-accordion__icon::after {
  width: 0.1rem;
  height: 1.6rem;
  transform: translate(-50%, -50%);
}
@media screen and (max-width: 767px) {
  .c-accordion__icon::after {
    height: 1.2rem;
  }
}
.c-accordion__body {
  display: none;
  padding: 3.3rem 0 3.5rem;
  margin-inline: 3.2rem;
  border-top: 0.1rem solid #D5D5D5;
}
@media screen and (max-width: 767px) {
  .c-accordion__body {
    margin-inline: 1.6rem;
    padding-block: 1.9rem 1.4rem;
  }
}
.c-accordion__body .c-article__note {
  margin-bottom: 3.2rem;
  margin-top: 0.7rem;
}
@media screen and (max-width: 767px) {
  .c-accordion__body .c-article__note {
    margin-bottom: 0;
  }
}
.c-accordion__body .c-table-info {
  background: #fff;
}
.c-accordion__body .c-table-info:first-child {
  margin-top: 0;
}
.c-accordion__body .c-table-info__head {
  background: #E5E5E5;
}
@media screen and (max-width: 767px) {
  .c-accordion__body .c-table-info__body .c-btn {
    padding-inline: 3rem;
    justify-content: center;
    min-width: 28rem;
    margin-top: 1rem;
  }
}
.c-accordion__body .c-table-info__dd {
  line-height: 1.8;
}
@media screen and (max-width: 767px) {
  .c-accordion__body .c-table-info__dd {
    line-height: 1.7;
  }
}
.c-accordion__body .c-table-info__group {
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
}
@media screen and (max-width: 767px) {
  .c-accordion__body .c-table-info__group {
    gap: 0.3rem;
  }
}
.c-accordion__body .c-article__box {
  background: #fff;
}
@media screen and (max-width: 767px) {
  .c-accordion__body .c-article__box {
    margin-top: 1.8rem;
  }
}
.c-accordion__body .c-article__box .c-article__desc {
  line-height: 1.8;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 767px) {
  .c-accordion__body .c-article__box .c-article__desc {
    line-height: 1.7;
    letter-spacing: 0.06em;
  }
}
.c-accordion__order-item {
  padding-right: 11.2rem;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .c-accordion__order-item {
    padding-right: 8rem;
  }
}
.c-accordion__order-item:not(:first-of-type) {
  margin-top: 2rem;
}
@media screen and (max-width: 767px) {
  .c-accordion__order-item:not(:first-of-type) {
    margin-top: 2.3rem;
  }
}
.c-accordion__order-item:not(:last-of-type) {
  position: relative;
  z-index: 1;
}
.c-accordion__order-item:not(:last-of-type)::before {
  content: "";
  width: 1px;
  height: calc(100% + 3rem);
  background: #3a3a3a;
  position: absolute;
  left: 0;
  top: 1px;
  z-index: -1;
  pointer-events: none;
}
@media screen and (max-width: 767px) {
  .c-accordion__order-item:not(:last-of-type)::before {
    height: calc(100% + 2.4rem);
  }
}
.c-accordion__order-head {
  display: flex;
  align-items: center;
  gap: 1.6rem;
}
@media screen and (max-width: 767px) {
  .c-accordion__order-head {
    gap: 0.8rem;
  }
}
.c-accordion__order-number {
  width: 4rem;
  background: #3E3E3E;
  color: #fff;
  border-radius: 0 5rem 5rem 0;
  text-align: center;
  font-family: "Barlow Condensed", serif;
  font-size: 1.8rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  line-height: 1.8;
  flex-shrink: 0;
}
@media screen and (max-width: 767px) {
  .c-accordion__order-number {
    font-size: 1.6rem;
    line-height: 1.5;
    width: 3.7rem;
  }
}
.c-accordion__order-title {
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.7222222222;
  letter-spacing: 0.06em;
}
@media screen and (max-width: 767px) {
  .c-accordion__order-title {
    font-size: 1.5rem;
  }
}
.c-accordion__order-body {
  padding-left: 2.5rem;
}
@media screen and (max-width: 767px) {
  .c-accordion__order-body {
    padding-left: 1.7rem;
  }
}
.c-accordion__order-body .c-article__desc {
  margin-top: 1.3rem;
}
@media screen and (max-width: 767px) {
  .c-accordion__order-body .c-article__desc {
    margin-top: 0.4rem;
  }
}
.c-accordion__order-icon {
  position: absolute;
  right: 0;
  top: 1.3rem;
  width: 8rem;
  aspect-ratio: 1/1;
  height: auto;
  flex-shrink: 0;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .c-accordion__order-icon {
    width: 6.6rem;
    top: 1.9rem;
  }
}
.c-accordion__order-icon img {
  width: 100%;
  height: auto;
  aspect-ratio: 1/1;
  display: block;
  object-fit: cover;
}
.c-accordion__list {
  display: flex;
  flex-wrap: wrap;
  gap: 2.45rem;
  margin-block: 2.2rem 3.2rem;
}
@media screen and (max-width: 767px) {
  .c-accordion__list {
    margin-right: -7.1rem;
    margin-block: 1.5rem 2.4rem;
    gap: 1.68rem;
  }
}
.c-accordion__list-item {
  width: calc((100% - 4.9rem) / 3);
}
@media screen and (max-width: 767px) {
  .c-accordion__list-item {
    width: calc((100% - 1.68rem) / 2);
  }
}
.c-accordion__list-link {
  display: block;
}
@media screen and (min-width: 768px) {
  .c-accordion__list-link:hover .c-accordion__list-text {
    text-decoration: none;
  }
  .c-accordion__list-link:hover .c-accordion__list-img img {
    transform: scale(1.05);
  }
}
.c-accordion__list-img {
  border: solid 0.1rem #EDEDED;
  border-radius: 2rem;
  overflow: hidden;
  aspect-ratio: 1/1;
}
@media screen and (max-width: 767px) {
  .c-accordion__list-img {
    border-radius: 1rem;
  }
}
.c-accordion__list-img img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  transition: 0.3s;
}
.c-accordion__list-text {
  font-size: 1.4rem;
  letter-spacing: 0.08em;
  line-height: 1.3714285714;
  text-decoration: underline;
  text-underline-offset: 0.2rem;
  display: inline-block;
  margin-top: 1rem;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 767px) {
  .c-accordion__list-text {
    font-size: 1.2rem;
    text-underline-offset: 0.1rem;
    letter-spacing: 0.05em;
    margin-top: 0.9rem;
  }
}
.c-accordion__video {
  width: 100%;
  display: flex;
  justify-content: center;
}
.c-accordion__video iframe {
  width: 56rem;
  aspect-ratio: 560/315;
  height: auto;
  display: block;
  border-radius: 1rem;
  overflow: hidden;
}

.c-faq {
  border: 0.1rem solid #e5e5e5;
  border-radius: 2rem;
  margin-top: 6rem;
  padding-inline: 2.45rem;
}
@media screen and (max-width: 767px) {
  .c-faq {
    margin-top: 4.3rem;
    padding-inline: 1.6rem;
    border-radius: 1.5rem;
  }
}
.c-faq + .c-article__cta {
  margin-top: 4rem;
}
@media screen and (max-width: 767px) {
  .c-faq + .c-article__cta {
    margin-top: 3.2rem;
  }
}
.c-faq__item {
  overflow: hidden;
}
.c-faq__item:not(:first-child) {
  border-top: 0.1rem solid #e5e5e5;
}
.c-faq__item.is-open .c-faq__toggle::after {
  transform: translate(-50%, -50%) rotate(90deg);
}
.c-faq__header {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding-block: 2.3rem;
  padding-right: 2rem;
  cursor: pointer;
  transition: background 0.3s;
}
@media screen and (max-width: 767px) {
  .c-faq__header {
    padding: 1.5rem 1.5rem 1.5rem 0;
    gap: 0.7rem;
  }
}
.c-faq__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3.2rem;
  height: 3.2rem;
  border-radius: 50%;
  font-size: 1.7rem;
  font-weight: 700;
  flex-shrink: 0;
  padding-bottom: 0.2rem;
}
@media screen and (max-width: 767px) {
  .c-faq__icon {
    width: 2.6rem;
    height: 2.6rem;
    font-size: 1.4rem;
  }
}
.c-faq__icon--q {
  background: #3a3a3a;
  color: #fff;
}
.c-faq__icon--a {
  background: #EDEDED;
  color: #3a3a3a;
}
@media screen and (max-width: 767px) {
  .c-faq__icon--a {
    font-size: 1.5rem;
    width: 2.4rem;
    height: 2.4rem;
  }
}
.c-faq__question {
  flex: 1;
  font-size: 1.7rem;
  font-weight: 500;
  letter-spacing: 0.06em;
  line-height: 1.2222222222;
  font-family: "Zen Kaku Gothic Antique", sans-serif;
}
@media screen and (max-width: 767px) {
  .c-faq__question {
    font-size: 1.4rem;
    padding-right: 1rem;
    line-height: 1.5;
  }
}
.c-faq__toggle {
  position: relative;
  width: 2rem;
  height: 2rem;
  flex-shrink: 0;
}
@media screen and (max-width: 767px) {
  .c-faq__toggle {
    width: 1.2rem;
    height: 1.2rem;
  }
}
.c-faq__toggle::before, .c-faq__toggle::after {
  content: "";
  display: block;
  background: #3a3a3a;
  position: absolute;
  top: 50%;
  left: 50%;
  transition: transform 0.3s;
  transform: translate(-50%, -50%);
}
.c-faq__toggle::before {
  width: 1.6rem;
  height: 0.1rem;
}
@media screen and (max-width: 767px) {
  .c-faq__toggle::before {
    width: 1.2rem;
  }
}
.c-faq__toggle::after {
  width: 0.1rem;
  height: 1.6rem;
}
@media screen and (max-width: 767px) {
  .c-faq__toggle::after {
    height: 1.2rem;
  }
}
.c-faq__body {
  display: none;
  gap: 2.2rem;
  padding-block: 2.2rem;
  border-top: 0.1rem solid #e5e5e5;
  padding-left: 4.4rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .c-faq__body {
    gap: 0.7rem;
    padding: 1.4rem 0 1.5rem;
    padding-left: 3.4rem;
  }
}
.c-faq__body .c-faq__icon {
  position: absolute;
  top: 2rem;
  left: 0;
}
@media screen and (max-width: 767px) {
  .c-faq__body .c-faq__icon {
    top: 1.6rem;
  }
}
.c-faq__answer {
  flex: 1;
  min-width: 0;
}
.c-faq__answer .c-article__desc {
  line-height: 1.8;
  letter-spacing: 0.06em;
  margin-top: 0;
}
@media screen and (max-width: 767px) {
  .c-faq__answer .c-article__desc {
    line-height: 1.7;
    margin-right: -0.4rem;
    letter-spacing: 0.05em;
  }
}
.c-faq__answer .c-article__note {
  margin-top: 0.8rem;
}
@media screen and (max-width: 767px) {
  .c-faq__answer .c-article__note {
    letter-spacing: 0.08em;
    margin-top: 0.7rem;
  }
}

.c-table-info {
  width: 100%;
  border-collapse: unset;
  border: 0.1rem solid #e5e5e5;
  border-radius: 2rem;
  overflow: hidden;
  margin-top: 3rem;
}
@media screen and (max-width: 767px) {
  .c-table-info {
    margin-top: 2.4rem;
    border-radius: 1.5rem;
  }
}
.c-table-info + .c-article__note {
  margin-top: 1.4rem;
}
@media screen and (max-width: 767px) {
  .c-table-info + .c-article__note {
    margin-top: 1rem;
  }
}
.c-table-info + .c-article__desc {
  margin-top: 2.8rem;
}
@media screen and (max-width: 767px) {
  .c-table-info + .c-article__desc {
    margin-top: 2rem;
  }
}
.c-table-info tr:not(:first-child) .c-table-info__head,
.c-table-info tr:not(:first-child) .c-table-info__body {
  position: relative;
  z-index: 1;
}
.c-table-info tr:not(:first-child) .c-table-info__head::before,
.c-table-info tr:not(:first-child) .c-table-info__body::before {
  content: "";
  width: calc(100% - 0.8rem);
  height: 1px;
  background: #E5E5E5;
  position: absolute;
  top: 0;
  right: 0;
}
@media screen and (max-width: 767px) {
  .c-table-info tr:not(:first-child) .c-table-info__head::before,
  .c-table-info tr:not(:first-child) .c-table-info__body::before {
    display: none;
  }
}
.c-table-info tr:not(:first-child) .c-table-info__body::before {
  right: 0.8rem;
}
.c-table-info__head {
  background: #f5f5f5;
  font-size: 1.6rem;
  font-weight: 500;
  letter-spacing: 0.06em;
  padding: 2rem 2.4rem;
  line-height: 1.6;
  text-align: left;
  vertical-align: top;
  width: 21rem;
}
@media screen and (max-width: 767px) {
  .c-table-info__head {
    display: block;
    padding: 1.3rem 1.1rem;
    width: 100%;
    font-size: 1.4rem;
    letter-spacing: 0.05em;
  }
}
.c-table-info__head-note {
  font-size: 1.4rem;
  letter-spacing: 0.06em;
  line-height: 1.8;
  margin-top: 0.2rem;
  color: #6F6F6F;
  font-weight: 400;
}
@media screen and (max-width: 767px) {
  .c-table-info__head-note {
    font-size: 1.2rem;
    letter-spacing: 0.05em;
    line-height: 1.7;
    display: inline-block;
  }
}
.c-table-info__body {
  padding: 1.8rem 2.4rem;
  vertical-align: middle;
  font-size: 1.6rem;
  letter-spacing: 0.06em;
}
@media screen and (max-width: 767px) {
  .c-table-info__body {
    display: block;
    padding: 1.6rem 1.1rem;
    border-left: none;
    border: unset;
    font-size: 1.4rem;
    letter-spacing: 0.05em;
  }
}
.c-table-info__body :first-child {
  margin-top: 0;
}
.c-table-info__body sup {
  font-size: 65%;
}
.c-table-info__body .c-btn {
  margin-top: 2rem;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 768px) {
  .c-table-info__body .c-btn {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 767px) {
  .c-table-info__body .c-btn {
    margin-inline: auto;
    margin-top: 1.3rem;
    font-weight: 500;
    height: 4.4rem;
    letter-spacing: 0.15em;
    padding: 0 10rem 0 1.8rem;
  }
}
.c-table-info__body .c-article__note--grey {
  margin-top: 1.2rem;
}
@media screen and (max-width: 767px) {
  .c-table-info__body .c-article__note--grey {
    margin-top: 0.6rem;
  }
}
.c-table-info__body .c-article__desc + .c-article__desc {
  margin-top: 1.2rem;
}
@media screen and (max-width: 767px) {
  .c-table-info__body .c-article__desc + .c-article__desc {
    margin-top: 0.6rem;
  }
}
.c-table-info__group {
  line-height: 1.8;
}
.c-table-info__group > :first-child {
  margin-top: 0;
}
.c-table-info__group + .c-table-info__group {
  margin-top: 1.7rem;
  padding-top: 1.7rem;
  position: relative;
  z-index: 1;
}
.c-table-info__group + .c-table-info__group::before {
  content: "";
  width: calc(100% + 3.2rem);
  height: 0.1rem;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  background: #e5e5e5;
  position: absolute;
  z-index: -1;
}
@media screen and (max-width: 767px) {
  .c-table-info__group + .c-table-info__group::before {
    width: calc(100% + 0.8rem);
  }
}
@media screen and (max-width: 767px) {
  .c-table-info__group + .c-table-info__group {
    margin-top: 1.1rem;
    padding-top: 1.5rem;
  }
}
.c-table-info__group--plus {
  position: relative;
  z-index: 1;
}
.c-table-info__group--plus::after {
  content: "";
  width: 2.8rem;
  height: auto;
  aspect-ratio: 1/1;
  border-radius: 50%;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 28 28'%3E%3Cg id='Group_5667' data-name='Group 5667' transform='translate(-1103.75 -6263.33)'%3E%3Ccircle id='Ellipse_509' data-name='Ellipse 509' cx='14' cy='14' r='14' transform='translate(1103.75 6263.33)' fill='%233e3e3e'/%3E%3Cg id='Group_5675' data-name='Group 5675' transform='translate(0.25 0.32)'%3E%3Cline id='Line_111' data-name='Line 111' y2='12.002' transform='translate(1117.5 6271.01)' fill='none' stroke='%23fff' stroke-linecap='round' stroke-width='1.5'/%3E%3Cline id='Line_112' data-name='Line 112' y2='12' transform='translate(1123.5 6277.01) rotate(90)' fill='none' stroke='%23fff' stroke-linecap='round' stroke-width='1.5'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
}
.c-table-info__dt {
  font-size: 1.6rem;
  font-weight: 500;
  letter-spacing: 0.06em;
  line-height: 1.8;
}
@media screen and (max-width: 767px) {
  .c-table-info__dt {
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    line-height: 1.7;
  }
}
.c-table-info__dt--sub {
  margin-top: 0.7rem;
}
.c-table-info__dt-note {
  font-size: 1.4rem;
}
@media screen and (max-width: 767px) {
  .c-table-info__dt-note {
    font-size: 1.2rem;
  }
}
.c-table-info__dt-prefix {
  font-weight: 400;
}
.c-table-info__dt-year {
  font-weight: 500;
}
.c-table-info__dd {
  font-size: 1.6rem;
  font-weight: 400;
  letter-spacing: 0.06em;
  line-height: 1.8;
}
@media screen and (max-width: 767px) {
  .c-table-info__dd {
    font-size: 1.4rem;
    line-height: 1.7;
  }
}
.c-table-info__dd--date {
  margin-top: 0.75rem;
}
.c-table-info__dd-note {
  font-size: 1.4rem;
  line-height: 1.8;
  letter-spacing: 0.06em;
  margin-top: 0.6rem;
}
@media screen and (max-width: 767px) {
  .c-table-info__dd-note {
    font-size: 1.2rem;
    letter-spacing: 0.05em;
    line-height: 1.7;
    margin-top: 0.3rem;
  }
}
.c-table-info__dd-title {
  font-weight: 500;
}
.c-table-info__links {
  display: flex;
  flex-wrap: wrap;
  gap: 2.4rem;
}
@media screen and (max-width: 767px) {
  .c-table-info__links {
    gap: 1.2rem;
  }
}
.c-table-info__links-label {
  text-decoration: underline;
  font-size: 1.6rem;
  line-height: 1.8;
  letter-spacing: 0.06em;
}
@media screen and (max-width: 767px) {
  .c-table-info__links-label {
    font-size: 1.4rem;
    line-height: 1.7;
    letter-spacing: 0.05em;
  }
}
.c-table-info__links-label:hover {
  text-decoration: none;
}

.c-table-price {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  border-radius: 2rem;
  overflow: hidden;
  margin-top: 3.2rem;
  border: 0.1rem solid #E5E5E5;
  table-layout: fixed;
}
@media screen and (max-width: 767px) {
  .c-table-price {
    margin-top: 2.4rem;
    display: block;
    border-radius: 1.5rem;
  }
}
.c-table-price.u-pc {
  display: table;
}
@media screen and (max-width: 767px) {
  .c-table-price.u-pc {
    display: none;
  }
}
.c-table-price + .c-article__note {
  margin-top: 1.4rem;
}
@media screen and (max-width: 767px) {
  .c-table-price + .c-article__note {
    margin-top: 1.2rem;
  }
}
@media screen and (max-width: 767px) {
  .c-table-price thead,
  .c-table-price tbody {
    display: block;
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .c-table-price tr {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
  }
}
.c-table-price__head {
  background: #E5E5E5;
  font-size: 1.6rem;
  font-weight: 500;
  letter-spacing: 0.06em;
  padding: 2rem 2.4rem;
  line-height: 1.6;
  text-align: left;
  vertical-align: middle;
  width: 21rem;
}
@media screen and (max-width: 767px) {
  .c-table-price__head {
    font-size: 1.4rem;
    padding: 1.2rem 1.4rem;
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .c-table-price th:nth-child(2)::before {
    display: none;
  }
}
.c-table-price__col-head {
  background: #E5E5E5;
  font-size: 1.6rem;
  font-weight: 500;
  letter-spacing: 0.06em;
  padding: 2rem 2.4rem;
  line-height: 1.6;
  text-align: center;
  vertical-align: middle;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .c-table-price__col-head {
    font-size: 1.4rem;
    padding: 1.6rem 1rem;
    display: block;
    width: 33.3333333333%;
  }
}
.c-table-price__col-head::before {
  content: "";
  width: 1px;
  height: calc(100% - 1.6rem);
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  background: #CBCBCB;
  position: absolute;
}
.c-table-price__row-head, .c-table-price__cell {
  padding: 1.8rem 2.4rem;
}
@media screen and (max-width: 767px) {
  .c-table-price__row-head, .c-table-price__cell {
    padding: 1.4rem 1.2rem;
  }
}
.c-table-price__row-head {
  background: #F4F4F4;
  font-size: 1.6rem;
  font-weight: 500;
  letter-spacing: 0.06em;
  line-height: 1.6;
  text-align: left;
  vertical-align: middle;
}
@media screen and (max-width: 767px) {
  .c-table-price__row-head {
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    display: block;
    width: 100%;
  }
}
.c-table-price__cell {
  background: #fff;
  font-size: 1.6rem;
  font-weight: 400;
  letter-spacing: 0.06em;
  line-height: 1.8;
  text-align: center;
  vertical-align: middle;
}
@media screen and (max-width: 767px) {
  .c-table-price__cell {
    font-size: 1.4rem;
    display: block;
    width: 33.3333333333%;
  }
}
.c-table-price__cell:not(:last-child) {
  position: relative;
  z-index: 1;
}
.c-table-price__cell:not(:last-child)::before {
  content: "";
  width: 1px;
  height: calc(100% - 1.6rem);
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  background: #E5E5E5;
  position: absolute;
}
@media screen and (max-width: 767px) {
  .c-table-price__cell[colspan="2"] {
    width: 66.6666666667%;
  }
}
.c-table-price__cell .c-article__desc:first-child {
  margin-top: 0;
}
.c-table-price__cell .c-article__desc + .c-article__desc {
  margin-top: 1rem;
}
@media screen and (max-width: 767px) {
  .c-table-price__cell .c-article__desc + .c-article__desc {
    margin-top: 0.5rem;
  }
}
.c-table-price tr:nth-child(2) .c-table-price__cell,
.c-table-price tr:nth-child(2) .c-table-price__row-head {
  padding: 1.7rem 2.4rem;
}
@media screen and (max-width: 767px) {
  .c-table-price tr:nth-child(2) .c-table-price__cell,
  .c-table-price tr:nth-child(2) .c-table-price__row-head {
    padding: 1.4rem 1.2rem;
  }
}
.c-table-price tr:nth-child(n+3) .c-table-price__row-head {
  position: relative;
  z-index: 1;
}
.c-table-price tr:nth-child(n+3) .c-table-price__row-head::before {
  content: "";
  width: calc(100% - 0.8rem);
  height: 1px;
  background: #E5E5E5;
  position: absolute;
  right: 0;
  top: 0;
}
@media screen and (max-width: 767px) {
  .c-table-price tr:nth-child(n+3) .c-table-price__row-head::before {
    display: none;
  }
}
.c-table-price tr:nth-child(n+3) .c-table-price__cell {
  position: relative;
  z-index: 1;
}
.c-table-price tr:nth-child(n+3) .c-table-price__cell::after {
  content: "";
  width: 100%;
  height: 1px;
  background: #E5E5E5;
  position: absolute;
  right: 0;
  top: 0;
}
@media screen and (max-width: 767px) {
  .c-table-price tr:nth-child(n+3) .c-table-price__cell::after {
    display: none;
  }
}
.c-table-price tr:nth-child(n+3) .c-table-price__cell:last-child::after {
  width: calc(100% - 0.8rem);
  right: 0.8rem;
}
.c-table-price--equal .c-table-price__head,
.c-table-price--equal .c-table-price__col-head {
  width: 33.3333333333%;
}
@media screen and (max-width: 767px) {
  .c-table-price--equal .c-table-price__head,
  .c-table-price--equal .c-table-price__col-head {
    width: 50%;
  }
}
.c-table-price--equal .c-table-price__col-head,
.c-table-price--equal .c-table-price__cell {
  text-align: left;
}
@media screen and (max-width: 767px) {
  .c-table-price--equal .c-table-price__col-head {
    text-align: center;
  }
}
@media screen and (max-width: 767px) {
  .c-table-price--equal .c-table-price__cell {
    width: 50%;
    text-align: center;
  }
}
@media screen and (max-width: 767px) {
  .c-table-price--col2 .c-table-price__col-head,
  .c-table-price--col2 .c-table-price__cell {
    width: 50%;
  }
}
.c-table-price--left tr,
.c-table-price--left th,
.c-table-price--left td {
  text-align: left;
  vertical-align: top;
}
@media screen and (max-width: 767px) {
  .c-table-price--no-break-sp {
    display: table;
  }
}
@media screen and (max-width: 767px) {
  .c-table-price--no-break-sp .c-table-price__head {
    display: table-cell;
    width: 33.3333333333%;
  }
}
@media screen and (max-width: 767px) {
  .c-table-price--no-break-sp .c-table-price__head,
  .c-table-price--no-break-sp .c-table-price__col-head {
    width: 33.3333333333%;
  }
}
@media screen and (max-width: 767px) {
  .c-table-price--no-break-sp .c-table-price__row-head {
    display: table-cell;
    width: 33.3333333333%;
  }
}
@media screen and (max-width: 767px) {
  .c-table-price--no-break-sp .c-table-price__row-head:before {
    display: block;
  }
}
.c-table-price--no-break-sp .c-table-price__col-head {
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .c-table-price--no-break-sp .c-table-price__col-head::before {
    content: "";
    display: block;
  }
}
@media screen and (max-width: 767px) {
  .c-table-price--no-break-sp .c-table-price__cell {
    display: table-cell;
    width: 33.3333333333%;
  }
}
@media screen and (max-width: 767px) {
  .c-table-price--no-break-sp .c-table-price__cell[colspan="2"] {
    width: 66.6666666667%;
  }
}
@media screen and (max-width: 767px) {
  .c-table-price--no-break-sp thead,
  .c-table-price--no-break-sp tbody {
    display: table-cell;
  }
}
@media screen and (max-width: 767px) {
  .c-table-price--no-break-sp thead tr:nth-child(n+3) .c-table-price__row-head::before,
  .c-table-price--no-break-sp tbody tr:nth-child(n+3) .c-table-price__row-head::before {
    display: block;
  }
}
@media screen and (max-width: 767px) {
  .c-table-price--no-break-sp thead tr:nth-child(n+3) .c-table-price__cell::after,
  .c-table-price--no-break-sp tbody tr:nth-child(n+3) .c-table-price__cell::after {
    display: block;
  }
}

.c-pagination {
  margin-top: 9rem;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .c-pagination {
    margin-top: 5.5rem;
  }
}
.c-pagination__list {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  gap: 2.4rem;
}
.c-pagination__list-link, .c-pagination__list-current, .c-pagination__list-more {
  width: 4rem;
  height: auto;
  aspect-ratio: 1/1;
  border-radius: 50%;
  border: 1px solid #3A3A3A;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #3A3A3A;
  font-size: 1.8rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-decoration: none;
  transition: all 0.3s ease;
  font-family: "Barlow Condensed", serif;
}
@media screen and (max-width: 767px) {
  .c-pagination__list-link, .c-pagination__list-current, .c-pagination__list-more {
    width: 2.4rem;
    font-size: 1.4rem;
  }
}
.c-pagination__list-link:hover, .c-pagination__list-current:hover, .c-pagination__list-more:hover {
  background: #3A3A3A;
  color: #fff;
}
.c-pagination__list-current {
  background: #3A3A3A;
  color: #fff;
  cursor: default;
}
.c-pagination__list-current:hover {
  background: #3A3A3A;
  color: #fff;
}
.c-pagination__list-more {
  padding-bottom: 1rem;
}
@media screen and (max-width: 767px) {
  .c-pagination__list-more {
    padding-bottom: 0.8rem;
    line-height: 0.5;
  }
}
.c-pagination__list-more:hover {
  background: #fff;
  color: #3A3A3A;
}

.grecaptcha-badge {
  z-index: 10;
}
@media screen and (max-width: 767px) {
  .grecaptcha-badge {
    bottom: 14rem !important;
  }
}/*# sourceMappingURL=common.css.map */