@charset "UTF-8";
/*
  Chatwork 経理アシスタント 静的ページ 用スタイル（統合版）
  元: style.css(@import 群) + css/lp/accounting.css + css/swiper-bundle.min.css
  結合順は index.html での読み込み順（カスケード順）と同一。
  ビルド: npx sass css/style.scss css/style.css
*/
/* ---- Web fonts（各ファイル先頭にあった @import を先頭へ集約・重複排除） ---- */
@import url("https://fonts.googleapis.com/css2?family=Silkscreen:wght@400;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&family=Noto+Sans+JP:wght@100..900&display=swap");
/* ==============================================================================
   destyle.css
   ============================================================================== */
/*! destyle.css v3.0.0 | MIT License | https://github.com/nicolas-cusan/destyle.css */
/* Reset box-model and set borders */
/* ============================================ */
*,
::before,
::after {
  box-sizing: border-box;
  border-style: solid;
  border-width: 0;
}

/* 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 {
  font-size: 0.625em;
  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;
  font-family: "Chatwork Sans R", "Noto Sans JP", "Hiragino Sans", ヒラギノ角ゴシック, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, Helvetica, Arial, system-ui, sans-serif;
  color: #13202F;
}

/**
 * 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;
  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-top-width: 1px;
  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] {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted; /* 2 */
}

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

em {
  font-style: normal;
}

/**
 * 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;
}

/* Replaced content */
/* ============================================ */
/**
 * Prevent vertical alignment issues.
 */
svg,
img,
embed,
object,
iframe {
  vertical-align: bottom;
}

/* Forms */
/* ============================================ */
/**
 * Reset form fields to make them styleable.
 * 1. Make form elements stylable across systems iOS especially.
 * 2. Inherit text-transform from parent.
 */
/*select,*/
button,
input,
optgroup,
textarea {
  -webkit-appearance: none; /* 1 */
  -moz-appearance: none;
       appearance: none;
  vertical-align: middle;
  color: inherit;
  font: inherit;
  background: transparent;
  padding: 0;
  margin: 0;
  border-radius: 0;
  text-align: inherit;
  text-transform: inherit; /* 2 */
}

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

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

/**
 * Correct cursors for clickable elements.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  cursor: pointer;
}

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

/**
 * Improve outlines for Firefox and unify style with input elements & buttons.
 */
:-moz-focusring {
  outline: auto;
}

/*
select:disabled {
  opacity: inherit;
}
*/
/**
 * Remove padding
 */
option {
  padding: 0;
}

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

legend {
  padding: 0;
}

/**
 * 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. Fix font inheritance.
 */
::-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]:focus {
  outline: auto;
}

/* Tables */
/* ============================================ */
/**
1. Correct table border color inheritance in all Chrome and Safari.
*/
table {
  border-color: inherit; /* 1 */
}

caption {
  text-align: left;
}

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

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

/* ==============================================================================
   navi.css
   ============================================================================== */
/* --------------------------------------------
variables
-------------------------------------------- */
/* --------------------------------------------
font
-------------------------------------------- */
#header {
  z-index: 101;
  width: 100%;
  position: fixed;
  top: -1px;
  left: 0;
  background: #f7f7f7;
}

nav li a,
nav li span.pre {
  font-size: clamp(1.3rem, 1.2vw, 1.6rem);
}

nav .sub-menu,
.mean-container .mean-nav ul ul {
  background: #f0f0f0;
}

@media only screen and (max-width: 980px) {
  #header {
    padding: 10px 0;
    height: 62px;
  }
  .h_logo {
    width: 250px;
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 100;
  }
  .h_logo img {
    width: 200px;
    height: auto;
  }
  .lp_logo_header-nolink {
    height: 40px !important;
    width: auto !important;
    position: absolute !important;
    top: -5px !important;
    left: 7px !important;
  }
  #gNav .nav {
    overflow-y: auto;
    height: 100vh;
  }
  .mean-nav .container {
    padding: 0;
  }
  nav li .fa {
    display: none;
  }
}
@media print, screen and (min-width: 981px) {
  #header {
    height: 80px;
  }
  #h_top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.2);
  }
  .h_logo_lp {
    display: flex;
    height: 80px;
    margin-block: 0 !important;
    align-items: center;
  }
  .h_logo {
    width: 30%;
    max-width: 285px;
    margin-right: 1%;
    flex: 0 0 auto;
  }
  .h_logo img {
    width: 100%;
    height: auto;
    margin-left: 15px;
  }
  .lp_logo_header-nolink {
    height: 63px !important;
    width: auto !important;
    position: absolute !important;
    top: 9px !important;
    left: 13px !important;
  }
  .h_nav {
    display: flex;
    width: 69%;
    margin-left: auto;
    flex: 0 0 0;
    align-items: center;
    gap: 0 20px;
  }
  #gNav > ul {
    display: flex;
  }
  #gNav > ul > li {
    margin: 0 10px;
    white-space: nowrap;
  }
  #gNav > ul > li i {
    font-size: 16px;
    margin-left: 5px;
  }
  #gNav > ul > li > a,
  #gNav > ul > li span.pre {
    position: relative;
    display: flex;
    text-align: center;
    align-items: center;
    justify-content: center;
    height: 80px;
    white-space: nowrap;
  }
  #gNav .sub-menu {
    visibility: hidden;
    opacity: 0;
    z-index: 1;
    display: block;
    position: absolute;
    top: 50px;
    left: 50%;
    margin-left: -100px;
    width: 200px;
    transition: all 0.2s ease;
  }
  #gNav .sub-menu a {
    display: block;
    border-bottom: none;
    padding: 20px;
    line-height: 1.2em;
    height: auto;
  }
  #gNav .sub-menu a:hover:after {
    content: none;
  }
  #gNav .sub-menu li {
    display: block;
    font-size: 16px;
    padding: 0;
    margin: 0;
  }
  #gNav .sub-menu li:last-child {
    border-bottom: none;
  }
  #gNav ul > li:hover {
    transition: all 0.5s;
  }
  #gNav li:hover ul.sub-menu {
    top: 80px;
    visibility: visible;
    opacity: 1;
    z-index: 9999;
  }
  #gNav li ul li:after {
    content: none;
  }
  #gNav li:hover ul.sub-menu a {
    color: #13202f;
  }
  #gNav .sub-menu li a:hover {
    background: #f7f7f7;
  }
  #gNav .contact_btn a:hover {
    color: #fff;
  }
}
@media only screen and (max-width: 981px) {
  .fixed {
    position: fixed;
    width: 100%;
    height: 100%;
    z-index: 1;
  }
  #header .mask {
    background: rgba(22, 34, 42, 0.4);
    top: 60px;
    left: 0;
    z-index: 1;
    position: absolute;
    width: 100%;
    height: 100vh;
    opacity: 1;
    display: none;
  }
}
a.meanmenu-reveal {
  display: none;
}

.mean-container .mean-bar {
  width: 100%;
  position: fixed;
  background: none;
  min-height: 60px;
  z-index: 999998;
  top: 0;
  left: 0;
}

.mean-container .mean-bar {
  width: 100%;
  position: fixed;
  background: none;
  min-height: 60px;
  z-index: 98;
  top: 0;
  left: 0;
}

.meanmenu-reveal-btn {
  position: absolute;
  display: block;
  z-index: 99999;
  box-sizing: border-box;
  width: 60px;
  height: 60px;
  right: 0;
  top: 0;
}

.meanmenu-reveal {
  width: 26px;
  height: 20px;
  margin: 13px 17px 27px 17px;
  display: block !important;
  position: relative;
  float: right;
}

.meanmenu-reveal:after {
  content: "MENU";
  position: absolute;
  bottom: -20px;
  color: #13202f;
  font-size: 10px;
  width: 60px;
  left: -17px;
  text-align: center;
  display: block;
}

.meanmenu-reveal.meanclose:after {
  content: "CLOSE";
}

.meanmenu-reveal span {
  display: inline-block;
  transition: all 0.4s;
  box-sizing: border-box;
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  margin: 0 auto;
}

.meanmenu-reveal span:nth-of-type(1) {
  top: 0;
  background: #13202f;
}

.meanmenu-reveal span:nth-of-type(2) {
  top: 8px;
  background: #13202f;
}

.meanmenu-reveal span:nth-of-type(3) {
  top: 16px;
  background: #13202f;
}

.meanmenu-reveal span:nth-of-type(1) {
  animation: menu-ber01 0.75s forwards;
}

.meanmenu-reveal span:nth-of-type(2) {
  transition: all 0.25s 0.25s;
  opacity: 1;
}

.meanmenu-reveal span:nth-of-type(3) {
  animation: menu-ber02 0.75s forwards;
}

.meanclose span:nth-of-type(1) {
  animation: active-menu-ber01 0.75s forwards;
  top: -2px;
}

.meanclose span:nth-of-type(2) {
  opacity: 0;
}

.meanclose span:nth-of-type(3) {
  animation: active-menu-ber03 0.75s forwards;
}
@keyframes menu-ber01 {
  0% {
    transform: translateY(8px) rotate(45deg);
  }
  50% {
    transform: translateY(8px) rotate(0);
  }
  100% {
    transform: translateY(0) rotate(0);
  }
}
@keyframes menu-ber02 {
  0% {
    transform: translateY(-8px) rotate(-45deg);
  }
  50% {
    transform: translateY(-8px) rotate(0);
  }
  100% {
    transform: translateY(0) rotate(0);
  }
}
@keyframes active-menu-ber01 {
  0% {
    transform: translateY(0) rotate(0);
  }
  50% {
    transform: translateY(10px) rotate(0);
  }
  100% {
    transform: translateY(10px) rotate(45deg);
  }
}
@keyframes active-menu-ber03 {
  0% {
    transform: translateY(0) rotate(0);
  }
  50% {
    transform: translateY(-8px) rotate(0);
  }
  100% {
    transform: translateY(-8px) rotate(-45deg);
  }
}
.mean-container .mean-nav {
  width: 100%;
  margin-top: 59px;
  max-height: 100vh;
  overflow-y: auto;
}

.mean-container .mean-nav ul {
  padding: 0;
  margin: 0;
  width: 100%;
  list-style-type: none;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
  position: relative;
  z-index: 99;
  max-height: 100vh;
  max-height: calc(100vh - 60px);
  background: #f7f7f7;
}

.mean-container .mean-nav ul ul {
  padding-bottom: 0;
  margin-bottom: 0;
}

.mean-container .mean-nav ul li {
  position: relative;
  width: 100%;
  box-sizing: border-box;
}

.mean-container .mean-nav ul li a,
.mean-container .mean-nav ul li span.pre {
  display: block;
  width: 100%;
  padding: 20px 10px;
  margin: 0;
  text-align: left;
  text-decoration: none;
  text-transform: uppercase;
  color: #13202f;
  box-sizing: border-box;
}

.mean-container .mean-nav ul li li a {
  width: 100%;
  padding: 1em 10%;
  text-shadow: none !important;
  visibility: visible;
}

.mean-container .mean-nav ul li.mean-last a {
  border-bottom: none;
  margin-bottom: 0;
}

.mean-container .mean-nav ul li li li a {
  width: 70%;
  padding: 1em 15%;
}

.mean-container .mean-nav ul li li li li a {
  width: 60%;
  padding: 1em 20%;
}

.mean-container .mean-nav ul li li li li li a {
  width: 50%;
  padding: 1em 25%;
}

.mean-container .mean-nav ul li a:hover {
  background: #13202f;
  background: rgba(255, 255, 255, 0.1);
}

.mean-container .mean-nav ul li a.mean-expand {
  /*margin-top:1px;*/
  width: 60px;
  text-align: center;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 2;
  padding: 17px;
  font-size: 30px;
  color: #fff;
  background-color: #979da9;
}

.mean-container .mean-nav ul li a.mean-expand:hover {
  background: #979da9;
  color: #fff;
}

.mean-container .mean-push {
  float: left;
  width: 100%;
  padding: 0;
  margin: 0;
  clear: both;
}

.mean-nav .wrapper {
  width: 100%;
  padding: 0;
  margin: 0;
}

.mean-container .mean-bar,
.mean-container .mean-bar * {
  box-sizing: content-box;
}

.mean-remove {
  display: none !important;
}

@media print, screen and (min-width: 981px) {
  .nav .nav_btn {
    display: flex;
    align-items: center;
    margin: 0 5px !important;
  }
}
@media only screen and (max-width: 980px) {
  .nav .nav_btn {
    display: inline-block !important;
    width: 47% !important;
    margin: 0 1% !important;
    padding-block: 10px;
  }
}
.nav .nav_btn.document a {
  background: #f03748;
  color: #fff;
  border: 3px solid #f03748 !important;
}

.nav .nav_btn.contact a {
  background: #fff;
  color: #f03748;
  border: 3px solid #f03748 !important;
}

.nav .nav_btn a {
  font-size: clamp(1.6rem, 2vw, 1.6rem) !important;
  text-align: center !important;
  padding-top: 2px;
  line-height: 41px !important;
  height: auto !important;
  top: -1px;
  width: 130px;
  border-radius: 100vh;
}

@media only screen and (max-width: 980px) {
  .nav .nav_btn a {
    text-align: center !important;
    padding: 5px !important;
    text-align: center;
    display: inline-block !important;
    line-height: 36px !important;
    height: auto !important;
    top: -1px;
    width: 100%;
    border-radius: 100vh;
  }
}
@media screen and (min-width: 769px) {
  .nav-item .pre, .nav-item > a {
    position: relative;
  }
}
@media screen and (min-width: 769px) {
  .nav-item .pre::after, .nav-item > a::after {
    position: absolute;
    bottom: -1px;
    left: 50%;
    translate: -50% 0;
    width: 0;
    height: 4px;
    background-color: #f03748;
    transition: 0.3s width;
    content: "";
  }
}
@media screen and (min-width: 769px) {
  .nav-item:hover .pre::after, .nav-item:hover > a::after {
    width: 100%;
  }
}
.nav-item.faq .mean-expand {
  display: none;
}

.nav-child {
  display: grid;
  width: 100vw;
  background-color: #f7f7f7;
}

@media screen and (min-width: 769px) {
  .nav-child {
    position: absolute;
    left: 50%;
    z-index: -1;
    translate: -50% 0;
    grid-template-rows: 0fr;
    transition: 0.3s grid-template-rows, 0.3s padding;
  }
}
@media screen and (min-width: 769px) {
  .nav > li:hover .nav-child {
    padding-block: 40px 48px;
    grid-template-rows: 1fr;
  }
}
.nav-child__inner {
  width: min(100%, 1200px);
  overflow: hidden;
  margin-inline: auto;
}

.nav-child__heading {
  padding-bottom: 16px;
  border-bottom: 1px solid #ccc;
}

@media screen and (min-width: 769px) {
  .nav-child__heading {
    display: flex;
    margin-bottom: 24px;
    align-items: center;
    justify-content: space-between;
  }
}
@media screen and (max-width: 768px) {
  .nav-child__heading {
    display: none;
    padding: 10px;
    flex-direction: column;
  }
}
.nav-child__heading p {
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(1.4rem, 1.44vw, 1.8rem);
}

.nav-child__heading p a {
  display: flex;
  position: relative;
  align-items: center;
  gap: 0 16px;
  transition: 0.3s color;
}

.nav-child__heading p a::before {
  position: absolute;
  top: 50%;
  right: 5px;
  translate: 0 -50%;
  width: 4px;
  height: 6px;
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  background-color: #fff;
  content: "";
}

.nav-child__heading p a::after {
  display: block;
  width: 16px;
  height: 16px;
  border-radius: 100%;
  background-color: #13202f;
  flex: 0 0 auto;
  transition: 0.3s background-color;
  content: "";
}

.nav-child__heading p a:hover {
  color: #f03748;
}

.nav-child__heading p a:hover::after {
  background-color: #f03748;
}

.nav-child__contact {
  display: flex;
  gap: 0 20px;
  flex: 1 1 auto;
  justify-content: flex-end;
}

.nav-child__contact__button {
  display: flex;
  position: relative;
  border: 1px solid #13202f;
  border-radius: 4px;
  background-color: #fff;
  color: #13202f;
  font-size: 1.4rem;
  align-items: center;
  justify-content: center;
  transition: 0.3s opacity;
}

@media screen and (min-width: 769px) {
  .nav-child__contact__button {
    width: min(100%, 160px);
    padding: 8px;
  }
}
@media screen and (max-width: 768px) {
  .nav-child__contact__button {
    width: -moz-fit-content;
    width: fit-content;
    padding: 10px 16px !important;
  }
}
.nav-child__contact__button::before {
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  rotate: 45deg;
  width: 6px;
  height: 6px;
  border-top: 1px solid;
  border-right: 1px solid;
  transition: 0.3s all;
  content: "";
}

@media screen and (min-width: 769px) {
  .nav-child__contact__button::before {
    right: 16px;
  }
}
@media screen and (max-width: 768px) {
  .nav-child__contact__button::before {
    right: 8px;
  }
}
.nav-child__contact__button:hover {
  opacity: 0.7;
}

@media screen and (min-width: 769px) {
  .nav-child__contact__button:hover::before {
    right: 10px;
  }
}
.nav-child__tab__list {
  display: flex;
}

@media screen and (min-width: 769px) {
  .nav-child__tab__list {
    margin-bottom: 32px;
  }
}
.nav-child__tab__list li {
  position: relative;
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(1.4rem, 1.3vw, 1.6rem);
  cursor: pointer;
  transition: 0.3s color;
}

@media screen and (min-width: 769px) {
  .nav-child__tab__list li {
    padding: 8px 24px;
  }
}
.nav-child__tab__list li::before {
  opacity: 0;
  transition: 0.3s opacity;
  content: "";
}

.nav-child__tab__list li:hover {
  color: #f03748;
}

.nav-child__tab__list li.is-active {
  background-color: #13202f;
  color: #fff;
}

.nav-child__tab__list li.is-active::before {
  opacity: 1;
  position: absolute;
  top: calc(100% - 1px);
  left: 50%;
  translate: -50% 0;
  width: 12px;
  height: 10px;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  background-color: #13202f;
  content: "";
}

.nav-child__tab__contents .nav-child__menu {
  display: none;
}

.nav-child__tab__contents .nav-child__menu.is-active {
  display: flex;
}

.nav-child__menu {
  display: flex;
}

@media screen and (min-width: 769px) {
  .nav-child__menu {
    flex-wrap: wrap;
    gap: 24px 48px;
  }
}
@media screen and (max-width: 768px) {
  .nav-child__menu {
    flex-direction: column;
  }
}
.nav-child__menu a {
  display: flex !important;
  position: relative;
  align-items: center;
  gap: 0 16px;
  transition: 0.3s color;
}

@media screen and (max-width: 768px) {
  .nav-child__menu a {
    justify-content: space-between;
  }
}
.nav-child__menu a::before {
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  width: 4px;
  height: 6px;
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  background-color: #fff;
  content: "";
}

@media screen and (min-width: 769px) {
  .nav-child__menu a::before {
    right: 5px;
  }
}
@media screen and (max-width: 768px) {
  .nav-child__menu a::before {
    right: calc(10% + 5px);
  }
}
.nav-child__menu a::after {
  display: block;
  width: 16px;
  height: 16px;
  border-radius: 100%;
  background-color: #13202f;
  flex: 0 0 auto;
  transition: 0.3s background-color;
  content: "";
}

.nav-child__menu a:hover {
  color: #f03748;
}

.nav-child__menu a:hover::after {
  background-color: #f03748;
}

@media screen and (min-width: 769px) {
  #header:has(.nav-item:hover) + .layer::after {
    position: fixed;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
    width: 100vw;
    height: 100vh;
    z-index: 10;
    background-color: rgba(0, 0, 0, 0.16);
    content: "";
  }
}
/* ==============================================================================
   base.css
   ============================================================================== */
/* --------------------------------------------
variables
-------------------------------------------- */
/* --------------------------------------------
font
-------------------------------------------- */
/* --------------------------------------------
Wordpress.comのサイトを見るときにツールバーを表示するは
function.phpで消えなかったのでcssで対応。
-------------------------------------------- */
#wpcom-launch-banner-wrapper {
  display: none;
}

/* --------------------------------------------
ON OFF
-------------------------------------------- */
.sp-on {
  display: none;
}

@media screen and (max-width: 767px) {
  .pc-on {
    display: none;
  }
  .sp-on {
    display: block;
  }
}
/* --------------------------------------------
layout
-------------------------------------------- */
.caution_note {
  margin-top: 30px;
  font-size: clamp(1.2rem, 2vw, 1.4rem);
  line-height: 1.3;
  color: #7c8697;
  font-family: "Chatwork Sans L", sans-serif;
}

@media screen and (min-width: 769px) {
  .inner {
    width: 1200px;
    margin: 0 auto;
    padding: 80px 0 80px 0;
  }
}
@media screen and (min-width: 769px) and (max-width: 1210px) {
  .inner {
    width: 92%;
    margin: 0 4%;
  }
}
@media screen and (max-width: 768px) {
  .inner {
    width: 92%;
    margin: 0 4%;
    padding: 40px 0 40px 0;
  }
}
@media screen and (min-width: 769px) {
  .inner960 {
    width: 960px;
    margin: 0 auto;
    padding: 80px 0 80px 0;
  }
}
@media screen and (min-width: 769px) and (max-width: 1210px) {
  .inner960 {
    width: 92%;
    margin: 0 4%;
  }
}
@media screen and (max-width: 768px) {
  .inner960 {
    width: 92%;
    margin: 0 4%;
    padding: 40px 0 40px 0;
  }
}
main {
  padding-top: 80px;
}

@media screen and (max-width: 767px) {
  main {
    padding-top: 60px;
  }
  .article-wrapper {
    width: auto;
    margin: 0 2%;
    display: block;
  }
  article {
    margin-top: 2%;
    width: auto;
  }
  article .article_box {
    margin-bottom: 2%;
    padding: 4%;
  }
  aside {
    margin-top: 2%;
    width: auto;
  }
}
@media screen and (min-width: 769px) {
  .page_wrap {
    width: 1200px;
    margin: 0 auto;
  }
}
@media screen and (min-width: 769px) and (max-width: 1210px) {
  .page_wrap {
    width: 92%;
    margin: 0 4%;
  }
}
@media screen and (max-width: 768px) {
  .page_wrap {
    width: 92%;
    margin: 0 4%;
  }
}
@media screen and (min-width: 769px) {
  .form_wrap {
    width: 1200px;
    display: flex;
    justify-content: space-between;
    flex-direction: row-reverse;
    gap: 0 3%;
    margin: 0 auto 60px;
  }
}
@media screen and (min-width: 769px) and (max-width: 1210px) {
  .form_wrap {
    width: 92%;
    margin: 0 4%;
    display: flex;
    justify-content: space-between;
    flex-direction: row-reverse;
    gap: 0 3%;
    margin: 0 auto 60px;
  }
}
@media screen and (max-width: 768px) {
  .form_wrap {
    width: 92%;
    margin: 0 auto 30px;
  }
}
.form_wrap.seminar {
  padding-top: 10px;
}

.form_wrap .ttl_form_inq {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0 2%;
  padding-left: 4%;
}

.form_wrap .ttl_form_inq::before {
  position: absolute;
  content: "";
  background: #f03748;
  border-radius: 100vh;
}

@media screen and (min-width: 769px) {
  .form_wrap .ttl_form_inq::before {
    width: 8px;
    height: 8px;
    top: 16px;
    left: 0px;
  }
}
@media screen and (max-width: 768px) {
  .form_wrap .ttl_form_inq::before {
    width: 4px;
    height: 4px;
    top: 10px;
    left: 0px;
  }
}
.form_wrap .ttl_form_inq::after {
  content: "";
  position: absolute;
  background: #f03748;
  border-radius: 100vh;
}

@media screen and (min-width: 769px) {
  .form_wrap .ttl_form_inq::after {
    width: 8px;
    height: 55px;
    top: 32px;
    left: 0px;
  }
}
@media screen and (max-width: 768px) {
  .form_wrap .ttl_form_inq::after {
    width: 4px;
    height: 40px;
    top: 20px;
    left: 0px;
  }
}
.form_wrap .ttl_form_inq .ttl_form_inq_l {
  width: 75%;
}

.form_wrap .ttl_form_inq .ttl_form_inq_l h1 {
  font-family: "Chatwork Sans EB", sans-serif;
  font-size: clamp(1.8rem, 2.8vw, 3.6rem);
}

.form_wrap .ttl_form_inq .ttl_form_inq_l p {
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(1.6rem, 2vw, 3rem);
}

.form_wrap .ttl_form_inq .ttl_form_inq_l p img {
  width: 30px;
  height: auto;
  margin-left: 5px;
}

.form_wrap .ttl_form_inq .ttl_form_inq_r {
  width: 23%;
}

.form_wrap .ttl_form_inq .ttl_form_inq_r .ttl_form_img {
  width: 100%;
  max-width: 120px;
  height: auto;
}

@media screen and (min-width: 769px) {
  .form_wrap .form_wrap_l {
    width: 37%;
  }
  .form_wrap .form_wrap_l .ttl_form_inq {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .form_wrap .form_wrap_l .ttl_form_inq {
    display: flex;
  }
}
@media screen and (min-width: 769px) {
  .form_wrap .form_wrap_r {
    width: 60%;
  }
  .form_wrap .form_wrap_r .ttl_form_inq {
    display: flex;
  }
}
@media screen and (max-width: 768px) {
  .form_wrap .form_wrap_r .ttl_form_inq {
    display: none;
  }
}
@media screen and (min-width: 769px) {
  .form_wrap.form_wrap_2 {
    margin-top: 15px;
  }
}
@media screen and (max-width: 768px) {
  .form_wrap.form_wrap_2 {
    margin-top: 10px;
  }
}
@media screen and (min-width: 769px) {
  .form_wrap.form_wrap_2 .form_wrap_l {
    width: 30%;
  }
}
@media screen and (max-width: 768px) {
  .form_wrap.form_wrap_2 .form_wrap_l .ttl_form_inq_r img {
    opacity: 0;
  }
}
.form_wrap.form_wrap_2 .form_wrap_l img {
  width: 100%;
  height: auto;
}

@media screen and (min-width: 769px) {
  .form_wrap.form_wrap_2 .form_wrap_r {
    width: 70%;
  }
}
@media screen and (min-width: 769px) {
  .form_wrap.form_wrap_3 {
    width: 1200px;
    display: flex;
    justify-content: center;
    flex-direction: row;
    gap: 0 3%;
    margin: 0 auto 60px;
  }
}
@media screen and (min-width: 769px) {
  .form_wrap.form_wrap_3 .form_wrap_r {
    width: 70%;
  }
}
@media screen and (min-width: 769px) {
  .case_wrap {
    width: 1015px;
    display: flex;
    justify-content: space-between;
    gap: 0 37px;
    margin: 0 auto 0px;
  }
}
@media screen and (min-width: 769px) and (max-width: 1210px) {
  .case_wrap {
    width: 92%;
    margin: 0 4%;
    display: flex;
    justify-content: space-between;
    gap: 0 3%;
    margin: 0 auto 0px;
  }
}
@media screen and (max-width: 768px) {
  .case_wrap {
    width: 92%;
    margin: 0 auto 0px;
  }
}
@media screen and (min-width: 769px) {
  .static_wrap {
    width: 960px;
    margin: 0 auto;
  }
}
@media screen and (min-width: 769px) and (max-width: 1210px) {
  .static_wrap {
    width: 92%;
    margin: 0 4%;
  }
}
@media screen and (max-width: 768px) {
  .static_wrap {
    width: 92%;
    margin: 0 4%;
  }
}
/* --------------------------------------------
title
-------------------------------------------- */
.tt {
  position: relative;
  text-align: center;
  font-family: "Chatwork Sans EB", sans-serif;
  font-feature-settings: "palt";
  line-height: 1.3;
  letter-spacing: 1px;
}

@media screen and (min-width: 769px) {
  .tt {
    margin: 0px auto 45px;
    font-size: 3.6rem;
  }
}
@media screen and (max-width: 768px) {
  .tt {
    margin: 0px auto 30px;
    font-size: 2.2rem;
  }
}
@media screen and (min-width: 769px) {
  .ttl2 {
    margin-bottom: 50px;
  }
}
@media screen and (max-width: 768px) {
  .ttl2 {
    margin-bottom: 30px;
  }
}
.ttl2 .tt {
  text-align: center;
  font-family: "Chatwork Sans EB", sans-serif;
  font-feature-settings: "palt";
  line-height: 1.4;
  letter-spacing: 1px;
}

@media screen and (min-width: 769px) {
  .ttl2 .tt {
    margin: 0px auto 20px;
    font-size: 3.6rem;
  }
}
@media screen and (max-width: 768px) {
  .ttl2 .tt {
    margin: 0px auto 10px;
    font-size: 2.2rem;
  }
}
.ttl2 .sub_ttl {
  text-align: center;
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(1.5rem, 2vw, 2.4rem);
  line-height: 1.4;
}

.ttl2 .sub_ttl span {
  color: #f03748;
}

@media screen and (min-width: 769px) {
  .tt_2_fv {
    margin: 40px auto 0px;
  }
}
@media screen and (max-width: 768px) {
  .tt_2_fv {
    margin: 20px auto 0px;
  }
}
.tt_2_fv h1 {
  text-align: center;
  font-size: clamp(2.2rem, 3vw, 3.6rem);
  font-family: "Chatwork Sans EB", sans-serif;
}

.tt_2_fv h1 span {
  display: block;
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(1.3rem, 3vw, 1.8rem);
  color: #f03748;
}

@media screen and (min-width: 769px) {
  .tt_2_fv h1 span {
    padding: 15px 0 35px;
  }
}
@media screen and (max-width: 768px) {
  .tt_2_fv h1 span {
    padding: 10px 0 20px;
  }
}
.tt_2_fv p {
  text-align: center;
  font-size: clamp(1.2rem, 3vw, 1.8rem);
  line-height: 1.5;
}

.tt_2_fv p span {
  display: block;
  text-align: center;
  font-size: clamp(1.1rem, 3vw, 1.3rem);
  line-height: 1.3;
}

@media screen and (min-width: 769px) {
  .tt_2_fv p span {
    padding-top: 15px;
  }
}
@media screen and (max-width: 768px) {
  .tt_2_fv p span {
    padding-top: 10px;
  }
}
.ttl_left_border {
  position: relative;
  font-size: clamp(2.2rem, 3vw, 3.6rem);
  font-family: "Chatwork Sans EB", sans-serif;
}

@media screen and (min-width: 769px) {
  .ttl_left_border {
    border-left: 10px solid #f03748;
    padding: 5px 0 5px 15px;
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 768px) {
  .ttl_left_border {
    border-left: 6px solid #f03748;
    padding: 5px 0 5px 15px;
    margin-bottom: 20px;
  }
}
.ttl_bottom_border {
  position: relative;
  text-align: center;
  font-size: clamp(2.2rem, 3vw, 3.6rem);
  font-family: "Chatwork Sans EB", sans-serif;
}

.ttl_bottom_border::after {
  content: "";
  position: absolute;
  background: #f03748;
  left: 0;
  right: 0;
  margin: auto;
}

@media screen and (min-width: 769px) {
  .ttl_bottom_border {
    padding: 5px 0 5px 15px;
    margin-bottom: 40px;
  }
  .ttl_bottom_border::after {
    width: 80px;
    height: 5px;
    bottom: -15px;
  }
}
@media screen and (max-width: 768px) {
  .ttl_bottom_border {
    padding: 5px 0 5px 15px;
    margin-bottom: 20px;
  }
  .ttl_bottom_border::after {
    width: 40px;
    height: 3px;
    bottom: -10px;
  }
}
.tt_single {
  padding: 5px 0;
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(1.6rem, 2vw, 2.8rem);
  line-height: 1.5;
}

.to_list {
  position: absolute;
  right: 0px;
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(1.2rem, 2vw, 1.8rem);
}

@media screen and (min-width: 769px) {
  .to_list {
    bottom: 0px;
  }
}
@media screen and (max-width: 768px) {
  .to_list {
    bottom: -20px;
  }
}
.to_list a {
  position: relative;
  display: inline-block;
}

.to_list a::before {
  content: "";
  position: absolute;
  vertical-align: middle;
  z-index: 2;
  transform: translateY(-50%);
}

@media screen and (min-width: 769px) {
  .to_list a::before {
    top: 10px;
    left: -13px;
    border: 3px solid transparent;
    border-left: 5px solid #FFF;
  }
}
@media screen and (max-width: 768px) {
  .to_list a::before {
    top: 7px;
    left: -12px;
    border: 3px solid transparent;
    border-left: 4px solid #FFF;
  }
}
.to_list a::after {
  content: "";
  position: absolute;
  background: #13202f;
  border-radius: 100vh;
}

@media screen and (min-width: 769px) {
  .to_list a::after {
    top: 3px;
    left: -19px;
    width: 15px;
    height: 15px;
    z-index: 1;
  }
}
@media screen and (max-width: 768px) {
  .to_list a::after {
    top: 0;
    left: -18px;
    width: 14px;
    height: 14px;
    z-index: 1;
  }
}
.tt_chat_bubble {
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(1.6rem, 2vw, 2.2rem);
  margin: 40px 0px 15px 0px;
  background-position: top left;
  background-repeat: no-repeat;
}

@media screen and (min-width: 769px) {
  .tt_chat_bubble {
    padding-left: 30px;
    background-size: 21px 22px;
  }
}
@media screen and (max-width: 768px) {
  .tt_chat_bubble {
    padding-left: 23px;
    background-size: 18px 16px;
  }
}
.tt_chat_bubble:first-child {
  margin-top: 0;
}

.tt_chat_bubble.red {
  background-image: url(../img/icn_chat_bubble_red.svg);
}

.tt_chat_bubble.black {
  background-image: url(../img/icn_chat_bubble_black.svg);
}

/* --------------------------------------------
parts
-------------------------------------------- */
@media screen and (min-width: 769px) {
  .no_top {
    background-image: url(../img/bg_no_top_pc.gif);
    background-repeat: repeat;
    background-position: top 40px center;
  }
}
@media screen and (max-width: 768px) {
  .no_top {
    background-image: url(../img/bg_no_top_sp.gif);
    background-repeat: repeat;
    background-position: top 10px center;
  }
}
.breadcrumbs {
  position: relative;
  z-index: 1;
}

@media screen and (min-width: 769px) {
  .breadcrumbs {
    width: 1200px;
    margin: 15px auto 12px;
  }
}
@media screen and (min-width: 769px) and (max-width: 1210px) {
  .breadcrumbs {
    width: 92%;
    margin: 0px auto 0px;
    padding: 13px 0 10px;
  }
}
@media screen and (max-width: 768px) {
  .breadcrumbs {
    width: 92%;
    margin: 0px auto;
    white-space: nowrap;
    overflow-x: scroll;
    padding: 13px 0 10px;
  }
  .breadcrumbs::after {
    content: "";
    position: fixed;
    display: block;
    z-index: 2;
    right: 0;
    top: 64px;
    width: 30px;
    height: 25px;
    background: linear-gradient(to left, rgb(255, 255, 255) 0%, rgba(255, 255, 255, 0.5) 95%, rgba(255, 255, 255, 0) 100%);
  }
}
.breadcrumbs li {
  display: inline-block;
  padding-left: 7px;
  font-size: clamp(1.1rem, 2vw, 1.2rem);
  color: #979da9;
}

@media screen and (min-width: 769px) {
  .breadcrumbs li {
    padding-right: 20px;
  }
}
@media screen and (max-width: 768px) {
  .breadcrumbs li {
    padding-right: 15px;
  }
}
.breadcrumbs li:first-child {
  padding-left: 0px;
}

.breadcrumbs li a {
  position: relative;
  font-size: clamp(1.1rem, 2vw, 1.2rem);
  font-weight: 300;
  color: #979da9;
  letter-spacing: 1px;
}

.breadcrumbs li a::after {
  content: "";
  border: 0;
  border-top: solid 1px #979da9;
  border-right: solid 1px #979da9;
  display: inline-block;
  width: 6px;
  height: 6px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
}

@media screen and (min-width: 769px) {
  .breadcrumbs li a::after {
    right: -15px;
  }
}
@media screen and (max-width: 768px) {
  .breadcrumbs li a::after {
    right: -13px;
  }
}
.service_banner2 ul {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
}

@media screen and (min-width: 769px) {
  .service_banner2 ul {
    gap: 30px 3%;
    padding: 30px 0 80px;
  }
}
@media screen and (max-width: 768px) {
  .service_banner2 ul {
    gap: 30px 5%;
    padding: 25px 0 60px;
  }
}
@media screen and (min-width: 769px) {
  .service_banner2 ul li {
    width: 22%;
  }
}
@media screen and (max-width: 768px) {
  .service_banner2 ul li {
    width: 46%;
  }
}
.service_banner2 ul li a {
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 16/9;
  width: 100%;
  text-align: center;
  height: 100%;
  background: #FFF;
  border: 2px solid #13202f;
  box-shadow: 4px 4px 0px 0px #f03748;
  transition: 0.3s;
}

@media screen and (min-width: 769px) {
  .service_banner2 ul li a {
    padding: 0 20px;
  }
}
@media screen and (max-width: 768px) {
  .service_banner2 ul li a {
    padding: 0 20px;
  }
}
.service_banner2 ul li a:hover {
  box-shadow: none;
}

.service_banner2 ul li a img {
  width: 100%;
  height: auto;
}

@media screen and (min-width: 769px) {
  .service_banner2 ul li a img {
    max-width: 170px;
  }
}
@media screen and (max-width: 768px) {
  .service_banner2 ul li a img {
    min-width: 100px;
  }
}
/* --------------------------------------------
float__bnr
-------------------------------------------- */
.float__bnr {
  position: fixed;
  bottom: 32px;
  right: 32px;
  z-index: 99;
  width: 300px;
  opacity: 0;
  transform: translateX(120%);
  transition: 1.2s cubic-bezier(0.9, -0.05, 0.07, 1.2);
}

@media screen and (max-width: 768px) {
  .float__bnr {
    right: 0;
    left: 0;
    margin: auto;
    width: 90%;
    bottom: 16px;
    transform: translateX(0);
    transform: translateY(50%);
  }
}
.float__bnr.is-show {
  transform: translateX(0);
  transition: 1.2s cubic-bezier(0.9, -0.05, 0.07, 1.2);
  opacity: 1;
}

@media screen and (max-width: 768px) {
  .float__bnr.is-show {
    transform: translateY(0);
  }
}
.float__bnr .image {
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
  display: block;
  transition: 0.3s ease;
}

.float__bnr .image img {
  max-width: 100%;
  height: auto;
}

@media screen and (max-width: 768px) {
  .float__bnr .image img {
    max-width: 100%;
    height: auto;
  }
}
.float__bnr .image:hover {
  box-shadow: 0 1px 8px rgba(0, 0, 0, 0.1);
  transition: 0.3s ease;
  transform: scale(0.985);
}

.float__bnr .close {
  position: absolute;
  top: -36px;
  right: 0;
  width: 28px;
  height: 28px;
  background: #13202f;
  display: block;
  border-radius: 50px;
  cursor: pointer;
}

@media screen and (max-width: 768px) {
  .float__bnr .close {
    top: -12px;
    right: -12px;
    width: 24px;
    height: 24px;
  }
}
.float__bnr .close::before, .float__bnr .close::after {
  content: "";
  position: absolute;
  display: block;
  width: 3px;
  height: 16px;
  background: #fff;
  margin: auto;
  border-radius: 50px;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  transition: 0.3s ease;
}

@media screen and (max-width: 768px) {
  .float__bnr .close::before, .float__bnr .close::after {
    width: 2px;
    height: 14px;
  }
}
.float__bnr .close:after {
  transform: rotate(-45deg);
}

.float__bnr .close:before {
  transform: rotate(45deg);
}

.float__bnr .close:hover:before {
  transform: rotate(90deg);
  transition: 0.3s ease;
}

.float__bnr .close:hover:after {
  transform: rotate(-90deg);
  transition: 0.3s ease;
}

.float__bnr {
  /* --------------------------------------------
  size-s
  -------------------------------------------- */
}

.float__bnr.size-s {
  right: 12px;
  width: 260px;
}

/* --------------------------------------------
taxonomy_list
-------------------------------------------- */
.taxonomy_list {
  position: relative;
  background-color: #f0f0f0;
}

@media screen and (min-width: 769px) {
  .taxonomy_list {
    margin-bottom: 80px;
    padding: 40px;
  }
}
@media screen and (max-width: 768px) {
  .taxonomy_list {
    margin-bottom: 40px;
    padding: 15px;
  }
}
.taxonomy_list::after {
  content: "";
  position: absolute;
  background-image: url(../img/icn_triangle.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: top center;
  width: 100%;
  top: 99%;
  left: 50%;
  transform: translateX(-50%);
}

@media screen and (min-width: 769px) {
  .taxonomy_list::after {
    height: 51px;
  }
}
@media screen and (max-width: 768px) {
  .taxonomy_list::after {
    height: 15px;
  }
}
@media screen and (min-width: 769px) {
  .taxonomy_list ul {
    display: flex;
    justify-content: left;
    gap: 30px 2%;
    flex-wrap: wrap;
  }
}
@media screen and (max-width: 768px) {
  .taxonomy_list ul {
    display: flex;
    justify-content: center;
    gap: 20px 2%;
    flex-wrap: wrap;
  }
}
.taxonomy_list ul li {
  background-color: #FFF;
}

@media screen and (min-width: 769px) {
  .taxonomy_list ul li {
    width: 18%;
  }
}
@media screen and (max-width: 768px) {
  .taxonomy_list ul li {
    width: 32%;
  }
}
.taxonomy_list ul li a,
.taxonomy_list ul li span {
  display: flex;
  text-align: center;
  font-feature-settings: "palt";
  letter-spacing: 1px;
  font-size: clamp(1.3rem, 2vw, 1.6rem);
  border: 2px solid #e2e3e7;
}

@media screen and (min-width: 769px) {
  .taxonomy_list ul li a,
  .taxonomy_list ul li span {
    padding: 2px 0px 0px 0px;
    text-align: center;
    align-items: center;
    justify-content: center;
    min-height: 55px;
  }
}
@media screen and (max-width: 768px) {
  .taxonomy_list ul li a,
  .taxonomy_list ul li span {
    text-align: center;
    letter-spacing: 1px;
    align-items: center;
    justify-content: center;
    min-height: 45px;
    padding-top: 2px;
  }
}
.taxonomy_list ul li a {
  transition: 0.3s;
}

.taxonomy_list ul li a:hover {
  background-color: #f03748;
  border: 2px solid #f03748;
  color: #FFF;
}

.taxonomy_list ul li span,
.taxonomy_list ul li a.current {
  position: relative;
  background-color: #f03748;
  border: 2px solid #f03748;
  color: #FFF;
  pointer-events: none;
}

.taxonomy_list ul li span::after,
.taxonomy_list ul li a.current::after {
  position: absolute;
  content: "";
  bottom: -20px;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 9px 6px 0 6px;
  border-color: #f03748 transparent transparent transparent;
}

@media screen and (min-width: 769px) {
  .taxonomy_list.taxonomy_case_list ul {
    display: block;
  }
}
@media screen and (max-width: 768px) {
  .taxonomy_list.taxonomy_case_list ul {
    display: block;
  }
}
.taxonomy_list.taxonomy_case_list ul li {
  width: auto;
  display: inline-block;
  margin: 8px;
}

.taxonomy_list.taxonomy_case_list ul li a {
  padding: 10px 15px 10px 15px;
  min-height: auto;
}

.taxonomy_list.taxonomy_case_list ul li span,
.taxonomy_list.taxonomy_case_list ul li a.current {
  padding: 10px 15px 10px 15px;
  min-height: auto;
}

.taxonomy_list.taxonomy_case_list ul li span::after,
.taxonomy_list.taxonomy_case_list ul li a.current::after {
  position: absolute;
  content: "";
  bottom: -20px;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 9px 6px 0 6px;
  border-color: #f03748 transparent transparent transparent;
}

/* --------------------------------------------
taxonomy_list_2
-------------------------------------------- */
.taxonomy_list_2 ul {
  display: flex;
}

@media screen and (min-width: 769px) {
  .taxonomy_list_2 ul {
    padding-top: 20px;
    gap: 0 1%;
    border-bottom: 1px solid #e2e3e7;
  }
}
@media screen and (max-width: 768px) {
  .taxonomy_list_2 ul {
    padding-top: 20px;
    gap: 10px 2%;
    flex-wrap: wrap;
  }
}
@media screen and (max-width: 768px) {
  .taxonomy_list_2 ul li {
    width: 32%;
  }
}
.taxonomy_list_2 ul li {
  font-size: clamp(1.4rem, 1.8vw, 1.8rem);
  letter-spacing: 1px;
}

.taxonomy_list_2 ul li a {
  position: relative;
  background: #FFF;
  border: 1px solid #e2e3e7;
  transition: 0.3s;
}

@media screen and (min-width: 769px) {
  .taxonomy_list_2 ul li a {
    display: inline-block;
    bottom: -1px;
    padding: 20px 30px 15px 30px;
    border-bottom: 0px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1230px) {
  .taxonomy_list_2 ul li a {
    display: inline-block;
    padding: 20px 10px 15px 10px;
  }
}
@media screen and (max-width: 768px) {
  .taxonomy_list_2 ul li a {
    display: block;
    text-align: center;
    padding: 10px 10px 7px 10px;
  }
}
.taxonomy_list_2 ul li a:hover {
  background: #fed7da;
}

.taxonomy_list_2 ul li a.current {
  position: relative;
  background: #f03748;
  border: 1px solid #f03748;
  color: #FFF;
  cursor: default;
}

@media screen and (min-width: 769px) {
  .taxonomy_list_2 ul li a.current {
    display: inline-block;
    bottom: -1px;
    padding: 20px 30px 15px 30px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1230px) {
  .taxonomy_list_2 ul li a.current {
    display: inline-block;
    padding: 20px 10px 15px 10px;
  }
}
@media screen and (max-width: 768px) {
  .taxonomy_list_2 ul li a.current {
    display: block;
    text-align: center;
    padding: 10px 10px 7px 10px;
  }
}
.taxonomy_list_2 ul li span {
  position: relative;
  background: #f03748;
  border: 1px solid #f03748;
  color: #FFF;
}

@media screen and (min-width: 769px) {
  .taxonomy_list_2 ul li span {
    display: inline-block;
    bottom: -1px;
    padding: 20px 30px 15px 30px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1230px) {
  .taxonomy_list_2 ul li span {
    display: inline-block;
    padding: 20px 10px 15px 10px;
  }
}
@media screen and (max-width: 768px) {
  .taxonomy_list_2 ul li span {
    display: block;
    text-align: center;
    padding: 10px 10px 7px 10px;
  }
}
/* --------------------------------------------
single
-------------------------------------------- */
.single img {
  max-width: 100%;
  height: auto;
}

@media screen and (min-width: 769px) {
  .single h2 {
    padding: 20px 0 5px;
  }
}
@media screen and (max-width: 768px) {
  .single h2 {
    padding: 13px 0px 10px 0px;
  }
}
.single h2 {
  border-bottom: 4px solid #13202f;
  margin-bottom: 20px;
  font-family: "Chatwork Sans EB", sans-serif;
  font-size: clamp(1.8rem, 2vw, 2.6rem);
  line-height: 1.6;
  letter-spacing: 1px;
  color: #13202f;
}

.single h2:first-child {
  padding-top: 0px;
}

.single h2:first-of-type {
  padding-top: 0px;
}

.single h3 {
  border-bottom: 2px solid #13202f;
  margin-bottom: 20px;
  padding: 10px 0 5px;
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(1.6rem, 2vw, 2.2rem);
  line-height: 1.6;
  letter-spacing: 1px;
  color: #13202f;
}

.single h4 {
  display: flex;
  color: #5e697b;
  font-size: clamp(1.3rem, 1.3vw, 1.6rem);
  line-height: 1.6;
  gap: 0 8px;
}

@media screen and (min-width: 769px) {
  .single h4 {
    margin-bottom: 16px;
  }
}
@media screen and (max-width: 768px) {
  .single h4 {
    margin-bottom: 8px;
  }
}
.single h4::before {
  width: 5em;
  height: 1px;
  margin-top: 10px;
  background-color: #5e697b;
  flex: 0 0 auto;
  content: "";
}

@media screen and (min-width: 769px) {
  .single * + h4 {
    margin-top: 32px;
  }
}
@media screen and (max-width: 768px) {
  .single * + h4 {
    margin-top: 24px;
  }
}
.single p {
  font-size: clamp(1.3rem, 2vw, 1.6rem);
  margin-bottom: 20px;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 1px;
  color: #13202f;
}

.single p:last-child {
  margin-bottom: 0px;
}

.single ul {
  padding-bottom: 10px;
}

.single ul li {
  margin: 0 0 10px 25px;
  font-size: clamp(1.3rem, 2vw, 1.6rem);
  line-height: 1.6;
  letter-spacing: 1px;
  color: #13202f;
  list-style: disc;
}

.single ul li:last-child {
  margin-bottom: 0px;
}

.single ol {
  padding-bottom: 10px;
}

.single ol li {
  margin: 0 0 10px 25px;
  font-size: clamp(1.3rem, 2vw, 1.6rem);
  line-height: 1.6;
  letter-spacing: 1px;
  color: #13202f;
  list-style: decimal;
}

.single ol li:last-child {
  margin-bottom: 0px;
}

.single strong {
  font-family: "Chatwork Sans B", sans-serif;
}

.single a {
  color: #2cb1e7;
  text-decoration: underline;
}

.single hr {
  margin: 0 auto 20px;
}

.single table {
  margin-bottom: 20px;
  box-sizing: border-box;
  width: 100%;
  border-top: 1px solid #13202f;
  border-left: 1px solid #13202f;
  border-collapse: collapse;
}

.single table th,
.single table td {
  border-bottom: 1px solid #13202f;
  border-right: 1px solid #13202f;
  padding: 8px;
  font-size: clamp(1.3rem, 2vw, 1.6rem);
  line-height: 1.6;
  letter-spacing: 1px;
  color: #13202f;
}

@media screen and (min-width: 769px) {
  .single blockquote {
    padding: 60px 40px 40px 40px;
  }
}
@media screen and (max-width: 768px) {
  .single blockquote {
    padding: 50px 20px 30px 20px;
  }
}
.single blockquote {
  position: relative;
  background: #f1f2f3;
  background-image: url(../img/icn_blockquote_start.png);
  background-repeat: no-repeat;
  background-position: 20px 20px;
  background-size: 40px;
  margin-bottom: 20px;
}

.single blockquote::after {
  content: "";
  position: absolute;
}

@media screen and (min-width: 769px) {
  .single blockquote::after {
    width: 40px;
    height: 30px;
  }
}
@media screen and (max-width: 768px) {
  .single blockquote::after {
    width: 20px;
    height: 15px;
  }
}
.single blockquote::after {
  background-image: url(../img/icn_blockquote_end.png);
  background-size: cover;
  z-index: 1;
  bottom: 20px;
  right: 20px;
}

/* --------------------------------------------
post_loop
-------------------------------------------- */
.post_loop {
  display: flex;
  justify-content: left;
  flex-wrap: wrap;
}

@media screen and (min-width: 769px) {
  .post_loop {
    gap: 50px 2%;
  }
}
@media screen and (max-width: 768px) {
  .post_loop {
    flex-direction: column;
    gap: 20px 0;
  }
}
.post_loop .post_loop_item {
  background-color: #FFF;
}

@media screen and (min-width: 769px) {
  .post_loop .post_loop_item {
    width: 32%;
  }
}
.post_loop .post_loop_item a {
  transition: 0.3s;
  box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px -2px;
  display: block;
}

.post_loop .post_loop_item a:hover {
  box-shadow: rgba(0, 0, 0, 0.3) 2px 2px 3px -2px;
}

.post_loop .post_loop_item {
  /*
  .dc_banner {
    aspect-ratio: 16 / 9;
    min-height: 198px;
    background-repeat: no-repeat;
    background-position: top center;
  }
  */
}

.post_loop .post_loop_item img {
  height: auto;
  width: 100%;
}

.post_loop .post_loop_item h3 {
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(1.3rem, 2vw, 1.6rem);
  padding: 10px;
  line-height: 1.5;
  min-height: 70px;
  display: flex;
  align-items: center;
}

.post_loop .post_loop_item .post_category {
  display: inline-block;
  border: 1px solid #13202f;
  font-size: clamp(1.2rem, 2vw, 1.4rem);
  font-family: "Chatwork Sans B", sans-serif;
  letter-spacing: 1px;
}

@media screen and (min-width: 769px) {
  .post_loop .post_loop_item .post_category {
    margin: 0px 0px 10px 10px;
    padding: 10px 10px 7px 10px;
  }
}
@media screen and (max-width: 768px) {
  .post_loop .post_loop_item .post_category {
    margin: 0px 0px 10px 10px;
    padding: 10px 10px 7px 10px;
  }
}
.post_loop .post_loop_item .to_dl {
  position: relative;
  padding: 13px 10px 10px 10px;
  text-align: right;
}

.post_loop .post_loop_item .to_dl span {
  position: relative;
  display: inline-block;
  font-size: clamp(1.3rem, 2vw, 1.6rem);
  font-family: "Chatwork Sans B", sans-serif;
}

.post_loop .post_loop_item .to_dl span::before {
  content: "";
  display: block;
  position: absolute;
  top: calc(50% - 2px);
  width: 7px;
  height: 7px;
  border-top: solid 2px;
  border-right: solid 2px;
  transform: rotate(45deg) translateY(-50%);
  color: inherit;
}

@media screen and (min-width: 769px) {
  .post_loop .post_loop_item .to_dl span::before {
    left: -21px;
  }
}
@media screen and (max-width: 768px) {
  .post_loop .post_loop_item .to_dl span::before {
    left: -18px;
  }
}
/* --------------------------------------------
pager
-------------------------------------------- */
.wp-pagenavi {
  text-align: center;
  padding-top: 30px;
  margin-bottom: 20px;
  font-family: "Chatwork Sans B", sans-serif;
}

.wp-pagenavi .previouspostslink {
  font-size: 1.6rem;
  margin-right: 20px;
  border: none;
}

.wp-pagenavi .nextpostslink {
  font-size: 1.6rem;
  margin-left: 20px;
  border: none;
}

.wp-pagenavi .page {
  display: inline-block;
  background: #13202f;
  border: 2px solid #13202f;
  border-radius: 8px;
  margin: 0 10px;
  padding: 8px 12px 10px;
  font-size: 1.6rem;
  color: #FFF;
  transition: 0.3s;
  opacity: 1;
}

.wp-pagenavi .page:hover {
  opacity: 0.7;
}

.wp-pagenavi .current {
  display: inline-block;
  border: 2px solid #13202f;
  background: #FFF;
  border-radius: 8px;
  margin: 0 10px;
  padding: 8px 12px 10px;
  font-size: 1.6rem;
}

/* --------------------------------------------
button
-------------------------------------------- */
@keyframes btnArrow {
  15% {
    right: 3;
    opacity: 0.5;
  }
  30% {
    right: 5px;
    opacity: 0;
  }
  99% {
    right: 30px;
    opacity: 0;
  }
  100% {
    right: 20px;
    opacity: 1;
  }
}
.btn {
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50px;
  background: #f03748;
}

.btn span {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
  border-radius: 100px;
  border: 3px solid #f03748;
  letter-spacing: 1px;
  color: #FFF;
}

.btn .arrow::after {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  transition: all 0.3s ease;
  width: 9px;
  height: 14px;
  display: block;
  content: "";
  background: url(../img/icn_bot_arrow.svg) no-repeat center/100% 100%;
}

.btn:hover .arrow::after, .btn:focus .arrow::after {
  animation: btnArrow 0.3s ease-in-out;
}

@media screen and (max-width: 768px) {
  .btn span {
    font-size: 1.3rem;
    letter-spacing: 0px;
  }
  .btn .arrow::after {
    right: 15px;
  }
}
@media screen and (min-width: 769px) {
  .btn span {
    font-size: 1.8rem;
  }
  .btn .arrow::after {
    right: 16px;
  }
}
@media screen and (min-width: 769px) {
  .page_button_1 {
    margin-top: 60px;
  }
}
@media screen and (max-width: 768px) {
  .page_button_1 {
    margin-top: 30px;
  }
}
.page_button_1 p {
  margin-bottom: 5px;
  text-align: center;
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(1.6rem, 2.4vw, 2.5rem);
  color: #f03748;
}

.page_button_1 .btn {
  text-align: center;
  margin: 0 auto;
  text-decoration: none !important;
}

@media screen and (min-width: 769px) {
  .page_button_1 .btn {
    width: 400px;
  }
}
@media screen and (max-width: 768px) {
  .page_button_1 .btn {
    width: 94%;
  }
}
.page_button_1 .btn span {
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(1.6rem, 2vw, 2rem);
}

@media screen and (min-width: 769px) {
  .page_button_1 .btn span {
    padding: 4% 2% 3.5% 2%;
  }
}
@media screen and (max-width: 768px) {
  .page_button_1 .btn span {
    padding: 3.8% 2% 3.5% 2%;
  }
}
@media screen and (max-width: 768px) {
  .page_button_1 .btn.contact {
    margin-top: 20px;
  }
}
.page_button_1 .btn.contact span {
  background: #FFF;
  color: #f03748;
}

.page_button_1 .btn.contact span::after {
  background: url(../img/icn_bot_arrow_red.svg) no-repeat center/100% 100%;
}

@media screen and (min-width: 769px) {
  .page_button_2 {
    display: flex;
    gap: 0 2%;
    width: 760px;
    margin: 60px auto 0;
  }
}
@media screen and (max-width: 768px) {
  .page_button_2 {
    margin-top: 30px !important;
  }
}
@media screen and (min-width: 769px) {
  .page_button_2 .btn {
    width: 50%;
  }
}
@media screen and (max-width: 768px) {
  .page_button_2 .btn {
    width: 80%;
    margin: 0 auto;
  }
}
.page_button_2 .btn span {
  display: inline-block;
  text-align: center;
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(1.6rem, 2vw, 2rem);
}

@media screen and (min-width: 769px) {
  .page_button_2 .btn span {
    padding: 4% 0;
  }
}
@media screen and (max-width: 768px) {
  .page_button_2 .btn span {
    padding: 4% 0;
  }
}
@media screen and (max-width: 768px) {
  .page_button_2 .btn.contact {
    margin-top: 20px;
  }
}
.page_button_2 .btn.contact span {
  background: #FFF;
  color: #f03748;
}

.page_button_2 .btn.contact span::after {
  background: url(../img/icn_bot_arrow_red.svg) no-repeat center/100% 100%;
}

/* --------------------------------------------
p404
-------------------------------------------- */
.p404 {
  text-align: center;
}

@media screen and (min-width: 769px) {
  .p404 {
    padding: 8% 0;
  }
}
@media screen and (max-width: 768px) {
  .p404 {
    padding: 8% 0;
  }
}
.p404 h2 {
  font-family: "Chatwork Sans B", sans-serif;
  letter-spacing: 1px;
  padding-bottom: 3%;
}

@media screen and (min-width: 769px) {
  .p404 h2 {
    font-size: 2.8rem;
    line-height: 1.6;
  }
}
@media screen and (max-width: 768px) {
  .p404 h2 {
    font-size: 1.8rem;
    line-height: 1.6;
  }
}
.p404 p,
.p404 a {
  padding-bottom: 1%;
}

@media screen and (min-width: 769px) {
  .p404 p,
  .p404 a {
    font-size: 1.8rem;
    line-height: 1.4;
  }
}
@media screen and (max-width: 768px) {
  .p404 p,
  .p404 a {
    font-size: 1.4rem;
    line-height: 1.4;
  }
}
.p404 a {
  text-decoration: underline;
}

/* --------------------------------------------
footer
-------------------------------------------- */
footer {
  background-color: #13202f;
}

footer .footer-link-list {
  letter-spacing: -0.4em;
}

footer .footer-link-list li {
  border-left: 1px solid #FFF;
  display: inline-block;
  letter-spacing: normal;
  line-height: 1;
}

footer .footer-link-list li a {
  color: #FFF;
}

footer .footer-link-list li a:hover, footer .footer-link-list li a:focus {
  text-decoration: underline;
}

footer .footer-link-list li:last-child {
  border-right: 1px solid #FFF;
}

@media screen and (max-width: 768px) {
  footer .footer-link-list li {
    padding-left: 14px;
    padding-right: 14px;
    margin-bottom: 20px;
  }
  footer .footer-link-list li a {
    font-size: 1.2rem;
  }
}
@media screen and (min-width: 769px) {
  footer .footer-link-list li {
    padding-left: 16px;
    padding-right: 16px;
  }
  footer .footer-link-list li a {
    font-size: 1.4rem;
  }
}
footer .footer_copy {
  text-align: center;
  color: #b8bcc0;
  letter-spacing: 2px;
  font-weight: 400;
  font-size: 1.2rem;
}

@media screen and (max-width: 768px) {
  footer .footer_copy {
    padding-top: 5%;
  }
}
.footer-upper {
  background-color: #f7f7f7;
}

.footer-upper__inner {
  width: min(100%, 1200px);
  margin-inline: auto;
}

@media screen and (min-width: 769px) {
  .footer-upper__inner {
    padding-block: 32px 48px;
  }
}
@media screen and (max-width: 768px) {
  .footer-upper__inner {
    padding: 24px 4% 32px;
  }
}
.footer-logo {
  margin-bottom: 32px;
}

.footer-logo a {
  display: inline-block;
}

.footer-logo a img {
  height: auto;
}

@media screen and (min-width: 769px) {
  .footer-logo a img {
    width: 275px;
  }
}
@media screen and (max-width: 768px) {
  .footer-logo a img {
    width: 200px;
  }
}
.footer-nav {
  display: flex;
}

@media screen and (max-width: 768px) {
  .footer-nav {
    flex-wrap: wrap;
    gap: 24px 4%;
  }
}
.footer-nav dl {
  font-size: clamp(1.3rem, 1.12vw, 1.4rem);
}

@media screen and (min-width: 769px) {
  .footer-nav dl {
    width: 20%;
  }
}
@media screen and (max-width: 768px) {
  .footer-nav dl {
    width: 48%;
  }
}
.footer-nav dt {
  margin-bottom: 16px;
  font-family: "Chatwork Sans B", sans-serif;
}

.footer-nav dt a:hover {
  text-decoration: underline;
}

.footer-nav dd {
  display: flex;
  align-items: flex-start;
}

.footer-nav dd + dd {
  margin-top: 8px;
}

.footer-nav dd::before {
  content: "・";
}

.footer-nav dd a:hover {
  text-decoration: underline;
}

.footer-contact {
  display: flex;
  flex-direction: column;
}

@media screen and (min-width: 769px) {
  .footer-contact {
    width: 20%;
    gap: 8px 0;
  }
}
@media screen and (max-width: 768px) {
  .footer-contact {
    width: 100%;
    gap: 16px 0;
  }
}
.footer-contact__button {
  display: flex;
  position: relative;
  border: 1px solid #13202f;
  border-radius: 4px;
  font-size: 1.4rem;
  align-items: center;
  justify-content: center;
  transition: 0.3s opacity;
}

@media screen and (min-width: 769px) {
  .footer-contact__button {
    width: min(100%, 160px);
    padding: 8px;
  }
}
@media screen and (max-width: 768px) {
  .footer-contact__button {
    width: 100%;
    padding: 16px;
  }
}
.footer-contact__button.document {
  background-color: #13202f;
  color: #fff;
}

.footer-contact__button.inquiry {
  background-color: #fff;
  color: #13202f;
}

.footer-contact__button::before {
  position: absolute;
  top: 50%;
  right: 16px;
  translate: 0 -50%;
  rotate: 45deg;
  width: 6px;
  height: 6px;
  border-top: 1px solid;
  border-right: 1px solid;
  transition: 0.3s all;
  content: "";
}

.footer-contact__button:hover {
  opacity: 0.7;
}

.footer-contact__button:hover::before {
  right: 10px;
}

.footer-lower {
  display: flex;
}

@media screen and (min-width: 769px) {
  .footer-lower {
    width: min(100%, 1200px);
    margin-inline: auto;
    padding-block: 24px;
    justify-content: space-between;
  }
}
@media screen and (max-width: 768px) {
  .footer-lower {
    padding: 24px 4%;
    flex-direction: column;
  }
}
/* --------------------------------------------
マルケト
-------------------------------------------- */
.mkto_wrap {
  background: #f6f6f6;
  border-radius: 10px;
}

@media screen and (min-width: 769px) {
  .mkto_wrap {
    padding: 20px;
    position: sticky;
    top: 90px;
  }
}
@media screen and (max-width: 768px) {
  .mkto_wrap {
    padding: 20px;
    min-height: 100vh;
  }
}
[data-pg-key=document] .section-form > .title p {
  padding: 30px 36px 0px;
  font-size: 13px;
}

[data-pg-key=document] .section-form {
  max-width: 380px;
  width: 100%;
  margin-left: 36px;
}

[data-pg-key=document] .section-form > .title {
  background-color: #F6F6F6;
  border-radius: 5px 5px 0 0;
}

[data-pg-key=document] .section-form > .title .text {
  font-size: 20px;
  font-family: "Chatwork Sans B", sans-serif !important;
  line-height: 1;
  text-align: center;
  padding: 20px;
}

[data-pg-key=document] .section-form > .form {
  background-color: #F6F6F6;
  padding: 25px 36px 50px 36px;
  border: none;
}

[data-pg-key=document] .section-form > .form .item {
  margin-bottom: 20px;
}

.title {
  line-height: 1.3;
  color: #34362f;
  text-shadow: 0 1px 1px #fff;
}

.mktoForm .mktoFieldWrap {
  float: none !important;
}

.mktoForm .mktoFormRow {
  margin-bottom: 0px !important;
}

.mktoForm .mktoFormCol {
  float: none !important;
}

.mktoForm {
  width: 100% !important;
}

.mktoForm .mktoRequiredField label.mktoLabel {
  padding-top: 10px;
  width: auto !important;
  font-weight: bold !important;
  font-family: "Chatwork Sans B", sans-serif !important;
}

label.mktoLabel.mktoHasWidth {
  width: auto !important;
  font-family: "Chatwork Sans B", sans-serif !important;
}

.mktoForm .mktoField {
  margin-top: 10px;
}

.mktoForm .mktoLabel {
  display: flex !important;
  font-weight: bold !important;
  font-family: "Chatwork Sans B", sans-serif !important;
}

.mktoForm .mktoRadioList > input,
.mktoForm .mktoCheckboxList > input {
  padding: 0;
  position: relative;
  top: -4px;
  left: 15px;
}

div.mktoRequiredField label.mktoLabel.mktoHasWidth:after {
  content: "必須";
  width: 34px;
  height: 16px;
  font-size: 10px;
  line-height: 1;
  text-shadow: none;
  color: #fff;
  background-color: #F03648;
  border-radius: 3px;
  margin-left: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.mktoForm input[type=text],
.mktoForm input[type=url],
.mktoForm input[type=email],
.mktoForm input[type=tel],
.mktoForm input[type=number],
.mktoForm input[type=date],
.mktoForm select.mktoField {
  font-size: 13px;
  max-height: 40px;
  min-height: 40px;
  width: 100% !important;
  border: 0px solid #34362F !important;
  background-color: #fff;
  border-radius: 5px !important;
  padding: 0px 30px 0px 20px;
  margin-top: 0px;
  display: flex;
  align-items: center;
}

.mktoForm .mktoGutter {
  display: none !important;
}

.mktoForm .mktoRadioList,
.mktoForm .mktoCheckboxList {
  float: none !important;
  width: 100% !important;
}

.mktoForm .mktoRadioList > label,
.mktoForm .mktoCheckboxList > label {
  font-weight: normal !important;
}

.mktoForm .mktoRequiredField .mktoAsterix {
  display: none !important;
  float: none !important;
  padding-left: 0px !important;
}

.mktoForm textarea[rows="2"] {
  height: 7.4em !important;
  width: 100% !important;
  background: #FFF !important;
}

button.mktoButton {
  color: #e03546 !important;
  font-size: 15px;
  letter-spacing: 0.1em;
  font-family: "Chatwork Sans B", sans-serif !important;
  font-weight: bold !important;
  line-height: 1;
  width: 210px;
  background-color: #fff;
  border: solid 3px #e03546;
  border-radius: 40px;
  padding: 13px 0;
  margin: 0 auto !important;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  box-shadow: inset 0 0px 0 0 rgba(0, 0, 0, 0) !important;
}

.mktoButton:hover {
  background: #e03546 !important;
  color: #fff !important;
}

.mktoForm .mktoRadioList > label,
.mktoForm .mktoCheckboxList > label {
  line-height: 1.8em !important;
}

.form-privacy {
  background: #F6F6F6;
  padding: 0 36px 30px 36px;
  border-radius: 0 0 5px 5px;
  font-size: 13px;
}

.form-privacy a {
  color: #1A50B7;
}

/* SECTION FOOTER */
footer.footer-document {
  background: #fff;
  padding-bottom: 20px;
}

footer.footer-document .text {
  text-align: center;
  letter-spacing: inherit;
  font-weight: 400;
  color: #34362f;
  /*font-family: 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック', sans-serif;*/
}

@media screen and (max-width: 768px) {
  div#heroImage {
    text-align: center;
    padding: 0px 12px;
  }
  [data-pg-key=document] {
    margin-top: 0;
    display: block;
    padding-bottom: 10px;
    padding-top: 20px;
  }
  [data-pg-key=document] .section-info {
    padding: 0px 14px;
  }
  .sp-none {
    display: none;
  }
  [data-pg-key=document] .section-info .about .subtitle p {
    font-size: 28px;
    line-height: 1.3;
  }
  .mktoForm .mktoFieldWrap {
    font-size: 15px;
  }
  [data-pg-key=document] .section-form {
    max-width: 100%;
    margin-left: 0px;
    padding: 0px 0px;
    margin-top: 25px;
  }
  [data-pg-key=document] .section-form > .title p {
    padding: 30px 15px 0px;
    font-size: 15px;
  }
  .mktoForm .mktoRequiredField label.mktoLabel {
    margin-bottom: 11px;
  }
  [data-pg-key=document] .section-form > .form {
    padding: 15px 15px 25px 15px;
  }
  .mktoForm input[type=url],
  .mktoForm input[type=text],
  .mktoForm input[type=date],
  .mktoForm input[type=tel],
  .mktoForm input[type=email],
  .mktoForm input[type=number],
  .mktoForm textarea.mktoField,
  .mktoForm select.mktoField {
    font-size: 15px !important;
  }
  .mktoForm select.mktoField {
    box-sizing: border-box;
  }
  .mktoForm * {
    padding: 0px 0px;
  }
  .mktoButton {
    padding: 0.5rem 1rem;
  }
  .mktoRadioList.mktoHasWidth.mktoRequired {
    font-size: 15px;
  }
  .mktoForm .mktoRadioList > input,
  .mktoForm .mktoCheckboxList > input {
    margin-top: 9px;
  }
  footer.footer-document {
    background: #fff;
    padding-bottom: 10px;
  }
}
div.mktoHtmlText.mktoHasWidth {
  width: auto !important;
  margin: 0 auto !important;
  padding: 10px 0px !important;
  line-height: 1.5 !important;
  letter-spacing: 1px !important;
  font-size: 12px !important;
  text-align: center;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif !important;
}

div.mktoHtmlText.mktoHasWidth * {
  font-size: 12px !important;
  line-height: 1.5 !important;
  letter-spacing: 1px !important;
  text-align: center;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif !important;
}

div.mktoHtmlText.mktoHasWidth a {
  padding: 0px !important;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif !important;
}

.sidemenu {
  display: flex;
  position: fixed;
  top: 20%;
  right: 0;
  z-index: 10;
  height: 180px;
  overflow: hidden;
  border: 1px solid #fff;
  border-radius: 8px 0 0 8px;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.16);
}

@media screen and (max-width: 768px) {
  .sidemenu {
    display: none;
  }
}
.sidemenu dt {
  padding: 16px;
  background-color: #f03748;
  color: #fff;
  font-family: "Chatwork Sans B", sans-serif;
  font-size: 1.8rem;
  letter-spacing: 0.1em;
  writing-mode: vertical-lr;
  cursor: pointer;
}

.sidemenu dd {
  display: grid;
  grid-template-columns: 0fr;
  padding-block: 16px;
  background-color: #fff;
  font-size: 1.6rem;
  transition: 0.3s grid-template-columns;
}

.sidemenu dd.is-open {
  grid-template-columns: 1fr;
  padding-inline: 16px 40px;
}

.sidemenu ul {
  display: flex;
  height: -moz-max-content;
  height: max-content;
  overflow: hidden;
  margin-block: auto;
  flex-direction: column;
  gap: 9px 0;
}

.sidemenu li {
  display: flex;
  white-space: nowrap;
}

.sidemenu li::before {
  content: "・";
}

.sidemenu li a {
  transition: 0.3s color;
}

.sidemenu li a:hover {
  color: #f03748;
}

.mktoForm.show-errors .mktoError {
  top: 70px;
  left: 0;
  width: 100%;
}

@media screen and (min-width: 768px) {
  [aria-describedby=ValidMsgprivacypolicy_agree] + .mktoError {
    top: 30px !important;
    left: 0 !important;
  }
}
@media screen and (max-width: 769px) {
  [aria-describedby=ValidMsgprivacypolicy_agree] + .mktoError {
    top: 30px !important;
    left: 53px !important;
  }
}
/* ==============================================================================
   top.css
   ============================================================================== */
/* --------------------------------------------
variables
-------------------------------------------- */
/* --------------------------------------------
font
-------------------------------------------- */
/* --------------------------------------------
260421リニューアル版
-------------------------------------------- */
/* --------------------------------------------
variables
-------------------------------------------- */
/* --------------------------------------------
variables
-------------------------------------------- */
body {
  font-feature-settings: "palt";
  overflow-x: clip;
}

/* 固定ヘッダー分（scrollIntoView / :target 用。common.js の animate(scrollTop) では効かない） */
html {
  scroll-padding-top: 82px;
}

@media (max-width: 1024px) {
  html {
    scroll-padding-top: 60px;
  }
}
@media screen and (max-width: 768px) {
  .float__bnr {
    right: 24px;
    left: auto;
    width: -moz-fit-content;
    width: fit-content;
    bottom: 80px;
    transform: translateY(0);
  }
}
/* --------------------------------------------
t
-------------------------------------------- */
.t_fvform {
  font-family: "Noto Sans JP", sans-serif;
  display: block;
  width: 328px;
  height: 100%;
  position: absolute;
  top: 0;
  right: max(0px, 100% - 1440px);
  z-index: 10;
  background-color: #fff;
  overflow: hidden;
  animation: fadeIn_service_fv_form 1s ease 1.5s forwards;
  opacity: 0;
}

@media (max-width: 1440px) {
  .t_fvform {
    right: 0;
  }
}
@media (max-width: 1200px) {
  .t_fvform {
    display: none;
  }
}
.t_fvform_inner {
  padding: 0 0 0;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  background: #F8F8F8;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  gap: 0;
}

.t_fvform_title {
  background: #13202f;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex: auto 0 0;
}

.t_fvform_title span {
  font-size: 14px;
  font-weight: 600;
  line-height: 1.2;
  text-align: center;
  color: #fff;
}

.t_fvform_main {
  padding: 8px 16px;
}

.t_fvform_main .row-6 .mktoFieldWrap {
  flex-direction: row !important;
  align-items: center !important;
}

.t_fvform_main .row-6 .mktoCheckboxList > input {
  top: -6px;
}

.t_fvform .mktoForm .mktoRequiredField label.mktoLabel {
  padding-top: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  flex-direction: row-reverse !important;
  margin-bottom: 8px !important;
  flex: auto 0 0;
  font-size: 14px;
}

.t_fvform .mktoForm .mktoCheckboxList {
  padding: 0 !important;
}

.t_fvform .mktoForm .mktoFormCol {
  position: relative;
  min-height: auto !important;
  margin-bottom: 0 !important;
}

.t_fvform .mktoForm .mktoFieldWrap {
  margin-bottom: 8px !important;
  display: flex !important;
  flex-direction: column;
  gap: 0 !important;
  align-items: flex-start !important;
}

.t_fvform .mktoForm input[type=text], .t_fvform .mktoForm input[type=url], .t_fvform .mktoForm input[type=email], .t_fvform .mktoForm input[type=tel], .t_fvform .mktoForm input[type=number], .t_fvform .mktoForm input[type=date], .t_fvform .mktoForm select.mktoField {
  height: 32px;
  max-height: 32px;
  min-height: 32px;
  border-radius: 10px !important;
  padding: 0 8px !important;
  box-sizing: border-box;
}

.t_fvform .mktoForm .mktoOffset {
  float: none !important;
  height: 0 !important;
}

.t_fvform .mktoForm .mktoLabel {
  margin-bottom: 0 !important;
}

.t_fvform div.mktoRequiredField label.mktoLabel.mktoHasWidth:after {
  content: "必須";
  width: 44px;
  height: 22px;
  font-size: 12px;
  line-height: 1;
  text-shadow: none;
  color: #13202f;
  background-color: #FFEF96;
  border-radius: 100vmax;
  margin-left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.t_fvform .mktoButtonRow {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  padding: 0 16px 4px;
  box-sizing: border-box;
}

.t_fvform button.mktoButton {
  color: #fff !important;
  font-size: 16px;
  letter-spacing: 0;
  font-family: "Noto Sans JP", sans-serif !important;
  font-weight: 600 !important;
  line-height: 1;
  width: 100%;
  background-color: #f03748 !important;
  border: none !important;
  border-radius: 40px;
  padding: 16px 0;
  height: 60px;
  margin: 0 auto !important;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  box-shadow: none !important;
  gap: 8px;
}

.t_fvform button.mktoButton::before {
  content: "";
  display: inline-block;
  width: 24px;
  height: 24px;
  background-color: #fff;
  mask: var(--icon-doc) no-repeat center;
  -webkit-mask: var(--icon-doc) no-repeat center;
  mask-size: contain;
  -webkit-mask-size: contain;
}

.t_fvform_note {
  font-size: 12px;
  font-weight: 400;
  line-height: 1.6;
  display: block;
  text-align: justify;
  word-break: break-word;
}

.t_fvform_note a {
  color: #f03748;
  text-decoration: underline;
}

.t_fvform_note a:hover {
  color: #FFF7F7;
  text-decoration: none;
}

.t_fv {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  overflow: visible;
  transition: opacity 0.3s ease;
  background-color: #fff;
  width: 100vw;
  margin-inline: calc(50% - 50vw);
  height: 500px;
  font-family: "Inter", sans-serif, "Noto Sans JP", sans-serif;
  background-image: url(../img/fv/bg.webp);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}

@media (max-width: 1440px) {
  .t_fv {
    width: 100%;
    margin-inline: 0;
  }
}
@media (max-width: 1024px) {
  .t_fv {
    background-image: none;
    height: auto;
    padding: 40px 0 0;
  }
}
@media screen and (max-width: 768px) {
  .t_fv {
    padding: 40px 0 0;
  }
}
.t_fv.is_loaded {
  opacity: 1;
}

.t_fv_wrap {
  display: block;
  width: 1440px;
  height: 100%;
  box-sizing: border-box;
  padding: 0;
  margin: 0 auto;
  border: 0;
  position: relative;
}

@media (max-width: 1440px) {
  .t_fv_wrap {
    width: 100%;
  }
}
.t_fv_inner {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-direction: column;
  gap: 16px;
  width: 1440px;
  height: 100%;
  padding-left: 40px;
  box-sizing: border-box;
  position: relative;
}

@media (max-width: 1440px) {
  .t_fv_inner {
    width: 100%;
  }
}
@media (max-width: 1024px) {
  .t_fv_inner {
    padding-left: 0;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    background-image: url(../img/fv/bg_sp.webp);
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
  }
}
.t_fv_main {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 24px;
  z-index: 2;
  padding: 0 16px;
  box-sizing: border-box;
}

.t_fv_copy {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

@media screen and (max-width: 1024px) {
  .t_fv_copy {
    align-items: center;
  }
}
@media (max-width: 768px) {
  .t_fv_copy {
    gap: 16px;
  }
}
.t_fv_copy_wrap {
  display: flex;
  gap: 16px;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
}

.t_fv_copy_cap {
  font-size: 16px;
  font-weight: 600;
  line-height: 1;
  color: #fff;
  text-align: center;
  letter-spacing: 1px;
  background: #f03748;
  padding: 8px 8px;
  width: -moz-fit-content;
  width: fit-content;
}

@media (max-width: 768px) {
  .t_fv_copy_cap {
    font-size: 14px;
    text-align: center;
    line-height: 1;
    width: 100%;
  }
}
.t_fv_copy_main {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 16px;
}

@media (max-width: 1024px) {
  .t_fv_copy_main {
    gap: 12px;
    align-items: center;
  }
}
@media (max-width: 768px) {
  .t_fv_copy_main {
    gap: 8px;
  }
}
.t_fv_copy_s {
  font-size: 24px;
  font-weight: 600;
  line-height: 1;
  color: #13202f;
  text-align: left;
  letter-spacing: 1px;
}

@media (max-width: 1024px) {
  .t_fv_copy_s {
    font-size: 20px;
  }
}
@media (max-width: 768px) {
  .t_fv_copy_s {
    font-size: 14px;
    text-align: center;
    line-height: 1.4;
  }
}
.t_fv_copy_b {
  width: 552px;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
}

@media (max-width: 768px) {
  .t_fv_copy_b {
    width: 100%;
    height: auto;
  }
}
.t_fv_copy_b img {
  width: 100%;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
}

.t_fv_copy_disp {
  font-size: clamp(14px, 5vw, 16px);
  font-weight: 500;
  line-height: 1.6;
  color: #13202f;
  text-align: left;
  letter-spacing: 1px;
}

@media (max-width: 768px) {
  .t_fv_copy_disp {
    font-size: 14px;
    text-align: left;
    line-height: 1.4;
    width: 100%;
  }
}
.t_fv_copy_disp b {
  font-weight: 600;
  color: #f03748;
}

.t_fv_img {
  width: 508px;
  height: auto;
  position: absolute;
  bottom: 0;
  right: 328px;
  z-index: 1;
}

@media screen and (max-width: 1280px) {
  .t_fv_img {
    right: -16px;
  }
}
@media (max-width: 1024px) {
  .t_fv_img {
    width: 342px;
    height: -moz-fit-content;
    height: fit-content;
    position: static;
  }
}
@media screen and (max-width: 768px) {
  .t_fv_img {
    width: auto;
    height: 256px;
    position: static;
    margin-top: 0;
  }
}
.t_fv_img img {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
}

@media (max-width: 768px) {
  .t_fv_img img {
    height: 100%;
    width: auto;
    -o-object-position: top;
       object-position: top;
  }
}
.t_fv_text {
  font-size: 22px;
  font-weight: 600;
  line-height: 1.6;
  color: #13202f;
  letter-spacing: 1px;
  text-align: justify;
  text-justify: inter-ideograph;
  overflow-wrap: break-word;
  word-break: normal;
  text-shadow: 0px 0px 8px #f8f8f8, 0px 0px 8px #f8f8f8, 0px 0px 8px #f8f8f8;
}

@media (max-width: 1440px) {
  .t_fv_text {
    font-size: 20px;
  }
}
@media (max-width: 1200px) {
  .t_fv_text {
    font-size: 18px;
  }
}
@media (max-width: 960px) {
  .t_fv_text {
    font-size: 13px;
  }
}
.t_fv_laurel {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0;
  padding: 0;
  box-sizing: border-box;
}

@media (max-width: 1024px) {
  .t_fv_laurel {
    margin: 0 auto;
  }
}
@media (max-width: 768px) {
  .t_fv_laurel {
    gap: 8px;
    width: 100%;
  }
}
.t_fv_laurel_text {
  height: clamp(18px, 1.5vw, 20px);
  display: flex;
  align-items: center;
  justify-content: center;
}

@media (max-width: 768px) {
  .t_fv_laurel_text {
    height: 16px;
  }
}
.t_fv_laurel_text img {
  height: 100%;
  margin: 0 0 0 0;
  padding: 0;
}

.t_fv_laurel_img {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0;
}

@media (max-width: 768px) {
  .t_fv_laurel_img {
    gap: 8px;
    padding: 0;
  }
}
.t_fv_laurel_img img {
  width: auto;
  height: clamp(56px, 6vw, 60px);
  filter: drop-shadow(0 0 4px #f8f8f8);
}

@media (max-width: 768px) {
  .t_fv_laurel_img img {
    height: 56px;
  }
}
.t_fv_laurel_img img:last-child {
  height: clamp(72px, 6vw, 82px);
}

.t_fv_cta {
  display: flex;
  align-items: center;
  gap: 16px;
  width: 100%;
}

@media (max-width: 1024px) {
  .t_fv_cta {
    display: none;
  }
}
.t_fv_cta a {
  width: 280px;
  height: 60px;
  flex: auto 0 0;
  font-size: 16px;
  font-weight: 600;
  line-height: 1;
  padding: 16px 8px 16px 16px;
}

.t_fv_cta a em {
  color: #13202f;
  background: #FFEF96;
  font-size: 16px;
  width: 48px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  line-height: 1;
  padding: 8px 8px;
  border-radius: 100vmax;
  transition: all 0.3s ease;
}

.t_fv_cta_sp {
  display: none;
  font-family: "Noto Sans JP", sans-serif;
}

@media (max-width: 1024px) {
  .t_fv_cta_sp {
    display: flex;
    align-items: center;
    gap: 0px;
    width: 100%;
    background-color: #F8F8F8;
    transition: transform 0.3s ease-in-out;
  }
}
@media (min-width: 769px) {
  .t_fv_cta_sp {
    display: none !important;
  }
}
.t_fv_cta_sp.is_fixed {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  margin-top: 0;
  z-index: 100;
  display: flex !important;
  animation: slideUpFromBottom 0.3s ease-in-out;
}

@media (min-width: 769px) {
  .t_fv_cta_sp.is_fixed {
    display: none !important;
  }
}
.t_fv_cta_sp.is_hidden {
  transform: translateY(120%);
  pointer-events: none;
}

.t_fv_cta_sp {
  /* 最初から表示型: 常時固定、body paddingなし */
}

.t_fv_cta_sp.fixCtaSt {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  margin-top: 0;
  z-index: 100;
  display: none;
}

@media (min-width: 769px) {
  .t_fv_cta_sp.fixCtaSt {
    display: none !important;
  }
}
.t_fv_cta_sp a {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 60px;
  gap: 4px;
  padding: 20px 12px;
  box-sizing: border-box;
  transition: filter 0.3s ease-in-out;
  position: relative;
  flex: 1 0 0;
  width: 100%;
  border-radius: 0;
  background-color: #f03748;
  color: #fff;
}

.t_fv_cta_sp a span {
  font-weight: 600;
  text-decoration: none;
  font-size: 16px;
  margin-left: 4px;
}

.t_fv_cta_sp a:hover {
  filter: brightness(1.4);
}

.t_fv_cta_sp a em {
  color: #13202f;
  background: #FFEF96;
  font-size: 12px;
  width: 34px;
  height: 22px;
  flex: auto 0 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  line-height: 1;
  padding: 0;
  border-radius: 100vmax;
  box-sizing: border-box;
  transition: all 0.3s ease;
}

.t_fv_cta_sp a.outline {
  background: #fff;
  border: 1px solid #f03748;
}

.t_fv_cta_sp a.outline span {
  background: #f03748;
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.t_fv_cta_sp a.outline:hover {
  border-color: #f03748;
}

.t_fv_cta_sp a.grd {
  background: #f03748;
}

.t_fv_cta_sp a.grd span {
  color: #fff;
}

.t_fv_notes {
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0;
  padding: 12px;
  box-sizing: border-box;
  position: absolute;
  bottom: 88px;
  left: 48px;
  z-index: 1;
}

@media (max-width: 1024px) {
  .t_fv_notes {
    position: static;
    background-color: #fff;
    padding: 8px;
  }
}
.t_fv_notes ol {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin: 0;
  padding: 0;
  list-style: none;
  box-sizing: border-box;
  width: -moz-fit-content;
  width: fit-content;
  counter-reset: note;
}

.t_fv_notes ol li {
  font-size: 10px;
  font-weight: 400;
  letter-spacing: 0;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 4px;
  counter-increment: note;
  line-height: 1;
}

@media (max-width: 768px) {
  .t_fv_notes ol li {
    line-height: 1.4;
  }
}
.t_fv_notes ol li::before {
  content: "※" counter(note);
  flex-shrink: 0;
}

.t_company_logo {
  overflow: hidden;
  width: 100%;
  background: #fff;
  animation: fadeIn_top_company_logo 1s ease 1s forwards;
  opacity: 0;
  width: 100vw;
  margin-inline: calc(50% - 50vw);
}

.t_company_logo_inner {
  display: flex;
  width: -moz-max-content;
  width: max-content;
  animation: logo-slide 60s linear infinite;
  gap: 40px;
  align-items: center;
  padding: 16px 0;
  will-change: transform;
}

@media (max-width: 768px) {
  .t_company_logo_inner {
    animation: logo-slide 50s linear infinite;
  }
}
.t_company_logo_inner img {
  width: auto;
  -o-object-fit: contain;
     object-fit: contain;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 56px;
}

@media (max-width: 1024px) {
  .t_company_logo_inner img {
    height: 48px;
  }
}
.t_tasks {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 40px;
  align-items: stretch;
  align-self: stretch;
  justify-content: stretch;
}

@media (max-width: 1280px) {
  .t_tasks {
    gap: 24px;
  }
}
@media (max-width: 1024px) {
  .t_tasks {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 576px) {
  .t_tasks {
    display: flex;
    flex-direction: column;
  }
}
.t_tasks_item {
  display: flex;
  flex-direction: column;
  gap: 0;
  position: relative;
  border-radius: 20px;
  overflow: hidden;
  background-color: #fff;
}

.t_tasks_item:nth-child(1) h3 {
  background-image: url("../img/tasks/1.svg");
}

.t_tasks_item:nth-child(2) h3 {
  background-image: url("../img/tasks/2.svg");
}

.t_tasks_item:nth-child(3) h3 {
  background-image: url("../img/tasks/3.svg");
}

.t_tasks_item:nth-child(4) h3 {
  background-image: url("../img/tasks/4.svg");
}

.t_tasks_item:nth-child(5) h3 {
  background-image: url("../img/tasks/5.svg");
}

.t_tasks_item:nth-child(6) h3 {
  background-image: url("../img/tasks/6.svg");
}

.t_tasks_item:nth-child(7) h3 {
  background-image: url("../img/tasks/7.svg");
}

.t_tasks_item:nth-child(8) h3 {
  background-image: url("../img/tasks/8.svg");
}

.t_tasks_item h3 {
  font-size: 24px;
  font-weight: 600;
  height: 60px;
  line-height: 1;
  letter-spacing: 1px;
  padding: 16px;
  text-align: center;
  background: #13202f;
  color: #fff;
  background-size: 72px;
  background-repeat: no-repeat;
  background-position: left center;
  flex: auto 0 0;
  display: flex;
  justify-content: center;
  align-items: center;
}

.t_tasks_item ul {
  display: flex;
  flex-direction: column;
  height: 100%;
  gap: 16px;
  padding: 24px;
  box-sizing: border-box;
  position: relative;
}

.t_tasks_item ul li {
  font-size: 16px;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 1px;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 6px;
  line-height: 1;
}

.t_tasks_item ul li::before {
  content: "";
  display: inline-block;
  width: 16px;
  height: 16px;
  background-image: url("../img/icon/ico_check.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  flex: auto 0 0;
  margin-top: 0;
}

.t_package {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 40px;
  flex-wrap: wrap;
}

@media (max-width: 960px) {
  .t_package {
    gap: 24px;
  }
}
@media (max-width: 768px) {
  .t_package {
    flex-direction: column;
    align-items: center;
    justify-content: center;
  }
}
.t_package_item {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  gap: 0;
  padding: 0;
  border-radius: 20px;
  position: relative;
  background: #fff;
  z-index: 1;
  width: 400px;
  overflow: hidden;
  flex: auto 0 0;
  box-sizing: border-box;
  box-shadow: 0 4px 100px 0 rgba(240, 55, 72, 0.1);
}

@media (max-width: 960px) {
  .t_package_item {
    width: 48%;
    height: auto;
  }
}
@media (max-width: 768px) {
  .t_package_item {
    width: 100%;
    max-width: 400px;
    height: auto;
  }
}
.t_package_item_title {
  font-size: 24px;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 1px;
  text-align: center;
  color: #fff;
  width: 100%;
  background: #13202f;
  height: 60px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.t_package_item_details {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 16px;
  padding: 24px;
  box-sizing: border-box;
  width: 100%;
}

@media (max-width: 960px) {
  .t_package_item_details {
    padding: 16px;
  }
}
.t_package_item_logo {
  width: 300px;
  height: 56px;
  margin-bottom: 8px;
}

.t_package_item_logo img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.t_package_item_copy {
  font-size: clamp(20px, 1.5vw, 24px);
  font-weight: 600;
  line-height: 1.4;
  text-align: center;
  color: #f03748;
}

.t_package_item_ilst {
  display: flex;
  z-index: -1;
}

.t_package_item_ilst img {
  width: 150px;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
}

.t_package_item_btn {
  width: -moz-max-content;
  width: max-content;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 80px;
  width: 100%;
}

@media (max-width: 960px) {
  .t_package_item_btn {
    position: static;
    transform: translateX(0);
  }
}
.t_package_item_btn a {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px 16px 16px 24px;
  gap: 16px;
  background: #f03748;
  border-radius: 100vmax;
  width: 100%;
  height: 100%;
  transition: filter 0.3s ease-in-out;
}

.t_package_item_btn a span {
  font-size: 16px;
  font-weight: 600;
  line-height: 1.4;
  color: #fff;
  letter-spacing: 1px;
  flex: auto 0 0;
  text-align: left;
}

.t_package_item_btn a:hover {
  filter: brightness(1.2);
}

.t_package_item_btn a:hover .arrow-w::after {
  transform: translateX(2px);
}

.t_package_item_btn a .arrow-w {
  width: 20px;
  height: 20px;
  flex: auto 0 0;
}

.t_package_item_btn a .arrow-w::after {
  content: "";
  display: inline-block;
  background: #fff;
  mask: var(--icon-arrow) no-repeat center;
  -webkit-mask: var(--icon-arrow) no-repeat center;
  mask-size: contain;
  -webkit-mask-size: contain;
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
  transform: translateX(0);
  transition: transform 0.3s ease-in-out;
}

.t_problem {
  display: flex;
  width: 100%;
  justify-content: center;
  align-items: stretch;
  gap: 40px;
  flex-wrap: wrap;
}

@media (max-width: 960px) {
  .t_problem {
    flex-direction: column;
    align-items: center;
    justify-content: center;
  }
}
.t_problem_item {
  width: 400px;
  flex: auto 0 0;
  box-sizing: border-box;
  background: #fff;
  border-radius: 20px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  padding: 28px 24px 20px;
  box-sizing: border-box;
  gap: 12px;
  position: relative;
}

@media (max-width: 1440px) {
  .t_problem_item {
    width: 30%;
  }
}
@media (max-width: 1280px) {
  .t_problem_item {
    width: 400px;
  }
}
@media (max-width: 960px) {
  .t_problem_item {
    width: 100%;
    max-width: 400px;
    height: auto;
  }
}
.t_problem_item_copy {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0;
  font-size: 24px;
  font-weight: 600;
  line-height: 1.4;
  text-align: center;
}

.t_problem_item_copy b {
  color: #f03748;
  font-weight: 600;
}

.t_problem_item_ilst {
  display: flex;
  justify-content: center;
  align-items: flex-end;
}

@media (max-width: 960px) {
  .t_problem_item_ilst {
    position: static;
    transform: translateX(0);
  }
}
.t_problem_item_ilst img {
  width: 300px;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
}

.t_problem_item_btn {
  width: -moz-max-content;
  width: max-content;
  text-align: center;
  position: absolute;
  bottom: 24px;
  right: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.t_problem_item_btn a {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  gap: 12px;
  transition: filter 0.3s ease-in-out;
}

.t_problem_item_btn a span {
  font-size: 16px;
  font-weight: 600;
  line-height: 1;
  color: #f03748;
  letter-spacing: 1px;
  flex: auto 0 0;
}

.t_problem_item_btn a:hover .package_item_btn_icon {
  background-color: #f03748;
}

.t_problem_item_btn a:hover .package_item_btn_icon::before {
  background-color: #fff;
}

.t_problem_item_btn a:hover .package_item_btn_icon::after {
  background-color: #fff;
}

.t_problem_item_btn_icon {
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  position: relative;
  transition: background-color 0.3s ease-in-out;
  border: 2px solid #f03748;
  background-color: #fff;
  border-radius: 100vmax;
}

.t_problem_item_btn_icon::before, .t_problem_item_btn_icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background-color: #13202f;
  transition: background-color 0.3s ease-in-out;
}

.t_problem_item_btn_icon::before {
  width: 17px;
  height: 2px;
  transform: translate(-50%, -50%);
  border-radius: 100vmax;
  background-color: #f03748;
}

.t_problem_item_btn_icon::after {
  width: 2px;
  height: 17px;
  border-radius: 100vmax;
  transform: translate(-50%, -50%);
  background-color: #f03748;
}

.t_board {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  gap: 40px;
}

@media screen and (max-width: 1440px) {
  .t_board {
    gap: 24px;
  }
}
@media screen and (max-width: 1280px) {
  .t_board {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
  }
}
@media (max-width: 768px) {
  .t_board {
    grid-template-columns: repeat(1, 1fr);
    gap: 16px;
  }
}
.t_board_item {
  box-sizing: border-box;
  width: 100%;
  flex: auto 0;
  background: rgba(255, 255, 255, 0.95);
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 4px 100px 0 rgba(240, 55, 72, 0.2);
  display: flex;
  flex-direction: column;
  padding: 40px;
  box-sizing: border-box;
  gap: 24px;
}

@media screen and (max-width: 1440px) {
  .t_board_item {
    padding: 24px 40px 40px;
  }
}
@media screen and (max-width: 768px) {
  .t_board_item {
    padding: 16px 16px 20px;
    max-width: 400px;
    margin-inline: auto;
  }
}
.t_board_item_head figure {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 40px;
}

@media screen and (max-width: 768px) {
  .t_board_item_head figure {
    gap: 16px;
  }
}
.t_board_item_head figure img {
  width: 150px;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
}

.t_board_item_head figure figcaption {
  font-size: 24px;
  font-weight: 700;
  line-height: 1;
  margin: 0;
}

@media screen and (max-width: 768px) {
  .t_board_item_head figure figcaption {
    font-size: 20px;
  }
}
.t_board_item_body {
  padding: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  flex: 1;
}

@media screen and (max-width: 768px) {
  .t_board_item_body {
    align-items: flex-start;
  }
}
.t_board_item_title {
  font-size: 20px;
  font-weight: 700;
  line-height: 1.3;
  color: #13202f;
  letter-spacing: 0.5px;
  margin: 0;
}

.t_board_item_list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: inline-flex;
  flex-direction: column;
  gap: 12px;
}

.t_board_item_list li {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 6px;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.4;
  position: relative;
}

.t_board_item_list li::before {
  content: "";
  display: inline-block;
  width: 16px;
  height: 16px;
  background-image: url("../img/icon/ico_check.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  flex: auto 0 0;
  margin-top: 4px;
}

.t_board_clm3 {
  display: flex;
  width: 100%;
  justify-content: center;
  align-items: stretch;
  gap: 40px;
  flex-wrap: wrap;
}

@media screen and (max-width: 1440px) {
  .t_board_clm3 {
    gap: 24px;
  }
}
@media screen and (max-width: 1280px) {
  .t_board_clm3 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
  }
}
@media (max-width: 768px) {
  .t_board_clm3 {
    grid-template-columns: repeat(1, 1fr);
    gap: 16px;
  }
}
.t_board_clm3 .sec_board_item {
  width: 400px;
  flex: auto 0 0;
}

@media screen and (max-width: 1440px) {
  .t_board_clm3 .sec_board_item {
    padding: 24px 40px 40px;
    width: 31%;
  }
}
@media screen and (max-width: 1280px) {
  .t_board_clm3 .sec_board_item {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .t_board_clm3 .sec_board_item {
    width: 100%;
    padding: 16px 16px 20px;
  }
}
.t_reason {
  display: flex;
  flex-direction: column;
  gap: 40px;
  width: 100%;
}

@media (max-width: 1024px) {
  .t_reason {
    gap: 24px;
  }
}
.t_reason_box {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 24px;
  background: #fff;
  border-radius: 20px;
  position: relative;
  padding: 56px 80px 56px 80px;
  background-position: center left 80px;
  background-repeat: no-repeat;
  background-size: 284px auto;
}

@media screen and (max-width: 1280px) {
  .t_reason_box {
    background-size: 200px auto;
    padding: 40px 56px;
    background-position: top 16px left 16px;
  }
}
@media screen and (max-width: 860px) {
  .t_reason_box {
    flex-direction: column;
    padding: 24px 24px 0;
    background-size: 160px auto;
    gap: 12px;
  }
}
.t_reason_box:nth-child(1) {
  background-image: url("../img/reason/num1.svg");
}

.t_reason_box:nth-child(2) {
  background-image: url("../img/reason/num2.svg");
  background-position: center left 500px;
}

@media screen and (max-width: 1280px) {
  .t_reason_box:nth-child(2) {
    background-position: top 16px left 360px;
  }
}
@media screen and (max-width: 860px) {
  .t_reason_box:nth-child(2) {
    background-position: top 16px left 16px;
  }
}
.t_reason_box:nth-child(2) .t_reason_box_body {
  padding-left: 480px;
}

@media screen and (max-width: 1280px) {
  .t_reason_box:nth-child(2) .t_reason_box_body {
    padding-left: 360px;
  }
}
@media screen and (max-width: 860px) {
  .t_reason_box:nth-child(2) .t_reason_box_body {
    padding-left: 0;
  }
}
.t_reason_box:nth-child(2) .t_reason_box_ilst {
  right: auto;
  left: 24px;
}

@media screen and (max-width: 860px) {
  .t_reason_box:nth-child(2) .t_reason_box_ilst {
    left: 0;
  }
}
.t_reason_box:nth-child(3) {
  background-image: url("../img/reason/num3.svg");
}

@media screen and (max-width: 860px) {
  .t_reason_box:nth-child(3) {
    padding-bottom: 16px;
  }
}
.t_reason_box:nth-child(4) {
  background-image: url("../img/reason/num4.svg");
  background-position: center left 500px;
}

@media screen and (max-width: 1280px) {
  .t_reason_box:nth-child(4) {
    background-position: top 16px left 360px;
  }
}
@media screen and (max-width: 860px) {
  .t_reason_box:nth-child(4) {
    background-position: top 16px left 16px;
  }
}
.t_reason_box:nth-child(4) .t_reason_box_body {
  padding-left: 480px;
}

@media screen and (max-width: 1280px) {
  .t_reason_box:nth-child(4) .t_reason_box_body {
    padding-left: 360px;
  }
}
@media screen and (max-width: 860px) {
  .t_reason_box:nth-child(4) .t_reason_box_body {
    padding-left: 0;
  }
}
.t_reason_box:nth-child(4) .t_reason_box_ilst {
  right: auto;
  left: 24px;
}

@media screen and (max-width: 860px) {
  .t_reason_box:nth-child(4) .t_reason_box_ilst {
    left: 0;
  }
}
.t_reason_box_body {
  display: flex;
  flex-direction: column;
  gap: 16px;
  width: auto;
  height: -moz-fit-content;
  height: fit-content;
  padding-left: 64px;
}

@media screen and (max-width: 1280px) {
  .t_reason_box_body {
    padding-left: 0px;
  }
}
.t_reason_box_title {
  font-size: clamp(24px, 3vw, 32px);
  font-weight: 600;
  line-height: 1.4;
}

.t_reason_box_title b {
  font-weight: 600;
  color: #f03748;
}

.t_reason_box_text {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.6;
}

.t_reason_box_ilst {
  width: clamp(360px, 30vw, 464px);
  height: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 134px;
}

@media screen and (max-width: 1280px) {
  .t_reason_box_ilst {
    right: 104px;
  }
}
@media screen and (max-width: 960px) {
  .t_reason_box_ilst {
    right: 40px;
  }
}
@media screen and (max-width: 860px) {
  .t_reason_box_ilst {
    position: static;
    width: 100%;
    max-width: 360px;
    transform: translateY(0);
  }
}
.t_reason_box_ilst img {
  width: 100%;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
}

.t_reason_box ul {
  list-style: none;
  margin: 0 0 0 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 24px;
}

@media screen and (max-width: 768px) {
  .t_reason_box ul {
    gap: 8px;
  }
}
.t_reason_box ul li {
  font-size: 16px;
  font-weight: 500;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  gap: 4px;
}

@media screen and (max-width: 768px) {
  .t_reason_box ul li {
    line-height: 1.4;
    align-items: flex-start;
  }
}
.t_reason_box ul li b {
  color: #f03748;
  font-weight: 600;
}

.t_reason_box ul li::before {
  content: "";
  display: inline-block;
  width: 16px;
  height: 16px;
  background-image: url("../img/icon/ico_check.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  flex: auto 0 0;
}

@media screen and (max-width: 768px) {
  .t_reason_box ul li::before {
    margin-top: 4px;
  }
}
.t_cta {
  background: url(../img/cta/bg.webp) top 38% center/cover no-repeat;
}

@media screen and (max-width: 768px) {
  .t_cta {
    background: url(../img/cta/bg.webp) center right/cover no-repeat;
  }
}
.t_cta_title {
  font-size: clamp(20px, 4vw, 40px);
  font-weight: 700;
  line-height: 1.4;
  color: #13202f;
  text-align: center;
  letter-spacing: 1px;
  margin-right: -1px;
}

@media (max-width: 798px) {
  .t_cta_title {
    margin-right: -1px;
  }
}
.t_cta_title em {
  color: #FFEF96;
}

.t_cta_btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
}

@media (max-width: 960px) {
  .t_cta_btn {
    flex-direction: column;
    gap: 16px;
    width: 100%;
    max-width: 380px;
    margin-inline: auto;
  }
}
.t_cta_btn .cta_btn {
  width: 380px;
  height: 80px;
  box-shadow: 0 4px 16px 0 rgba(19, 32, 47, 0.1);
}

@media (max-width: 960px) {
  .t_cta_btn .cta_btn {
    width: 100%;
  }
}
.t_cta_btn .cta_btn span {
  font-size: 20px;
  font-weight: 700;
}

@media screen and (max-width: 960px) {
  .t_cta_btn .cta_btn span {
    font-size: 16px;
  }
}
.t_cta_btn .cta_btn.outline {
  border-width: 2px;
}

.t_cta_btn .cta_btn em {
  color: #13202f;
  background: #FFEF96;
  font-size: 20px;
  width: 80px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  line-height: 1;
  padding: 20px 8px;
  border-radius: 100vmax;
  transition: all 0.3s ease;
}

.t_service_content {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 40px;
}

.t_service_list {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
  flex-wrap: wrap;
}

@media (max-width: 1200px) {
  .t_service_list {
    gap: 20px;
  }
}
@media (max-width: 768px) {
  .t_service_list {
    gap: 12px;
  }
}
.t_service_list img {
  width: auto;
  height: 80px;
  -o-object-fit: contain;
     object-fit: contain;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.t_service_note {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.6;
  color: #13202f;
  letter-spacing: 1px;
  text-align: center;
}

@media screen and (max-width: 960px) {
  .t_service_note {
    text-align: left;
  }
}
.t_pro_content {
  width: 100%;
  display: flex;
  flex-direction: row;
  align-items: stretch;
  justify-content: space-between;
  gap: 40px;
}

@media screen and (max-width: 1280px) {
  .t_pro_content {
    gap: 24px;
  }
}
@media screen and (max-width: 768px) {
  .t_pro_content {
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 24px;
  }
}
.t_pro_item {
  border-radius: 20px;
  background: #fff;
  overflow: hidden;
  height: auto;
  padding: 0;
  display: flex;
  width: 100%;
  flex-direction: column;
  width: 400px;
  height: auto;
}

@media (max-width: 1440px) {
  .t_pro_item {
    width: 32%;
  }
}
@media (max-width: 1024px) {
  .t_pro_item {
    width: 50%;
  }
}
@media (max-width: 768px) {
  .t_pro_item {
    width: 100%;
  }
}
.t_pro_item_img {
  width: 100%;
  height: 270px;
}

@media (max-width: 768px) {
  .t_pro_item_img {
    width: 100%;
  }
}
.t_pro_item_img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.t_pro_item_detail {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  gap: 24px;
  padding: 24px 24px;
}

@media (max-width: 1280px) {
  .t_pro_item_detail {
    gap: 16px;
    padding: 24px 16px;
  }
}
@media (max-width: 768px) {
  .t_pro_item_detail {
    gap: 8px;
  }
}
.t_pro_item_title {
  font-size: 20px;
  font-weight: 600;
  line-height: 1.4;
  color: #13202f;
  letter-spacing: 1px;
  overflow: hidden;
}

.t_pro_item_title b {
  color: #f03748;
  font-weight: 600;
}

.t_pro_item_list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.t_pro_item_list p {
  font-size: 14px;
  font-weight: 600;
  line-height: 1;
  border: 1px solid #f03748;
  background: #fff;
  color: #f03748;
  padding: 4px 6px;
  width: -moz-fit-content;
  width: fit-content;
}

.t_pro_item_list span {
  font-size: 14px;
  line-height: 1.8;
}

.t_pro_item_list ul {
  list-style: disc;
  margin: 0 0 0 16px;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.t_pro_item_list ul li {
  font-size: 14px;
  line-height: 1.8;
}

.t_img {
  width: 100%;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 24px;
  position: relative;
}

.t_img.pc-on {
  display: none;
}

@media (min-width: 1025px) {
  .t_img.pc-on {
    display: flex;
  }
}
.t_img.sp-on {
  display: flex;
}

@media (min-width: 1025px) {
  .t_img.sp-on {
    display: none;
  }
}
.t_img img {
  width: 100%;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
}

.t_img_nav {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  gap: 0;
  width: 100%;
  background-color: #F8F8F8;
  border-radius: 20px;
  overflow: hidden;
}

.t_img_nav li {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  gap: 4px;
  padding: 0 24px;
}

.t_img_nav li:last-child a {
  border-bottom: none;
}

.t_img_nav li a {
  width: 100%;
  height: 100%;
  padding: 24px 0;
  font-size: 16px;
  display: block;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid #ccc;
}

.t_img_nav li a:after {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  background-image: url("../img/icon/ico_down.svg");
  background-size: contain;
  background-repeat: no-repeat;
}

.t_case_content {
  display: flex;
  flex-direction: column;
  gap: 40px;
  width: 100%;
}

.t_case_swiper {
  width: 100%;
  margin: 0 auto;
  position: relative;
  display: flex;
  flex-direction: column;
  /* justify-content: flex-end; */
  align-items: flex-end;
  gap: 40px;
}

.t_case_swiper_item {
  border-radius: 20px;
  background: #fff;
  overflow: hidden;
  height: auto;
  align-self: stretch;
  padding: 0;
  container-type: inline-size;
}

.t_case_swiper_item a {
  display: flex;
  width: 100%;
  flex-direction: column;
  height: 100%;
}

.t_case_swiper_item a:hover .sec_case_swiper_item_btn .icon.arrow {
  background-color: #f03748;
}

.t_case_swiper_item a:hover .sec_case_swiper_item_btn .icon.arrow::after {
  background-color: #fff;
}

.t_case_swiper_item_img {
  width: 100%;
  height: 270px;
  flex: auto 0 0;
}

@media (max-width: 768px) {
  .t_case_swiper_item_img {
    width: 100%;
  }
}
.t_case_swiper_item_img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.t_case_swiper_item_detail {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  gap: 24px;
  padding: 24px;
}

@media (max-width: 768px) {
  .t_case_swiper_item_detail {
    gap: 16px;
    padding: 16px;
  }
}
.t_case_swiper_item_title {
  font-size: 20px;
  font-weight: 600;
  line-height: 1.4;
  color: #13202f;
  letter-spacing: 1px;
  overflow: hidden;
}

.t_case_swiper_item_title b {
  color: #f03748;
  font-weight: 600;
}

.t_case_swiper_item_list {
  display: flex;
  flex-direction: column;
  gap: 16px;
  background: #F8F8F8;
  padding: 16px;
}

.t_case_swiper_item_list p {
  font-size: 14px;
  font-weight: 600;
  line-height: 1;
  border: 1px solid #f03748;
  background: #f03748;
  color: #fff;
  padding: 4px 6px;
  width: -moz-fit-content;
  width: fit-content;
}

.t_case_swiper_item_list p.outline {
  border: 1px solid #f03748;
  background: #fff;
  color: #f03748;
}

.t_case_swiper_item_list ul {
  list-style: none;
  margin: 0 0 0 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.t_case_swiper_item_list ul li {
  font-size: 16px;
  font-weight: 600;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  gap: 4px;
}

@media (max-width: 768px) {
  .t_case_swiper_item_list ul li {
    align-items: flex-start;
  }
}
.t_case_swiper_item_list ul li b {
  color: #f03748;
  font-weight: 600;
}

.t_case_swiper_item_list ul li::before {
  content: "";
  display: inline-block;
  width: 16px;
  height: 16px;
  background-image: url("../img/icon/ico_check.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  flex: auto 0 0;
}

@media (max-width: 768px) {
  .t_case_swiper_item_list ul li::before {
    margin-top: 0;
  }
}
.t_case_swiper_item_text {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.t_case_swiper_item_text p {
  font-size: 16px;
  font-weight: 600;
  line-height: 1.4;
  color: #f03748;
  letter-spacing: 0.05em;
}

.t_case_swiper_item_text span {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.05em;
}

.t_case_swiper {
  /* swiper */
}

@media (min-width: 1024px) {
  .t_case_swiper .swiper-wrapper {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 0;
  }
}
.t_case_swiper .swiper-slide {
  width: 400px;
  height: auto;
}

@media (max-width: 1440px) {
  .t_case_swiper .swiper-slide {
    width: 32%;
  }
}
@media (max-width: 1024px) {
  .t_case_swiper .swiper-slide {
    width: 50%;
  }
}
@media (max-width: 768px) {
  .t_case_swiper .swiper-slide {
    width: 100%;
  }
}
.t_case_swiper .swiper-controls {
  display: none;
  width: 100%;
}

@media (max-width: 1024px) {
  .t_case_swiper .swiper-controls {
    gap: 24px;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
  }
}
.t_case_swiper .swiper-scrollbar {
  bottom: 0 !important;
  height: 8px !important;
  background-color: #fff;
  position: relative !important;
}

.t_case_swiper .swiper-scrollbar-drag {
  background-color: #f03748;
}

.t_case_swiper .swiper-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
}

.t_case_swiper .swiper-button .icon.arrow {
  width: 40px;
  height: 40px;
  background: #fff;
  border-radius: 100vmax;
  border: 1px solid #f03748;
}

.t_case_swiper .swiper-button .icon.arrow::after {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  background-color: #f03748;
  mask: var(--icon-arrow) no-repeat center;
  -webkit-mask: var(--icon-arrow) no-repeat center;
  mask-size: contain;
  -webkit-mask-size: contain;
}

@media (hover: none) and (pointer: coarse) {
  .t_case_swiper .swiper-button .icon.arrow:focus, .t_case_swiper .swiper-button .icon.arrow:focus-visible {
    outline: none;
    background: #f03748;
  }
  .t_case_swiper .swiper-button .icon.arrow:focus::after, .t_case_swiper .swiper-button .icon.arrow:focus-visible::after {
    background-color: #fff;
  }
}
.t_case_swiper .swiper-button-next, .t_case_swiper .swiper-button-prev {
  position: relative;
  left: auto;
  right: auto;
  top: auto;
  bottom: auto;
  margin: 0 !important;
}

.t_case_swiper .swiper-button-next::after, .t_case_swiper .swiper-button-prev::after {
  content: "";
}

.t_case_swiper .swiper-button-prev {
  transform: rotate(180deg);
}

.t_case_swiper .swiper-notification {
  display: none !important;
}

.t_price_cta {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 40px;
}

@media (max-width: 1024px) {
  .t_price_cta {
    gap: 24px;
  }
}
.t_price_cta_description {
  display: flex;
  align-items: stretch;
  justify-content: center;
  gap: 0;
  padding: 0 28px;
  width: 800px;
  height: 156px;
  background: #FFF7F7;
  border-radius: 20px;
}

@media (max-width: 1024px) {
  .t_price_cta_description {
    width: 100%;
  }
}
@media (max-width: 960px) {
  .t_price_cta_description {
    flex-direction: column-reverse;
    align-items: center;
    justify-content: center;
    height: auto;
    gap: 16px;
    padding: 24px;
  }
}
.t_price_cta_description img {
  width: 148px;
  height: 132px;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: bottom;
     object-position: bottom;
  align-self: flex-end;
}

@media screen and (max-width: 960px) {
  .t_price_cta_description img {
    align-self: center;
  }
}
.t_price_cta_description span {
  font-size: clamp(16px, 2vw, 24px);
  font-weight: 600;
  line-height: 1.6;
  color: #13202f;
  letter-spacing: 0;
  align-self: center;
  flex: auto 0 0;
}

.t_price_cta_description span b {
  color: #f03748;
  font-weight: 600;
}

.t_step {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 40px;
  width: 100%;
}

@media (max-width: 1024px) {
  .t_step {
    flex-direction: column;
    gap: 32px;
  }
}
.t_step_box {
  width: 224px;
  height: 264px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0;
  box-sizing: border-box;
  padding: 0;
  background: #fff;
  position: relative;
  border-radius: 20px;
}

@media (max-width: 1280px) {
  .t_step_box {
    width: 100%;
    height: auto;
  }
}
.t_step_box:after {
  content: "";
  display: block;
  width: 28px;
  height: 12px;
  background-color: #f03748;
  clip-path: polygon(50% 0%, 100% 100%, 0% 100%);
  position: absolute;
  bottom: 50%;
  right: -36px;
  transform: translateY(50%) rotate(90deg);
}

@media (max-width: 1024px) {
  .t_step_box:after {
    transform: translateY(0) translateX(50%) rotate(180deg);
    right: 50%;
    bottom: -22px;
  }
}
.t_step_box:last-child:after {
  display: none;
}

.t_step_box_cap {
  background: #13202f;
  color: #fff;
  font-size: 16px;
  height: 32px;
  font-weight: 600;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  border-radius: 20px 20px 0 0;
}

.t_step_box_body {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 24px 16px;
  gap: 16px;
}

.t_step_box_body figure {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0px;
}

.t_step_box_body figure img {
  width: 80px;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
  aspect-ratio: 1/1;
}

.t_step_box_body figure figcaption {
  font-size: 16px;
  font-weight: 600;
  line-height: 1.4;
  color: #13202f;
  text-align: center;
}

.t_step_box_body p {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.4;
  text-align: center;
}

.t_faq_content {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  width: 100%;
  box-sizing: border-box;
  gap: 40px;
}

.t_faq_box {
  width: -moz-fit-content;
  width: fit-content;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 40px;
}

.t_faq_box_title {
  font-size: clamp(16px, 4vw, 24px);
  font-weight: 600;
  line-height: 1.6;
  color: #13202f;
  text-align: center;
  letter-spacing: 1px;
  width: 100%;
  text-align: left;
  padding: 16px 0;
  border-bottom: 1px solid #f03748;
}

.t_faq_list {
  display: flex;
  flex-direction: column;
  gap: 24px;
  max-width: 832px;
  width: 100%;
  box-sizing: border-box;
}

.t_faq_list_item {
  padding: 16px;
  border-radius: 20px;
  background: #F8F8F8;
}

.t_faq_list_item.is_open .t_faq_list_item_q_icon::after, .t_faq_list_item.accordionItem.is_open .t_faq_list_item_q_icon::after {
  opacity: 0;
}

.t_faq_list_item_q {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 16px;
  letter-spacing: 1px;
}

.t_faq_list_item_q button {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 0;
  background: none;
  border: none;
  cursor: pointer;
  text-align: left;
  gap: 24px;
  letter-spacing: 1px;
}

.t_faq_list_item_q button:hover .t_faq_list_item_q_text {
  color: #f03748;
}

.t_faq_list_item_q button::before {
  content: "";
  display: inline-block;
  width: 60px;
  height: 60px;
  background: url("../img/faq/q.svg") no-repeat center center;
  flex: auto 0 0;
}

.t_faq_list_item_q_text {
  flex: 1;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.4;
  color: #13202f;
  transition: color 0.3s ease-in-out;
}

.t_faq_list_item_q_icon {
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  position: relative;
  transition: transform 0.3s ease-in-out;
}

.t_faq_list_item_q_icon::before, .t_faq_list_item_q_icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background-color: #13202f;
  transition: background-color 0.3s ease-in-out, opacity 0.3s ease-in-out;
}

.t_faq_list_item_q_icon::before {
  width: 20px;
  height: 4px;
  transform: translate(-50%, -50%);
  border-radius: 100vmax;
  background-color: #f03748;
}

.t_faq_list_item_q_icon::after {
  width: 4px;
  height: 20px;
  border-radius: 100vmax;
  transform: translate(-50%, -50%);
  background-color: #f03748;
}

.t_faq_list_item_a {
  margin: 0;
  height: 0;
  overflow: hidden;
  transition: height 0.4s ease-out;
  letter-spacing: 1px;
}

.accordionItem.is_open .t_faq_list_item_a {
  height: auto;
}

.t_faq_list_item_a_text {
  font-size: 16px;
  font-weight: 600;
  line-height: 1.6;
  color: #13202f;
  display: flex;
  align-items: stretch;
  justify-content: flex-start;
  gap: 24px;
  border-top: 1px solid #ccc;
  margin-top: 24px;
  padding-top: 24px;
  padding-bottom: 8px;
}

.t_faq_list_item_a_text span {
  font-size: 16px;
  font-weight: 500;
  line-height: 1.6;
  color: #13202f;
  padding-top: 2px;
}

.t_faq_list_item_a_text span a {
  text-decoration: underline;
  color: #f03748;
  transition: color 0.3s ease-in-out;
}

.t_faq_list_item_a_text span a:hover {
  color: #FFF7F7;
  text-decoration: none;
}

.t_faq_list_item_a_text::before {
  content: "";
  display: inline-block;
  width: 60px;
  height: 60px;
  background: url("../img/faq/a.svg") no-repeat center center;
  flex: auto 0 0;
}

.t_download {
  background: url(../img/cta/bg.webp) center center/cover no-repeat;
}

@media screen and (max-width: 768px) {
  .t_download {
    background: url(../img/cta/bg.webp) center right 22%/cover no-repeat;
  }
}
.t_download .sec_inner {
  padding-bottom: 0;
  gap: 16px;
}

@media (max-width: 1024px) {
  .t_download .sec_inner {
    padding-bottom: 40px;
  }
}
.t_download .sec_panel_title {
  gap: 12px;
  display: flex;
  flex-direction: column;
}

.t_download .sec_panel_title:after {
  content: "";
  display: block;
  width: 900px;
  height: 32px;
  background: url("../img/download/fukidashi.svg") no-repeat center center;
}

@media (max-width: 1024px) {
  .t_download .sec_panel_title:after {
    width: 100%;
  }
}
@media (max-width: 768px) {
  .t_download .sec_panel_title:after {
    background: url("../img/download/fukidashi_sp.svg") no-repeat center center;
  }
}
.t_download_content {
  width: 100%;
  box-sizing: border-box;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 40px;
}

@media (max-width: 1280px) {
  .t_download_content {
    gap: 0;
  }
}
@media (max-width: 1024px) {
  .t_download_content {
    flex-direction: column;
    gap: 24px;
  }
}
.t_download_img {
  width: 776px;
  height: 380px;
  position: relative;
  margin-left: 56px;
}

@media (max-width: 1280px) {
  .t_download_img {
    margin-left: 0;
    width: 100%;
  }
}
@media (max-width: 1024px) {
  .t_download_img {
    height: auto;
    display: flex;
    flex-direction: column-reverse;
    align-items: center;
    justify-content: center;
    gap: 0;
  }
}
.t_download_img .doc {
  width: 530px;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
  position: absolute;
  top: 24px;
  left: 0;
  z-index: 0;
}

.t_download_img .doc img {
  width: 100%;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
}

@media (max-width: 1280px) {
  .t_download_img .doc {
    width: 480px;
  }
}
@media (max-width: 1024px) {
  .t_download_img .doc {
    position: static;
    max-width: 480px;
    width: 100%;
    margin-top: -24px;
  }
}
.t_download_img .ilst {
  width: 322px;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: 1;
}

.t_download_img .ilst img {
  width: 100%;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
}

@media (max-width: 1100px) {
  .t_download_img .ilst {
    width: 280px;
    right: -40px;
  }
}
@media (max-width: 1024px) {
  .t_download_img .ilst {
    position: static;
    max-width: 146px;
    width: 100%;
  }
}
.t_download_cta {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 16px;
  margin-bottom: 56px;
}

@media (max-width: 1024px) {
  .t_download_cta {
    margin-bottom: 0;
    width: 100%;
  }
}
.t_download_cta .cta_btn {
  width: 380px;
  height: 80px;
  padding-right: 8px;
}

@media (max-width: 1024px) {
  .t_download_cta .cta_btn {
    width: 100%;
    max-width: 380px;
  }
}
.t_download_cta .cta_btn span {
  font-size: 20px;
  font-weight: 700;
}

@media screen and (max-width: 960px) {
  .t_download_cta .cta_btn span {
    font-size: 16px;
  }
}
.t_download_cta .cta_btn.outline {
  border-width: 2px;
}

.t_download_cta .cta_btn em {
  color: #13202f;
  background: #FFEF96;
  font-size: 20px;
  width: 80px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  line-height: 1;
  padding: 8px 8px;
  border-radius: 100vmax;
  transition: all 0.3s ease;
}

.t_download_doc {
  background: url(../img/download/bg_doc.webp) center center/cover no-repeat;
}

.t_download_doc .sec_inner {
  padding-top: 48px;
  padding-bottom: 48px;
}

@media (max-width: 1024px) {
  .t_download_doc .sec_inner {
    padding-top: 40px;
    padding-bottom: 44px;
  }
}
.t_download_doc .sec_content {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 80px;
}

@media (max-width: 1024px) {
  .t_download_doc .sec_content {
    gap: 40px;
  }
}
@media (max-width: 960px) {
  .t_download_doc .sec_content {
    flex-direction: column;
    gap: 24px;
  }
}
.t_download_doc_content {
  width: 100%;
  box-sizing: border-box;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 40px;
}

@media (max-width: 1280px) {
  .t_download_doc_content {
    gap: 0;
  }
}
@media (max-width: 1024px) {
  .t_download_doc_content {
    flex-direction: column;
    gap: 24px;
  }
}
.t_download_doc_img {
  width: clamp(360px, 30vw, 530px);
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
  z-index: 0;
  flex: auto 0 0;
}

@media (max-width: 960px) {
  .t_download_doc_img {
    width: 100%;
    max-width: 480px;
  }
}
.t_download_doc_img img {
  width: 100%;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
}

.t_download_doc_details {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 24px;
}

.t_download_doc_details_text {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 24px;
}

@media (max-width: 960px) {
  .t_download_doc_details_text {
    align-items: center;
  }
}
.t_download_doc_details_text h2 {
  font-size: clamp(24px, 3vw, 40px);
  font-weight: 600;
  line-height: 1.4;
  color: #fff;
}

@media (max-width: 960px) {
  .t_download_doc_details_text h2 {
    text-align: center;
  }
}
.t_download_doc_details_text ul {
  list-style: none;
  margin: 0 0 0 0;
  padding: 0;
  display: inline-flex;
  flex-direction: column;
  gap: 24px;
}

.t_download_doc_details_text ul li {
  font-size: 16px;
  font-weight: 600;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  gap: 4px;
  color: #fff;
}

.t_download_doc_details_text ul li b {
  color: #f03748;
  font-weight: 600;
}

.t_download_doc_details_text ul li::before {
  content: "";
  display: inline-block;
  width: 16px;
  height: 16px;
  background-image: url("../img/icon/ico_check.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  flex: auto 0 0;
}

.t_download_doc_details_cta {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 16px;
}

@media (max-width: 1024px) {
  .t_download_doc_details_cta {
    width: 100%;
  }
}
.t_download_doc_details_cta .cta_btn {
  width: 380px;
  height: 80px;
  padding-right: 8px;
}

@media (max-width: 1024px) {
  .t_download_doc_details_cta .cta_btn {
    width: 100%;
    max-width: 380px;
  }
}
.t_download_doc_details_cta .cta_btn span {
  font-size: 20px;
  font-weight: 700;
}

@media screen and (max-width: 960px) {
  .t_download_doc_details_cta .cta_btn span {
    font-size: 16px;
  }
}
.t_download_case {
  overflow: hidden;
}

.t_download_case .sec_inner {
  position: relative;
}

@media (max-width: 1024px) {
  .t_download_case .sec_inner {
    padding-top: 40px;
    padding-bottom: 44px;
  }
}
.t_download_case .sec_inner::before {
  content: "";
  display: block;
  width: 208px;
  height: 186px;
  background: url(../img/plan_ilst.webp) center center/cover no-repeat;
  position: absolute;
  bottom: 0;
  right: 152px;
  z-index: 0;
}

@media (max-width: 1440px) {
  .t_download_case .sec_inner::before {
    right: 80px;
  }
}
@media (max-width: 1280px) {
  .t_download_case .sec_inner::before {
    display: none;
  }
}
.t_download_case .sec_inner::after {
  content: "";
  display: block;
  width: 504px;
  height: 634px;
  background: url(../img/download/bubble.svg) center center/cover no-repeat;
  position: absolute;
  bottom: 50%;
  right: -344px;
  transform: translateY(50%);
  z-index: 0;
}

@media (max-width: 960px) {
  .t_download_case .sec_inner::after {
    width: 276px;
    height: 348px;
    right: -160px;
    transform: translateY(0);
    bottom: auto;
    top: -24px;
  }
}
.t_download_case .sec_content {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 80px;
}

@media (max-width: 1024px) {
  .t_download_case .sec_content {
    gap: 40px;
  }
}
@media (max-width: 960px) {
  .t_download_case .sec_content {
    flex-direction: column;
    gap: 24px;
  }
}
.t_download_case_content {
  width: 100%;
  box-sizing: border-box;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 40px;
}

@media (max-width: 1280px) {
  .t_download_case_content {
    gap: 0;
  }
}
@media (max-width: 1024px) {
  .t_download_case_content {
    flex-direction: column;
    gap: 24px;
  }
}
.t_download_case_img {
  width: clamp(360px, 30vw, 416px);
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
  z-index: 0;
  flex: auto 0 0;
  box-shadow: 0 4px 20px 0 rgba(0, 0, 0, 0.25);
  position: relative;
  z-index: 1;
}

.t_download_case_img::before {
  content: "";
  display: block;
  width: 260px;
  height: 260px;
  background: url(../img/download/focus_bubble.webp) center center/cover no-repeat;
  position: absolute;
  top: 56px;
  left: -136px;
  z-index: 0;
}

@media (max-width: 960px) {
  .t_download_case_img::before {
    display: none;
  }
}
@media (max-width: 960px) {
  .t_download_case_img {
    width: 100%;
    max-width: 480px;
  }
}
.t_download_case_img img {
  width: 100%;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
  z-index: 2;
  position: relative;
}

.t_download_case_details {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 64px;
}

@media (max-width: 1280px) {
  .t_download_case_details {
    gap: 40px;
  }
}
@media (max-width: 960px) {
  .t_download_case_details {
    gap: 24px;
  }
}
.t_download_case_details_text {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 16px;
  color: #fff;
}

@media (max-width: 960px) {
  .t_download_case_details_text {
    align-items: flex-start;
    gap: 4px;
  }
}
.t_download_case_details_text span {
  font-size: clamp(24px, 2vw, 32px);
  font-weight: 600;
  line-height: 1;
  color: #fff;
}

@media (max-width: 960px) {
  .t_download_case_details_text span {
    line-height: 1.4;
  }
}
.t_download_case_details_text span strong {
  font-weight: 600;
  line-height: 1;
  letter-spacing: 1px0;
  font-size: clamp(32px, 5vw, 64px);
  position: relative;
  top: 3px;
}

@media (max-width: 960px) {
  .t_download_case_details_text span strong {
    top: 1px;
  }
}
.t_download_case_details_text span b {
  background: #fff;
  color: #f03748;
  padding: 4px 4px;
  margin-right: 4px;
}

@media (max-width: 960px) {
  .t_download_case_details_text span b {
    padding: 0px 4px;
    margin-right: 4px;
  }
}
.t_download_case_details_cta {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 16px;
}

@media (max-width: 1024px) {
  .t_download_case_details_cta {
    width: 100%;
    align-items: flex-start;
  }
}
@media (max-width: 960px) {
  .t_download_case_details_cta {
    align-items: center;
  }
}
.t_download_case_details_cta .cta_btn {
  width: 408px;
  height: 80px;
  padding-right: 8px;
  background: #13202f;
  color: #fff;
}

@media (max-width: 1024px) {
  .t_download_case_details_cta .cta_btn {
    width: 100%;
    max-width: 380px;
  }
}
.t_download_case_details_cta .cta_btn span {
  font-size: 20px;
  font-weight: 700;
}

@media screen and (max-width: 960px) {
  .t_download_case_details_cta .cta_btn span {
    font-size: 16px;
  }
}
/* --------------------------------------------
リニューアル前版
-------------------------------------------- */
.top_fv {
  position: relative;
}

@media screen and (min-width: 769px) {
  .top_fv {
    margin-bottom: -120px;
  }
}
@media screen and (max-width: 768px) {
  .top_fv {
    margin-bottom: -50px;
  }
}
@media screen and (min-width: 769px) {
  .top_fv .assist {
    background-image: url(../img/bg_top_fv_line_art.png);
    background-size: 110%;
    background-repeat: repeat;
    background-position: center center;
  }
}
@media screen and (max-width: 768px) {
  .top_fv .assist {
    background-image: url(../img/bg_top_fv_line_art.png);
    background-size: 110%;
    background-repeat: repeat;
    background-position: center center;
  }
}
.top_fv .assist .top_assist_inner {
  position: relative;
}

@media (min-width: 1910px) {
  .top_fv .assist .top_assist_inner {
    width: 100%;
    max-width: 1200px;
    top: 0px;
    left: 50%;
    transform: translate(-66%, 0%);
  }
}
@media (min-width: 1820px) and (max-width: 1909px) {
  .top_fv .assist .top_assist_inner {
    width: 100%;
    max-width: 1200px;
    margin: 0 0 0 7%;
  }
}
@media (min-width: 1650px) and (max-width: 1819px) {
  .top_fv .assist .top_assist_inner {
    width: 100%;
    max-width: 65%;
    margin: 0 0 0 6%;
  }
}
@media (min-width: 1200px) and (max-width: 1649px) {
  .top_fv .assist .top_assist_inner {
    width: 100%;
    max-width: 65%;
    margin: 0 0 0 3%;
  }
}
@media (min-width: 768px) and (max-width: 1199px) {
  .top_fv .assist .top_assist_inner {
    width: 92%;
    margin: 0px auto;
  }
}
@media screen and (max-width: 768px) {
  .top_fv .assist .top_assist_inner {
    width: 92%;
    margin: 0px auto;
  }
}
.top_fv .assist .top_assist_inner h1 {
  font-family: "Chatwork Sans EB", sans-serif;
  font-feature-settings: "palt";
  text-align: center;
}

@media screen and (min-width: 769px) {
  .top_fv .assist .top_assist_inner h1 {
    padding: 40px 0 25px;
  }
}
@media (min-width: 1530px) {
  .top_fv .assist .top_assist_inner h1 {
    font-size: clamp(2.6rem, 6vw, 7.5rem);
  }
}
@media (min-width: 1300px) and (max-width: 1529px) {
  .top_fv .assist .top_assist_inner h1 {
    font-size: clamp(2.6rem, 6vw, 4.5vw);
  }
}
@media (min-width: 1200px) and (max-width: 1299px) {
  .top_fv .assist .top_assist_inner h1 {
    font-size: clamp(2.6rem, 6vw, 4vw);
  }
}
@media (min-width: 768px) and (max-width: 1199px) {
  .top_fv .assist .top_assist_inner h1 {
    font-size: clamp(2.6rem, 6vw, 6vw);
  }
}
@media screen and (max-width: 768px) {
  .top_fv .assist .top_assist_inner h1 {
    font-size: clamp(2.6rem, 6vw, 7.5rem);
    padding: 20px 0 10px 0;
  }
}
.top_fv .assist .top_assist_inner h1 span {
  color: #f03748;
}

.top_fv .assist .top_assist_inner .catch {
  position: relative;
  z-index: 6;
  background: #f03748;
  text-align: center;
  border-radius: 10px;
  font-feature-settings: "palt";
  font-size: clamp(1.8rem, 4vw, 3.6rem);
  line-height: 1.3;
  color: #fff;
  width: -moz-fit-content;
  width: fit-content;
}

@media screen and (min-width: 769px) {
  .top_fv .assist .top_assist_inner .catch {
    margin: 0 auto 30px;
    padding: 10px 24px 7px;
    letter-spacing: 3px;
    font-family: "Chatwork Sans EB", sans-serif;
  }
}
@media screen and (max-width: 768px) {
  .top_fv .assist .top_assist_inner .catch {
    margin: 0 auto 20px;
    padding: 10px 16px 8px;
    letter-spacing: 1px;
    font-family: "Chatwork Sans B", sans-serif;
  }
}
@media (min-width: 1530px) {
  .top_fv .assist .top_assist_inner .catch {
    font-size: clamp(1.8rem, 4vw, 3.6rem);
  }
}
@media (min-width: 1300px) and (max-width: 1529px) {
  .top_fv .assist .top_assist_inner .catch {
    font-size: clamp(1.8rem, 4vw, 2.4vw);
  }
}
@media (min-width: 1200px) and (max-width: 1299px) {
  .top_fv .assist .top_assist_inner .catch {
    font-size: clamp(1.8rem, 4vw, 2.4vw);
  }
}
@media (min-width: 768px) and (max-width: 1199px) {
  .top_fv .assist .top_assist_inner .catch {
    font-size: clamp(1.8rem, 4vw, 3.4vw);
  }
}
.top_fv .assist .top_assist_inner .assist_image {
  position: relative;
  z-index: 2;
}

@media screen and (max-width: 768px) {
  .top_fv .assist .top_assist_inner .assist_image {
    margin-bottom: 30px;
  }
}
.top_fv .assist .top_assist_inner .assist_image .assist_image_ill {
  position: relative;
  width: 100%;
  height: auto;
  z-index: 1;
}

@media screen and (min-width: 769px) {
  .top_fv .assist .top_assist_inner .assist_image .assist_image_ill {
    top: -70px;
  }
}
@media screen and (max-width: 768px) {
  .top_fv .assist .top_assist_inner .assist_image .assist_image_ill {
    top: 0px;
  }
}
.top_fv .assist .top_assist_inner .assist_image .assist_voice_loop {
  position: relative;
  z-index: 5;
}

.top_fv .assist .top_assist_inner .assist_image .assist_voice_loop .assist_voice {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

@media screen and (min-width: 769px) {
  .top_fv .assist .top_assist_inner .assist_image .assist_voice_loop .assist_voice {
    border: 0px solid transparent;
  }
}
@media screen and (max-width: 768px) {
  .top_fv .assist .top_assist_inner .assist_image .assist_voice_loop .assist_voice {
    border: 1px solid transparent;
  }
}
.top_fv .assist .top_assist_inner .assist_image .assist_voice_loop .assist_voice .assist_voice_txt {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 5px;
  margin-bottom: 15px;
}

@media screen and (min-width: 769px) {
  .top_fv .assist .top_assist_inner .assist_image .assist_voice_loop .assist_voice .assist_voice_txt {
    padding: 10px;
    width: 270px;
    height: 105px;
    line-height: 1.5;
  }
}
@media screen and (max-width: 768px) {
  .top_fv .assist .top_assist_inner .assist_image .assist_voice_loop .assist_voice .assist_voice_txt {
    padding: 5px;
    width: 45%;
    height: 70px;
    line-height: 1.4;
  }
}
.top_fv .assist .top_assist_inner .assist_image .assist_voice_loop .assist_voice .assist_voice_txt::before {
  content: "";
  position: absolute;
  top: 100%;
  margin-left: -10px;
  border: 10px solid transparent;
}

.top_fv .assist .top_assist_inner .assist_image .assist_voice_loop .assist_voice .assist_voice_txt.mc {
  background: #e3f5f3;
}

@media screen and (min-width: 769px) {
  .top_fv .assist .top_assist_inner .assist_image .assist_voice_loop .assist_voice .assist_voice_txt.mc {
    border-right: 6px solid #4fc6af;
  }
}
@media screen and (max-width: 768px) {
  .top_fv .assist .top_assist_inner .assist_image .assist_voice_loop .assist_voice .assist_voice_txt.mc {
    border-right: 3px solid #4fc6af;
  }
}
.top_fv .assist .top_assist_inner .assist_image .assist_voice_loop .assist_voice .assist_voice_txt.mc::before {
  border-top: 10px solid #e3f5f3;
}

@media screen and (min-width: 769px) {
  .top_fv .assist .top_assist_inner .assist_image .assist_voice_loop .assist_voice .assist_voice_txt.mc::before {
    left: 30%;
  }
}
@media screen and (max-width: 768px) {
  .top_fv .assist .top_assist_inner .assist_image .assist_voice_loop .assist_voice .assist_voice_txt.mc::before {
    left: 15%;
  }
}
.top_fv .assist .top_assist_inner .assist_image .assist_voice_loop .assist_voice .assist_voice_txt.wc {
  background: #f0f0f0;
}

@media screen and (min-width: 769px) {
  .top_fv .assist .top_assist_inner .assist_image .assist_voice_loop .assist_voice .assist_voice_txt.wc {
    border-right: 6px solid #b3b3b3;
  }
}
@media screen and (max-width: 768px) {
  .top_fv .assist .top_assist_inner .assist_image .assist_voice_loop .assist_voice .assist_voice_txt.wc {
    border-right: 3px solid #b3b3b3;
  }
}
.top_fv .assist .top_assist_inner .assist_image .assist_voice_loop .assist_voice .assist_voice_txt.wc::before {
  border-top: 10px solid #f0f0f0;
}

@media screen and (min-width: 769px) {
  .top_fv .assist .top_assist_inner .assist_image .assist_voice_loop .assist_voice .assist_voice_txt.wc::before {
    left: 70%;
  }
}
@media screen and (max-width: 768px) {
  .top_fv .assist .top_assist_inner .assist_image .assist_voice_loop .assist_voice .assist_voice_txt.wc::before {
    left: 90%;
  }
}
.top_fv .assist .top_assist_inner .assist_image .assist_voice_loop .assist_voice .assist_voice_txt p {
  font-size: clamp(1.1rem, 2vw, 1.7rem);
}

.top_fv .assist .top_assist_inner .assist_image .assist_voice_loop .assist_voice .assist_voice_txt p span {
  font-family: "Chatwork Sans B", sans-serif;
  color: #f03748;
}

.top_fv .job {
  background: #da0d20;
  position: relative;
  z-index: 1;
}

@media screen and (min-width: 769px) {
  .top_fv .job {
    top: -120px;
  }
}
@media screen and (max-width: 768px) {
  .top_fv .job {
    top: -50px;
  }
}
@media screen and (min-width: 769px) {
  .top_fv .job.top_ver {
    top: -120px;
    height: 70px;
  }
}
@media screen and (max-width: 768px) {
  .top_fv .job.top_ver {
    top: -50px;
    height: 50px;
  }
}
@media screen and (min-width: 769px) {
  .top_fv .job {
    border-top: 20px solid #f03748;
  }
}
@media screen and (max-width: 768px) {
  .top_fv .job {
    border-top: 20px solid #f03748;
  }
}
.top_fv .job h2 {
  font-family: "Chatwork Sans EB", sans-serif;
  font-size: clamp(2rem, 3vw, 3.7rem);
  text-shadow: 4px 4px 0px rgba(187, 16, 35, 0.98);
  text-align: center;
  color: #fff;
}

@media screen and (min-width: 769px) {
  .top_fv .job h2 {
    padding: 25px 0 15px;
  }
}
@media screen and (max-width: 768px) {
  .top_fv .job h2 {
    padding: 15px 0 10px;
  }
}
@media screen and (min-width: 769px) {
  .top_fv .job ul {
    padding-bottom: 20px;
  }
}
@media screen and (max-width: 768px) {
  .top_fv .job ul {
    padding-bottom: 10px;
  }
}
.top_fv .job ul li {
  background: #fff;
  border-radius: 10px;
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(1.3rem, 2vw, 1.8rem);
  display: inline-block;
}

@media screen and (min-width: 769px) {
  .top_fv .job ul li {
    margin: 0px 10px;
    border: 5px solid #c3081b;
    padding: 17px 12px 15px;
  }
}
@media screen and (max-width: 768px) {
  .top_fv .job ul li {
    margin: 0px 5px;
    border: 3px solid #c3081b;
    padding: 12px 8px 10px;
  }
}
/* --------------------------------------------
top_logo_slide
-------------------------------------------- */
.top_company_logo {
  position: relative;
  z-index: 2;
  background: #fff;
}

@media screen and (min-width: 769px) {
  .top_company_logo .top_job_slide_logo_wrap {
    padding: 20px 20px;
  }
}
@media screen and (max-width: 768px) {
  .top_company_logo .top_job_slide_logo_wrap {
    padding: 15px 20px;
  }
}
.top_company_logo .top_job_slide_logo_wrap img {
  width: auto;
}

@media screen and (min-width: 769px) {
  .top_company_logo .top_job_slide_logo_wrap img {
    height: 55px;
  }
}
@media screen and (max-width: 768px) {
  .top_company_logo .top_job_slide_logo_wrap img {
    height: 50px;
  }
}
/* --------------------------------------------
top_whats
-------------------------------------------- */
.top_whats {
  background: #f0f0f0;
}

.top_whats ul {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
}

@media screen and (min-width: 769px) {
  .top_whats ul {
    gap: 0 3%;
    padding-top: 60px;
  }
}
@media screen and (max-width: 768px) {
  .top_whats ul {
    gap: 45px 2%;
    padding-top: 20px;
  }
}
.top_whats ul li {
  position: relative;
  text-align: center;
  background: #fff;
  width: 30%;
  padding-bottom: 20px;
}

@media screen and (min-width: 769px) {
  .top_whats ul li {
    width: 30%;
    padding-bottom: 20px;
  }
}
@media screen and (max-width: 768px) {
  .top_whats ul li {
    width: 49%;
    padding-bottom: 20px;
  }
}
.top_whats ul li .photo {
  position: relative;
}

@media screen and (min-width: 769px) {
  .top_whats ul li .photo {
    top: -70px;
    margin-bottom: -70px;
  }
}
@media screen and (max-width: 768px) {
  .top_whats ul li .photo {
    top: -35px;
    margin-bottom: -35px;
  }
}
.top_whats ul li .photo img {
  height: auto;
}

@media screen and (min-width: 769px) {
  .top_whats ul li .photo img {
    width: 140px;
  }
}
@media screen and (max-width: 768px) {
  .top_whats ul li .photo img {
    width: 70px;
  }
}
.top_whats ul li h3 {
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(1.8rem, 2vw, 2.4rem);
  color: #f03748;
  letter-spacing: 2px;
}

@media screen and (min-width: 769px) {
  .top_whats ul li h3 {
    margin-bottom: 10px;
    padding-top: 15px;
  }
}
@media screen and (max-width: 768px) {
  .top_whats ul li h3 {
    margin-bottom: 6px;
    padding-top: 8px;
  }
}
.top_whats ul li p {
  margin-top: 12px;
  font-size: 20px;
  font-family: "Chatwork Sans B";
  font-size: clamp(1.2rem, 2vw, 2.2rem);
  line-height: 1.4;
  letter-spacing: 1px;
}

.top_whats ul li p span {
  color: #f03748;
}

/* --------------------------------------------
top_comparison
-------------------------------------------- */
.top_comparison {
  background: #f7f7f7;
  background-image: url(../img/bg_top_comparison.svg);
  background-repeat: no-repeat;
  background-size: cover;
}

@media screen and (min-width: 769px) {
  .top_comparison {
    background-position: top right 25%;
  }
}
@media screen and (max-width: 768px) {
  .top_comparison {
    background-position: top right 29%;
  }
}
.top_comparison .top_comparison_inner {
  position: relative;
  background: #fff;
}

@media screen and (min-width: 769px) {
  .top_comparison .top_comparison_inner {
    max-width: 960px;
    margin: 0 auto;
    padding: 35px;
    box-shadow: rgba(0, 0, 0, 0.2) 5px 5px 5px 1px;
  }
}
@media screen and (max-width: 768px) {
  .top_comparison .top_comparison_inner {
    width: 96%;
    margin: 0 3%;
    padding: 15px;
    box-shadow: rgba(0, 0, 0, 0.2) 3px 3px 3px 1px;
  }
}
.top_comparison .top_comparison_inner table {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
  color: #808080;
}

.top_comparison .top_comparison_inner table .cell1 {
  width: 20%;
  background: #f7f7f7;
  vertical-align: middle;
  border-left: 1px solid #808080;
  font-size: clamp(1.2rem, 1.28vw, 1.6rem);
  font-family: "Chatwork Sans B", sans-serif;
}

@media screen and (min-width: 769px) {
  .top_comparison .top_comparison_inner table .cell1 {
    padding: 16px 2em 16px;
  }
}
@media screen and (max-width: 768px) {
  .top_comparison .top_comparison_inner table .cell1 {
    padding: 10px 5px 7px;
  }
}
.top_comparison .top_comparison_inner table .cell2 {
  width: 40%;
  text-align: center;
  vertical-align: middle;
  border-right: 1px solid #808080;
  background-color: #f7f7f7;
  font-size: clamp(1.2rem, 2vw, 1.6rem);
  font-family: "Chatwork Sans L", sans-serif;
  line-height: 1.5;
}

.top_comparison .top_comparison_inner table .cell2 em {
  font-size: clamp(1.3rem, 2vw, 1.8rem);
  font-family: "Chatwork Sans B", sans-serif;
}

.top_comparison .top_comparison_inner table .cell2 span {
  display: block;
  line-height: 1.5;
  font-family: "Chatwork Sans B", sans-serif;
}

@media screen and (min-width: 769px) {
  .top_comparison .top_comparison_inner table .cell2 span {
    font-size: 110%;
  }
}
@media screen and (min-width: 769px) {
  .top_comparison .top_comparison_inner table .cell2 {
    padding: 16px 5px 16px;
  }
}
@media screen and (max-width: 768px) {
  .top_comparison .top_comparison_inner table .cell2 {
    padding: 10px 5px 7px;
  }
}
.top_comparison .top_comparison_inner table th.cell2 {
  background-color: #808080;
  color: #fff;
}

.top_comparison .top_comparison_inner table .cell3 {
  width: 40%;
  text-align: center;
  vertical-align: middle;
  border-inline: 4px solid #f03748;
  background: #feedee;
  color: #13202f;
  font-size: clamp(1.2rem, 2vw, 1.6rem);
  font-family: "Chatwork Sans B", sans-serif;
  line-height: 1.5;
}

.top_comparison .top_comparison_inner table .cell3 img {
  height: auto;
  width: 100%;
}

@media screen and (min-width: 769px) {
  .top_comparison .top_comparison_inner table .cell3 img {
    max-width: 200px;
  }
}
@media screen and (max-width: 768px) {
  .top_comparison .top_comparison_inner table .cell3 img {
    max-width: 150px;
    vertical-align: -2px;
  }
}
.top_comparison .top_comparison_inner table .cell3 span {
  display: block;
  line-height: 1.5;
  font-size: clamp(1.4rem, 2vw, 2.6rem);
  font-family: "Chatwork Sans EB", sans-serif;
  color: #f03748;
}

@media screen and (min-width: 769px) {
  .top_comparison .top_comparison_inner table .cell3 {
    padding: 16px 5px 16px;
  }
}
@media screen and (max-width: 768px) {
  .top_comparison .top_comparison_inner table .cell3 {
    padding: 10px 5px 7px;
  }
}
.top_comparison .top_comparison_inner table th.cell3 {
  position: relative;
  padding-block: 20px 40px;
  background-image: linear-gradient(to bottom, #f03748 80%, #feedee 80%);
}

.top_comparison .top_comparison_inner table th.cell3::before {
  position: absolute;
  top: -15px;
  left: -4px;
  width: calc(100% + 8px);
  height: 16px;
  border-radius: 16px 16px 0 0;
  background-color: #f03748;
  content: "";
}

.top_comparison .top_comparison_inner table th.cell3::after {
  position: absolute;
  top: 79%;
  left: 0;
  width: 100%;
  height: 16px;
  clip-path: polygon(0 0, 50% 100%, 100% 0);
  background-color: #f03748;
  content: "";
}

.top_comparison .top_comparison_inner table tr:not(:first-child) .cell1, .top_comparison .top_comparison_inner table tr:not(:first-child) .cell2 {
  position: relative;
}

.top_comparison .top_comparison_inner table tr:not(:first-child) .cell1::before, .top_comparison .top_comparison_inner table tr:not(:first-child) .cell2::before {
  position: absolute;
  top: 0;
  left: 50%;
  translate: -50% 0;
  width: 80%;
  height: 1px;
  background-color: #e6e6e6;
  content: "";
}

.top_comparison .top_comparison_inner table tr:nth-child(2) .cell1 {
  border-top: 1px solid #808080;
}

.top_comparison .top_comparison_inner table tr:not(:nth-child(1)):not(:nth-child(2)) .cell3 {
  position: relative;
}

.top_comparison .top_comparison_inner table tr:not(:nth-child(1)):not(:nth-child(2)) .cell3::before {
  position: absolute;
  top: 0;
  left: 50%;
  translate: -50% 0;
  width: 80%;
  height: 1px;
  background-color: #fed8dc;
  content: "";
}

.top_comparison .top_comparison_inner table tr:last-child .cell1, .top_comparison .top_comparison_inner table tr:last-child .cell2 {
  border-bottom: 1px solid #808080;
}

.top_comparison .top_comparison_inner table tr:last-child .cell3 {
  position: relative;
}

.top_comparison .top_comparison_inner table tr:last-child .cell3::after {
  position: absolute;
  bottom: -16px;
  left: -4px;
  width: calc(100% + 8px);
  height: 16px;
  border-inline: 4px solid #f03748;
  border-bottom: 4px solid #f03748;
  border-radius: 0 0 16px 16px;
  background-color: #feedee;
  content: "";
}

.top_comparison .top_comparison_inner h3 {
  font-size: clamp(1.5rem, 2vw, 2.5rem);
  font-family: "Chatwork Sans B", sans-serif;
  line-height: 1.3;
  text-align: center;
  padding: 30px 0 20px;
}

.top_comparison .top_comparison_inner h3 span {
  color: #f03748;
}

.top_comparison .top_comparison_inner .ill_top_comparison_scheme {
  text-align: center;
}

.top_comparison .top_comparison_inner .ill_top_comparison_scheme img {
  height: auto;
}

@media screen and (min-width: 769px) {
  .top_comparison .top_comparison_inner .ill_top_comparison_scheme img {
    width: 615px;
  }
}
@media screen and (max-width: 768px) {
  .top_comparison .top_comparison_inner .ill_top_comparison_scheme img {
    width: 100%;
  }
}
.top_comparison .top_comparison_inner .cw_staff {
  position: absolute;
  bottom: 0px;
  right: -110px;
  width: 170px;
  height: auto;
}

@media screen and (max-width: 768px) {
  .top_comparison .top_comparison_inner .cw_staff {
    display: none;
  }
}
/* --------------------------------------------
top_service
-------------------------------------------- */
.top_service {
  background-image: url(../img/bg_top_fv_line_art.png);
  background-size: 110%;
  background-repeat: repeat;
  background-position: center center;
}

@media screen and (min-width: 769px) {
  .top_service .top_service_link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 20px 0;
    margin-bottom: 60px;
  }
}
@media screen and (max-width: 768px) {
  .top_service .top_service_link {
    margin-bottom: 30px;
  }
}
@media screen and (min-width: 769px) {
  .top_service .top_service_link li {
    width: 49%;
  }
}
@media screen and (max-width: 768px) {
  .top_service .top_service_link li {
    margin-bottom: 20px;
  }
  .top_service .top_service_link li:last-child {
    margin-bottom: 0px;
  }
}
.top_service .top_service_link li a {
  display: block;
}

.top_service .top_service_link li a img {
  width: 100%;
  height: auto;
  opacity: 1;
  transition: 0.3s;
}

.top_service .top_service_link li a:hover img {
  opacity: 0.85;
}

@media screen and (min-width: 769px) {
  .top_service .second {
    margin-bottom: 40px;
  }
}
@media screen and (max-width: 768px) {
  .top_service .second {
    margin-bottom: 20px;
  }
}
.top_service .top_service_detail_loop {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}

@media screen and (min-width: 769px) {
  .top_service .top_service_detail_loop {
    justify-content: center;
    gap: 40px 2.6%;
  }
}
@media screen and (max-width: 768px) {
  .top_service .top_service_detail_loop {
    justify-content: space-between;
    gap: 20px 3%;
  }
}
@media screen and (min-width: 769px) {
  .top_service .top_service_detail_loop + .top_service_detail_loop {
    margin-top: 40px;
  }
}
@media screen and (max-width: 768px) {
  .top_service .top_service_detail_loop + .top_service_detail_loop {
    margin-top: 20px;
  }
}
@media screen and (min-width: 769px) {
  .top_service .top_service_detail_loop .top_service_detail {
    width: 23%;
  }
}
@media screen and (max-width: 768px) {
  .top_service .top_service_detail_loop .top_service_detail {
    width: 47%;
  }
}
.top_service .top_service_detail_loop .top_service_detail h3 {
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(1.5rem, 2vw, 2.2rem);
  padding-bottom: 5px;
  letter-spacing: 1px;
}

.top_service .top_service_detail_loop .top_service_detail .top_service_detail_box {
  position: relative;
  background: #f0f0f0;
  border-top: 8px solid #f03748;
}

@media screen and (min-width: 769px) {
  .top_service .top_service_detail_loop .top_service_detail .top_service_detail_box {
    padding: 15px;
    min-height: 235px;
  }
}
@media screen and (max-width: 768px) {
  .top_service .top_service_detail_loop .top_service_detail .top_service_detail_box {
    padding: 10px;
    min-height: 190px;
  }
}
.top_service .top_service_detail_loop .top_service_detail .top_service_detail_box ul li {
  position: relative;
  font-size: clamp(1.2rem, 2vw, 1.5rem);
  margin-bottom: 10px;
}

@media screen and (min-width: 769px) {
  .top_service .top_service_detail_loop .top_service_detail .top_service_detail_box ul li {
    padding-left: 12px;
  }
}
@media screen and (max-width: 768px) {
  .top_service .top_service_detail_loop .top_service_detail .top_service_detail_box ul li {
    padding-left: 8px;
  }
}
.top_service .top_service_detail_loop .top_service_detail .top_service_detail_box ul li:last-child {
  margin-bottom: 0px;
}

.top_service .top_service_detail_loop .top_service_detail .top_service_detail_box ul li::before {
  content: "・ ";
  font-family: "Chatwork Sans EB", sans-serif;
  font-size: 110%;
  position: absolute;
  top: 0;
  left: -5px;
}

.top_service .top_service_detail_loop .top_service_detail .top_service_detail_box p {
  text-align: right;
  font-size: clamp(1.2rem, 2vw, 1.5rem);
  margin-top: 10px;
  position: absolute;
}

@media screen and (min-width: 769px) {
  .top_service .top_service_detail_loop .top_service_detail .top_service_detail_box p {
    bottom: 16px;
    right: 20px;
  }
}
@media screen and (max-width: 768px) {
  .top_service .top_service_detail_loop .top_service_detail .top_service_detail_box p {
    bottom: 10px;
    right: 10px;
  }
}
.top_service .top_service_detail_loop .top_service_detail .top_service_detail_box p a {
  position: relative;
  display: inline-block;
  text-decoration: underline;
  transition: 0.3s;
}

.top_service .top_service_detail_loop .top_service_detail .top_service_detail_box p a:hover {
  color: #f03748;
}

.top_service .top_service_detail_loop .top_service_detail .top_service_detail_box p a::before {
  content: "";
  position: absolute;
  vertical-align: middle;
  z-index: 2;
  transform: translateY(-50%);
}

@media screen and (min-width: 769px) {
  .top_service .top_service_detail_loop .top_service_detail .top_service_detail_box p a::before {
    top: 8px;
    left: -13px;
    border: 3px solid transparent;
    border-left: 5px solid #fff;
  }
}
@media screen and (max-width: 768px) {
  .top_service .top_service_detail_loop .top_service_detail .top_service_detail_box p a::before {
    top: 7px;
    left: -12px;
    border: 3px solid transparent;
    border-left: 4px solid #fff;
  }
}
.top_service .top_service_detail_loop .top_service_detail .top_service_detail_box p a::after {
  content: "";
  position: absolute;
  background: #13202f;
  border-radius: 100vh;
}

@media screen and (min-width: 769px) {
  .top_service .top_service_detail_loop .top_service_detail .top_service_detail_box p a::after {
    top: 0;
    left: -19px;
    width: 15px;
    height: 15px;
    z-index: 1;
  }
}
@media screen and (max-width: 768px) {
  .top_service .top_service_detail_loop .top_service_detail .top_service_detail_box p a::after {
    top: 0;
    left: -18px;
    width: 14px;
    height: 14px;
    z-index: 1;
  }
}
/* --------------------------------------------
top_flow
-------------------------------------------- */
.top_flow {
  background-image: url(../img/bg_top_flow.png);
  background-repeat: repeat;
}

@media screen and (min-width: 769px) {
  .top_flow .top_flow_list {
    width: 600px;
    margin: 0 auto;
  }
}
.top_flow .top_flow_list li {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 2px solid #f0f0f0;
  background: #fff;
}

@media screen and (min-width: 769px) {
  .top_flow .top_flow_list li {
    padding: 20px;
    margin-bottom: 25px;
    box-shadow: rgba(0, 0, 0, 0.38) 2px 2px 3px -2px;
  }
}
@media screen and (max-width: 768px) {
  .top_flow .top_flow_list li {
    padding: 10px;
    margin-bottom: 15px;
  }
}
.top_flow .top_flow_list li::after {
  content: "";
  position: absolute;
  bottom: -30px;
  left: 49%;
  border: 15px solid transparent;
  border-top: 26px solid #f03748;
}

.top_flow .top_flow_list li:last-child::after {
  display: none;
}

.top_flow .top_flow_list li .icn {
  width: 25%;
  text-align: center;
}

.top_flow .top_flow_list li .icn img {
  height: auto;
}

@media screen and (min-width: 769px) {
  .top_flow .top_flow_list li .icn img {
    width: 75px;
  }
}
@media screen and (max-width: 768px) {
  .top_flow .top_flow_list li .icn img {
    width: 50px;
  }
}
.top_flow .top_flow_list li .text {
  flex: 1;
}

.top_flow .top_flow_list li .text h3 {
  margin-bottom: 10px;
  font-size: clamp(1.6rem, 2vw, 2.2rem);
  font-family: "Chatwork Sans B", sans-serif;
}

.top_flow .top_flow_list li .text h3 span {
  margin-right: 10px;
  font-size: clamp(1.2rem, 2vw, 1.6rem);
  color: #f03748;
}

.top_flow .top_flow_list li .text p {
  font-size: clamp(1.3rem, 2vw, 1.6rem);
  line-height: 1.5;
}

/* --------------------------------------------
top_movie
-------------------------------------------- */
.top_movie {
  text-align: center;
}

@media screen and (min-width: 769px) {
  .top_movie p {
    margin-bottom: 27px;
  }
}
@media screen and (max-width: 768px) {
  .top_movie p {
    margin-bottom: 20px;
  }
}
.top_movie p {
  font-size: clamp(1.4rem, 2vw, 1.8rem);
}

.top_movie .youtube_movie {
  position: relative;
  padding-bottom: 10px;
}

@media screen and (max-width: 768px) {
  .top_movie .youtube_movie {
    width: 100%;
    padding-top: 56.25%;
    /* 16:9のアスペクト比 */
    height: 0;
  }
}
@media screen and (min-width: 769px) {
  .top_movie .youtube_movie iframe {
    width: 877px;
    height: 493px;
  }
}
@media screen and (max-width: 768px) {
  .top_movie .youtube_movie iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
}
@media screen and (min-width: 769px) {
  .top_movie .second_text {
    margin: 0px auto 0px;
  }
}
@media screen and (max-width: 768px) {
  .top_movie .second_text {
    margin: 8px auto 0px;
  }
}
@media screen and (min-width: 769px) {
  .top_movie .top_movie_button {
    width: 272px;
    height: 61px;
    margin-top: 15px;
    padding-top: 5px;
  }
}
@media screen and (max-width: 768px) {
  .top_movie .top_movie_button {
    margin-top: 20px;
    width: 80%;
    padding: 4% 0;
  }
}
.top_movie .top_movie_button {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
  border-radius: 100vh;
  background: #13202f;
  color: #fff;
  font-size: clamp(1.6rem, 2vw, 2.5rem);
  font-family: "Chatwork Sans B", sans-serif;
}

@media screen and (min-width: 769px) {
  .top_movie.case_movie .inner {
    padding-top: 50px;
    padding-bottom: 0px;
  }
}
@media screen and (min-width: 769px) {
  .top_movie.case_movie .top_movie_button {
    width: 272px;
    height: 51px;
    margin-top: 15px;
    padding-top: 0px;
  }
}
@media screen and (max-width: 768px) {
  .top_movie.case_movie .top_movie_button {
    margin-top: 20px;
    width: 80%;
    padding: 4% 0;
  }
}
.top_movie.case_movie .top_movie_button {
  font-size: clamp(1.6rem, 2vw, 1.8rem);
  font-family: "Chatwork Sans R", sans-serif;
}

/* --------------------------------------------
case_movie
-------------------------------------------- */
.case_movie {
  text-align: center;
}

@media screen and (min-width: 769px) {
  .case_movie p {
    margin-bottom: 27px;
  }
}
@media screen and (max-width: 768px) {
  .case_movie p {
    margin-bottom: 20px;
  }
}
.case_movie p {
  font-size: clamp(1.4rem, 2vw, 1.8rem);
}

.case_movie .youtube_movie {
  position: relative;
  padding-bottom: 10px;
}

@media screen and (max-width: 768px) {
  .case_movie .youtube_movie {
    width: 100%;
    padding-top: 56.25%;
    /* 16:9のアスペクト比 */
    height: 0;
  }
}
@media screen and (min-width: 769px) {
  .case_movie .youtube_movie iframe {
    width: 760px;
    height: 408px;
  }
}
@media screen and (max-width: 768px) {
  .case_movie .youtube_movie iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
}
@media screen and (min-width: 769px) {
  .case_movie .second_text {
    margin: 0px auto 0px;
  }
}
@media screen and (max-width: 768px) {
  .case_movie .second_text {
    margin: 8px auto 0px;
  }
}
@media screen and (min-width: 769px) {
  .case_movie .case_movie_button {
    width: 272px;
    height: 61px;
    margin-top: 15px;
    padding-top: 5px;
  }
}
@media screen and (max-width: 768px) {
  .case_movie .case_movie_button {
    margin-top: 20px;
    width: 80%;
    padding: 4% 0;
  }
}
.case_movie .case_movie_button {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
  border-radius: 100vh;
  background: #13202f;
  color: #fff;
  font-size: clamp(1.6rem, 2vw, 2.5rem);
  font-family: "Chatwork Sans B", sans-serif;
}

@media screen and (min-width: 769px) {
  .case_movie.case_movie .inner {
    padding-top: 50px;
    padding-bottom: 0px;
  }
}
@media screen and (min-width: 769px) {
  .case_movie.case_movie .top_movie_button {
    width: 272px;
    height: 51px;
    margin-top: 15px;
    padding-top: 0px;
  }
}
@media screen and (max-width: 768px) {
  .case_movie.case_movie .top_movie_button {
    margin-top: 20px;
    width: 80%;
    padding: 4% 0;
  }
}
.case_movie.case_movie .top_movie_button {
  font-size: clamp(1.6rem, 2vw, 1.8rem);
  font-family: "Chatwork Sans R", sans-serif;
}

/* --------------------------------------------
top_plan
-------------------------------------------- */
.top_plan {
  background: #f03748;
}

.top_plan .tt {
  color: #fff;
}

.top_plan .page_button_1 span {
  background: #fff;
  color: #f03748;
  padding: 4.5% 2% 4% 2%;
}

.top_plan .page_button_1 span::after {
  background: url(../img/icn_bot_arrow_red.svg) no-repeat center/100% 100%;
}

.top_plan .plan_wrap {
  background: #fff;
}

@media screen and (min-width: 769px) {
  .top_plan .plan_wrap {
    padding: 40px;
  }
}
@media screen and (max-width: 768px) {
  .top_plan .plan_wrap {
    padding: 0px;
  }
}
.top_plan .plan_wrap .pc_plan {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
}

.top_plan .plan_wrap .pc_plan i {
  font-family: "Chatwork Sans EB", sans-serif;
  font-size: 150%;
  font-style: normal;
}

.top_plan .plan_wrap .pc_plan tr:nth-child(even) {
  background: #f7f7f7;
}

.top_plan .plan_wrap .pc_plan th {
  width: 16.66%;
  padding: 25px 5px;
  text-align: center;
  font-size: 20px;
  vertical-align: middle;
  color: #fff;
}

.top_plan .plan_wrap .pc_plan th:nth-child(2) {
  background: #bfbfbf;
}

.top_plan .plan_wrap .pc_plan th:nth-child(3) {
  background: #2bb0e9;
}

.top_plan .plan_wrap .pc_plan th:nth-child(4) {
  background: #22b396;
}

.top_plan .plan_wrap .pc_plan th:nth-child(5) {
  background: #f8ac00;
}

.top_plan .plan_wrap .pc_plan th:nth-child(6) {
  background: #c3081b;
}

.top_plan .plan_wrap .pc_plan td {
  padding: 25px 10px;
  text-align: center;
  vertical-align: middle;
  font-size: 16px;
}

.top_plan .plan_wrap .pc_plan td .btn {
  margin-top: 10px;
}

.top_plan .plan_wrap .pc_plan td .btn span {
  font-size: 14px;
  padding: 10px 0;
}

.top_plan .plan_wrap .pc_plan td .btn span::after {
  width: 6px;
  right: 10px;
}

.top_plan .plan_wrap .sp_plan {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
}

.top_plan .plan_wrap .sp_plan i {
  font-family: "Chatwork Sans EB", sans-serif;
  font-size: 130%;
  font-style: normal;
}

.top_plan .plan_wrap .sp_plan tr:nth-child(odd) {
  background: #f7f7f7;
}

.top_plan .plan_wrap .sp_plan th {
  width: 25%;
  padding: 10px 0px;
  text-align: center;
  font-size: 12px;
  vertical-align: middle;
  color: #fff;
}

.top_plan .plan_wrap .sp_plan th.m0 {
  background: #fff;
}

.top_plan .plan_wrap .sp_plan th.m1 {
  background: #bfbfbf;
}

.top_plan .plan_wrap .sp_plan th.m3 {
  background: #2bb0e9;
}

.top_plan .plan_wrap .sp_plan th.m6 {
  background: #22b396;
}

.top_plan .plan_wrap .sp_plan th.m12 {
  background: #f8ac00;
}

.top_plan .plan_wrap .sp_plan th.m_custom {
  background: #c3081b;
}

.top_plan .plan_wrap .sp_plan td {
  width: 25%;
  padding: 10px 3px;
  text-align: center;
  vertical-align: middle;
  font-size: 12px;
}

.top_plan .plan_wrap .sp_plan td .btn {
  width: 80%;
  margin: 10px auto 0;
}

.top_plan .plan_wrap .sp_plan td .btn span {
  font-size: 14px;
  padding: 5px 0;
}

.top_plan .plan_text {
  margin-top: 5px;
  color: #fff;
  font-size: clamp(1.2rem, 2vw, 1.4rem);
}

/* --------------------------------------------
.top_document
-------------------------------------------- */
/* --------------------------------------------
section8 よくあるご質問
-------------------------------------------- */
.faq-list__q {
  background: #f7f7f7;
  border-radius: 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-family: "Chatwork Sans B", sans-serif;
  cursor: pointer;
}

.faq-list__q div {
  width: calc(100% - 69px);
  letter-spacing: 1px;
}

@media screen and (max-width: 768px) {
  .faq-list__q {
    border-radius: 15px;
    padding: 10px;
    margin-bottom: 10px;
    font-size: 1.4rem;
  }
  .faq-list__q div {
    padding-right: 15px;
  }
}
@media screen and (min-width: 769px) {
  .faq-list__q {
    padding: 20px;
    margin-bottom: 10px;
    font-size: 1.6rem;
  }
}
.ico-faq-open {
  display: inline-block;
  background: url(../img/icn_plus.svg) no-repeat center;
  background-size: contain;
  width: 18px;
  height: 18px;
}

.ico-faq-open.show {
  background-image: url(../img/icn_minus.svg);
}

.faq-list__a {
  margin: 0;
  padding: 0;
  line-height: 2;
  clear: both;
  display: none;
}

.faq-list__a div {
  overflow: hidden;
  line-height: 2;
  letter-spacing: 1px;
}

.faq-list__a div a {
  text-decoration: underline;
  color: #1a50b7;
}

.faq-list__a div .block_span_a {
  display: block;
  margin-bottom: 1em;
}

.faq-list__a .note-list {
  margin: 0px 0 0 51px;
}

@media screen and (max-width: 768px) {
  .faq-list__a {
    padding: 0 13px 10px;
    margin-bottom: 25px;
    font-size: 1.4rem;
  }
  .faq-list__a div {
    padding: 2px 25px 0 0;
  }
}
@media screen and (min-width: 769px) {
  .faq-list__a {
    padding: 10px 20px 20px;
    margin-bottom: 35px;
    font-size: 1.6rem;
  }
}
.ico-round {
  display: block;
  color: #fff;
  border-radius: 100px;
  font-weight: 800;
  text-align: center;
  vertical-align: middle;
  width: 36px;
  height: 36px;
  margin-right: 15px;
  line-height: 36px;
  font-size: 1.6rem;
}

.ico-round--q {
  background: #13202f;
}

.ico-round--a {
  background: #f03748;
  float: left;
}

/* --------------------------------------------
埋め込みform
-------------------------------------------- */
@media (min-width: 1910px) {
  .top_cwa_form {
    position: absolute;
    top: 100px;
    left: 50%;
    transform: translate(135%, 0%);
    width: 330px;
    height: 630px;
    z-index: 100;
    border-radius: 13px;
  }
}
@media (min-width: 1650px) and (max-width: 1909px) {
  .top_cwa_form {
    position: absolute;
    top: 100px;
    right: 7%;
    width: 330px;
    height: 630px;
    z-index: 100;
    border-radius: 13px;
  }
}
@media (min-width: 1200px) and (max-width: 1649px) {
  .top_cwa_form {
    position: absolute;
    top: 100px;
    right: 3%;
    width: 330px;
    height: 630px;
    z-index: 100;
    border-radius: 13px;
  }
}
@media (min-width: 768px) and (max-width: 1199px) {
  .top_cwa_form {
    position: relative;
    width: 800px;
    margin: 0 auto 60px;
    border-radius: 13px;
  }
}
@media screen and (max-width: 768px) {
  .top_cwa_form {
    margin-bottom: 40px;
  }
}
.top_cwa_form {
  background: #f6f6f6;
  box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 4px 2px;
}

@media screen and (min-width: 769px) {
  .top_cwa_form .cwa_form_header {
    border-radius: 13px 13px 0px 0px;
  }
}
.top_cwa_form .cwa_form_header {
  padding: 10px 0px 3px 0px;
  background: #13202f;
}

.top_cwa_form .cwa_form_header p {
  text-align: center;
  color: #fff;
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(1.7rem, 2vw, 1.7rem);
  line-height: 1.3;
}

.top_cwa_form .cwa_form_header p span {
  font-family: "Chatwork Sans EB", sans-serif;
  font-size: clamp(2.4rem, 2vw, 2.4rem);
}

@media screen and (min-width: 769px) {
  .top_cwa_form .cwa_form_body {
    padding: 20px 20px 20px 20px;
  }
}
@media screen and (max-width: 768px) {
  .top_cwa_form .cwa_form_body {
    padding: 5px 20px 30px 20px;
  }
}
.top_cwa_form div.mktoRequiredField label.mktoLabel.mktoHasWidth:after {
  content: "※";
  width: 20px;
  height: 16px;
  font-size: 10px;
  line-height: 1;
  text-shadow: none;
  color: #f03648;
  background: none;
  border-radius: 3px;
  margin-left: 0px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.top_cwa_form .marketo_comment {
  margin-top: 8px;
  font-size: 10px;
  line-height: 1.5;
}

.top_cwa_form .marketo_comment a {
  color: #f03748;
}

.top_cwa_form .mktoForm input[type=text],
.top_cwa_form .mktoForm input[type=url],
.top_cwa_form .mktoForm input[type=email],
.top_cwa_form .mktoForm input[type=tel],
.top_cwa_form .mktoForm input[type=number],
.top_cwa_form .mktoForm input[type=date],
.top_cwa_form .mktoForm select.mktoField {
  width: 100% !important;
  box-shadow: rgba(0, 0, 0, 0.06) 0px 0px 3px 1px;
}

.top_cwa_form .mktoForm select.mktoField {
  width: 96% !important;
  box-shadow: rgba(0, 0, 0, 0.06) 0px 0px 3px 1px;
}

@media screen and (max-width: 768px) {
  .top_cwa_form .mktoForm .mktoRadioList,
  .top_cwa_form .mktoForm .mktoCheckboxList {
    float: left !important;
    width: 20% !important;
  }
}
.top_cwa_form button.mktoButton {
  color: #fff !important;
  background-color: #e03546 !important;
  border: solid 3px #e03546 !important;
}

.top_cwa_form .mktoForm .mktoRequiredField label.mktoLabel {
  padding-top: 0px !important;
}

.top_cwa_form .mktoForm .mktoFieldWrap {
  margin-bottom: 10px !important;
}

.top_cwa_form .mktoForm .mktoRadioList > input,
.top_cwa_form .mktoForm .mktoCheckboxList > input {
  top: -14px;
}

.top_cwa_form .mktoForm .mktoFormCol {
  margin-bottom: 3px !important;
}

/* --------------------------------------------
top_available_tasks
-------------------------------------------- */
.top_available_tasks {
  background-image: url(../img/bg_top_fv_line_art.png);
  background-size: 110%;
  background-repeat: repeat;
  background-position: center center;
}

@media screen and (min-width: 769px) {
  .top_available_tasks_link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 20px 0;
    margin-bottom: 60px;
  }
}
@media screen and (max-width: 768px) {
  .top_available_tasks_link {
    margin-bottom: 30px;
  }
}
@media screen and (min-width: 769px) {
  .top_available_tasks_link li {
    width: 49%;
  }
}
@media screen and (max-width: 768px) {
  .top_available_tasks_link li {
    margin-bottom: 20px;
  }
  .top_available_tasks_link li:last-child {
    margin-bottom: 0px;
  }
}
.top_available_tasks_link li a {
  display: block;
}

.top_available_tasks_link li a img {
  width: 100%;
  height: auto;
  opacity: 1;
  transition: 0.3s;
}

.top_available_tasks_link li a:hover img {
  opacity: 0.85;
}

@media screen and (min-width: 769px) {
  .top_available_tasks .second {
    margin-bottom: 40px;
  }
}
@media screen and (max-width: 768px) {
  .top_available_tasks .second {
    margin-bottom: 20px;
  }
}
.top_available_tasks_detail_loop {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}

@media screen and (min-width: 769px) {
  .top_available_tasks_detail_loop {
    justify-content: center;
    gap: 40px 2.6%;
  }
}
@media screen and (max-width: 768px) {
  .top_available_tasks_detail_loop {
    justify-content: space-between;
    gap: 20px 3%;
  }
}
@media screen and (min-width: 769px) {
  .top_available_tasks_detail_loop + .top_available_tasks_detail_loop {
    margin-top: 40px;
  }
}
@media screen and (max-width: 768px) {
  .top_available_tasks_detail_loop + .top_available_tasks_detail_loop {
    margin-top: 20px;
  }
}
@media screen and (min-width: 769px) {
  .top_available_tasks_detail {
    width: 23%;
  }
}
@media screen and (max-width: 768px) {
  .top_available_tasks_detail {
    width: 47%;
  }
}
.top_available_tasks_detail h3 {
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(1.5rem, 2vw, 2.2rem);
  padding-bottom: 5px;
  letter-spacing: 1px;
}

.top_available_tasks_detail .top_available_tasks_detail_box {
  position: relative;
  background: #f0f0f0;
  border-top: 8px solid #f03748;
}

@media screen and (min-width: 769px) {
  .top_available_tasks_detail .top_available_tasks_detail_box {
    padding: 15px;
    min-height: 235px;
  }
}
@media screen and (max-width: 768px) {
  .top_available_tasks_detail .top_available_tasks_detail_box {
    padding: 10px;
    min-height: 190px;
  }
}
.top_available_tasks_detail .top_available_tasks_detail_box ul li {
  position: relative;
  font-size: clamp(1.2rem, 2vw, 1.5rem);
  margin-bottom: 10px;
}

@media screen and (min-width: 769px) {
  .top_available_tasks_detail .top_available_tasks_detail_box ul li {
    padding-left: 12px;
  }
}
@media screen and (max-width: 768px) {
  .top_available_tasks_detail .top_available_tasks_detail_box ul li {
    padding-left: 8px;
  }
}
.top_available_tasks_detail .top_available_tasks_detail_box ul li:last-child {
  margin-bottom: 0px;
}

.top_available_tasks_detail .top_available_tasks_detail_box ul li::before {
  content: "・ ";
  font-family: "Chatwork Sans EB", sans-serif;
  font-size: 110%;
  position: absolute;
  top: 0;
  left: -5px;
}

.top_available_tasks_detail .top_available_tasks_detail_box p {
  text-align: right;
  font-size: clamp(1.2rem, 2vw, 1.5rem);
  margin-top: 10px;
  position: absolute;
}

@media screen and (min-width: 769px) {
  .top_available_tasks_detail .top_available_tasks_detail_box p {
    bottom: 16px;
    right: 20px;
  }
}
@media screen and (max-width: 768px) {
  .top_available_tasks_detail .top_available_tasks_detail_box p {
    bottom: 10px;
    right: 10px;
  }
}
.top_available_tasks_detail .top_available_tasks_detail_box p a {
  position: relative;
  display: inline-block;
  text-decoration: underline;
  transition: 0.3s;
}

.top_available_tasks_detail .top_available_tasks_detail_box p a:hover {
  color: #f03748;
}

.top_available_tasks_detail .top_available_tasks_detail_box p a::before {
  content: "";
  position: absolute;
  vertical-align: middle;
  z-index: 2;
  transform: translateY(-50%);
}

@media screen and (min-width: 769px) {
  .top_available_tasks_detail .top_available_tasks_detail_box p a::before {
    top: 8px;
    left: -13px;
    border: 3px solid transparent;
    border-left: 5px solid #fff;
  }
}
@media screen and (max-width: 768px) {
  .top_available_tasks_detail .top_available_tasks_detail_box p a::before {
    top: 7px;
    left: -12px;
    border: 3px solid transparent;
    border-left: 4px solid #fff;
  }
}
.top_available_tasks_detail .top_available_tasks_detail_box p a::after {
  content: "";
  position: absolute;
  background: #13202f;
  border-radius: 100vh;
}

@media screen and (min-width: 769px) {
  .top_available_tasks_detail .top_available_tasks_detail_box p a::after {
    top: 0;
    left: -19px;
    width: 15px;
    height: 15px;
    z-index: 1;
  }
}
@media screen and (max-width: 768px) {
  .top_available_tasks_detail .top_available_tasks_detail_box p a::after {
    top: 0;
    left: -18px;
    width: 14px;
    height: 14px;
    z-index: 1;
  }
}
/* --------------------------------------------
top_cwa_case
-------------------------------------------- */
@media screen and (min-width: 769px) {
  .top_cwa_case .inner {
    padding: 24px 0 80px;
  }
}
@media screen and (max-width: 768px) {
  .top_cwa_case .inner {
    padding: 16px 0 40px;
  }
}
.top_cwa_case .company_name {
  font-size: clamp(1.6rem, 2vw, 2.3rem) !important;
}

.top_cwa_case h3 {
  border-bottom: 1px solid #ced0d3;
  padding: 20px 0px 20px !important;
  margin-bottom: 20px;
}

@media screen and (min-width: 769px) {
  .top_cwa_case_list {
    display: flex;
    justify-content: space-between;
    gap: 0 33px;
  }
}
@media screen and (min-width: 769px) {
  .top_cwa_case_list_box {
    width: 33%;
  }
}
@media screen and (max-width: 768px) {
  .top_cwa_case_list_box {
    margin-bottom: 25px;
  }
}
.top_cwa_case_list_box {
  border-radius: 17px;
  background-color: #fff;
  box-shadow: rgba(0, 0, 0, 0.08) 0px 0px 4px 0px;
  border: 1px solid #f0f0f0;
}

.top_cwa_case_list_box img {
  width: 100%;
  height: auto;
  border-radius: 17px 17px 0 0;
}

.top_cwa_case_list_box_text {
  padding: 20px 25px;
}

.top_cwa_case_list_box_text .company_name {
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(1.5rem, 2vw, 1.8rem);
}

.top_cwa_case_list_box_text h3 {
  padding: 20px 0px 10px;
  line-height: 1.3;
  font-family: "Chatwork Sans EB", sans-serif;
  font-size: clamp(1.6rem, 2vw, 1.8rem);
  color: #f03748;
}

.top_cwa_case_list_box_text ul {
  display: flex;
  justify-content: space-between;
  gap: 0px 6px;
  padding-bottom: 25px;
}

.top_cwa_case_list_box_text ul li {
  border-radius: 6px;
  background-color: #13202f;
  color: #fff;
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(1.4rem, 2vw, 1.3rem);
  padding: 5px 8px 3px 8px;
  text-align: center;
}

.top_cwa_case_list_box_text .case_text {
  font-size: clamp(1.4rem, 2vw, 1.5rem);
  line-height: 1.6;
}

.top_cwa_case_result {
  margin-top: 20px;
  display: flex;
  align-items: stretch;
}

.top_cwa_case_result_l {
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 5px 0 0 5px;
  padding: 10px 8px;
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(1.4rem, 1.8vw, 1.4rem);
  writing-mode: vertical-rl;
  background: #f03748;
  color: #fff;
}

.top_cwa_case_result_r {
  display: flex;
  justify-content: center;
  flex-direction: column;
  gap: 10px 0px;
  padding: 20px 15px;
  background: #feedee;
  border: 1px solid #f03748;
  border-left: none;
  border-radius: 0 5px 5px 0;
  flex: 1;
}

.top_cwa_case_result_r_txt {
  padding-left: 13px;
  position: relative;
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(1.4rem, 1.8vw, 1.5rem);
}

.top_cwa_case_result_r_txt::before, .top_cwa_case_result_r_txt::after {
  content: "";
  display: block;
  position: absolute;
}

.top_cwa_case_result_r_txt::before {
  width: 12px;
  height: 12px;
  border-radius: 100vh;
  background: #f03748;
  left: -3px;
  top: 1px;
}

.top_cwa_case_result_r_txt::after {
  border-left: 2px solid #fff;
  border-bottom: 2px solid #fff;
  width: 7px;
  height: 5px;
  transform: rotate(-45deg);
  left: 0px;
  top: 4px;
}

.page_notes {
  max-width: 1100px;
  margin: auto;
  margin-bottom: 18px;
  padding: 0 8px;
}

.top_notes {
  padding-left: 11px;
}

@media (min-width: 769px) {
  .top_notes {
    width: 1300px;
    align-self: flex-start;
    position: relative;
    margin: auto;
    margin-bottom: 17px;
  }
}
@media (max-width: 768px) {
  .top_notes {
    width: 100%;
    padding-right: 11px;
    margin-bottom: 12px;
    margin-top: 12px;
  }
}
.keiri-ai-movie {
  max-width: 800px;
  margin: auto;
}

.keiri-ai-movie .keiri-ai-movie-container {
  width: 100%;
}

@media (min-width: 769px) {
  .keiri-ai-movie .keiri-ai-movie-container {
    padding: 30px 76px;
  }
}
@media (max-width: 768px) {
  .keiri-ai-movie .keiri-ai-movie-container {
    padding: 30px;
  }
}
.keiri-ai-movie .keiri-ai-movie-container a {
  display: block;
  transition: opacity 0.3s ease-in-out;
}

.keiri-ai-movie .keiri-ai-movie-container a:hover {
  opacity: 0.7;
}

.keiri-ai-movie .keiri-ai-movie-container img {
  width: 100%;
}

/* ==============================================================================
   contents.css
   ============================================================================== */
/* --------------------------------------------
variables
-------------------------------------------- */
/* --------------------------------------------
font
-------------------------------------------- */
/* --------------------------------------------
お問い合わせ
-------------------------------------------- */
.inquiry_text_l {
  font-size: clamp(1.3rem, 2vw, 1.8rem);
  line-height: 1.7;
  white-space: pre-wrap;
}

@media screen and (min-width: 769px) {
  .inquiry_text_l {
    margin: 25px 0;
  }
}
@media screen and (max-width: 768px) {
  .inquiry_text_l {
    margin: 15px 0;
  }
}
.inquiry_text_c {
  text-align: center;
  font-size: clamp(1.3rem, 2vw, 1.8rem);
  font-family: "Chatwork Sans B", sans-serif;
  line-height: 1.4;
}

@media screen and (min-width: 769px) {
  .inquiry_text_c {
    margin-bottom: 25px;
  }
}
@media screen and (max-width: 768px) {
  .inquiry_text_c {
    margin-bottom: 15px;
  }
}
.inquiry_staff_wrap {
  background: #f7f7f7;
  border: 2px solid #13202f;
  border-radius: 10px;
}

@media screen and (min-width: 769px) {
  .inquiry_staff_wrap {
    padding: 40px;
  }
}
@media screen and (max-width: 768px) {
  .inquiry_staff_wrap {
    padding: 10px;
  }
}
@media screen and (min-width: 769px) {
  .inquiry_staff_wrap .inquiry_staff_ttl {
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 768px) {
  .inquiry_staff_wrap .inquiry_staff_ttl {
    margin-top: 20px;
    margin-bottom: 25px;
  }
}
.inquiry_staff_wrap .inquiry_staff_ttl {
  font-size: clamp(2rem, 2vw, 2.4rem);
  font-family: "Chatwork Sans B", sans-serif;
  text-align: center;
}

@media screen and (min-width: 769px) {
  .inquiry_staff_wrap .inquiry_staff {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 0 6%;
  }
}
.inquiry_staff_wrap .inquiry_staff li {
  font-size: clamp(1.3rem, 2vw, 1.4rem);
  line-height: 1.6;
}

@media screen and (min-width: 769px) {
  .inquiry_staff_wrap .inquiry_staff li {
    width: 47%;
  }
}
@media screen and (max-width: 768px) {
  .inquiry_staff_wrap .inquiry_staff li {
    width: 90%;
    margin: 0 auto;
    margin-bottom: 25px;
  }
  .inquiry_staff_wrap .inquiry_staff li:last-child {
    margin-bottom: 0px;
  }
}
.inquiry_staff_wrap .inquiry_staff li img {
  display: block;
  width: 100%;
  max-width: 170px;
  height: auto;
  margin: 0 auto;
}

.inquiry_staff_wrap .inquiry_staff li span {
  display: block;
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(1.3rem, 2vw, 1.8rem);
  line-height: 1.4;
  text-align: center;
}

@media screen and (min-width: 769px) {
  .inquiry_staff_wrap .inquiry_staff li span {
    margin: 20px auto 17px;
  }
}
@media screen and (max-width: 768px) {
  .inquiry_staff_wrap .inquiry_staff li span {
    margin: 10px auto 7px;
  }
}
@media screen and (min-width: 769px) {
  .inquiry_staff_wrap .inquiry_staff_one_column li {
    margin-bottom: 35px;
    display: flex;
    justify-content: space-between;
    gap: 0 3%;
  }
}
@media screen and (max-width: 768px) {
  .inquiry_staff_wrap .inquiry_staff_one_column li {
    width: 90%;
    margin: 0 auto;
    margin-bottom: 25px;
  }
}
.inquiry_staff_wrap .inquiry_staff_one_column li:last-child {
  margin-bottom: 0px;
}

@media screen and (min-width: 769px) {
  .inquiry_staff_wrap .inquiry_staff_one_column li .inquiry_staff_one_column_l {
    width: 30%;
  }
}
@media screen and (max-width: 768px) {
  .inquiry_staff_wrap .inquiry_staff_one_column li .inquiry_staff_one_column_l img {
    max-width: 170px;
  }
}
.inquiry_staff_wrap .inquiry_staff_one_column li .inquiry_staff_one_column_l img {
  display: block;
  width: 100%;
  height: auto;
  margin: 0 auto;
}

.inquiry_staff_wrap .inquiry_staff_one_column li .seminar-photo {
  aspect-ratio: 1/1;
  overflow: hidden;
  border-radius: 100%;
  flex: 0 0 auto;
  align-self: flex-start;
}

@media screen and (max-width: 768px) {
  .inquiry_staff_wrap .inquiry_staff_one_column li .seminar-photo {
    width: 170px;
    margin-inline: auto;
  }
}
.inquiry_staff_wrap .inquiry_staff_one_column li .seminar-photo img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.inquiry_staff_wrap .inquiry_staff_one_column li .inquiry_staff_one_column_r {
  flex: 1;
}

.inquiry_staff_wrap .inquiry_staff_one_column li .inquiry_staff_one_column_r p {
  font-size: clamp(1.3rem, 2vw, 1.4rem);
  line-height: 1.6;
}

.inquiry_staff_wrap .inquiry_staff_one_column li .inquiry_staff_one_column_r p strong {
  display: block;
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(1.5rem, 2vw, 2rem);
  line-height: 1.4;
}

@media screen and (min-width: 769px) {
  .inquiry_staff_wrap .inquiry_staff_one_column li .inquiry_staff_one_column_r p strong {
    margin: 0px auto 17px;
  }
}
@media screen and (max-width: 768px) {
  .inquiry_staff_wrap .inquiry_staff_one_column li .inquiry_staff_one_column_r p strong {
    margin: 0px auto 7px;
  }
}
.inquiry_staff_wrap .inquiry_staff_one_column li .inquiry_staff_one_column_r p span {
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(1.2rem, 2vw, 1.4rem);
}

.inquiry_anchor_button {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.inquiry_anchor_button a {
  position: relative;
}

@media screen and (min-width: 769px) {
  .inquiry_anchor_button a {
    padding: 19px 35px 15px 35px;
    margin-top: 30px;
  }
}
@media screen and (max-width: 768px) {
  .inquiry_anchor_button a {
    width: 90%;
    padding: 18px 35px 15px 35px;
    margin-top: 30px;
  }
}
.inquiry_anchor_button a {
  display: inline-block;
  background: #f03748;
  border-radius: 100vh;
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(1.8rem, 2vw, 1.8rem);
  color: #FFF;
}

.inquiry_anchor_button a::after {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  position: absolute;
  right: 16px;
  top: calc(50% - 11px);
  border-top: solid 2px;
  border-right: solid 2px;
  transform: rotate(135deg) translateY(-50%);
  color: inherit;
}

.inquiry_status {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
  border-top: 1px solid #13202f;
  border-left: 1px solid #13202f;
}

@media screen and (min-width: 769px) {
  .inquiry_status th, .inquiry_status td {
    padding: 15px;
  }
}
@media screen and (max-width: 768px) {
  .inquiry_status th, .inquiry_status td {
    padding: 10px;
    display: block;
  }
}
.inquiry_status th, .inquiry_status td {
  border-right: 1px solid #13202f;
  border-bottom: 1px solid #13202f;
  font-size: clamp(1.3rem, 2vw, 1.6rem);
  line-height: 1.7;
  background: #FFF;
}

@media screen and (min-width: 769px) {
  .inquiry_status th {
    width: 23%;
  }
}
.inquiry_status th {
  background-color: #fdedee;
}

@media screen and (min-width: 769px) {
  .seminar_reception {
    padding-bottom: 30px;
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 768px) {
  .seminar_reception {
    display: none;
  }
}
@media screen and (min-width: 769px) {
  .seminar_reception h2 {
    padding: 20px 10px 15px 10px;
  }
}
@media screen and (max-width: 768px) {
  .seminar_reception h2 {
    padding: 20px 10px 15px 10px;
  }
}
.seminar_reception h2 {
  text-align: center;
  font-size: clamp(1.8rem, 2vw, 2.6rem);
  letter-spacing: 1px;
  color: #FFF;
}

.seminar_reception.on {
  background: #fdedee;
}

.seminar_reception.on h2 {
  background: #f03748;
}

.seminar_reception.off {
  background: #F4F4F4;
}

.seminar_reception.off h2 {
  background: #5e697b;
}

@media screen and (min-width: 769px) {
  .seminar_reception .seminar_reception_date {
    padding: 30px 0;
  }
}
@media screen and (max-width: 768px) {
  .seminar_reception .seminar_reception_date {
    padding: 30px 0;
  }
}
.seminar_reception .seminar_reception_date {
  text-align: center;
  font-size: clamp(1.8rem, 2vw, 2.6rem);
  letter-spacing: 1px;
}

.seminar_reception .seminar_reception_table {
  width: 90%;
  margin: 0px auto;
  border-collapse: collapse;
  border-spacing: 0;
}

@media screen and (min-width: 769px) {
  .seminar_reception .seminar_reception_table th, .seminar_reception .seminar_reception_table td {
    padding: 15px 10px 15px 10px;
  }
}
@media screen and (max-width: 768px) {
  .seminar_reception .seminar_reception_table th, .seminar_reception .seminar_reception_table td {
    padding: 15px;
  }
}
.seminar_reception .seminar_reception_table th, .seminar_reception .seminar_reception_table td {
  font-size: clamp(1.3rem, 2vw, 1.3rem);
  line-height: 1.4;
  border-bottom: 1px solid #CCC;
}

@media screen and (min-width: 769px) {
  .seminar_reception .seminar_reception_table th {
    width: 30%;
    padding: 15px 0px 15px 0px;
  }
}
.seminar_reception .seminar_reception_table th {
  font-family: "Chatwork Sans B", sans-serif;
}

/* --------------------------------------------
資料請求
-------------------------------------------- */
.doc_image_wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: #f0f0f0;
  flex-direction: column;
}

@media screen and (min-width: 769px) {
  .doc_image_wrap {
    gap: 0 3%;
    padding: 25px;
  }
}
@media screen and (max-width: 768px) {
  .doc_image_wrap {
    flex-direction: column;
    padding: 15px;
    margin-top: 20px;
  }
}
.doc_image_wrap img {
  display: block;
  margin: 0 auto;
  width: 75%;
  height: auto;
  image-rendering: -webkit-optimize-contrast;
}

.doc_image_wrap .doc_image_wrap_l {
  width: 100%;
}

@media screen and (min-width: 769px) {
  .doc_image_wrap .doc_image_wrap_l {
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 768px) {
  .doc_image_wrap .doc_image_wrap_l {
    margin-bottom: 10px;
  }
}
.doc_image_wrap .doc_image_wrap_r {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0 3%;
}

.doc_image_wrap .doc_image_wrap_r img {
  height: auto;
  width: 48%;
  image-rendering: -webkit-optimize-contrast;
}

.doc_list_check li {
  font-size: clamp(1.3rem, 2vw, 1.8rem);
  margin-bottom: 15px;
  line-height: 1.4;
  background-repeat: no-repeat;
  background-image: url(../img/icn_checkbox.svg);
}

@media screen and (min-width: 769px) {
  .doc_list_check li {
    background-position: top 5px left;
    background-size: 16px 15px;
    padding-left: 23px;
  }
}
@media screen and (max-width: 768px) {
  .doc_list_check li {
    background-position: top 2px left 2px;
    background-size: 15px 14px;
    padding-left: 23px;
  }
}
.doc_list_check li:last-child {
  margin-bottom: 0;
}

/* --------------------------------------------
お役立ち資料 一覧
-------------------------------------------- */
@media screen and (min-width: 769px) {
  .archive_document_fv {
    margin-top: 60px;
    background-image: linear-gradient(0deg, rgb(240, 55, 71) 66%, rgb(255, 255, 255) 66%);
  }
}
@media screen and (max-width: 768px) {
  .archive_document_fv {
    padding: 0 4%;
    margin-top: 30px;
    background-image: linear-gradient(0deg, rgb(240, 55, 71) 80%, rgb(255, 255, 255) 80%);
  }
}
.archive_document_fv {
  text-align: center;
  color: #FFF;
}

.archive_document_fv .archive_document_fv_in {
  position: relative;
}

@media screen and (min-width: 769px) {
  .archive_document_fv .archive_document_fv_in {
    top: -55px;
  }
}
@media screen and (max-width: 768px) {
  .archive_document_fv .archive_document_fv_in {
    top: -15px;
  }
}
.archive_document_fv img {
  max-width: 100%;
  height: auto;
}

@media screen and (min-width: 769px) {
  .archive_document_fv h2 {
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 768px) {
  .archive_document_fv h2 {
    margin-bottom: 15px;
  }
}
.archive_document_fv h2 {
  font-family: "Chatwork Sans EB", sans-serif;
  font-size: clamp(2rem, 3vw, 3.6rem);
  text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.3);
}

@media screen and (min-width: 769px) {
  .archive_document_fv p {
    font-family: "Chatwork Sans B", sans-serif;
  }
}
.archive_document_fv p {
  font-size: clamp(1.3rem, 2vw, 1.8rem);
  line-height: 1.4;
  letter-spacing: 1px;
  text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.3);
}

@media screen and (min-width: 769px) {
  .archive_document_fv .page_button_1 {
    margin-top: 30px;
  }
}
@media screen and (max-width: 768px) {
  .archive_document_fv .page_button_1 {
    margin-top: 15px;
  }
}
.doc_slide {
  padding: 20px 0;
}

.doc_slide img {
  width: 100%;
  height: auto;
}

@media screen and (min-width: 769px) {
  .doc_slide.slick-slider .slick-next {
    right: -4px !important;
  }
}
@media screen and (max-width: 768px) {
  .doc_slide.slick-slider .slick-next {
    right: 20px !important;
  }
}
.doc_slide.slick-slider .slick-next {
  background-image: url(../img/icn_doc_slide_next.svg) !important;
  background-size: cover !important;
  width: 40px;
  height: 40px;
  top: 37%;
}

@media screen and (min-width: 769px) {
  .doc_slide.slick-slider .slick-prev {
    left: -4px !important;
  }
}
@media screen and (max-width: 768px) {
  .doc_slide.slick-slider .slick-prev {
    left: 20px !important;
  }
}
.doc_slide.slick-slider .slick-prev {
  background-image: url(../img/icn_doc_slide_prev.svg) !important;
  background-size: cover !important;
  width: 40px;
  height: 40px;
  top: 37%;
  z-index: 1;
}

@media screen and (min-width: 769px) {
  .doc_slide .doc_slide_in {
    margin: 0 15px;
  }
}
@media screen and (max-width: 768px) {
  .doc_slide .doc_slide_in {
    margin: 0 10px;
  }
}
.doc_slide .doc_slide_in {
  text-align: center;
}

.doc_slide .service_ttl {
  margin: 8px 0;
  display: block;
  text-align: center;
  font-size: clamp(1.3rem, 2vw, 1.4rem);
  font-family: "Chatwork Sans B", sans-serif;
}

@media screen and (min-width: 769px) {
  .doc_slide .doc_slide_button {
    padding: 10px 25px 8px;
  }
}
@media screen and (max-width: 768px) {
  .doc_slide .doc_slide_button {
    padding: 10px 25px 8px;
  }
}
.doc_slide .doc_slide_button {
  position: relative;
  background: #f03748;
  display: inline-block;
  text-align: center;
  border-radius: 100vh;
  color: #FFF;
  font-size: clamp(1.3rem, 2vw, 1.4rem);
}

.doc_slide .doc_slide_button::after {
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translateY(-50%);
  transition: all 0.3s ease;
  width: 5px;
  height: 10px;
  display: block;
  content: "";
  background: url(../img/icn_bot_arrow.svg) no-repeat center/100% 100%;
}

@media screen and (min-width: 769px) {
  .document_wrap .ttl_bottom_border {
    padding-top: 70px;
  }
}
@media screen and (max-width: 768px) {
  .document_wrap .ttl_bottom_border {
    padding-top: 60px;
  }
}
@media screen and (min-width: 769px) {
  .document_wrap .post_loop {
    padding: 25px 0 70px;
  }
}
@media screen and (max-width: 768px) {
  .document_wrap .post_loop {
    padding: 15px 0 0px;
  }
}
/* --------------------------------------------
フォーム 完了ページ
-------------------------------------------- */
#timerex_calendar {
  margin-top: 32px;
}

/* --------------------------------------------
よくある質問 TOP
-------------------------------------------- */
@media screen and (min-width: 769px) {
  .faq_wrap .faq_top {
    width: 100%;
    max-width: 960px;
    margin: 0 auto;
    padding-bottom: 50px;
  }
}
@media screen and (max-width: 768px) {
  .faq_wrap .faq_top {
    padding-bottom: 30px;
  }
}
@media screen and (min-width: 769px) {
  .faq_wrap .faq_top__section {
    margin-top: -90px;
    padding-top: 90px;
  }
}
.faq_wrap .faq_top h2 {
  background-color: #f03748;
  border-radius: 8px;
}

@media screen and (min-width: 769px) {
  .faq_wrap .faq_top h2 {
    padding: 15px 0px 15px 30px;
    margin-bottom: 40px;
  }
}
@media screen and (max-width: 768px) {
  .faq_wrap .faq_top h2 {
    padding: 10px 0px 10px 15px;
    margin-bottom: 20px;
  }
}
@media screen and (min-width: 769px) {
  .faq_wrap .faq_top h2 span {
    border-left: 8px solid #FFF;
    padding: 6px 0px 4px 25px;
  }
}
@media screen and (max-width: 768px) {
  .faq_wrap .faq_top h2 span {
    border-left: 4px solid #FFF;
    padding: 6px 0px 4px 15px;
  }
}
.faq_wrap .faq_top h2 span {
  display: block;
  font-size: clamp(1.7rem, 2.8vw, 3.2rem);
  font-family: "Chatwork Sans B", sans-serif;
  letter-spacing: 1px;
  color: #FFF;
}

.faq_wrap .faq_top .faq_middle_category {
  display: flex;
  flex-wrap: wrap;
  justify-content: left;
}

@media screen and (min-width: 769px) {
  .faq_wrap .faq_top .faq_middle_category {
    margin-bottom: 60px;
    gap: 30px 4%;
  }
}
@media screen and (max-width: 768px) {
  .faq_wrap .faq_top .faq_middle_category {
    margin-bottom: 40px;
    gap: 20px 4%;
  }
}
.faq_wrap .faq_top .faq_middle_category li {
  position: relative;
  width: 48%;
  border: 2px solid #e2e3e7;
  background-color: #F7F7F7;
  border-radius: 8px;
}

.faq_wrap .faq_top .faq_middle_category li a {
  position: relative;
  display: block;
  font-size: clamp(1.4rem, 1.8vw, 2.2rem);
}

@media screen and (min-width: 769px) {
  .faq_wrap .faq_top .faq_middle_category li a {
    padding: 17px 15px 15px 15px;
  }
}
@media screen and (max-width: 768px) {
  .faq_wrap .faq_top .faq_middle_category li a {
    padding: 17px 15px 15px 15px;
  }
}
.faq_wrap .faq_top .faq_middle_category li a::after {
  content: "";
  transition: 0.3s;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  border: 5px solid transparent;
  border-left: 8px solid #13202f;
  right: 3%;
  opacity: 0.5;
}

.faq_wrap .faq_top .faq_middle_category li a:hover::after {
  opacity: 1;
}

@media screen and (min-width: 769px) {
  .faq_wrap .faq_wrap_lr {
    display: flex;
    justify-content: space-between;
    gap: 0 5%;
    padding-bottom: 80px;
  }
}
@media screen and (max-width: 768px) {
  .faq_wrap .faq_wrap_lr {
    padding-bottom: 20px;
  }
}
.faq_wrap .faq_wrap_lr .faq_wrap_l {
  flex: 1;
}

@media screen and (max-width: 768px) {
  .faq_wrap .faq_wrap_lr .faq_wrap_l {
    padding-bottom: 40px;
  }
}
.faq_wrap .faq_wrap_lr .faq_wrap_l .faq_middle_category_ttl {
  background-color: #13202f;
}

@media screen and (min-width: 769px) {
  .faq_wrap .faq_wrap_lr .faq_wrap_l .faq_middle_category_ttl {
    padding: 25px 0px 21px 30px;
    margin-bottom: 40px;
  }
}
@media screen and (max-width: 768px) {
  .faq_wrap .faq_wrap_lr .faq_wrap_l .faq_middle_category_ttl {
    padding: 15px 0px 12px 20px;
    margin-bottom: 25px;
  }
}
.faq_wrap .faq_wrap_lr .faq_wrap_l .faq_middle_category_ttl {
  border-radius: 8px;
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(1.8rem, 2vw, 2.8rem);
  color: #FFF;
}

@media screen and (min-width: 769px) {
  .faq_wrap .faq_wrap_lr .faq_wrap_r {
    width: 230px;
  }
}
.faq_wrap .faq_wrap_lr .faq_wrap_r h2 {
  background-color: #f03748;
  border-radius: 8px;
}

@media screen and (min-width: 769px) {
  .faq_wrap .faq_wrap_lr .faq_wrap_r h2 {
    padding: 15px 0px 15px 15px;
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 768px) {
  .faq_wrap .faq_wrap_lr .faq_wrap_r h2 {
    padding: 10px 0px 10px 15px;
    margin-bottom: 10px;
  }
}
@media screen and (min-width: 769px) {
  .faq_wrap .faq_wrap_lr .faq_wrap_r h2 span {
    border-left: 3px solid #FFF;
    padding: 2px 0px 0px 10px;
  }
}
@media screen and (max-width: 768px) {
  .faq_wrap .faq_wrap_lr .faq_wrap_r h2 span {
    border-left: 3px solid #FFF;
    padding: 2px 0px 0px 10px;
  }
}
.faq_wrap .faq_wrap_lr .faq_wrap_r h2 span {
  display: block;
  font-size: clamp(1.5rem, 1.6vw, 1.6rem);
  font-family: "Chatwork Sans B", sans-serif;
  letter-spacing: 1px;
  color: #FFF;
}

@media screen and (min-width: 769px) {
  .faq_wrap .faq_wrap_lr .faq_wrap_r .faq_middle_category {
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 768px) {
  .faq_wrap .faq_wrap_lr .faq_wrap_r .faq_middle_category {
    margin-bottom: 30px;
  }
}
.faq_wrap .faq_wrap_lr .faq_wrap_r .faq_middle_category li {
  position: relative;
  border: 2px solid #e2e3e7;
  background-color: #F7F7F7;
  border-radius: 8px;
}

@media screen and (min-width: 769px) {
  .faq_wrap .faq_wrap_lr .faq_wrap_r .faq_middle_category li {
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 768px) {
  .faq_wrap .faq_wrap_lr .faq_wrap_r .faq_middle_category li {
    margin-bottom: 10px;
  }
}
.faq_wrap .faq_wrap_lr .faq_wrap_r .faq_middle_category li a {
  position: relative;
  display: block;
  font-size: clamp(1.3rem, 1.8vw, 1.4rem);
}

@media screen and (min-width: 769px) {
  .faq_wrap .faq_wrap_lr .faq_wrap_r .faq_middle_category li a {
    padding: 17px 15px 15px 15px;
  }
}
@media screen and (max-width: 768px) {
  .faq_wrap .faq_wrap_lr .faq_wrap_r .faq_middle_category li a {
    padding: 10px 15px 10px 15px;
  }
}
.faq_wrap .faq_wrap_lr .faq_wrap_r .faq_middle_category li a::after {
  content: "";
  transition: 0.3s;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  border: 3px solid transparent;
  border-left: 5px solid #13202f;
  right: 3%;
  opacity: 0.5;
}

.faq_wrap .faq_wrap_lr .faq_wrap_r .faq_middle_category li a:hover::after {
  opacity: 1;
}

.faq_wrap .faq_wrap_lr .faq_wrap_r .faq_middle_category .is-current {
  border-color: #fb8490;
  background-color: #fdedee;
  color: #fb8490;
}

.faq_wrap .faq_wrap_lr .faq_wrap_r .faq_middle_category .is-current a::after {
  opacity: 1;
  border-left-color: #fb8490;
}

/* --------------------------------------------
導入事例 一覧
-------------------------------------------- */
/*検索フォーム*/
@media screen and (min-width: 769px) {
  .searchandfilter {
    margin: 60px 0 80px;
  }
}
@media screen and (max-width: 768px) {
  .searchandfilter {
    margin: 0px 0 40px;
  }
}
@media screen and (min-width: 769px) {
  .searchandfilter p {
    margin: 30px 0 15px;
  }
}
@media screen and (max-width: 768px) {
  .searchandfilter p {
    padding: 30px 0 15px;
  }
}
.searchandfilter p {
  font-size: clamp(1.8rem, 2vw, 2rem);
}

.searchandfilter p.first_ttl {
  padding-top: 15px !important;
}

.searchandfilter .searchandfilter_wrap_ul li:nth-child(1) ul li {
  color: #24B295;
  border: 1px solid #24B295;
}

.searchandfilter .searchandfilter_wrap_ul li:nth-child(1) ul li:has(input:checked) {
  background-color: #24B295;
  color: #FFFFFF;
}

.searchandfilter .searchandfilter_wrap_ul li:nth-child(1) ul li input[type=checkbox] {
  border: 1px solid #24B295;
}

.searchandfilter .searchandfilter_wrap_ul li:nth-child(1) ul li input[type=checkbox]:checked::after {
  border-bottom: 1.5px solid #24B295;
  border-left: 1.5px solid #24B295;
}

.searchandfilter .searchandfilter_wrap_ul li:nth-child(2) ul li {
  color: #2CB3E7;
  border: 1px solid #2CB3E7;
}

.searchandfilter .searchandfilter_wrap_ul li:nth-child(2) ul li:has(input:checked) {
  background-color: #2CB3E7;
  color: #FFFFFF;
}

.searchandfilter .searchandfilter_wrap_ul li:nth-child(2) ul li input[type=checkbox] {
  border: 1px solid #2CB3E7;
}

.searchandfilter .searchandfilter_wrap_ul li:nth-child(2) ul li input[type=checkbox]:checked::after {
  border-bottom: 1.5px solid #24B295;
  border-left: 1.5px solid #24B295;
}

.searchandfilter .searchandfilter_wrap_ul li:nth-child(3) ul li {
  color: #13202F;
  border: 1px solid #13202F;
}

.searchandfilter .searchandfilter_wrap_ul li:nth-child(3) ul li:has(input:checked) {
  background-color: #13202F;
  color: #FFFFFF;
}

.searchandfilter .searchandfilter_wrap_ul li:nth-child(3) ul li input[type=checkbox] {
  border: 1px solid #13202F;
}

.searchandfilter .searchandfilter_wrap_ul li:nth-child(3) ul li input[type=checkbox]:checked::after {
  border-bottom: 1.5px solid #13202F;
  border-left: 1.5px solid #13202F;
}

.searchandfilter .searchandfilter_wrap_ul li ul li {
  display: inline-block;
  margin: 0px 10px 10px 0px;
  font-size: clamp(1.3rem, 1.8vw, 1.5rem);
  border-radius: 100vh;
  overflow: hidden;
}

.searchandfilter .searchandfilter_wrap_ul li ul li label {
  padding: 4px 10px 4px 10px;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  height: 26px;
}

@media screen and (max-width: 768px) {
  .searchandfilter .searchandfilter_wrap_ul li ul li label {
    height: 24px;
  }
}
.searchandfilter .searchandfilter_wrap_ul li ul li input[type=checkbox] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  position: relative;
  width: 11px;
  height: 11px;
  border-radius: 2px;
  cursor: pointer;
}

.searchandfilter .searchandfilter_wrap_ul li ul li input[type=checkbox]:checked {
  background-color: #ffffff;
  border-color: #ffffff;
}

.searchandfilter .searchandfilter_wrap_ul li ul li input[type=checkbox]:checked::after {
  content: "";
  position: absolute;
  top: 1.5px;
  left: 1px;
  width: 7px;
  height: 4px;
  border-bottom: 1.5px solid #ffffff;
  border-left: 1.5px solid #ffffff;
  transform: rotate(-45deg);
}

@media screen and (min-width: 769px) {
  .searchandfilter input[type=submit] {
    width: 200px;
    padding: 15px 0;
    margin-top: 30px;
  }
}
@media screen and (max-width: 768px) {
  .searchandfilter input[type=submit] {
    width: 200px;
    padding: 15px 0;
    margin: 30px auto;
    display: block;
  }
}
.searchandfilter input[type=submit] {
  border-radius: 100vh;
  letter-spacing: 1px;
  border: 1px solid #13202F;
  display: inline-block;
  text-align: center;
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(1.4rem, 1.8vw, 1.5rem);
  transition: background-color 0.3s, cursor 0.3s;
}

/* 新アコーディオン */
@media screen and (min-width: 769px) {
  .accordion2 {
    width: 1000px;
    margin: 0 auto 0px;
  }
}
@media screen and (min-width: 769px) and (max-width: 1210px) {
  .accordion2 {
    width: 92%;
    margin: 0 auto 0px;
  }
}
@media screen and (max-width: 768px) {
  .accordion2 {
    margin: 30px auto;
  }
}
@media screen and (max-width: 768px) {
  .accordion-content {
    display: none;
  }
}
@media screen and (min-width: 769px) {
  .accordion-header {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .accordion-header {
    position: relative;
    border: none;
    display: block;
    list-style: none;
    width: 100%;
    cursor: pointer;
    background: #F8F8F8;
    padding: 15px;
    line-height: 1.6em;
    border-radius: 15px;
    font-family: "Chatwork Sans B", sans-serif;
    font-size: clamp(1.7rem, 2vw, 1.7rem);
    box-shadow: 0px 0px 3px 1px #DDD;
  }
}
.accordion-header::before,
.accordion-header::after {
  position: absolute;
  content: "";
  top: 1px;
  right: 20px;
  bottom: 0;
  width: 12px;
  height: 2px;
  margin: auto;
  background: #151E2F;
}

@media screen and (max-width: 768px) {
  .accordion-header::after {
    transform: rotate(-90deg);
    transition: transform 0.3s;
  }
}
.accordion-header.active::after {
  transform: rotate(0deg);
}

@media screen and (max-width: 768px) {
  .accordion-content {
    padding: 15px;
    border: 2px solid #F8F8F8;
    border-top: 0;
    border-radius: 0px 0px 15px 15px;
  }
}
/*導入事例 一覧loop*/
.case_loop {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  gap: 32px 1.5%;
  flex-wrap: wrap;
}

@media screen and (min-width: 1201px) {
  .case_loop {
    display: grid;
    grid-template-columns: repeat(3, 320px);
    gap: 32px;
    justify-content: flex-start;
  }
}
@media screen and (min-width: 1201px) {
  .case_loop .case_loop_box {
    width: 100%;
    max-width: 320px;
  }
}
@media (min-width: 951px) and (max-width: 1200px) {
  .case_loop .case_loop_box {
    width: 48.5%;
  }
}
@media screen and (max-width: 950px) {
  .case_loop .case_loop_box {
    width: 100%;
  }
}
.case_loop .case_loop_box {
  display: flex;
  background: #FFF;
  box-shadow: 0px 0px 10px 0px #CCC;
  box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.0784313725);
  border-radius: 10px;
}

.case_loop .case_loop_box a {
  display: flex;
  flex-direction: column;
}

@media screen and (min-width: 769px) {
  .case_loop .case_loop_box a .case_loop_detail_button {
    width: 150px;
    height: 40px;
  }
}
@media screen and (max-width: 768px) {
  .case_loop .case_loop_box a .case_loop_detail_button {
    width: 150px;
    height: 40px;
  }
}
.case_loop .case_loop_box a .case_loop_detail_button {
  position: relative;
  padding-right: 15px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
  background: #13202f;
  font-size: clamp(1.4rem, 1.6vw, 1.4rem);
  color: #FFF;
  border-radius: 100vh;
  transition: 0.3s;
}

.case_loop .case_loop_box a .case_loop_detail_button::before {
  content: "";
  width: 19px;
  height: 19px;
  border-radius: 100vh;
  background: #FFF;
  margin-top: -10px;
  position: absolute;
  top: 50%;
  right: 11px;
}

.case_loop .case_loop_box a .case_loop_detail_button::after {
  content: "";
  width: 7px;
  height: 7px;
  margin-top: -4px;
  border-top: solid 2px #13202f;
  border-right: solid 2px #13202f;
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  right: 18px;
}

.case_loop .case_loop_box a:hover .case_loop_detail_button {
  background: #5e697b;
}

.case_loop .case_loop_box .thum img {
  aspect-ratio: 16/9;
  width: 100%;
  height: auto;
  border-radius: 10px 10px 0px 0px;
  -o-object-fit: cover;
     object-fit: cover;
}

@media screen and (min-width: 769px) {
  .case_loop .case_loop_box .case_loop_box_text {
    padding: 5%;
  }
}
@media screen and (max-width: 768px) {
  .case_loop .case_loop_box .case_loop_box_text {
    padding: 4%;
  }
}
.case_loop .case_loop_box .case_loop_box_text {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-around;
  gap: 12px;
}

.case_loop .case_loop_box .case_loop_box_text .case_loop_ttl {
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(1.8rem, 2vw, 1.8rem);
  line-height: 1.4;
  margin-bottom: 12px;
  margin-top: -5px;
}

.case_loop .case_loop_box .case_loop_box_text .case_loop_category {
  margin-bottom: 15px;
}

.case_loop .case_loop_box .case_loop_box_text .case_loop_category li {
  display: inline-block;
  font-size: clamp(1.2rem, 1.4vw, 1.2rem);
  padding: 6px 10px 4px 10px;
  margin: 0px 5px 5px 0px;
  border-radius: 100vh;
  color: #FFF;
}

.case_loop .case_loop_box .case_loop_box_text .case_loop_category li.job_category {
  background-color: #2CB3E7;
}

.case_loop .case_loop_box .case_loop_box_text .case_loop_category li.case_category {
  background-color: #24B295;
}

.case_loop .case_loop_box .case_loop_box_text .number_category {
  margin-bottom: 15px;
  font-size: clamp(1.2rem, 1.4vw, 1.2rem);
}

.case_loop .case_loop_box .case_loop_box_text .case_loop_company {
  margin-bottom: 15px;
  font-size: clamp(1.4rem, 1.6vw, 1.4rem);
  color: #6D7277;
}

.case_loop .case_loop_box .case_loop_box_text_bottom {
  margin-top: auto;
}

/* --------------------------------------------
導入事例 詳細
-------------------------------------------- */
@media screen and (min-width: 769px) {
  .case_wrap {
    display: flex;
    justify-content: space-between;
  }
}
@media screen and (min-width: 769px) {
  .case_wrap.case_wrap_detail {
    padding-top: 60px;
    width: 1005px;
    gap: 0 48px;
  }
}
@media screen and (max-width: 768px) {
  .case_wrap.case_wrap_detail {
    padding-top: 30px;
  }
}
@media screen and (min-width: 769px) {
  .case_wrap .case_wrap_l {
    flex: 1;
  }
}
.case_wrap .case_wrap_l .case_wrap_l_ttl {
  line-height: 1.4;
  font-size: clamp(1.8rem, 2.5vw, 3.4rem);
  font-family: "Chatwork Sans B", sans-serif;
  letter-spacing: 1px;
}

.case_wrap .case_wrap_l .case_loop_category {
  margin: 15px 0;
}

.case_wrap .case_wrap_l .case_loop_category li {
  display: inline-block;
  font-size: clamp(1.2rem, 1.4vw, 1.3rem);
  padding: 7px 10px 5px 10px;
  margin: 0px 5px 5px 0px;
  border-radius: 100vh;
  color: #FFF;
  letter-spacing: 1px;
}

.case_wrap .case_wrap_l .case_loop_category li.job_category {
  background-color: #2CB3E7;
}

.case_wrap .case_wrap_l .case_loop_category li.case_category {
  background-color: #24B295;
}

.case_wrap .case_wrap_l .number_category {
  margin-bottom: 15px;
  font-size: clamp(1.2rem, 1.4vw, 1.5rem);
  letter-spacing: 1px;
}

.case_wrap .case_wrap_l .case_wrap_l_thum {
  position: relative;
  overflow: hidden;
}

@media screen and (min-width: 769px) {
  .case_wrap .case_wrap_l .case_wrap_l_thum {
    margin-block: 30px;
    padding-top: 305px;
  }
}
@media screen and (max-width: 768px) {
  .case_wrap .case_wrap_l .case_wrap_l_thum {
    margin-block: 20px;
    padding-top: 168px;
  }
}
.case_wrap .case_wrap_l .case_wrap_l_thum img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 10px;
}

@media screen and (min-width: 769px) {
  .case_wrap .case_wrap_l .case_wrap_post_status {
    padding: 30px;
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 768px) {
  .case_wrap .case_wrap_l .case_wrap_post_status {
    padding: 20px;
    margin-bottom: 30px;
  }
}
.case_wrap .case_wrap_l .case_wrap_post_status {
  background: #FFF;
  box-shadow: 0px 0px 10px -5px #777777;
  border-radius: 10px;
}

.case_wrap .case_wrap_l .case_wrap_post_status .case_wrap_logo_company {
  display: flex;
  align-content: center;
  justify-content: space-between;
  align-items: center;
  gap: 0 24px;
}

.case_wrap .case_wrap_l .case_wrap_post_status .case_wrap_logo_company .case_wrap_logo {
  width: 96px;
  max-height: 96px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  height: -moz-fit-content;
  height: fit-content;
}

.case_wrap .case_wrap_l .case_wrap_post_status .case_wrap_logo_company .case_wrap_logo img {
  width: 100%;
  height: auto;
}

.case_wrap .case_wrap_l .case_wrap_post_status .case_wrap_logo_company .case_wrap_company {
  flex: 1;
  display: flex;
  align-items: center;
}

.case_wrap .case_wrap_l .case_wrap_post_status .case_wrap_logo_company .case_wrap_company p {
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(1.6rem, 2vw, 1.9rem);
  letter-spacing: 1px;
}

.case_wrap .case_wrap_l .case_wrap_post_status .company_text {
  margin: 15px 0;
  font-size: clamp(1.3rem, 2vw, 1.5rem);
  line-height: 1.5;
}

.case_wrap .case_wrap_l .case_wrap_post_status .case_speak {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.case_wrap .case_wrap_l .case_wrap_post_status .case_speak .case_speak_item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0 3%;
}

.case_wrap .case_wrap_l .case_wrap_post_status .case_speak .case_speak_item .case_speak_item_l {
  width: 13%;
}

.case_wrap .case_wrap_l .case_wrap_post_status .case_speak .case_speak_item .case_speak_item_l figure {
  position: relative;
  overflow: hidden;
  padding-top: 100%;
}

.case_wrap .case_wrap_l .case_wrap_post_status .case_speak .case_speak_item .case_speak_item_l figure img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 100vh;
}

.case_wrap .case_wrap_l .case_wrap_post_status .case_speak .case_speak_item .case_speak_item_r {
  flex: 1;
}

.case_wrap .case_wrap_l .case_wrap_post_status .case_speak .case_speak_item .case_speak_item_r p {
  font-size: clamp(1.3rem, 2vw, 1.5rem);
  padding-bottom: 8px;
}

.case_wrap .case_wrap_l .case_wrap_post_status .case_speak .case_speak_item .case_speak_item_r p:last-child {
  padding-bottom: 0;
}

.case_wrap .case_wrap_l .case_wrap_post_status .case_result {
  margin-top: 30px;
  padding: 30px;
  background: #F8F8F8;
  border-radius: 10px;
}

.case_wrap .case_wrap_l .case_wrap_post_status .case_result dt {
  margin-top: 30px;
  margin-bottom: 10px;
  padding: 7px 16px 5px 16px;
  display: inline-block;
  border-radius: 8px;
  color: #FFF;
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(1.3rem, 1.8vw, 1.3rem);
  letter-spacing: 1px;
}

.case_wrap .case_wrap_l .case_wrap_post_status .case_result dt:nth-child(1) {
  background: #13202f;
  margin-top: 0px;
}

.case_wrap .case_wrap_l .case_wrap_post_status .case_result dt:nth-child(3) {
  background: #22B295;
}

.case_wrap .case_wrap_l .case_wrap_post_status .case_result dt:nth-child(5) {
  background: #2CB1E7;
}

.case_wrap .case_wrap_l .case_wrap_post_status .case_result dd li {
  position: relative;
  padding: 6px 8px 6px 15px;
  font-size: clamp(1.3rem, 1.8vw, 1.4rem);
  line-height: 1.4;
  letter-spacing: 1px;
  border-bottom: 1px solid #E6E6E6;
}

.case_wrap .case_wrap_l .case_wrap_post_status .case_result dd li::before {
  position: absolute;
  left: 0px;
  content: "・";
  font-size: clamp(1.3rem, 1.8vw, 1.4rem);
  font-family: "Chatwork Sans EB", sans-serif;
}

.case_wrap .case_wrap_l .case_wrap_l_tables {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  border-top: 1px solid #13202f;
  border-left: 1px solid #13202f;
  background: #FFF;
}

@media screen and (max-width: 768px) {
  .case_wrap .case_wrap_l .case_wrap_l_tables {
    display: block;
  }
}
@media screen and (max-width: 768px) {
  .case_wrap .case_wrap_l .case_wrap_l_tables tbody {
    width: 100%;
    display: block;
  }
}
@media screen and (max-width: 768px) {
  .case_wrap .case_wrap_l .case_wrap_l_tables tr {
    width: 100%;
    display: block;
  }
}
@media screen and (min-width: 769px) {
  .case_wrap .case_wrap_l .case_wrap_l_tables th, .case_wrap .case_wrap_l .case_wrap_l_tables td {
    padding: 20px;
  }
}
@media screen and (max-width: 768px) {
  .case_wrap .case_wrap_l .case_wrap_l_tables th, .case_wrap .case_wrap_l .case_wrap_l_tables td {
    padding: 15px;
    display: block;
    width: 100%;
  }
}
.case_wrap .case_wrap_l .case_wrap_l_tables th, .case_wrap .case_wrap_l .case_wrap_l_tables td {
  border-right: 1px solid #13202f;
  border-bottom: 1px solid #13202f;
}

.case_wrap .case_wrap_l .case_wrap_l_tables th {
  vertical-align: middle;
  text-align: center;
}

@media screen and (min-width: 769px) {
  .case_wrap .case_wrap_l .case_wrap_l_tables th {
    width: 150px;
  }
}
@media screen and (max-width: 768px) {
  .case_wrap .case_wrap_l .case_wrap_l_tables th {
    width: 100%;
  }
}
.case_wrap .case_wrap_l .case_wrap_l_tables .case_wrap_l_tables_list th {
  background: #e2e3e7;
  font-size: clamp(1.3rem, 2vw, 1.6rem);
  font-family: "Chatwork Sans B", sans-serif;
}

.case_wrap .case_wrap_l .case_wrap_l_tables .case_wrap_l_tables_list td {
  font-size: clamp(1.3rem, 2vw, 1.6rem);
  line-height: 1.5;
}

.case_wrap .case_wrap_l .case_wrap_l_tables .case_wrap_l_tables_list td ul li {
  margin-left: 17px;
  padding-bottom: 10px;
  list-style-type: disc;
}

.case_wrap .case_wrap_l .case_wrap_l_tables .case_wrap_l_tables_list td ul li:last-child {
  padding-bottom: 0;
}

@media screen and (min-width: 769px) {
  .case_wrap .case_wrap_l_single {
    margin-top: 60px;
  }
}
@media screen and (max-width: 768px) {
  .case_wrap .case_wrap_l_single {
    margin-top: 30px;
  }
}
.case_wrap .case_wrap_l_single h2 {
  position: relative;
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(1.7rem, 2.2vw, 2.2rem);
  border-bottom: 0;
}

.case_wrap .case_wrap_l_single h2::before {
  content: "";
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 3px;
  background: #f03748;
  border-radius: 100vh;
}

.case_wrap .case_wrap_l_single h2::after {
  content: "";
  position: absolute;
  left: 10%;
  bottom: 0;
  width: 3px;
  height: 3px;
  background: #f03748;
  border-radius: 100vh;
  box-shadow: 0px 0px 0px 4px #FFF;
}

.case_wrap .case_wrap_l_single h3 {
  border-bottom: 0px;
  font-family: "Chatwork Sans B", sans-serif;
  letter-spacing: 0px;
  padding: 0;
  display: flex;
  font-size: clamp(1.5rem, 1.3vw, 1.8rem);
  line-height: 1.6;
  gap: 0 8px;
}

@media screen and (min-width: 769px) {
  .case_wrap .case_wrap_l_single h3 {
    margin-bottom: 16px;
  }
}
@media screen and (max-width: 768px) {
  .case_wrap .case_wrap_l_single h3 {
    margin-bottom: 8px;
  }
}
.case_wrap .case_wrap_l_single h3::before {
  width: 20px;
  height: 1px;
  margin-top: 10px;
  background-color: #f03748;
  flex: 0 0 auto;
  content: "";
}

@media screen and (min-width: 769px) {
  .single * + h3 {
    margin-top: 32px;
  }
}
@media screen and (max-width: 768px) {
  .single * + h3 {
    margin-top: 24px;
  }
}
@media screen and (min-width: 769px) {
  .case_wrap .case_wrap_r {
    position: relative;
    width: 300px;
  }
}
@media screen and (max-width: 768px) {
  .case_wrap .case_wrap_r {
    margin-top: 30px;
  }
}
.case_wrap .case_wrap_r img {
  width: 100%;
  height: auto;
}

.case_footer {
  background-color: #e2e3e7;
}

@media screen and (min-width: 769px) {
  .case_footer {
    margin-top: 80px;
  }
}
@media screen and (max-width: 768px) {
  .case_footer {
    margin-top: 40px;
  }
}
@media screen and (min-width: 769px) {
  .case_footer ul {
    padding: 60px 0;
    width: 800px;
    display: flex;
    justify-content: space-between;
    gap: 0 6%;
  }
}
@media screen and (max-width: 768px) {
  .case_footer ul {
    padding: 30px 0;
  }
}
.case_footer ul {
  margin: 0 auto;
}

@media screen and (min-width: 769px) {
  .case_footer ul li {
    width: 47%;
    padding: 15px;
  }
}
@media screen and (max-width: 768px) {
  .case_footer ul li {
    margin: 0 7% 30px;
    padding: 10px;
  }
  .case_footer ul li:last-child {
    margin-bottom: 0;
  }
}
.case_footer ul li {
  background: #FFF;
  border-radius: 15px;
  text-align: center;
}

@media screen and (min-width: 769px) {
  .case_footer ul li img {
    height: 70px;
    width: auto;
  }
}
@media screen and (max-width: 768px) {
  .case_footer ul li img {
    height: 70px;
    width: auto;
  }
}
@media screen and (min-width: 769px) {
  .case_footer ul li p {
    padding: 15px 0;
  }
}
@media screen and (max-width: 768px) {
  .case_footer ul li p {
    padding: 10px 0;
  }
}
.case_footer ul li p {
  text-align: center;
  font-size: clamp(1.4rem, 2vw, 1.8rem);
}

@media screen and (min-width: 769px) {
  .case_footer ul li .arrow {
    padding: 12px 0;
  }
}
@media screen and (max-width: 768px) {
  .case_footer ul li .arrow {
    padding: 10px 0;
    font-size: 1.6rem;
  }
}
/* --------------------------------------------
static (利用規約)
-------------------------------------------- */
.static_wrap_contents {
  background-color: #FFF;
}

@media screen and (min-width: 769px) {
  .static_wrap_contents {
    padding: 40px;
  }
}
@media screen and (max-width: 768px) {
  .static_wrap_contents {
    padding: 20px;
  }
}
@media screen and (min-width: 769px) {
  .static_wrap_contents h1 {
    margin-bottom: 40px;
  }
}
@media screen and (max-width: 768px) {
  .static_wrap_contents h1 {
    margin-bottom: 30px;
  }
}
.static_wrap_contents h1 {
  text-align: center;
  font-size: clamp(2.2rem, 2vw, 3.2rem);
  font-family: "Chatwork Sans EB", sans-serif;
}

.static_wrap_contents h2 {
  padding-top: 20px;
}

@media screen and (min-width: 769px) {
  .static_wrap_contents h2 {
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 768px) {
  .static_wrap_contents h2 {
    margin-bottom: 10px;
  }
}
.static_wrap_contents h2 {
  font-size: clamp(1.8rem, 2vw, 2.4rem);
  font-family: "Chatwork Sans B", sans-serif;
}

.static_wrap_contents p {
  font-size: clamp(1.4rem, 2vw, 1.7rem);
  line-height: 1.6;
  margin-bottom: 25px;
}

.static_wrap_contents p.right_text {
  text-align: right;
}

.static_wrap_contents .number_list > li {
  font-size: clamp(1.4rem, 2vw, 1.7rem);
  line-height: 1.6;
  margin: 0px 0px 25px 20px;
  list-style: decimal;
}

.static_wrap_contents .kakko_list {
  position: relative;
}

.static_wrap_contents .kakko_list > li {
  position: relative;
  font-size: clamp(1.4rem, 2vw, 1.7rem);
  line-height: 1.6;
  margin: 0px 0px 25px 40px;
}

@media screen and (min-width: 769px) {
  .static_wrap_contents .kakko_list > li::before {
    left: -40px;
  }
}
@media screen and (max-width: 768px) {
  .static_wrap_contents .kakko_list > li::before {
    left: -35px;
  }
}
.static_wrap_contents .kakko_list > li::before {
  position: absolute;
  font-size: clamp(1.4rem, 2vw, 1.7rem);
}

.static_wrap_contents .kakko_list > li:nth-of-type(1)::before {
  content: "(1)";
}

.static_wrap_contents .kakko_list > li:nth-of-type(2)::before {
  content: "(2)";
}

.static_wrap_contents .kakko_list > li:nth-of-type(3)::before {
  content: "(3)";
}

.static_wrap_contents .kakko_list > li:nth-of-type(4)::before {
  content: "(4)";
}

.static_wrap_contents .kakko_list > li:nth-of-type(5)::before {
  content: "(5)";
}

.static_wrap_contents .kakko_list > li:nth-of-type(6)::before {
  content: "(6)";
}

.static_wrap_contents .kakko_list > li:nth-of-type(7)::before {
  content: "(7)";
}

.static_wrap_contents .kakko_list > li:nth-of-type(8)::before {
  content: "(8)";
}

.static_wrap_contents .kakko_list > li:nth-of-type(9)::before {
  content: "(9)";
}

.static_wrap_contents .kakko_list > li:nth-of-type(10)::before {
  content: "(10)";
}

.static_wrap_contents .kakko_list > li:nth-of-type(11)::before {
  content: "(11)";
}

.static_wrap_contents .kakko_list > li:nth-of-type(12)::before {
  content: "(12)";
}

.static_wrap_contents .maru_list {
  position: relative;
}

.static_wrap_contents .maru_list > li {
  position: relative;
  font-size: clamp(1.4rem, 2vw, 1.7rem);
  line-height: 1.6;
  margin: 0px 0px 25px 20px;
}

.static_wrap_contents .maru_list > li::before {
  position: absolute;
  font-size: clamp(1.4rem, 2vw, 1.7rem);
  left: -20px;
}

.static_wrap_contents .maru_list > li:nth-of-type(1)::before {
  content: "①";
}

.static_wrap_contents .maru_list > li:nth-of-type(2)::before {
  content: "②";
}

.static_wrap_contents .maru_list > li:nth-of-type(3)::before {
  content: "③";
}

.static_wrap_contents .maru_list > li:nth-of-type(4)::before {
  content: "④";
}

.static_wrap_contents .maru_list > li:nth-of-type(5)::before {
  content: "⑤";
}

.static_wrap_contents .maru_list > li:nth-of-type(6)::before {
  content: "⑥";
}

.static_wrap_contents .maru_list > li:nth-of-type(7)::before {
  content: "⑦";
}

.static_wrap_contents .maru_list > li:nth-of-type(8)::before {
  content: "⑧";
}

.static_wrap_contents .maru_list > li:nth-of-type(9)::before {
  content: "⑨";
}

.static_wrap_contents .maru_list > li:nth-of-type(10)::before {
  content: "⑩";
}

.static_wrap_contents .maru_list > li:nth-of-type(11)::before {
  content: "⑪";
}

.static_wrap_contents .maru_list > li:nth-of-type(12)::before {
  content: "⑫";
}

.static_wrap_contents .ml5p {
  margin-left: 3%;
}

/* --------------------------------------------
お役立ちコラム 一覧
-------------------------------------------- */
.search {
  display: flex;
  border-radius: 8px;
  background-color: #f7f7f7;
  flex-direction: column;
}

@media screen and (min-width: 769px) {
  .search {
    padding: 4% 3%;
    gap: 30px 0;
  }
}
@media screen and (max-width: 768px) {
  .search {
    padding: 5%;
    gap: 16px 0;
  }
}
.search-tag__title {
  font-family: "Chatwork Sans EB", sans-serif;
  font-size: clamp(2rem, 2.1vw, 2.6rem);
  letter-spacing: 0.02em;
}

.search-tag {
  display: flex;
  flex-wrap: wrap;
  font-size: clamp(1.3rem, 1.2vw, 1.5rem);
  gap: 14px 2%;
}

.search-tag a {
  display: flex;
  padding: 7px 10px;
  border: 1px solid #b3b3b3;
  border-radius: 8px;
  background-color: #fff;
  transition: 0.3s border-color, 0.3s background-color, 0.3s color;
}

.search-tag a:hover, .search-tag a.is-current {
  border-color: #f03748;
  background-color: #f03748;
  color: #fff;
}

.topics-category__title {
  display: flex;
  color: #f03748;
  font-family: "Chatwork Sans EB", sans-serif;
  font-size: clamp(2rem, 2.08vw, 2.6rem);
  flex-direction: column;
  gap: 16px 0;
  margin: 40px 0 24px;
}

.topics-category__title::after {
  display: block;
  width: min(16%, 65px);
  height: 8px;
  border-radius: 100vw;
  background-color: #f03748;
  content: "";
}

.topics-list {
  display: flex;
  margin-top: 30px;
  flex-wrap: wrap;
  gap: 30px 0;
}

@media screen and (max-width: 768px) {
  .topics-list {
    gap: 20px 0;
  }
}
.topics-list:has(.-col2) {
  gap: 40px 4.8%;
}

@media screen and (min-width: 769px) {
  .topics-list:has(.-col2) {
    padding-inline: 20px;
  }
}
@media screen and (max-width: 768px) {
  .topics {
    margin-top: 0;
  }
}
.topics.-col2 {
  position: relative;
}

@media screen and (min-width: 769px) {
  .topics.-col2 {
    width: 47.6%;
  }
}
@media screen and (min-width: 769px) {
  .topics.-col2:nth-child(2n)::before {
    position: absolute;
    top: 0;
    left: -5%;
    width: 2px;
    height: 100%;
    background-image: linear-gradient(to bottom, #bfbfbf 2px, transparent 2px);
    background-position: top left;
    background-repeat: repeat-y;
    background-size: 2px 8px;
    content: "";
  }
}
@media screen and (min-width: 769px) {
  .topics.-col2:nth-child(n+3)::after {
    position: absolute;
    top: -20px;
    left: 0;
    width: 100%;
    height: 2px;
    background-image: linear-gradient(to right, #bfbfbf 2px, transparent 2px);
    background-position: top left;
    background-repeat: repeat-x;
    background-size: 8px 2px;
    content: "";
  }
}
@media screen and (max-width: 768px) {
  .topics.-col2 + .-col2::after {
    position: absolute;
    top: -20px;
    left: 0;
    width: 100%;
    height: 2px;
    background-image: linear-gradient(to right, #bfbfbf 2px, transparent 2px);
    background-position: top left;
    background-repeat: repeat-x;
    background-size: 8px 2px;
    content: "";
  }
}
.topics > a {
  display: flex;
  padding: 3%;
  border-radius: 8px;
  background-color: #f7f7f7;
  gap: 10px 20px;
  transition: 0.3s box-shadow;
}

.-col2.topics > a {
  padding: 4% 4% 5%;
  flex-direction: column;
  gap: 12px 0;
}

@media screen and (max-width: 768px) {
  .topics > a {
    padding: 4%;
    flex-direction: column;
  }
}
.topics > a:hover {
  box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1);
}

.topics-picture {
  width: min(100%, 223px);
  flex: 0 0 auto;
}

.-col2 .topics-picture {
  width: 100%;
  aspect-ratio: 360/220;
  overflow: hidden;
}

@media screen and (max-width: 768px) {
  .topics-picture {
    width: 100%;
  }
}
.topics-picture img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.topics-contents p {
  display: -webkit-box;
  overflow: hidden;
  margin-top: 10px;
  font-size: 1.3rem;
  line-height: 1.7;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  white-space: normal;
}

.-col2 .topics-contents p {
  display: none;
}

.topics-header {
  display: flex;
  gap: 0 20px;
}

.topics-header h3 {
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(1.8rem, 1.6vw, 2rem);
  line-height: 1.35;
}

.-col2 .topics-header h3 {
  font-size: clamp(1.4rem, 1.3vw, 1.6rem);
}

.topics-date {
  display: inline-flex;
  font-family: "Silkscreen", sans-serif;
  font-weight: 400;
  font-size: 1.4rem;
  font-style: normal;
  line-height: 1;
  text-align: center;
  flex: 0 0 auto;
  flex-direction: column;
}

.topics-date__day {
  font-size: 2.4rem;
}

.topics-tag {
  display: flex;
  margin-top: 14px;
  flex-wrap: wrap;
  gap: 14px 14px;
}

.topics-tag li {
  padding: 4px 6px;
  border: 1px solid #b3b3b3;
  border-radius: 4px;
  background-color: #fff;
  font-size: 1.1rem;
}

/* --------------------------------------------
お役立ちコラム 詳細
-------------------------------------------- */
.column {
  background-color: #fff;
  background-image: radial-gradient(#fdedee 4%, transparent 4%);
  background-size: 80px 80px;
}

.column .tt_2_fv {
  margin-bottom: 40px;
}

.column-picture {
  margin-bottom: 44px;
}

.column-picture img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.column-header {
  display: flex;
  gap: 0 30px;
}

.column-date {
  display: inline-flex;
  font-family: "Silkscreen", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: clamp(1.3rem, 1.3vw, 1.6rem);
  line-height: 1;
  text-align: center;
  flex: 0 0 auto;
  flex-direction: column;
}

.column-date__day {
  font-size: clamp(1.6rem, 3vw, 3.2rem);
}

.column-title {
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(2rem, 2.2vw, 2.8rem);
}

.column-tag {
  margin-top: 16px;
}

.column-excerpt {
  font-size: clamp(1.3rem, 1.44vw, 1.8rem);
  line-height: 1.78;
}

.column-body {
  margin: 40px 0;
}

.column-body h2 {
  margin-bottom: 22px;
  padding-bottom: 10px;
  border-bottom: 4px solid #13202f;
  font-family: "Chatwork Sans EB", sans-serif;
  font-size: clamp(2rem, 2.4vw, 3rem);
}

.column-body h2:not(:first-child) {
  margin-top: 40px;
}

.column-body p {
  font-size: clamp(1.3rem, 1.44vw, 1.8rem);
  line-height: 1.78;
}

.column-body h3 {
  margin: 44px 0 20px;
  padding-bottom: 8px;
  border-bottom: 2px solid #13202f;
  font-family: "Chatwork Sans EB", sans-serif;
  font-size: clamp(1.6rem, 2.08vw, 2.6rem);
  line-height: 1.6;
}

.column-body img {
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  max-width: 100%;
  height: auto;
  margin: 24px auto;
}

.column-body #ez-toc-container {
  padding: 24px 30px;
  border: none;
  border-radius: 15px;
  box-shadow: none;
  background-color: #f7f7f7;
}

.column-body .ez-toc-title {
  display: flex !important;
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(1.8rem, 2.08vw, 2.6rem) !important;
  align-items: center;
  gap: 0 20px;
}

.column-body .ez-toc-title::before {
  display: block;
  width: 23px;
  aspect-ratio: 1/1;
  background-image: url(../img/symbol-list.svg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 100% auto;
  content: "";
}

.column-body .ez-toc-list {
  display: flex;
  margin-top: 16px !important;
  flex-direction: column;
  gap: 10px 0;
}

.column-body .ez-toc-link {
  font-size: clamp(1.3rem, 1.36vw, 1.7rem);
}

.column-body .lkc-link {
  display: block;
}

@media screen and (min-width: 769px) {
  .column-body .lkc-link {
    padding: 20px;
  }
}
@media screen and (max-width: 768px) {
  .column-body .lkc-link {
    padding: 12px;
  }
}
.column-body .lkc-card {
  margin: 0;
}

.column-body .lkc-content {
  display: flex;
  height: auto;
  margin-top: 0;
  align-items: center;
  gap: 0 16px;
}

.column-body .lkc-thumbnail {
  margin: 0;
  flex: 0 0 auto;
}

@media screen and (min-width: 769px) {
  .column-body .lkc-thumbnail {
    width: 120px;
    height: 120px;
  }
}
@media screen and (max-width: 768px) {
  .column-body .lkc-thumbnail {
    width: 80px;
    height: 80px;
  }
}
.column-body .lkc-thumbnail img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.column-body .lkc-text {
  flex: 1 1 auto;
}

.column-body .lkc-title-text {
  font-family: "Chatwork Sans B", sans-serif;
}

@media screen and (max-width: 768px) {
  .column-body .lkc-title-text {
    font-size: 14px;
    line-height: 1.4;
  }
}
.column-body .lkc-excerpt {
  display: -webkit-box;
  overflow: hidden;
  line-height: 1.6;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  white-space: normal;
}

.social {
  display: flex;
  margin: 16px 2% 24px;
  justify-content: center;
}

.social-button {
  width: 25%;
}

.social-button a {
  display: flex;
  padding: 5px 0;
  align-items: center;
  justify-content: center;
  transition: 0.3s opacity;
}

.social-button a:hover {
  opacity: 0.7;
}

.-x.social-button a {
  background-color: #191919;
}

.-fb.social-button a {
  background-color: #3b5998;
}

.-hatebu.social-button a {
  background-color: #00a5de;
}

.-line.social-button a {
  background-color: #1dcd00;
}

.social-button img {
  aspect-ratio: 1/1;
  -o-object-fit: contain;
     object-fit: contain;
}

@media screen and (min-width: 769px) {
  .social-button img {
    width: 30px;
  }
}
@media screen and (max-width: 768px) {
  .social-button img {
    width: 20px;
  }
}
#ez-toc-container a:visited {
  color: inherit !important;
}

.button {
  display: flex;
  width: 100%;
  margin: 40px auto;
  justify-content: center;
}

.button-link {
  display: flex;
  width: min(100%, 405px);
  min-height: 74px;
  border-radius: 100vw;
  background-color: #f03748;
  color: #fff;
  font-size: clamp(1.6rem, 1.6vw, 2rem);
  align-items: center;
  justify-content: center;
  transition: 0.3s opacity;
}

.button-link:hover {
  opacity: 0.7;
}

/* --------------------------------------------
お役立ちコラム その他・バナー等
-------------------------------------------- */
.container--huge {
  display: flex;
  width: min(100%, 1200px);
  margin-inline: auto;
  justify-content: space-between;
}

@media screen and (max-width: 768px) {
  .container--huge {
    padding-inline: 4%;
    flex-direction: column;
  }
}
.container--main {
  width: min(100%, 860px);
}

@media screen and (min-width: 769px) {
  .container--sub {
    width: min(100%, 300px);
  }
}
@media screen and (max-width: 768px) {
  .container--sub {
    width: 100%;
    margin-top: 32px;
  }
}
.container--sub > * + * {
  margin-top: 40px;
}

.pickup-column h2 {
  font-family: "Chatwork Sans EB", sans-serif;
  font-size: clamp(1.8rem, 1.76vw, 2.2rem);
  letter-spacing: 0.02em;
}

.pickup-column__list {
  display: flex;
  margin-top: 16px;
  flex-direction: column;
  gap: 16px 0;
}

.pickup-column__item a {
  display: flex;
  align-items: center;
  gap: 0 4%;
  transition: 0.3s opacity;
}

.pickup-column__item a:hover {
  opacity: 0.7;
}

.pickup-column__picture {
  width: 30%;
  aspect-ratio: 1/1;
  flex: 0 0 auto;
}

.pickup-column__picture img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.pickup-column__text {
  display: flex;
  flex-direction: column;
  gap: 4px 0;
}

.pickup-column__text h3 {
  display: -webkit-box;
  overflow: hidden;
  font-family: "Chatwork Sans B", sans-serif;
  font-size: 1.3rem;
  line-height: 1.46;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  white-space: normal;
}

.pickup-column__text time {
  font-size: 1.1rem;
}

.banner.-side {
  text-align: center;
}

.banner.-side a {
  display: block;
}

.banner.-side a img {
  width: 100%;
  max-width: 100%;
}

.banner.-center {
  display: flex;
  margin-top: 40px;
  margin-bottom: 40px;
  justify-content: center;
}

@media screen and (min-width: 769px) {
  .banner.-sticky {
    position: sticky;
    top: 100px;
  }
}
.banner a {
  transition: 0.3s opacity;
}

.banner a:hover {
  opacity: 0.7;
}

.banner img {
  max-width: 100%;
  height: auto;
}

/* --------------------------------------------
料金プラン
-------------------------------------------- */
.price-heading {
  font-family: "Chatwork Sans EB", sans-serif;
  font-size: clamp(2rem, 2.4vw, 3rem);
  text-align: center;
}

@media screen and (min-width: 769px) {
  .price-heading {
    margin-bottom: 45px;
  }
}
@media screen and (max-width: 768px) {
  .price-heading {
    margin-bottom: 20px;
  }
}
@media screen and (min-width: 769px) {
  .price-inner > * + * {
    margin-top: 80px;
  }
}
@media screen and (max-width: 768px) {
  .price-inner > * + * {
    margin-top: 40px;
  }
}
@media screen and (min-width: 769px) {
  .price-plan {
    margin-top: 40px;
  }
}
@media screen and (max-width: 768px) {
  .price-plan {
    margin-top: 20px;
  }
}
.price-plan .pc_plan {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
}

.price-plan .pc_plan i {
  font-family: "Chatwork Sans EB", sans-serif;
  font-size: 150%;
  font-style: normal;
}

.price-plan .pc_plan tr:nth-child(even) {
  background: #f7f7f7;
}

.price-plan .pc_plan th {
  width: 16.66%;
  padding: 25px 5px;
  text-align: center;
  font-size: 20px;
  vertical-align: middle;
  color: #FFF;
}

.price-plan .pc_plan th:nth-child(2) {
  background: #bfbfbf;
}

.price-plan .pc_plan th:nth-child(3) {
  background: #2bb0e9;
}

.price-plan .pc_plan th:nth-child(4) {
  background: #22b396;
}

.price-plan .pc_plan th:nth-child(5) {
  background: #f8ac00;
}

.price-plan .pc_plan th:nth-child(6) {
  background: #c3081b;
}

.price-plan .pc_plan td {
  padding: 25px 10px;
  text-align: center;
  vertical-align: middle;
  font-size: 16px;
}

.price-plan .pc_plan td .btn {
  margin-top: 10px;
}

.price-plan .pc_plan td .btn span {
  font-size: 14px;
  padding: 10px 0;
}

.price-plan .pc_plan td .btn span::after {
  width: 6px;
  right: 10px;
}

.price-plan .sp_plan {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
}

.price-plan .sp_plan i {
  font-family: "Chatwork Sans EB", sans-serif;
  font-size: 130%;
  font-style: normal;
}

.price-plan .sp_plan tr:nth-child(odd) {
  background: #f7f7f7;
}

.price-plan .sp_plan th {
  width: 25%;
  padding: 10px 0px;
  text-align: center;
  font-size: 12px;
  vertical-align: middle;
  color: #FFF;
}

.price-plan .sp_plan th.m0 {
  background: #FFF;
}

.price-plan .sp_plan th.m1 {
  background: #bfbfbf;
}

.price-plan .sp_plan th.m3 {
  background: #2bb0e9;
}

.price-plan .sp_plan th.m6 {
  background: #22b396;
}

.price-plan .sp_plan th.m12 {
  background: #f8ac00;
}

.price-plan .sp_plan th.m_custom {
  background: #c3081b;
}

.price-plan .sp_plan td {
  width: 25%;
  padding: 10px 3px;
  text-align: center;
  vertical-align: middle;
  font-size: 12px;
}

.price-plan .sp_plan td .btn {
  width: 80%;
  margin: 10px auto 0;
}

.price-plan .sp_plan td .btn span {
  font-size: 14px;
  padding: 5px 0;
}

.price-plan__text {
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(1.6rem, 1.92vw, 2.4rem);
  line-height: 1.5;
  text-align: center;
}

@media screen and (min-width: 769px) {
  .price-plan__text {
    margin-top: 40px;
  }
}
@media screen and (max-width: 768px) {
  .price-plan__text {
    margin-top: 24px;
  }
}
@media screen and (min-width: 769px) {
  .price-plan__button {
    margin-top: 40px;
  }
}
.price-service {
  position: relative;
}

@media screen and (min-width: 769px) {
  .price-service {
    padding-block: 80px;
  }
}
@media screen and (max-width: 768px) {
  .price-service {
    padding-block: 40px;
  }
}
.price-service::after {
  position: absolute;
  top: 0;
  left: 50%;
  z-index: -1;
  translate: -50% 0;
  width: 100vw;
  height: 100%;
  background-color: #fff7f7;
  content: "";
}

.price-service__summary {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px 3%;
}

@media screen and (min-width: 769px) {
  .price-service__summary {
    margin-block: 40px;
  }
}
@media screen and (max-width: 768px) {
  .price-service__summary {
    margin-block: 24px;
    flex-direction: column;
  }
}
.price-service__summary::after {
  display: block;
  aspect-ratio: 160/144;
  background-image: url(../img/lp/labor/pht_second_a04_02.png);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 100% auto;
  flex: 0 0 auto;
  content: "";
}

@media screen and (min-width: 769px) {
  .price-service__summary::after {
    width: 15%;
    max-width: 160px;
  }
}
@media screen and (max-width: 768px) {
  .price-service__summary::after {
    width: 45%;
    margin-left: auto;
  }
}
.price-service__summary p {
  position: relative;
  border: 2px solid #f03748;
  border-radius: 16px;
  background-color: #fff;
  font-size: clamp(1.4rem, 1.3vw, 1.6rem);
  line-height: 1.5;
}

@media screen and (min-width: 769px) {
  .price-service__summary p {
    width: 71%;
    padding: 32px 3.75% 32px 7.5%;
  }
}
@media screen and (max-width: 768px) {
  .price-service__summary p {
    padding: 5% 5% 5%;
  }
}
.price-service__summary p::before {
  display: block;
  rotate: -32deg;
  width: 56px;
  height: 34px;
  margin: 0 auto 16px;
  background-image: url(../img/symbol-ticket.svg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 100% auto;
  content: "";
}

@media screen and (min-width: 769px) {
  .price-service__summary p::before {
    position: absolute;
    top: 50%;
    left: 24px;
    translate: 0 -50%;
  }
}
.price-service__title {
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto 16px;
  padding: 20px 40px;
  border-radius: 8px;
  background-color: #fa8591;
  color: #fff;
  font-family: "Chatwork Sans EB", sans-serif;
  font-size: clamp(1.8rem, 1.92vw, 2.4rem);
}

.price-service__picture {
  display: flex;
  margin-inline: auto;
  flex-wrap: wrap;
  justify-content: center;
}

@media screen and (min-width: 769px) {
  .price-service__picture {
    max-width: 900px;
    margin-top: 40px;
    margin-bottom: 64px;
    gap: 64px 4%;
  }
}
@media screen and (max-width: 768px) {
  .price-service__picture {
    margin-top: 24px;
    margin-bottom: 40px;
    gap: 32px 0;
  }
}
.price-service__picture__item {
  text-align: center;
  flex: 1 1 auto;
}

@media screen and (min-width: 769px) {
  .price-service__picture__item {
    width: 48%;
    max-width: 432px;
  }
}
.price-service__picture__item img {
  max-width: 100%;
}

.price-ticket__notes {
  font-size: clamp(1.3rem, 1.2vw, 1.5rem);
  text-align: center;
}

@media screen and (min-width: 769px) {
  .price-ticket__notes {
    margin-top: 30px;
  }
}
@media screen and (max-width: 768px) {
  .price-ticket__notes {
    margin-top: 20px;
  }
}
.price-ticket__picture {
  margin-top: 24px;
  margin-inline: auto;
  text-align: center;
}

@media screen and (min-width: 769px) {
  .price-ticket__picture {
    max-width: 900px;
  }
}
.price-ticket__picture img {
  max-width: 100%;
}

@media screen and (min-width: 769px) {
  .price-faq {
    margin-top: 0;
  }
}
@media screen and (max-width: 768px) {
  .price-faq {
    width: 100%;
    margin: 0;
  }
}
.price-faq .price-heading {
  margin-bottom: 30px;
}

.text-emphasis {
  color: #f03748;
}

.justify-center {
  justify-content: center;
}

/* -------------------------
マルケト最下部のテキストを設定
------------------------- */
.marketo_bottom_text {
  margin-top: 10px;
}

.marketo_bottom_text p {
  margin-bottom: 5px;
  font-size: 10px;
  line-height: 1.2;
}

.marketo_bottom_text p:last-child {
  margin-bottom: 0px;
}

.marketo_bottom_text p a {
  color: #f03748;
  text-decoration: underline;
}

/* ==============================================================================
   pagination.css
   ============================================================================== */
/* --------------------------------------------
variables
-------------------------------------------- */
/* --------------------------------------------
font
-------------------------------------------- */
/* カスタムページングスタイル */
.pagination {
  margin: 104px 0;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .pagination {
    margin: 40px 0 56px;
  }
}
.pagination-list {
  display: inline-flex;
  list-style: none;
  margin: 0;
  padding: 0;
  gap: 18px;
}

@media screen and (max-width: 768px) {
  .pagination-list {
    gap: 14px;
  }
}
.pagination-item {
  display: inline-block;
  width: 38px;
  height: 38px;
}

@media screen and (max-width: 768px) {
  .pagination-item {
    width: 28px;
    height: 28px;
  }
}
.pagination-item a {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 4px;
  width: 100%;
  height: 100%;
  border: 2px solid #13202f;
  color: #13202f;
  background-color: #fff;
  text-align: center;
  transition: all 0.3s ease;
  border-radius: 100vmax;
  font-size: clamp(1.4rem, 1.3vw, 1.6rem);
}

.pagination-item a:hover {
  background: #5e697b;
  border-color: #5e697b;
  color: #fff;
}

.pagination-current a {
  background-color: #13202f;
  color: #fff;
  border-color: #13202f;
}

.pagination-dots {
  padding: 0;
  width: 22px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 3px;
}

@media screen and (max-width: 768px) {
  .pagination-dots {
    width: 14px;
    gap: 2px;
  }
}
.pagination-dots span {
  display: block;
  width: 5px;
  height: 5px;
  border-radius: 100vmax;
  background: #e0e0e0;
}

@media screen and (max-width: 768px) {
  .pagination-dots span {
    width: 3px;
    height: 3px;
  }
}
.pagination-dots:before, .pagination-dots:after {
  content: "";
  display: block;
  width: 5px;
  height: 5px;
  border-radius: 100vmax;
  background: #e0e0e0;
}

@media screen and (max-width: 768px) {
  .pagination-dots:before, .pagination-dots:after {
    width: 3px;
    height: 3px;
  }
}
/* ==============================================================================
   modal.css
   ============================================================================== */
.Modal {
  position: relative;
  width: 700px;
  height: 400px;
  border-radius: 8px;
  border: #13202f solid 3px;
  background-color: #fff;
  padding: 3px;
  margin: 0 auto;
}

.Modal .movie {
  position: relative;
  width: 100%;
}

.Modal .mfp-close {
  background-color: #fff;
  border-radius: 5px;
  top: -49px;
  right: -50px;
  opacity: 1;
}

/* POP-UP__DL */
.pop-up__dl {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.6);
  z-index: 9999;
  display: flex;
  justify-content: center;
  align-items: center;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.4s ease;
}

.pop-up__dl.active {
  opacity: 1;
  pointer-events: auto;
}

.pop-up__dl.active .modal {
  display: block;
  visibility: visible;
}

.pop-up__dl .modal {
  position: relative;
  max-width: 960px;
  cursor: pointer;
  display: block;
  visibility: visible;
}

@media screen and (max-width: 768px) {
  .pop-up__dl .modal {
    max-width: 90%;
  }
}
.pop-up__dl .modal img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.pop-up__dl .modal-close {
  position: absolute;
  top: -32px;
  right: 0px;
  display: flex;
  font-size: 24px;
  padding: 4px;
  color: #fff;
  background: #13202f;
  line-height: 1;
  cursor: pointer;
}

/* ==============================================================================
   price.css
   ============================================================================== */
/* --------------------------------------------
font
-------------------------------------------- */
/* --------------------------------------------
.price (料金プラン)
-------------------------------------------- */
.price {
  font-family: "Inter", sans-serif, "Noto Sans JP", "Hiragino Sans", ヒラギノ角ゴシック, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, Helvetica, Arial, system-ui, sans-serif;
  background-color: #FFFFFF;
  /* --------------------------------------------
  price_fv
  -------------------------------------------- */
}

.price_fv {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  overflow: visible;
  transition: opacity 0.3s ease;
  background-color: #FFFFFF;
  width: 100%;
  margin-inline: calc(50% - 50vw);
}

.price_fv.is_loaded {
  opacity: 1;
}

.price_fv_inner {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-direction: column;
  gap: 16px;
  width: 1440px;
  background-size: 320px 300px;
  background-position: right bottom;
  background-repeat: no-repeat;
  height: auto;
  box-sizing: border-box;
  position: relative;
  height: 300px;
  position: relative;
}

@media (max-width: 1440px) {
  .price_fv_inner {
    width: 100%;
  }
}
@media (max-width: 1024px) {
  .price_fv_inner {
    background-image: none;
  }
}
@media (max-width: 768px) {
  .price_fv_inner {
    height: 144px;
    padding: 16px;
    gap: 4px;
  }
}
@media (max-width: 768px) {
  .price_fv_inner .breadcrumbs {
    display: none;
  }
}
.price_fv_dc {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 24px;
}

.price_fv_title {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 16px;
}

.price_fv_title small {
  font-size: 16px;
  font-weight: 600;
  line-height: 1;
  color: #f03748;
}

.price_fv_title span {
  font-size: clamp(32px, 5vw, 40px);
  font-weight: 600;
  line-height: 1;
  letter-spacing: 2px;
}

.price_fv_discription {
  font-size: 16px;
  font-weight: 600;
  line-height: 1.6;
  text-align: center;
  letter-spacing: 1px;
}

.price {
  /* --------------------------------------------
  price_inquiry
  -------------------------------------------- */
}

.price_inquiry {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  overflow: visible;
  background-color: #FFF7F7;
  width: 100%;
  margin-inline: calc(50% - 50vw);
}

.price_inquiry_inner {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  width: 1440px;
  height: auto;
  box-sizing: border-box;
  position: relative;
  gap: 40px;
  padding: 40px 24px;
}

@media (max-width: 1440px) {
  .price_inquiry_inner {
    width: 100%;
  }
}
.price_inquiry_cta {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
}

@media (max-width: 768px) {
  .price_inquiry_cta {
    flex-direction: column;
  }
}
.price_inquiry_cta a {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 60px;
  gap: 8px;
  padding: 20px 24px;
  border-radius: 100vmax;
  box-sizing: border-box;
  transition: filter 0.3s ease-in-out;
  position: relative;
  width: 382px;
  flex: auto 0 0;
}

@media (max-width: 1024px) {
  .price_inquiry_cta a {
    width: 100%;
    min-width: 248px;
    max-width: 320px;
    justify-content: center;
    height: 50px;
  }
}
.price_inquiry_cta a span {
  font-size: clamp(1.6rem, 1.2vw, 2rem);
  font-weight: 600;
  text-decoration: none;
  letter-spacing: 1px;
}

@media (max-width: 1024px) {
  .price_inquiry_cta a span {
    font-size: 16px;
  }
}
.price_inquiry_cta a:hover {
  filter: brightness(1.4);
}

.price_inquiry_cta a.outline {
  background: #FFFFFF;
  border: 1px solid #f03748;
}

.price_inquiry_cta a.outline span {
  background: #f03748;
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.price_inquiry_cta a.outline:hover {
  border-color: #f03748;
}

.price_inquiry_cta a.grd {
  background: #f03748;
}

.price_inquiry_cta a.grd span {
  color: #FFFFFF;
}

.price_inquiry_text {
  font-size: 16px;
  font-weight: 600;
  line-height: 1.6;
  text-align: center;
  letter-spacing: 1px;
}

.price_inquiry_text b {
  color: #f03748;
  font-weight: 600;
}

.price {
  /* --------------------------------------------
  price_main
  -------------------------------------------- */
}

.price_main_inner {
  max-width: 1440px;
  margin: 0 auto;
  width: 100%;
  padding-top: 80px;
  padding-bottom: 80px;
  padding-left: clamp(24px, 5vw, 80px);
  padding-right: clamp(24px, 5vw, 80px);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 40px;
}

@media (max-width: 1024px) {
  .price_main_inner {
    padding-top: 40px;
    padding-bottom: 80px;
    gap: 24px;
  }
}
.price_main_panel {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}

.price_main_panel_group {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}

.price_main_panel_title {
  font-size: 32px;
  font-weight: 600;
  line-height: 1.4;
  color: #13202f;
  text-align: center;
  letter-spacing: 2px;
  margin-right: -2px;
}

@media (max-width: 798px) {
  .price_main_panel_title {
    letter-spacing: 2px;
    margin-right: -2px;
  }
}
.price_main_panel_title b {
  font-weight: 600;
  color: #f03748;
}

.price_main_panel_title strong {
  font-size: 40px;
  font-weight: 600;
  color: #f03748;
}

.price_main_panel_title sup {
  font-size: 14px;
  font-weight: 400;
  line-height: 1;
  top: -14px;
}

.price_main_panel_description {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.6;
  color: #13202f;
  text-align: center;
  letter-spacing: 1px;
}

@media (max-width: 1024px) {
  .price_main_panel_description {
    text-align: justify;
    text-justify: inter-ideograph;
    overflow-wrap: break-word;
    word-break: normal;
  }
}
.price_main_content {
  width: 100%;
  box-sizing: border-box;
}

.price_main_content_title {
  font-size: 20px;
  font-weight: 600;
  line-height: 1;
  color: #f03748;
  margin-bottom: 24px;
}

.price_main_board {
  width: 100%;
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  gap: 40px;
  width: 100%;
  box-sizing: border-box;
}

@media (max-width: 1280px) {
  .price_main_board {
    gap: 0;
  }
}
@media screen and (max-width: 960px) {
  .price_main_board {
    flex-direction: column;
    gap: 24px;
  }
}
.price_main_board.top .price_main_board_item {
  border: 4px solid #FFFFFF;
}

.price_main_board.top .price_main_board_item_body {
  border-color: #FFFFFF;
}

.price_main_board_item {
  box-sizing: border-box;
  width: 400px;
  min-height: 224px;
  height: auto;
  background: #FFFFFF;
  border-radius: 20px;
  padding: 0;
  overflow: hidden;
  align-self: stretch;
  display: flex;
  flex-direction: column;
}

@media (max-width: 1280px) {
  .price_main_board_item {
    width: 32%;
    flex: auto 0 0;
  }
}
@media screen and (max-width: 960px) {
  .price_main_board_item {
    width: 100%;
  }
}
.price_main_board_item_head {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #f03748;
  padding: 12px 16px 8px 16px;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.2;
  color: #FFFFFF;
  letter-spacing: 1px;
  height: 76px;
  text-align: center;
}

.price_main_board_item_head strong {
  font-size: 40px;
  font-weight: 600;
  color: #FFFFFF;
  letter-spacing: 1px;
}

@media (max-width: 1024px) {
  .price_main_board_item_head strong {
    font-size: 32px;
  }
}
@media screen and (max-width: 960px) {
  .price_main_board_item_head strong {
    font-size: 40px;
  }
}
.price_main_board_item_head b {
  font-size: 24px;
  font-weight: 600;
  color: #FFFFFF;
  letter-spacing: 1px;
}

.price_main_board_item_head span {
  font-size: 20px;
  font-weight: 600;
  color: #FFFFFF;
  letter-spacing: 1px;
}

.price_main_board_item_body {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 12px;
  flex: 1;
  min-height: 0;
  border-bottom: 5px solid #f03748;
  border-left: 5px solid #f03748;
  border-right: 5px solid #f03748;
  border-radius: 0 0 20px 20px;
  padding: 24px 0;
}

.price_main_board_item_body_main {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

.price_main_board_item_body_main span {
  font-size: 48px;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 1px;
  font-family: "Inter", sans-serif;
  background: #f03748;
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

@media (max-width: 1024px) {
  .price_main_board_item_body_main span {
    font-size: 40px;
  }
}
@media screen and (max-width: 960px) {
  .price_main_board_item_body_main span {
    font-size: 48px;
  }
}
.price_main_board_item_body_main strong {
  font-size: 64px;
  font-weight: 900;
  line-height: 1;
  letter-spacing: 1px;
  font-family: "Inter", sans-serif;
  background: #f03748;
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

@media (max-width: 1024px) {
  .price_main_board_item_body_main strong {
    font-size: 40px;
  }
}
@media screen and (max-width: 960px) {
  .price_main_board_item_body_main strong {
    font-size: 48px;
  }
}
.price_main_board_item_body_main small {
  font-size: 20px;
  font-weight: 500;
  line-height: 1;
  color: #13202f;
  letter-spacing: 1px;
}

@media (max-width: 1024px) {
  .price_main_board_item_body_main small {
    font-size: 16px;
  }
}
@media screen and (max-width: 960px) {
  .price_main_board_item_body_main small {
    font-size: 20px;
  }
}
.price_main_board_item_body_supple {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 100vmax;
  background: #F8F8F8;
  padding: 8px 16px;
}

.price_main_board_item_body_supple span {
  font-size: 16px;
  font-weight: 400;
  line-height: 1;
  color: #13202f;
  letter-spacing: 1px;
}

.price_main_board_item_body_text {
  display: block;
  padding: 0 24px;
}

.price_main_board_item_body_text span {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.6;
  text-align: justify;
  letter-spacing: 1px;
}

.price_main_board_flow {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  gap: 10px;
  box-sizing: border-box;
  padding: 0;
}

@media screen and (max-width: 1280px) {
  .price_main_board_flow {
    flex-direction: column;
    padding: 0;
    gap: 24px;
  }
}
.price_main_board_flow_item {
  box-sizing: border-box;
  width: 100%;
  flex: auto 0;
  border-radius: 20px;
  display: flex;
  flex-direction: column;
  padding: 40px;
  box-sizing: border-box;
  gap: 24px;
  position: relative;
  overflow: inherit;
  background: #FFF7F7;
}

@media screen and (max-width: 1440px) {
  .price_main_board_flow_item {
    padding: 24px 40px 40px;
  }
}
@media screen and (min-width: 1280px) {
  .price_main_board_flow_item {
    box-shadow: none;
    padding: 8px 8px 24px;
  }
}
@media screen and (max-width: 768px) {
  .price_main_board_flow_item {
    padding: 16px 16px 20px;
  }
}
.price_main_board_flow_item:after {
  content: "";
  display: block;
  width: 28px;
  height: 12px;
  background-color: #f03748;
  clip-path: polygon(50% 0%, 100% 100%, 0% 100%);
  position: absolute;
  bottom: 50%;
  right: -20px;
  transform: translateY(50%) rotate(90deg);
}

@media screen and (max-width: 1280px) {
  .price_main_board_flow_item:after {
    width: 28px;
    height: 12px;
    right: 50%;
    bottom: -18px;
    transform: translateX(50%) rotate(180deg);
  }
}
.price_main_board_flow_item:last-child:after {
  display: none;
}

.price_main_board_flow_item_head figure {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 40px;
}

@media screen and (max-width: 768px) {
  .price_main_board_flow_item_head figure {
    gap: 16px;
  }
}
.price_main_board_flow_item_head figure img {
  width: 150px;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
}

.price_main_board_flow_item_head figure figcaption {
  font-size: 20px;
  font-weight: 700;
  line-height: 1;
  margin: 0;
}

.price_main_board_flow_item_body {
  padding: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  flex: 1;
}

@media screen and (max-width: 768px) {
  .price_main_board_flow_item_body {
    align-items: flex-start;
  }
}
.price_main_board_flow_item_list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: inline-flex;
  flex-direction: column;
  gap: 12px;
}

.price_main_board_flow_item_list li {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 6px;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.4;
  position: relative;
}

.price_main_board_flow_item_list li::before {
  content: "";
  display: inline-block;
  width: 16px;
  height: 16px;
  background-image: url("../img/icon/ico_check.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  flex: auto 0 0;
  margin-top: 4px;
}

.price_main_cta {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 40px;
}

@media (max-width: 1024px) {
  .price_main_cta {
    gap: 24px;
  }
}
.price_main_cta_description {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  padding: 24px;
  width: 800px;
  background: #FFF7F7;
  border-radius: 20px;
}

@media (max-width: 1024px) {
  .price_main_cta_description {
    width: 100%;
  }
}
@media (max-width: 768px) {
  .price_main_cta_description {
    flex-direction: column;
  }
}
.price_main_cta_description img {
  width: 106px;
  height: 96px;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: top;
     object-position: top;
}

.price_main_cta_description span {
  font-size: clamp(16px, 2vw, 24px);
  font-weight: 600;
  line-height: 1.6;
  color: #13202f;
  letter-spacing: 1px;
}

.price_main_cta_btn {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 60px;
  gap: 8px;
  padding: 20px 24px;
  border-radius: 100vmax;
  box-sizing: border-box;
  transition: filter 0.3s ease-in-out;
  position: relative;
  width: 382px;
  flex: auto 0 0;
  background: #f03748;
}

@media (max-width: 1024px) {
  .price_main_cta_btn {
    width: 100%;
    min-width: 248px;
    max-width: 320px;
    justify-content: center;
    height: 50px;
  }
}
.price_main_cta_btn span {
  font-size: clamp(1.6rem, 1.2vw, 2rem);
  font-weight: 600;
  text-decoration: none;
  letter-spacing: 1px;
  color: #FFFFFF;
}

@media (max-width: 1024px) {
  .price_main_cta_btn span {
    font-size: 16px;
  }
}
.price_main_cta_btn:hover {
  filter: brightness(1.4);
}

.price_main_note {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.6;
  text-align: left;
  letter-spacing: 1px;
  position: relative;
  text-align: justify;
}

@media (max-width: 768px) {
  .price_main_note {
    display: flex;
    gap: 4px;
  }
}
.price_main_note:before {
  content: "※";
  display: inline-block;
  position: absolute;
  left: -20px;
  top: -20px;
}

@media (max-width: 768px) {
  .price_main_note:before {
    position: static;
  }
}
.price {
  /* --------------------------------------------
  price_tab
  -------------------------------------------- */
}

.price_tab {
  width: 100%;
  display: block;
  padding: 0 0 0;
  box-sizing: border-box;
}

.price_tab_box {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 40px;
  width: 100%;
}

@media (max-width: 1024px) {
  .price_tab_box {
    gap: 24px;
  }
}
.price_tab .tab_btns {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  border-bottom: 1px solid #f03748;
}

@media (max-width: 1024px) {
  .price_tab .tab_btns {
    border: none;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
    position: relative;
    border-bottom: 1px solid #f03748;
    padding-bottom: 32px;
  }
  .price_tab .tab_btns::after {
    content: "";
    position: absolute;
    bottom: -32px;
    left: 50%;
    width: 80px;
    height: 32px;
    transform: translateX(-50%) rotate(180deg);
    background: #f03748;
    clip-path: polygon(50% 13.4%, 100% 100%, 0% 100%);
  }
}
.price_tab .tab_btns button {
  padding: 8px 12px;
  border-radius: 4px 4px 0 0;
  background: #FFF7F7;
  font-size: clamp(14px, 1.5vw, 16px);
  letter-spacing: 0;
  line-height: 1;
  font-weight: 600;
  width: clamp(120px, 15vw, 200px);
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
}

@media (max-width: 1024px) {
  .price_tab .tab_btns button {
    border-radius: 4px;
    width: 100%;
    padding: 8px 0px;
  }
}
.price_tab .tab_btns button.is-active {
  background: #f03748;
  color: #FFFFFF;
}

.price_tab .tab_panels {
  padding: 64px 0 0;
  box-sizing: border-box;
}

@media screen and (max-width: 1024px) {
  .price_tab .tab_panels {
    padding: 48px 0 0;
  }
}
/*
============================================================

Tab

============================================================
*/
.tab_panel {
  display: none;
  opacity: 0;
  transition: opacity 0.25s ease;
}

.tab_panel.is-active {
  display: block;
  opacity: 1;
}

/* ==============================================================================
   global.css
   ============================================================================== */
/* --------------------------------------------
variables
-------------------------------------------- */
/* --------------------------------------------
font
-------------------------------------------- */
/* --------------------------------------------
icons
-------------------------------------------- */
/*
============================================================

アイコン（SVG Data URI）

アイコン使用例:
&::after {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  background-color: v.$tx_blue;
  mask: var(--icon-arrow) no-repeat center;
  -webkit-mask: var(--icon-arrow) no-repeat center;
  mask-size: contain;
  -webkit-mask-size: contain;
}

============================================================
*/
:root {
  /* アイコン（SVG Data URI） */
  --icon-arrow: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11.4287 2.92873C11.8191 2.5383 12.4522 2.5385 12.8428 2.92873L19.207 9.29299C19.5976 9.68351 19.5976 10.3165 19.207 10.707L12.8428 17.0713C12.4522 17.4615 11.8191 17.4617 11.4287 17.0713C11.0383 16.6809 11.0385 16.0478 11.4287 15.6572L16.0859 11L1.5 11C0.947716 11 0.500001 10.5523 0.500001 10C0.500001 9.44774 0.947716 9.00002 1.5 9.00002L16.0859 9.00002L11.4287 4.34279C11.0385 3.95224 11.0383 3.31916 11.4287 2.92873Z' fill='white'/%3E%3C/svg%3E");
  --icon-home: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8.67981 0.267214C8.29536 -0.0890712 7.70151 -0.0890712 7.32019 0.267214L0.31897 6.76785C0.018918 7.04913 -0.0810995 7.48354 0.0689267 7.86483C0.218953 8.24612 0.584642 8.49927 0.997214 8.49927H1.4973V13.9998C1.4973 15.103 2.39433 16 3.49765 16H12.4992C13.6025 16 14.4996 15.103 14.4996 13.9998V8.49927H14.9997C15.4122 8.49927 15.781 8.24612 15.9311 7.86483C16.0811 7.48354 15.9811 7.046 15.681 6.76785L8.67981 0.267214ZM7.49835 9.99941H8.49852C9.32679 9.99941 9.99879 10.6714 9.99879 11.4996V14.4999H5.99809V11.4996C5.99809 10.6714 6.67008 9.99941 7.49835 9.99941Z' fill='white'/%3E%3C/svg%3E");
  --icon-arw: url("data:image/svg+xml,%3Csvg width='8' height='8' viewBox='0 0 8 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2.3473 0.996285C2.53949 0.803322 2.85042 0.803322 3.04261 0.996285L5.65589 3.62128C5.75908 3.72497 5.80411 3.86349 5.79651 3.99921C5.80454 4.13539 5.75943 4.27406 5.65589 4.37812L3.04261 7.0041C2.85048 7.19673 2.53943 7.19673 2.3473 7.0041C2.15507 6.81094 2.15507 6.49706 2.3473 6.3039L4.63929 3.99921L2.3473 1.6955C2.15507 1.50235 2.15507 1.18944 2.3473 0.996285Z' fill='white'/%3E%3C/svg%3E");
  --icon-mail: url("data:image/svg+xml,%3Csvg width='24' height='19' viewBox='0 0 24 19' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0_839_9305)'%3E%3Cpath d='M21 0H3C1.345 0 0 1.38135 0 3.08108V15.9189C0 17.6186 1.345 19 3 19H21C22.655 19 24 17.6186 24 15.9189V3.08108C24 1.38135 22.655 0 21 0ZM3 1.54054H21C21.135 1.54054 21.2625 1.56108 21.3875 1.59446L13.06 10.147C12.7775 10.4372 12.4 10.5989 12 10.5989C11.6 10.5989 11.2225 10.4397 10.94 10.147L2.6125 1.59446C2.735 1.56108 2.865 1.54054 3 1.54054ZM22.5 15.9189C22.5 16.7688 21.8275 17.4595 21 17.4595H3C2.1725 17.4595 1.5 16.7688 1.5 15.9189V3.08108C1.5 2.94243 1.52 2.81149 1.5525 2.68311L9.88 11.2357C10.465 11.8365 11.2325 12.1369 12 12.1369C12.7675 12.1369 13.5375 11.8365 14.12 11.2357L22.4475 2.68311C22.48 2.80892 22.5 2.94243 22.5 3.08108V15.9189Z' fill='%230A5AEB'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_839_9305'%3E%3Crect width='24' height='19' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");
  --icon-doc: url("data:image/svg+xml,%3Csvg width='21' height='24' viewBox='0 0 21 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0_839_9295)'%3E%3Cpath d='M5.35756 6.63824H8.0607C8.46605 6.63824 8.79326 6.29611 8.79326 5.87228C8.79326 5.44845 8.46605 5.10632 8.0607 5.10632H5.35756C4.95221 5.10632 4.625 5.44845 4.625 5.87228C4.625 6.29611 4.95221 6.63824 5.35756 6.63824Z' fill='white'/%3E%3Cpath d='M12.6988 9.70215H5.37318C4.96783 9.70215 4.64062 10.0443 4.64062 10.4681C4.64062 10.8919 4.96783 11.2341 5.37318 11.2341H12.6988C13.1041 11.2341 13.4313 10.8919 13.4313 10.4681C13.4313 10.0443 13.1041 9.70215 12.6988 9.70215Z' fill='white'/%3E%3Cpath d='M12.6988 14.2979H5.37318C4.96783 14.2979 4.64062 14.64 4.64062 15.0638C4.64062 15.4876 4.96783 15.8298 5.37318 15.8298H12.6988C13.1041 15.8298 13.4313 15.4876 13.4313 15.0638C13.4313 14.64 13.1041 14.2979 12.6988 14.2979Z' fill='white'/%3E%3Cpath d='M11.2887 0.0693162C11.2887 0.0693162 11.2667 0.0591035 11.2545 0.0539971C11.2155 0.0386779 11.174 0.0233588 11.1324 0.0156992C11.0909 0.00803962 11.047 0.00293324 11.003 0.00293324C10.9981 0.00293324 10.9933 0.00293324 10.9884 0.00293324H2.93023C1.31372 0.00038005 0 1.374 0 3.06421V17.8727C0 19.5629 1.31372 20.9366 2.93023 20.9366H15.1395C16.756 20.9366 18.0698 19.5629 18.0698 17.8727V7.40463C18.0698 7.40463 18.0698 7.39442 18.0698 7.38932C18.0698 7.34336 18.0649 7.29995 18.0576 7.254C18.0502 7.21059 18.0356 7.16974 18.0209 7.12889C18.016 7.11612 18.0112 7.10591 18.0063 7.09315C17.9941 7.06251 17.9794 7.03442 17.9623 7.00378C17.955 6.99357 17.9501 6.98081 17.9428 6.97059C17.9184 6.93229 17.8915 6.89655 17.8598 6.86591L11.506 0.225061C11.4743 0.191869 11.4401 0.163784 11.4059 0.138252C11.3962 0.130593 11.384 0.125486 11.3742 0.117827C11.3473 0.0999545 11.318 0.0846354 11.2887 0.0693162ZM15.1395 19.4046H2.93023C2.12198 19.4046 1.46512 18.7178 1.46512 17.8727V3.06421C1.46512 2.2191 2.12198 1.53229 2.93023 1.53229H10.2558V5.10676C10.2558 6.79698 11.5695 8.17059 13.186 8.17059H16.6047V17.8727C16.6047 18.7178 15.9478 19.4046 15.1395 19.4046ZM15.5693 6.63868H13.186C12.3778 6.63868 11.7209 5.95187 11.7209 5.10676V2.61485L15.5693 6.63868Z' fill='white'/%3E%3Cpath d='M5.56068 24.0004H15.8727C18.7003 24.0004 21.0006 21.5953 21.0006 18.6387V9.9349C21.0006 9.51107 20.6734 9.16895 20.268 9.16895C19.8627 9.16895 19.5355 9.51107 19.5355 9.9349V18.6387C19.5355 20.7502 17.8921 22.4685 15.8727 22.4685H5.56068C5.15533 22.4685 4.82812 22.8106 4.82812 23.2345C4.82812 23.6583 5.15533 24.0004 5.56068 24.0004Z' fill='white'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_839_9295'%3E%3Crect width='21' height='24' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");
  --icon-cross: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8' fill='none'%3E%3Cpath d='M1 5.0001L4.00061 1.99949' stroke='%230A5AEB' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='M7 5.0001L3.99939 1.99949' stroke='%230A5AEB' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
  --icon-close: url("data:image/svg+xml,%3Csvg%20width%3D%2244%22%20height%3D%2244%22%20viewBox%3D%220%200%2044%2044%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cline%20x1%3D%2215.1213%22%20y1%3D%2214%22%20x2%3D%2229.9706%22%20y2%3D%2228.8492%22%20stroke%3D%22url%28%23paint0_linear_181_56418%29%22%20stroke-width%3D%223%22%20stroke-linecap%3D%22round%22%2F%3E%3Cline%20x1%3D%221.5%22%20y1%3D%22-1.5%22%20x2%3D%2222.5%22%20y2%3D%22-1.5%22%20transform%3D%22matrix%28-0.707107%200.707107%200.707107%200.707107%2032%2014%29%22%20stroke%3D%22url%28%23paint1_linear_181_56418%29%22%20stroke-width%3D%223%22%20stroke-linecap%3D%22round%22%2F%3E%3Cdefs%3E%3ClinearGradient%20id%3D%22paint0_linear_181_56418%22%20x1%3D%2214%22%20y1%3D%2222.5%22%20x2%3D%2231.5%22%20y2%3D%2222.5%22%20gradientUnits%3D%22userSpaceOnUse%22%3E%3Cstop%20stop-color%3D%22%232498FF%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%23165B99%22%2F%3E%3C%2FlinearGradient%3E%3ClinearGradient%20id%3D%22paint1_linear_181_56418%22%20x1%3D%2219.5815%22%20y1%3D%22-6.58148%22%20x2%3D%226.85355%22%20y2%3D%226.14645%22%20gradientUnits%3D%22userSpaceOnUse%22%3E%3Cstop%20stop-color%3D%22%232498FF%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%23165B99%22%2F%3E%3C%2FlinearGradient%3E%3C%2Fdefs%3E%3C%2Fsvg%3E");
}

/* --------------------------------------------
animation
-------------------------------------------- */
/* --------------------------------------------
アニメーション
-------------------------------------------- */
@keyframes logo-slide {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}
@keyframes slideUp {
  from {
    transform: translateY(100%);
  }
  to {
    transform: translateY(0);
  }
}
@keyframes slideUpFromBottom {
  from {
    transform: translateY(120%);
  }
  to {
    transform: translateY(0);
  }
}
@keyframes fadeIn_service_fv_form {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeIn_top_company_logo {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
main {
  padding-top: 82px;
}

@media (max-width: 1024px) {
  main {
    padding-top: 60px;
  }
}
/* --------------------------------------------
cta_btn
-------------------------------------------- */
.cta_btn {
  display: flex;
  align-items: center;
  justify-content: center;
  height: clamp(40px, 4vw, 50px);
  gap: 8px;
  padding: 16px;
  border-radius: 100vmax;
  box-sizing: border-box;
  transition: filter 0.3s ease-in-out;
  position: relative;
  background: #ED3748;
}

.cta_btn span {
  color: #fff;
}

@media (max-width: 1024px) {
  .cta_btn {
    width: 100%;
    width: 250px;
    justify-content: center;
    height: 60px;
  }
}
.cta_btn span {
  font-size: clamp(1.3rem, 1.2vw, 1.6rem);
  font-weight: 600;
  text-decoration: none;
  letter-spacing: 0;
}

@media (max-width: 1024px) {
  .cta_btn span {
    font-size: 16px;
  }
}
.cta_btn:hover {
  filter: brightness(1.4);
}

.cta_btn.outline {
  background: #fff;
  border: 1px solid #ED3748;
}

.cta_btn.outline span {
  background: #ED3748;
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.cta_btn.outline:hover {
  border-color: #ED3748;
}

.cta_btn.big {
  width: 100%;
  padding: 20px 24px;
  height: 60px;
  flex: 1 0 0;
}

.cta_btn.big span {
  font-size: clamp(1.6rem, 1.2vw, 2rem);
}

@media (max-width: 1024px) {
  .cta_btn.big span {
    font-size: 16px;
  }
}
/* --------------------------------------------
modal_click
-------------------------------------------- */
.modal_click-btn {
  cursor: pointer;
  text-decoration: none;
  -webkit-tap-highlight-color: transparent;
}

.modal_click-btn:hover .sec_problem_item_btn_icon {
  background-color: #f03748;
}

.modal_click-btn:hover .sec_problem_item_btn_icon::before, .modal_click-btn:hover .sec_problem_item_btn_icon::after {
  background-color: #fff;
}

.modal_click-elm {
  padding: 16px;
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}

.modal_click-elm::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.8);
  backdrop-filter: blur(3px);
}

.modal_click-elm.active {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.modal_click-close {
  z-index: 2;
  cursor: pointer;
  text-decoration: none;
  -webkit-tap-highlight-color: transparent;
  position: absolute;
  top: 16px;
  right: 16px;
  background: #f03748;
  border-radius: 100vmax;
  width: 44px;
  height: 44px;
  border: 2px solid #f03748;
  transition: background-color 0.3s ease;
}

@media (max-width: 768px) {
  .modal_click-close {
    top: 16px;
    right: 12px;
  }
}
.modal_click-close::after {
  content: "";
  display: inline-block;
  width: 100%;
  height: 100%;
  background-color: #fff;
  mask: var(--icon-close) no-repeat center;
  -webkit-mask: var(--icon-close) no-repeat center;
  mask-size: contain;
  -webkit-mask-size: contain;
  transition: background-color 0.3s ease;
}

.modal_click-close:hover {
  background-color: #fff;
}

.modal_click-close:hover::after {
  background-color: #f03748;
  transition: background-color 0.3s ease;
}

.modal_click-contents {
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 2;
}

.modal_click-sec {
  position: relative;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: none;
  scrollbar-width: none;
  height: -moz-fit-content;
  height: fit-content;
  max-height: 100%;
}

.modal_click-sec::-webkit-scrollbar {
  display: none;
}

.modal_click-sec {
  background: #fff;
  border-radius: 20px;
}

@media (max-width: 1440px) {
  .modal_click-sec {
    border-radius: 8px;
  }
}
.modal_click-sec-inner {
  min-width: 900px;
  width: 100%;
  padding: 80px 40px;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  gap: 24px;
}

@media (max-width: 1024px) {
  .modal_click-sec-inner {
    min-width: 100%;
    padding: 64px 16px 40px;
  }
}
.modal_click-sec-title {
  font-size: 24px;
  font-weight: 600;
  line-height: 1.4;
  border-bottom: 1px solid #f03748;
  padding-bottom: 24px;
}

.modal_click-sec-title b {
  color: #f03748;
  font-weight: 600;
}

.modal_click-sec-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: inline-flex;
  flex-direction: column;
  gap: 12px;
}

.modal_click-sec-list li {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 6px;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.4;
  position: relative;
}

.modal_click-sec-list li::before {
  content: "";
  display: inline-block;
  width: 16px;
  height: 16px;
  background-image: url("../img/icon/ico_check.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  flex: auto 0 0;
  margin-top: 4px;
}

/* --------------------------------------------
ヘッダー
-------------------------------------------- */
.hdr {
  font-family: "Noto Sans JP", sans-serif;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 100;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 24px;
  height: 82px;
  background: rgba(255, 255, 255, 0.9);
  backdrop-filter: blur(30px);
  -webkit-backdrop-filter: blur(30px);
}

@media (max-width: 1024px) {
  .hdr {
    height: 60px;
    padding: 16px 16px 16px 16px;
  }
}
.hdr::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
  z-index: 99;
  display: none;
}

@media (max-width: 1024px) {
  .hdr::before {
    display: block;
  }
}
.hdr {
  /* --------------------------------------------
  バーガーメニュー
  -------------------------------------------- */
}

.hdr .bgr {
  display: none;
}

@media (max-width: 1024px) {
  .hdr .bgr {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 24px;
    height: -moz-fit-content;
    height: fit-content;
    padding: 0;
    background: transparent;
    border: none;
    cursor: pointer;
    z-index: 100;
    gap: 5px;
  }
  .hdr .bgr span {
    display: block;
    width: 24px;
    height: 3px;
    border-radius: 100vmax;
    transition: all 0.3s ease;
    transform-origin: center;
    background-color: #f03748;
  }
  .hdr .bgr[aria-expanded=true] span:nth-child(1) {
    transform: translateY(8px) rotate(45deg);
  }
  .hdr .bgr[aria-expanded=true] span:nth-child(2) {
    opacity: 0;
  }
  .hdr .bgr[aria-expanded=true] span:nth-child(3) {
    transform: translateY(-8px) rotate(-45deg);
  }
}
.hdr {
  /* --------------------------------------------
  ロゴ
  -------------------------------------------- */
}

.hdr_logo {
  display: flex;
  align-items: center;
  gap: 24px;
  z-index: 100;
}

@media screen and (max-width: 1024px) {
  .hdr_logo {
    gap: 16px;
  }
}
.hdr_logo_main {
  width: clamp(128px, 16vw, 220px);
  height: auto;
  display: inline-block;
}

.hdr_logo_main img {
  width: 100%;
  height: auto;
}

.hdr_logo_jpx {
  display: inline-block;
}

@media screen and (max-width: 1440px) {
  .hdr_logo_jpx {
    display: none;
  }
}
@media screen and (max-width: 960px) {
  .hdr_logo_jpx {
    display: inline-block;
  }
}
.hdr_logo_jpx figure {
  display: flex;
  align-items: center;
  gap: 16px;
}

@media screen and (max-width: 1024px) {
  .hdr_logo_jpx figure {
    gap: 8px;
  }
}
.hdr_logo_jpx figure img {
  width: 46px;
  height: 52px;
}

@media screen and (max-width: 1024px) {
  .hdr_logo_jpx figure img {
    width: 25px;
    height: 28px;
  }
}
.hdr_logo_jpx figure figcaption {
  font-size: clamp(8px, 2vw, 10px);
  display: inline-block;
  line-height: 1.6;
}

/* --------------------------------------------
メガメニュー（PC）
-------------------------------------------- */
.megamenu {
  display: flex;
  align-items: center;
  align-self: stretch;
  gap: 24px;
}

@media (max-width: 1024px) {
  .megamenu {
    display: none;
  }
}
.megamenu ul {
  display: flex;
  align-items: center;
  height: 100%;
  gap: 24px;
}

.megamenu ul li {
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

.megamenu ul li a {
  font-size: clamp(1.3rem, 1.2vw, 1.6rem);
  font-weight: 600;
  text-decoration: none;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  transition: color 0.6s ease-in-out;
}

.megamenu ul li a:hover {
  color: #f03748;
}

.megamenu ul li:not(.megamenu-item) a::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  height: 2px;
  background-color: #f03748;
  transition: width 0.3s ease-in-out;
  opacity: 0;
}

.megamenu ul li:not(.megamenu-item) a:hover::after, .megamenu-item:hover .megamenu ul li:not(.megamenu-item) a::after {
  width: 100%;
  opacity: 1;
}

.megamenu-item {
  position: relative;
}

.megamenu-item:hover .megamenu-trigger::before {
  width: 100%;
  opacity: 1;
}

.megamenu-item .megamenu-trigger {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
}

.megamenu-item .megamenu-trigger::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  height: 2px;
  background-color: #f03748;
  transition: width 0.3s ease-in-out;
  opacity: 0;
}

.megamenu-item .megamenu-trigger::after {
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  background-color: #13202f;
  mask: var(--icon-cross) no-repeat center;
  -webkit-mask: var(--icon-cross) no-repeat center;
  mask-size: contain;
  -webkit-mask-size: contain;
  margin-left: 4px;
  transition: transform 0.3s ease;
  flex-shrink: 0;
  transform: rotate(180deg);
}

.megamenu-item:hover .megamenu-trigger::after {
  transform: rotate(0deg);
  background-color: #f03748;
}

.megamenu-item .megamenu-dropdown {
  position: fixed;
  /* top は JavaScript で動的に設定 */
  left: 50%;
  transform: translateX(-50%);
  background-color: #fff;
  border-radius: 20px;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);
  padding: 0 0;
  width: -moz-max-content;
  width: max-content;
  max-width: 1280px;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.3s ease;
  z-index: 9999;
}

.megamenu-item .megamenu-dropdown-body {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 48px;
  padding: 40px;
}

.megamenu-item .megamenu-dropdown-body_title {
  display: flex;
  flex-direction: column;
  gap: 0;
  flex: auto 0 0;
}

.megamenu-item .megamenu-dropdown-body_title_main {
  display: flex;
  flex-direction: column;
  gap: 8px;
  flex: auto 0 0;
  margin-bottom: 80px;
}

.megamenu-item .megamenu-dropdown-body_title_main strong {
  font-size: 32px;
  font-weight: 600;
  line-height: 1;
}

.megamenu-item .megamenu-dropdown-body_title_main small {
  font-size: 16px;
  font-weight: 600;
  line-height: 1;
}

.megamenu-item .megamenu-dropdown-body_links {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
}

.megamenu-item .megamenu-dropdown-body_links_item {
  display: flex;
  align-items: center;
  gap: 16px;
  width: clamp(380px, 30vw, 504px);
}

.megamenu-item .megamenu-dropdown-body_links_item a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  background: rgba(240, 55, 72, 0.05);
  border-radius: 20px;
  padding: 20px 20px 12px;
  width: 100%;
  transition: opacity 0.3s ease-in-out, color 0.6s ease-in-out, background 0.4s ease-in-out;
}

@container (min-width: 400px) {
  .megamenu-item .megamenu-dropdown-body_links_item a {
    min-width: 252px;
  }
}
.megamenu-item .megamenu-dropdown-body_links_item a:hover {
  background: rgba(240, 55, 72, 0.08);
}

.megamenu-item .megamenu-dropdown-body_links_item a .icon {
  display: flex;
  background: #fff;
  align-items: center;
  justify-content: center;
  border: 1px solid #f03748;
  border-radius: 100vmax;
  transition: all 0.3s ease;
  padding: 9px;
}

.megamenu-item .megamenu-dropdown-body_links_item a .icon::after {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  background-color: #f03748;
  mask: var(--icon-arrow) no-repeat center;
  -webkit-mask: var(--icon-arrow) no-repeat center;
  mask-size: contain;
  -webkit-mask-size: contain;
  transition: all 0.3s ease;
}

.megamenu-item .megamenu-dropdown-body_links_item a:hover .icon {
  background: #f03748;
}

.megamenu-item .megamenu-dropdown-body_links_item a:hover .icon::after {
  background-color: #fff;
}

.megamenu-item .megamenu-dropdown-body_links_item_main {
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: 16px;
  width: -moz-max-content;
  width: max-content;
}

.megamenu-item .megamenu-dropdown-body_links_item_main figure {
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  gap: 12px;
}

.megamenu-item .megamenu-dropdown-body_links_item_main img {
  width: auto;
  height: 40px;
  -o-object-fit: cover;
     object-fit: cover;
}

.megamenu-item .megamenu-dropdown-body_links_item_main figcaption {
  font-size: clamp(1.2rem, 1.2vw, 1.6rem);
  font-weight: 600;
  line-height: 1;
  margin-bottom: 6px;
}

.megamenu-item:hover .megamenu-dropdown {
  opacity: 1;
  visibility: visible;
  transform: translateX(-50%) translateY(0);
}

.megamenu-cta {
  display: flex;
  align-items: center;
  gap: 8px;
}

.megamenu-cta .cta_btn {
  width: 172px;
}

/* --------------------------------------------
ドロップメニュー（SP）
-------------------------------------------- */
.dropmenu {
  display: none;
}

@media (max-width: 1024px) {
  .dropmenu {
    display: flex;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    gap: 16px;
    padding: 80px 0 40px 0;
    z-index: 98;
    background-color: #fff;
    transform: translateY(-100%);
    visibility: hidden;
    transition: transform 0.5s ease-in-out, opacity 0.3s ease, visibility 0.3s ease;
    overflow-y: auto;
  }
  .dropmenu.is_active {
    transform: translateY(0);
    visibility: visible;
  }
}
.dropmenu ul {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 16px;
  width: 100%;
}

.dropmenu ul li {
  width: 100%;
  display: flex;
  flex-direction: column;
  position: relative;
  gap: 1px;
}

.dropmenu ul li a {
  font-size: 16px;
  font-weight: 600;
  text-decoration: none;
  transition: color 0.3s ease-in-out;
  height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
}

.dropmenu ul li a:hover {
  color: #f03748;
}

.dropmenu-item {
  width: 100%;
}

.dropmenu-btn {
  width: 100%;
  text-align: left;
  background: none;
  border: none;
  font-size: 16px;
  font-weight: 600;
  padding: 12px;
  height: 44px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #13202f;
  transition: color 0.3s ease;
}

.dropmenu-btn:hover {
  color: #f03748;
}

.dropmenu-icon {
  position: absolute;
  top: 0;
  right: 0;
  width: 44px;
  height: 44px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(240, 55, 72, 0.05);
}

.dropmenu-icon::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 10px;
  height: 2px;
  transform: translate(-50%, -50%);
  border-radius: 100vmax;
  background-color: #13202f;
  transition: all 0.3s ease;
}

.dropmenu-icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 2px;
  height: 10px;
  border-radius: 100vmax;
  transform: translate(-50%, -50%);
  background-color: #13202f;
  transition: all 0.3s ease;
}

.dropmenu-btn[aria-expanded=true] .dropmenu-icon::after {
  opacity: 0;
}

.dropmenu-content {
  height: 0;
  overflow: hidden;
  transition: height 0.3s ease;
}

.dropmenu-content ul {
  flex-direction: column;
  gap: 1px;
}

.dropmenu-content ul li {
  height: auto;
}

.dropmenu-content ul li a {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 12px;
  height: 44px;
  text-align: center;
  width: 100%;
  font-size: 14px;
  color: #13202f;
  transition: color 0.3s ease;
  background: rgba(240, 55, 72, 0.05);
  font-weight: 500;
}

.dropmenu-content ul li a:hover {
  color: #f03748;
}

.dropmenu.is_open .dropmenu-content {
  max-height: 1000px;
}

.dropmenu-cta {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 24px;
  width: 100%;
  padding: 0 40px;
}

@media (max-width: 1024px) {
  .dropmenu-cta {
    gap: 16px;
  }
}
/* --------------------------------------------
sec
-------------------------------------------- */
.sec {
  padding: 0 0;
  box-sizing: border-box;
  font-family: "Inter", sans-serif, "Noto Sans JP", sans-serif;
}

.sec .clr_white {
  color: #fff;
}

.sec .text-xs {
  font-size: 16px;
  line-height: 1;
}

.sec .pd-0 {
  padding-bottom: 0;
}

.sec.bg_gray {
  background: #F8F8F8;
}

.sec.bg_grd {
  background: linear-gradient(155deg, #F03748 75.56%, #F7AC00 100%);
}

.sec_line {
  width: 100%;
  box-sizing: border-box;
  padding: 0 24px;
  margin: 0 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.sec_line::before {
  content: "";
  max-width: 1280px;
  display: block;
  width: 100%;
  height: 1px;
  background: #ccc;
  box-sizing: border-box;
}

.sec_content {
  box-sizing: border-box;
}

.sec_content.wfull {
  width: 100%;
}

.sec_inner {
  max-width: 1440px;
  margin: 0 auto;
  width: 100%;
  padding-top: 80px;
  padding-bottom: 80px;
  padding-left: clamp(24px, 5vw, 80px);
  padding-right: clamp(24px, 5vw, 80px);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 40px;
}

@media (max-width: 1024px) {
  .sec_inner {
    padding-top: 40px;
    padding-bottom: 40px;
    gap: 24px;
  }
}
.sec_panel {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}

.sec_panel_group {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}

.sec_panel_title {
  font-size: clamp(32px, 5vw, 40px);
  font-weight: 700;
  line-height: 1.4;
  color: #13202f;
  text-align: center;
  letter-spacing: 1px;
  margin-right: -1px;
}

@media (max-width: 798px) {
  .sec_panel_title {
    margin-right: -1px;
  }
}
.sec_panel_title b {
  font-weight: 700;
  color: #f03748;
}

.sec_panel_title small {
  font-size: clamp(24px, 5vw, 32px);
}

.sec_panel_title_m {
  font-size: 32px;
  font-weight: 600;
  line-height: 1.4;
  color: #13202f;
  text-align: center;
  letter-spacing: 2px;
  margin-right: -2px;
}

@media (max-width: 798px) {
  .sec_panel_title_m {
    letter-spacing: 2px;
    margin-right: -2px;
  }
}
.sec_panel_title_m b {
  font-weight: 600;
  color: #f03748;
}

.sec_panel_title_m strong {
  font-size: 40px;
  font-weight: 600;
  color: #f03748;
}

.sec_panel_title_m sup {
  font-size: 14px;
  font-weight: 400;
  line-height: 1;
  top: -14px;
}

.sec_panel_title_s {
  font-size: clamp(24px, 4vw, 32px);
  font-weight: 600;
  line-height: 1.4;
  color: #13202f;
  text-align: center;
  letter-spacing: 2px;
  margin-right: -2px;
}

@media (max-width: 798px) {
  .sec_panel_title_s {
    letter-spacing: 2px;
    margin-right: -2px;
  }
}
.sec_panel_title_s b {
  font-weight: 600;
  color: #f03748;
}

.sec_panel_title_s small {
  font-size: clamp(16px, 5vw, 24px);
}

.sec_panel_title_sub {
  color: #fff;
  text-align: center;
  font-size: 24px;
  font-weight: 700;
  line-height: 1;
  display: flex;
  padding: 8px 16px;
  justify-content: center;
  align-items: center;
  gap: 10px;
  background: #f03748;
  margin-top: 16px;
}

.sec_panel_description {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.6;
  color: #13202f;
  text-align: center;
  letter-spacing: 1px;
}

@media (max-width: 1024px) {
  .sec_panel_description {
    text-align: justify;
    text-justify: inter-ideograph;
    overflow-wrap: break-word;
    word-break: normal;
  }
}
/* --------------------------------------------
フッター
-------------------------------------------- */
.ftr {
  font-family: "Noto Sans JP", sans-serif;
  display: flex;
  flex-direction: column;
  gap: 0;
  background: #fff;
  /* --------------------------------------------
  top
  -------------------------------------------- */
}

.ftr_top {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 120px;
  max-width: 1440px;
  margin: 0 auto;
  width: 100%;
  padding-top: 40px;
  padding-bottom: 40px;
  padding-left: clamp(24px, 5vw, 80px);
  padding-right: clamp(24px, 5vw, 80px);
  box-sizing: border-box;
  position: relative;
}

@media (max-width: 1280px) {
  .ftr_top {
    gap: 56px;
  }
}
@media (max-width: 1024px) {
  .ftr_top {
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 40px;
  }
}
.ftr_top_logo {
  width: 232px;
  height: 48px;
}

.ftr_top_logo img {
  width: 100%;
  height: 100%;
}

.ftr_top_link {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 40px;
  flex: 1 0 0;
  position: relative;
}

@media (max-width: 1440px) {
  .ftr_top_link {
    gap: 16px;
  }
}
@media (max-width: 960px) {
  .ftr_top_link {
    gap: 80px;
  }
}
@media (max-width: 768px) {
  .ftr_top_link {
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 24px;
    flex: 0 0 0;
  }
}
@media (max-width: 768px) and (max-width: 960px) {
  .ftr_top_link {
    gap: 40px;
  }
}
.ftr_top_link_box {
  width: 150px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

@media (max-width: 960px) {
  .ftr_top_link_box {
    gap: 16px;
    width: -moz-fit-content;
    width: fit-content;
  }
}
.ftr_top_link_box p {
  font-size: 16px;
  font-weight: 600;
  line-height: 1;
}

.ftr_top_link_box ul {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.ftr_top_link_box ul li {
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

.ftr_top_link_box ul li a {
  font-size: 14px;
  line-height: 1;
  transition: color 0.3s ease;
}

.ftr_top_link_box ul li a:hover {
  color: #f03748;
}

.ftr_top_link_box ul li:before {
  content: "-";
  font-size: 16px;
}

.ftr_top_cta {
  position: absolute;
  right: 0;
  top: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
  width: 172px;
}

@media (max-width: 1280px) {
  .ftr_top_cta {
    display: none;
  }
}
.ftr {
  /* --------------------------------------------
  bottom
  -------------------------------------------- */
}

.ftr_bottom {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  padding: 32px 0;
  background-color: #13202f;
  width: 100%;
}

.ftr_bottom_inner {
  max-width: 1440px;
  margin: 0 auto;
  width: 100%;
  padding-left: clamp(24px, 5vw, 80px);
  padding-right: clamp(24px, 5vw, 80px);
  display: flex;
  justify-content: space-between;
  align-items: center;
}

@media screen and (max-width: 960px) {
  .ftr_bottom_inner {
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 24px;
  }
}
.ftr_bottom_inner.center {
  justify-content: center;
}

.ftr_bottom_link {
  display: flex;
  align-items: center;
  gap: 16px;
}

.ftr_bottom_link li {
  display: inline-flex;
  align-items: center;
}

.ftr_bottom_link li a {
  font-size: clamp(12px, 2vw, 14px);
  font-weight: 400;
  color: #fff;
}

.ftr_bottom_link li:after {
  content: "|";
  color: #fff;
  margin-left: 16px;
}

.ftr_bottom_link li:last-child:after {
  display: none;
}

.ftr_bottom_copyright {
  font-size: clamp(12px, 2vw, 14px);
  font-weight: 400;
  color: #fff;
}

/* ==============================================================================
   lp/accounting.css
   ============================================================================== */
/* --------------------------------------------
variables
-------------------------------------------- */
/* --------------------------------------------
font
-------------------------------------------- */
/* --------------------------------------------
260415リニューアル版
-------------------------------------------- */
/* --------------------------------------------
variables
-------------------------------------------- */
/* --------------------------------------------
variables
-------------------------------------------- */
body {
  font-family: "Noto Sans JP", sans-serif;
  font-feature-settings: "palt";
  overflow-x: clip;
}

.ftr {
  background: none;
}

/* 固定ヘッダー分（scrollIntoView / :target 用。common.js の animate(scrollTop) では効かない） */
html {
  scroll-padding-top: 82px;
}

@media (max-width: 1024px) {
  html {
    scroll-padding-top: 60px;
  }
}
/* --------------------------------------------
acct
-------------------------------------------- */
.acct_fv {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  overflow: visible;
  transition: opacity 0.3s ease;
  height: clamp(500px, 46vw, 590px);
  background: url(../img/lp/accounting/fv/bg.webp) center center/auto 590px repeat-x;
}

@media (max-width: 1024px) {
  .acct_fv {
    height: auto;
  }
}
@media (max-width: 768px) {
  .acct_fv {
    background: url(../img/lp/accounting/fv/bg.webp) center center/auto 400px repeat;
  }
}
.acct_fv.is_loaded {
  opacity: 1;
}

.acct_fv_inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0;
  max-width: 1440px;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  position: relative;
  padding: 0 80px;
}

@media screen and (max-width: 1280px) {
  .acct_fv_inner {
    padding: 0 40px;
  }
}
@media (max-width: 1024px) {
  .acct_fv_inner {
    flex-direction: column;
    gap: 24px;
  }
}
@media (max-width: 768px) {
  .acct_fv_inner {
    padding: 20px 16px 0;
  }
}
.acct_fv_main {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 40px;
}

.acct_fv_copy {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

@media screen and (max-width: 1024px) {
  .acct_fv_copy {
    align-items: center;
  }
}
.acct_fv_copy_cap {
  font-size: 16px;
  font-weight: 600;
  line-height: 1;
  color: #fff;
  text-align: center;
  letter-spacing: 1px;
  background: #f03748;
  padding: 8px 8px;
  width: -moz-fit-content;
  width: fit-content;
}

.acct_fv_copy_main {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 16px;
}

@media (max-width: 1024px) {
  .acct_fv_copy_main {
    gap: 12px;
    align-items: center;
  }
}
@media (max-width: 768px) {
  .acct_fv_copy_main {
    gap: 8px;
  }
}
.acct_fv_copy_s {
  font-size: 24px;
  font-weight: 600;
  line-height: 1;
  color: #13202f;
  text-align: left;
  letter-spacing: 1px;
}

@media (max-width: 1024px) {
  .acct_fv_copy_s {
    font-size: 20px;
  }
}
@media (max-width: 768px) {
  .acct_fv_copy_s {
    font-size: 20px;
  }
}
.acct_fv_copy_b {
  width: 552px;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
}

@media (max-width: 768px) {
  .acct_fv_copy_b {
    width: 344px;
    height: 116px;
  }
}
.acct_fv_copy_b img {
  width: 100%;
  height: auto;
}

.acct_fv_copy_disp {
  font-size: clamp(14px, 3vw, 16px);
  font-weight: 500;
  line-height: 1.6;
  color: #13202f;
  text-align: left;
  letter-spacing: 1px;
}

.acct_fv_laurel {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  position: absolute;
  top: 40px;
  right: 40px;
  padding: 0;
  box-sizing: border-box;
}

@media (max-width: 1024px) {
  .acct_fv_laurel {
    position: static;
  }
}
.acct_fv_laurel_img {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0;
}

@media (max-width: 768px) {
  .acct_fv_laurel_img {
    gap: 8px;
  }
}
.acct_fv_laurel_img img {
  width: auto;
  height: 86px;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
}

@media (max-width: 1024px) {
  .acct_fv_laurel_img img {
    height: 68px;
  }
}
@media screen and (max-width: 768px) {
  .acct_fv_laurel_img img {
    height: 58px;
  }
}
.acct_fv_img {
  width: clamp(560px, 56vw, 708px);
  height: auto;
  position: absolute;
  bottom: 0;
  right: clamp(16px, 5vw, 100px);
  z-index: 1;
}

@media screen and (max-width: 1280px) {
  .acct_fv_img {
    right: -16px;
  }
}
@media (max-width: 1024px) {
  .acct_fv_img {
    width: 342px;
    height: -moz-fit-content;
    height: fit-content;
    position: static;
  }
}
.acct_fv_img img {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
}

@media (max-width: 768px) {
  .acct_fv_img img {
    height: 154px;
    -o-object-position: top;
       object-position: top;
  }
}
.acct_fv_cta {
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  gap: 16px;
  width: 100%;
}

@media screen and (max-width: 1280px) {
  .acct_fv_cta {
    width: -moz-fit-content;
    width: fit-content;
  }
}
@media (max-width: 1024px) {
  .acct_fv_cta {
    display: none;
  }
}
.acct_fv_cta .cta_btn.big {
  max-width: 380px;
  height: clamp(50px, 6vw, 80px);
  flex: auto 0 0;
  box-shadow: 0 4px 16px 0 rgba(19, 32, 47, 0.1);
}

@media (max-width: 1024px) {
  .acct_fv_cta .cta_btn.big {
    padding: 16px 16px;
  }
}
.acct_fv_cta .cta_btn.big span {
  font-size: clamp(1.6rem, 1.4vw, 2rem);
}

.acct_fv_cta_sp {
  display: none;
}

@media (max-width: 1024px) {
  .acct_fv_cta_sp {
    display: flex;
    align-items: center;
    gap: 0px;
    width: 100%;
    background-color: #13202f;
    transition: transform 0.3s ease-in-out;
  }
}
@media (min-width: 769px) {
  .acct_fv_cta_sp {
    display: none !important;
  }
}
.acct_fv_cta_sp.is_fixed {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  margin-top: 0;
  z-index: 100;
  display: flex !important;
  animation: slideUpFromBottom 0.3s ease-in-out;
}

@media (min-width: 769px) {
  .acct_fv_cta_sp.is_fixed {
    display: none !important;
  }
}
.acct_fv_cta_sp.is_hidden {
  transform: translateY(120%);
  pointer-events: none;
}

.acct_fv_cta_sp {
  /* 最初から表示型: 常時固定、body paddingなし */
}

.acct_fv_cta_sp.fixCtaSt {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  margin-top: 0;
  z-index: 100;
  display: none;
}

@media (min-width: 769px) {
  .acct_fv_cta_sp.fixCtaSt {
    display: none !important;
  }
}
.acct_fv_cta_sp a {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 60px;
  gap: 8px;
  padding: 20px 12px;
  box-sizing: border-box;
  transition: filter 0.3s ease-in-out;
  position: relative;
  flex: 1 0 0;
  width: 100%;
  background-color: #f03748;
  color: #FFFFFF;
}

.acct_fv_cta_sp a span {
  font-weight: 600;
  text-decoration: none;
  font-size: 16px;
}

.acct_fv_cta_sp a:hover {
  filter: brightness(1.4);
}

.acct_fv_cta_sp a.outline {
  background: #FFFFFF;
  border: 1px solid #f03748;
}

.acct_fv_cta_sp a.outline span {
  background: #f03748;
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.acct_fv_cta_sp a.outline:hover {
  border-color: #f03748;
}

.acct_fv_cta_sp a.grd {
  background: #f03748;
}

.acct_fv_cta_sp a.grd span {
  color: #FFFFFF;
}

.acct_problem {
  display: flex;
  width: 100%;
  justify-content: center;
  align-items: stretch;
  gap: 40px;
  flex-wrap: wrap;
}

@media (max-width: 960px) {
  .acct_problem {
    flex-direction: column;
    align-items: center;
    justify-content: center;
  }
}
.acct_problem_item {
  width: 400px;
  flex: auto 0 0;
  box-sizing: border-box;
  background: #fff;
  border-radius: 20px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  padding: 28px 24px 20px;
  box-sizing: border-box;
  gap: 12px;
  position: relative;
}

@media (max-width: 1440px) {
  .acct_problem_item {
    width: 30%;
  }
}
@media (max-width: 1280px) {
  .acct_problem_item {
    width: 400px;
  }
}
@media (max-width: 960px) {
  .acct_problem_item {
    width: 100%;
    max-width: 400px;
    height: auto;
  }
}
.acct_problem_item_copy {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0;
  font-size: 24px;
  font-weight: 600;
  line-height: 1.4;
  text-align: center;
}

.acct_problem_item_copy b {
  color: #f03748;
  font-weight: 600;
}

.acct_problem_item_ilst {
  display: flex;
  justify-content: center;
  align-items: flex-end;
}

@media (max-width: 960px) {
  .acct_problem_item_ilst {
    position: static;
    transform: translateX(0);
  }
}
.acct_problem_item_ilst img {
  width: 300px;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
}

.acct_problem_item_btn {
  width: -moz-max-content;
  width: max-content;
  text-align: center;
  position: absolute;
  bottom: 24px;
  right: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.acct_problem_item_btn a {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  gap: 12px;
  transition: filter 0.3s ease-in-out;
}

.acct_problem_item_btn a span {
  font-size: 16px;
  font-weight: 600;
  line-height: 1;
  color: #f03748;
  letter-spacing: 1px;
  flex: auto 0 0;
}

.acct_problem_item_btn a:hover .package_item_btn_icon {
  background-color: #f03748;
}

.acct_problem_item_btn a:hover .package_item_btn_icon::before {
  background-color: #fff;
}

.acct_problem_item_btn a:hover .package_item_btn_icon::after {
  background-color: #fff;
}

.acct_problem_item_btn_icon {
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  position: relative;
  transition: background-color 0.3s ease-in-out;
  border: 2px solid #f03748;
  background-color: #fff;
  border-radius: 100vmax;
}

.acct_problem_item_btn_icon::before, .acct_problem_item_btn_icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background-color: #13202f;
  transition: background-color 0.3s ease-in-out;
}

.acct_problem_item_btn_icon::before {
  width: 17px;
  height: 2px;
  transform: translate(-50%, -50%);
  border-radius: 100vmax;
  background-color: #f03748;
}

.acct_problem_item_btn_icon::after {
  width: 2px;
  height: 17px;
  border-radius: 100vmax;
  transform: translate(-50%, -50%);
  background-color: #f03748;
}

.acct_board {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  gap: 40px;
}

@media screen and (max-width: 1440px) {
  .acct_board {
    gap: 24px;
  }
}
@media screen and (max-width: 1280px) {
  .acct_board {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
  }
}
@media (max-width: 768px) {
  .acct_board {
    grid-template-columns: repeat(1, 1fr);
    gap: 16px;
  }
}
.acct_board_item {
  box-sizing: border-box;
  width: 100%;
  flex: auto 0;
  background: rgba(255, 255, 255, 0.95);
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 4px 100px 0 rgba(240, 55, 72, 0.2);
  display: flex;
  flex-direction: column;
  padding: 40px;
  box-sizing: border-box;
  gap: 24px;
}

@media screen and (max-width: 1440px) {
  .acct_board_item {
    padding: 24px 40px 40px;
  }
}
@media screen and (max-width: 768px) {
  .acct_board_item {
    padding: 16px 16px 20px;
    max-width: 400px;
    margin-inline: auto;
  }
}
.acct_board_item_head figure {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 40px;
}

@media screen and (max-width: 768px) {
  .acct_board_item_head figure {
    gap: 16px;
  }
}
.acct_board_item_head figure img {
  width: 150px;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
}

.acct_board_item_head figure figcaption {
  font-size: 24px;
  font-weight: 700;
  line-height: 1;
  margin: 0;
}

@media screen and (max-width: 768px) {
  .acct_board_item_head figure figcaption {
    font-size: 20px;
  }
}
.acct_board_item_body {
  padding: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  flex: 1;
}

@media screen and (max-width: 768px) {
  .acct_board_item_body {
    align-items: flex-start;
  }
}
.acct_board_item_title {
  font-size: 20px;
  font-weight: 700;
  line-height: 1.3;
  color: #13202f;
  letter-spacing: 0.5px;
  margin: 0;
}

.acct_board_item_list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: inline-flex;
  flex-direction: column;
  gap: 12px;
}

.acct_board_item_list li {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 6px;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.4;
  position: relative;
}

.acct_board_item_list li::before {
  content: "";
  display: inline-block;
  width: 16px;
  height: 16px;
  background-image: url("../img/icon/ico_check.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  flex: auto 0 0;
  margin-top: 4px;
}

.acct_board_clm3 {
  display: flex;
  width: 100%;
  justify-content: center;
  align-items: stretch;
  gap: 40px;
  flex-wrap: wrap;
}

@media screen and (max-width: 1440px) {
  .acct_board_clm3 {
    gap: 24px;
  }
}
@media screen and (max-width: 1280px) {
  .acct_board_clm3 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
  }
}
@media (max-width: 768px) {
  .acct_board_clm3 {
    grid-template-columns: repeat(1, 1fr);
    gap: 16px;
  }
}
.acct_board_clm3 .acct_board_item {
  width: 400px;
  flex: auto 0 0;
}

@media screen and (max-width: 1440px) {
  .acct_board_clm3 .acct_board_item {
    padding: 24px 40px 40px;
    width: 31%;
  }
}
@media screen and (max-width: 1280px) {
  .acct_board_clm3 .acct_board_item {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .acct_board_clm3 .acct_board_item {
    width: 100%;
    padding: 16px 16px 20px;
  }
}
.acct_reason {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  flex-wrap: wrap;
  gap: 40px;
  width: 100%;
}

@media (max-width: 1024px) {
  .acct_reason {
    flex-direction: column;
    gap: 24px;
  }
}
@media screen and (max-width: 768px) {
  .acct_reason {
    grid-template-columns: repeat(1, 1fr);
  }
}
.acct_reason_box {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  background: #fff;
  border-radius: 20px;
  position: relative;
  padding: 40px 40px 0;
  background-position: top 40px left 40px;
  background-repeat: no-repeat;
  background-size: 284px auto;
}

@media screen and (max-width: 1280px) {
  .acct_reason_box {
    background-size: 224px auto;
    padding: 24px 24px 0;
  }
}
@media screen and (max-width: 1024px) {
  .acct_reason_box {
    background-size: 148px auto;
    background-position: top 24px left 24px;
    gap: 0;
  }
}
@media screen and (max-width: 768px) {
  .acct_reason_box {
    height: auto;
    align-items: center;
  }
}
.acct_reason_box:nth-child(1) {
  background-image: url("../img/lp/accounting/reason/num1.svg");
}

.acct_reason_box:nth-child(2) {
  background-image: url("../img/lp/accounting/reason/num2.svg");
}

.acct_reason_box:nth-child(3) {
  background-image: url("../img/lp/accounting/reason/num3.svg");
}

.acct_reason_box:nth-child(4) {
  background-image: url("../img/lp/accounting/reason/num4.svg");
}

.acct_reason_box_body {
  display: flex;
  flex-direction: column;
  gap: 16px;
  width: 454px;
  height: -moz-fit-content;
  height: fit-content;
  margin-top: 12px;
}

@media screen and (max-width: 1280px) {
  .acct_reason_box_body {
    width: 100%;
    height: -moz-fit-content;
    height: fit-content;
    margin-top: 4px;
  }
}
.acct_reason_box_title {
  font-size: clamp(24px, 3vw, 32px);
  font-weight: 600;
  line-height: 1.4;
}

.acct_reason_box_title b {
  font-weight: 600;
  color: #f03748;
}

.acct_reason_box_text {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.6;
}

.acct_reason_box_ilst {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

@media screen and (max-width: 768px) {
  .acct_reason_box_ilst {
    position: relative;
    width: 228px;
  }
}
.acct_reason_box_ilst img {
  height: auto;
  aspect-ratio: 420/286;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
}

@media screen and (max-width: 1200px) {
  .acct_reason_box_ilst img {
    width: 320px;
  }
}
@media screen and (max-width: 960px) {
  .acct_reason_box_ilst img {
    width: 280px;
  }
}
@media screen and (max-width: 768px) {
  .acct_reason_box_ilst img {
    width: 100%;
  }
}
.acct_cta {
  background: url(../img/lp/accounting/cta/bg.webp) top 38% center/cover no-repeat;
}

@media screen and (max-width: 768px) {
  .acct_cta {
    background: url(../img/lp/accounting/cta/bg.webp) center right/cover no-repeat;
  }
}
.acct_cta_title {
  font-size: clamp(20px, 4vw, 40px);
  font-weight: 700;
  line-height: 1.4;
  color: #13202f;
  text-align: center;
  letter-spacing: 1px;
  margin-right: -1px;
}

@media (max-width: 798px) {
  .acct_cta_title {
    margin-right: -1px;
  }
}
.acct_cta_btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
}

@media (max-width: 960px) {
  .acct_cta_btn {
    flex-direction: column;
    gap: 16px;
    width: 100%;
    max-width: 380px;
    margin-inline: auto;
  }
}
.acct_cta_btn .cta_btn {
  width: 380px;
  height: 80px;
  box-shadow: 0 4px 16px 0 rgba(19, 32, 47, 0.1);
}

@media (max-width: 960px) {
  .acct_cta_btn .cta_btn {
    width: 100%;
  }
}
.acct_cta_btn .cta_btn span {
  font-size: 20px;
  font-weight: 700;
}

@media screen and (max-width: 960px) {
  .acct_cta_btn .cta_btn span {
    font-size: 16px;
  }
}
.acct_cta_btn .cta_btn.outline {
  border-width: 2px;
}

.acct_service_content {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 40px;
}

.acct_service_list {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
  flex-wrap: wrap;
  max-width: 1048px;
}

@media (max-width: 1200px) {
  .acct_service_list {
    gap: 20px;
  }
}
@media (max-width: 768px) {
  .acct_service_list {
    gap: 12px;
  }
}
.acct_service_list img {
  width: auto;
  height: 80px;
  -o-object-fit: contain;
     object-fit: contain;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.acct_service_note {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.6;
  color: #13202f;
  letter-spacing: 1px;
  text-align: center;
}

@media screen and (max-width: 960px) {
  .acct_service_note {
    text-align: left;
  }
}
.acct_case_content {
  display: flex;
  flex-direction: column;
  gap: 40px;
  width: 100%;
}

.acct_case_swiper {
  width: 100%;
  margin: 0 auto;
  position: relative;
  display: flex;
  flex-direction: column;
  /* justify-content: flex-end; */
  align-items: flex-end;
  gap: 40px;
}

.acct_case_swiper_item {
  border-radius: 20px;
  background: #FFFFFF;
  overflow: hidden;
  height: auto;
  align-self: stretch;
  padding: 0;
  container-type: inline-size;
}

.acct_case_swiper_item a {
  display: flex;
  width: 100%;
  flex-direction: column;
  height: 100%;
}

.acct_case_swiper_item a:hover .acct_case_swiper_item_btn .icon.arrow {
  background-color: #f03748;
}

.acct_case_swiper_item a:hover .acct_case_swiper_item_btn .icon.arrow::after {
  background-color: #fff;
}

.acct_case_swiper_item_img {
  width: 100%;
  height: 270px;
}

@media (max-width: 768px) {
  .acct_case_swiper_item_img {
    width: 100%;
  }
}
.acct_case_swiper_item_img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.acct_case_swiper_item_detail {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  gap: 24px;
  padding: 24px 24px 46px;
}

@media (max-width: 768px) {
  .acct_case_swiper_item_detail {
    gap: 8px;
  }
}
.acct_case_swiper_item_title {
  font-size: 20px;
  font-weight: 600;
  line-height: 1.4;
  color: #13202f;
  letter-spacing: 1px;
  overflow: hidden;
}

.acct_case_swiper_item_title b {
  color: #f03748;
  font-weight: 600;
}

.acct_case_swiper_item_list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.acct_case_swiper_item_list p {
  font-size: 14px;
  font-weight: 600;
  line-height: 1;
  border: 1px solid #f03748;
  background: #f03748;
  color: #fff;
  padding: 4px 6px;
  width: -moz-fit-content;
  width: fit-content;
}

.acct_case_swiper_item_list p.outline {
  border: 1px solid #f03748;
  background: #fff;
  color: #f03748;
}

.acct_case_swiper_item_list ul {
  list-style: disc;
  margin: 0 0 0 16px;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.acct_case_swiper_item_list ul li {
  font-size: 14px;
  line-height: 1.8;
}

.acct_case_swiper_item_btn {
  position: absolute;
  bottom: 24px;
  right: 24px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
}

.acct_case_swiper_item_btn span {
  font-size: 16px;
  font-weight: 600;
  line-height: 1;
  color: #f03748;
  letter-spacing: 1px;
}

.acct_case_swiper_item_btn .icon.arrow {
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  border-radius: 100vmax;
  border: 2px solid #f03748;
  transition: background-color 0.3s ease;
}

.acct_case_swiper_item_btn .icon.arrow::after {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  background-color: #f03748;
  mask: var(--icon-arrow) no-repeat center;
  -webkit-mask: var(--icon-arrow) no-repeat center;
  mask-size: contain;
  -webkit-mask-size: contain;
  transition: background-color 0.3s ease;
}

.acct_case_swiper {
  /* swiper */
}

@media (min-width: 1024px) {
  .acct_case_swiper .swiper-wrapper {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 0;
  }
}
.acct_case_swiper .swiper-slide {
  width: 400px;
  height: auto;
}

@media (max-width: 1440px) {
  .acct_case_swiper .swiper-slide {
    width: 32%;
  }
}
@media (max-width: 1024px) {
  .acct_case_swiper .swiper-slide {
    width: 50%;
  }
}
@media (max-width: 768px) {
  .acct_case_swiper .swiper-slide {
    width: 100%;
  }
}
.acct_case_swiper .swiper-controls {
  display: none;
  width: 100%;
}

@media (max-width: 1024px) {
  .acct_case_swiper .swiper-controls {
    gap: 24px;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
  }
}
.acct_case_swiper .swiper-scrollbar {
  bottom: 0 !important;
  height: 8px !important;
  background-color: #FFFFFF;
  position: relative !important;
}

.acct_case_swiper .swiper-scrollbar-drag {
  background-color: #f03748;
}

.acct_case_swiper .swiper-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
}

.acct_case_swiper .swiper-button .icon.arrow {
  width: 40px;
  height: 40px;
  background: #fff;
  border-radius: 100vmax;
  border: 1px solid #f03748;
}

.acct_case_swiper .swiper-button .icon.arrow::after {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  background-color: #f03748;
  mask: var(--icon-arrow) no-repeat center;
  -webkit-mask: var(--icon-arrow) no-repeat center;
  mask-size: contain;
  -webkit-mask-size: contain;
}

@media (hover: none) and (pointer: coarse) {
  .acct_case_swiper .swiper-button .icon.arrow:focus, .acct_case_swiper .swiper-button .icon.arrow:focus-visible {
    outline: none;
    background: #f03748;
  }
  .acct_case_swiper .swiper-button .icon.arrow:focus::after, .acct_case_swiper .swiper-button .icon.arrow:focus-visible::after {
    background-color: #fff;
  }
}
.acct_case_swiper .swiper-button-next, .acct_case_swiper .swiper-button-prev {
  position: relative;
  left: auto;
  right: auto;
  top: auto;
  bottom: auto;
  margin: 0 !important;
}

.acct_case_swiper .swiper-button-next::after, .acct_case_swiper .swiper-button-prev::after {
  content: "";
}

.acct_case_swiper .swiper-button-prev {
  transform: rotate(180deg);
}

.acct_case_swiper .swiper-notification {
  display: none !important;
}

.acct_img {
  width: 100%;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 24px;
  position: relative;
}

.acct_img.pc-on {
  display: none;
}

@media (min-width: 1025px) {
  .acct_img.pc-on {
    display: flex;
  }
}
.acct_img.sp-on {
  display: flex;
}

@media (min-width: 1025px) {
  .acct_img.sp-on {
    display: none;
  }
}
.acct_img img {
  width: 100%;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
}

.acct_img_nav {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  gap: 0;
  width: 100%;
  background-color: #F8F8F8;
  border-radius: 20px;
  overflow: hidden;
}

.acct_img_nav li {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  gap: 4px;
  padding: 0 24px;
}

.acct_img_nav li:last-child a {
  border-bottom: none;
}

.acct_img_nav li a {
  width: 100%;
  height: 100%;
  padding: 24px 0;
  font-size: 16px;
  display: block;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid #ccc;
}

.acct_img_nav li a:after {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  background-image: url("../img/icon/ico_down.svg");
  background-size: contain;
  background-repeat: no-repeat;
}

.acct_price_cta {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 40px;
}

@media (max-width: 1024px) {
  .acct_price_cta {
    gap: 24px;
  }
}
.acct_price_cta_description {
  display: flex;
  align-items: stretch;
  justify-content: center;
  gap: 0;
  padding: 0 28px;
  width: 800px;
  height: 156px;
  background: #FFF7F7;
  border-radius: 20px;
}

@media (max-width: 1024px) {
  .acct_price_cta_description {
    width: 100%;
  }
}
@media (max-width: 960px) {
  .acct_price_cta_description {
    flex-direction: column-reverse;
    align-items: center;
    justify-content: center;
    height: auto;
    gap: 16px;
    padding: 24px;
  }
}
.acct_price_cta_description img {
  width: 148px;
  height: 132px;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: bottom;
     object-position: bottom;
  align-self: flex-end;
}

@media screen and (max-width: 960px) {
  .acct_price_cta_description img {
    align-self: center;
  }
}
.acct_price_cta_description span {
  font-size: clamp(16px, 2vw, 24px);
  font-weight: 600;
  line-height: 1.6;
  color: #13202f;
  letter-spacing: 0;
  align-self: center;
  flex: auto 0 0;
}

.acct_price_cta_description span b {
  color: #f03748;
  font-weight: 600;
}

.acct_step {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 40px;
  width: 100%;
}

@media (max-width: 1024px) {
  .acct_step {
    flex-direction: column;
    gap: 32px;
  }
}
.acct_step_box {
  width: 224px;
  height: 264px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0;
  box-sizing: border-box;
  padding: 0;
  background: #fff;
  position: relative;
  border-radius: 20px;
}

@media (max-width: 1280px) {
  .acct_step_box {
    width: 100%;
    height: auto;
  }
}
.acct_step_box:after {
  content: "";
  display: block;
  width: 28px;
  height: 12px;
  background-color: #f03748;
  clip-path: polygon(50% 0%, 100% 100%, 0% 100%);
  position: absolute;
  bottom: 50%;
  right: -36px;
  transform: translateY(50%) rotate(90deg);
}

@media (max-width: 1024px) {
  .acct_step_box:after {
    transform: translateY(0) translateX(50%) rotate(180deg);
    right: 50%;
    bottom: -22px;
  }
}
.acct_step_box:last-child:after {
  display: none;
}

.acct_step_box_cap {
  background: #13202f;
  color: #fff;
  font-size: 16px;
  height: 32px;
  font-weight: 600;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  border-radius: 20px 20px 0 0;
}

.acct_step_box_body {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 24px 16px;
  gap: 16px;
}

.acct_step_box_body figure {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0px;
}

.acct_step_box_body figure img {
  width: 80px;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
  aspect-ratio: 1/1;
}

.acct_step_box_body figure figcaption {
  font-size: 16px;
  font-weight: 600;
  line-height: 1.4;
  color: #13202f;
  text-align: center;
}

.acct_step_box_body p {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.4;
  text-align: center;
}

.acct_faq .sec_inner {
  gap: 24px;
}

.acct_faq_content {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  width: 100%;
  box-sizing: border-box;
  gap: 40px;
}

.acct_faq_box {
  width: -moz-fit-content;
  width: fit-content;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 40px;
}

.acct_faq_box_title {
  font-size: clamp(16px, 4vw, 24px);
  font-weight: 600;
  line-height: 1.6;
  color: #13202f;
  text-align: center;
  letter-spacing: 1px;
  width: 100%;
  text-align: left;
  padding: 16px 0;
  border-bottom: 1px solid #f03748;
}

.acct_faq_list {
  display: flex;
  flex-direction: column;
  gap: 24px;
  max-width: 832px;
  width: 100%;
  box-sizing: border-box;
}

.acct_faq_list_item {
  padding: 16px;
  border-radius: 20px;
  background: #F8F8F8;
}

.acct_faq_list_item.is_open .acct_faq_list_item_q_icon::after, .acct_faq_list_item.accordionItem.is_open .acct_faq_list_item_q_icon::after {
  opacity: 0;
}

.acct_faq_list_item_q {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 16px;
  letter-spacing: 1px;
}

.acct_faq_list_item_q button {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 0;
  background: none;
  border: none;
  cursor: pointer;
  text-align: left;
  gap: 24px;
  letter-spacing: 1px;
}

.acct_faq_list_item_q button:hover .acct_faq_list_item_q_text {
  color: #f03748;
}

.acct_faq_list_item_q button::before {
  content: "";
  display: inline-block;
  width: 60px;
  height: 60px;
  background: url("../img/lp/accounting/faq/q.svg") no-repeat center center;
  flex: auto 0 0;
}

.acct_faq_list_item_q_text {
  flex: 1;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.4;
  color: #13202f;
  transition: color 0.3s ease-in-out;
}

.acct_faq_list_item_q_icon {
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  position: relative;
  transition: transform 0.3s ease-in-out;
}

.acct_faq_list_item_q_icon::before, .acct_faq_list_item_q_icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background-color: #13202f;
  transition: background-color 0.3s ease-in-out, opacity 0.3s ease-in-out;
}

.acct_faq_list_item_q_icon::before {
  width: 20px;
  height: 4px;
  transform: translate(-50%, -50%);
  border-radius: 100vmax;
  background-color: #f03748;
}

.acct_faq_list_item_q_icon::after {
  width: 4px;
  height: 20px;
  border-radius: 100vmax;
  transform: translate(-50%, -50%);
  background-color: #f03748;
}

.acct_faq_list_item_a {
  margin: 0;
  height: 0;
  overflow: hidden;
  transition: height 0.4s ease-out;
  letter-spacing: 1px;
}

.accordionItem.is_open .acct_faq_list_item_a {
  height: auto;
}

.acct_faq_list_item_a_text {
  font-size: 16px;
  font-weight: 600;
  line-height: 1.6;
  color: #13202f;
  display: flex;
  align-items: stretch;
  justify-content: flex-start;
  gap: 24px;
  border-top: 1px solid #ccc;
  margin-top: 24px;
  padding-top: 24px;
  padding-bottom: 8px;
}

.acct_faq_list_item_a_text span {
  font-size: 16px;
  font-weight: 500;
  line-height: 1.6;
  color: #13202f;
  padding-top: 2px;
}

.acct_faq_list_item_a_text span a {
  text-decoration: underline;
  color: #f03748;
  transition: color 0.3s ease-in-out;
}

.acct_faq_list_item_a_text span a:hover {
  color: #FFF7F7;
  text-decoration: none;
}

.acct_faq_list_item_a_text::before {
  content: "";
  display: inline-block;
  width: 60px;
  height: 60px;
  background: url("../img/lp/accounting/faq/a.svg") no-repeat center center;
  flex: auto 0 0;
}

.acct_download {
  background: url(../img/lp/accounting/cta/bg.webp) center center/cover no-repeat;
}

@media screen and (max-width: 768px) {
  .acct_download {
    background: url(../img/lp/accounting/cta/bg.webp) center right 22%/cover no-repeat;
  }
}
.acct_download_title {
  font-size: clamp(32px, 5vw, 40px);
  font-weight: 700;
  line-height: 1.4;
  color: #fff;
  text-align: center;
  letter-spacing: 1px;
  margin-right: -1px;
}

@media (max-width: 798px) {
  .acct_download_title {
    margin-right: -1px;
  }
}
.acct_download_content {
  width: 100%;
  box-sizing: border-box;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 40px;
}

@media (max-width: 1024px) {
  .acct_download_content {
    flex-direction: column;
    gap: 24px;
  }
}
.acct_download_img {
  width: -moz-fit-content;
  width: fit-content;
  height: auto;
  filter: drop-shadow(0 4px 20px #13202f);
}

.acct_download_img img {
  width: 100%;
  -o-object-position: center;
     object-position: center;
  -o-object-fit: contain;
     object-fit: contain;
}

@media (max-width: 768px) {
  .acct_download_img img {
    width: 328px;
    height: 214px;
    -o-object-fit: contain;
       object-fit: contain;
    -o-object-position: center;
       object-position: center;
  }
}
.acct_download_cta {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 16px;
}

@media (max-width: 480px) {
  .acct_download_cta {
    width: 100%;
  }
}
.acct_download_cta .cta_btn {
  width: 380px;
  height: 80px;
}

@media (max-width: 1024px) {
  .acct_download_cta .cta_btn {
    width: 100%;
    max-width: 100%;
  }
}
.acct_download_cta .cta_btn span {
  font-size: 20px;
  font-weight: 700;
}

@media screen and (max-width: 960px) {
  .acct_download_cta .cta_btn span {
    font-size: 16px;
  }
}
.acct_download_cta .cta_btn.outline {
  border-width: 2px;
}

@media screen and (max-width: 1309px) {
  .menu-container {
    flex-direction: inherit;
  }
}
.h_logo {
  position: relative;
}

@media screen and (min-width: 769px) {
  .h_logo {
    max-width: 285px;
  }
}
@media screen and (max-width: 768px) {
  .h_logo {
    width: 215px;
    top: 2px;
    left: 0px;
    z-index: 100;
  }
}
@media screen and (min-width: 769px) {
  .h_logo img {
    width: 100%;
    margin-left: 15px;
    height: 63px;
  }
}
@media screen and (max-width: 768px) {
  .h_logo img {
    width: 100%;
    margin-left: 10px;
    height: 40px;
  }
}
@media (min-width: 768px) and (max-width: 980px) {
  .h_logo {
    max-width: 215px;
    top: 0;
    left: 0;
  }
  .h_logo img {
    position: absolute;
    width: 100%;
    height: 40px;
  }
}
.main_lp .bg_gray {
  background-color: #f0f0f0;
}

@media screen and (min-width: 769px) {
  .main_lp .inner {
    padding: 80px 0 80px 0;
  }
}
@media screen and (max-width: 768px) {
  .main_lp .inner {
    padding: 40px 0 40px 0;
  }
}
@media screen and (min-width: 769px) {
  .main_lp .lp_service_list {
    padding-top: 50px;
  }
}
@media screen and (max-width: 768px) {
  .main_lp .lp_service_list {
    padding-top: 15px;
  }
}
.main_lp .lp_service_list .inner {
  padding: 0;
}

.main_lp .lp_service_list .tt {
  margin-bottom: 0;
}

@media screen and (min-width: 769px) {
  .fv {
    height: 574px;
    background-image: url(../img/lp/accounting/fv_pc.png);
    background-size: auto 574px;
    background-repeat: no-repeat;
    background-position: center center;
  }
}
@media screen and (max-width: 768px) {
  .fv {
    height: auto;
    margin-top: -5px;
    padding-bottom: 0px;
    background-image: url(../img/lp/accounting/fv_sp.png);
    background-size: 40px auto;
    background-repeat: no-repeat;
    background-position: left top 0px;
  }
}
.fv .inner {
  padding: 0;
}

@media screen and (min-width: 1220px) {
  .fv .inner {
    display: flex;
  }
}
@media screen and (max-width: 1219px) {
  .fv .inner {
    width: 100%;
    margin: 0;
  }
}
@media screen and (min-width: 769px) {
  .fv .inner .text {
    width: 52%;
    padding-left: 2%;
  }
}
@media screen and (max-width: 768px) {
  .fv .inner .text {
    overflow: hidden;
    margin: 0 auto;
    width: 100%;
    margin: 0 auto;
  }
}
@media screen and (min-width: 769px) {
  .fv .inner .text .catch {
    margin-top: 45px;
  }
}
@media screen and (max-width: 768px) {
  .fv .inner .text .catch {
    margin-top: 30px;
    text-align: center;
  }
}
@media screen and (min-width: 769px) {
  .fv .inner .text .catch .sub_catch {
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 768px) {
  .fv .inner .text .catch .sub_catch {
    margin-bottom: 10px;
  }
}
.fv .inner .text .catch .sub_catch {
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(1.8rem, 2.6vw, 3.4rem);
}

.fv .inner .text .catch .sub_catch span {
  color: #f8ac00;
}

.fv .inner .text .catch .main_catch {
  font-family: "Chatwork Sans EB", sans-serif;
  font-size: clamp(2.4rem, 3vw, 3.8rem);
  line-height: 1.2;
}

.fv .inner .text .catch .main_catch span {
  font-size: clamp(3.2rem, 6vw, 6.6rem);
  color: #f03748;
}

@media screen and (min-width: 769px) {
  .fv .inner .text .fv_list {
    display: flex;
    flex-wrap: wrap;
    gap: 0 2%;
    margin: 30px 0px 0px 0px;
  }
}
@media screen and (max-width: 768px) {
  .fv .inner .text .fv_list {
    display: flex;
    flex-wrap: wrap;
    gap: 0 2%;
    margin: 4% auto 0px;
    width: 320px;
  }
}
.fv .inner .text .fv_list li {
  position: relative;
  background-image: url(../img/lp/icn_fv_check.png);
  background-repeat: no-repeat;
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(1.3rem, 1.7vw, 2.2rem);
  width: 100%;
}

@media screen and (min-width: 769px) {
  .fv .inner .text .fv_list li {
    letter-spacing: 1px;
    background-size: 19px 19px;
    padding: 0px 0px 20px 25px;
  }
}
@media screen and (max-width: 768px) {
  .fv .inner .text .fv_list li {
    background-size: 12px 12px;
    padding: 0px 0px 10px 15px;
  }
}
.fv .inner .text .text_info {
  position: relative;
  font-size: clamp(1.1rem, 2vw, 1.3rem);
  line-height: 1.4;
  font-family: "Chatwork Sans L", sans-serif;
}

@media screen and (min-width: 769px) {
  .fv .inner .text .text_info {
    margin: 15px 15px 20px 15px;
    color: #808080;
  }
  .fv .inner .text .text_info span {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .fv .inner .text .text_info {
    width: 92%;
    margin: 0px auto;
    padding: 1% 4%;
    color: #444;
  }
}
.fv .inner .text .text_info::before {
  content: "※";
  position: absolute;
  top: 0;
  left: -15px;
}

@media screen and (max-width: 768px) {
  .fv .inner .text .text_info::before {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .fv .inner .text .fv_sp_image {
    text-align: center;
  }
  .fv .inner .text .fv_sp_image img {
    display: block;
    margin: 0 auto;
    width: 80%;
    max-width: 400px;
    height: auto;
  }
}
@media screen and (min-width: 1220px) {
  .fv .inner .text h1 {
    margin: 55px 0px 0px 40px;
  }
  .fv .inner .text h1 img {
    width: 505px;
    height: auto;
  }
}
@media screen and (max-width: 1219px) {
  .fv .inner .text h1 {
    text-align: center;
  }
  .fv .inner .text h1 img {
    width: 75%;
    height: auto;
  }
}
@media screen and (max-width: 768px) {
  .fv .inner .text h1 {
    text-align: center;
  }
  .fv .inner .text h1 img {
    width: 75%;
    height: auto;
  }
}
@media screen and (min-width: 769px) {
  .fv .inner .text .fv_btn {
    margin: 0px 0 0 0px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px 0;
  }
}
.fv .inner .text .fv_btn .btn {
  width: 49%;
  display: flex;
  align-items: center;
  justify-content: center;
}

@media screen and (min-width: 769px) {
  .fv .inner .text .fv_btn .btn span {
    display: block;
    text-align: center;
  }
}
.fv .inner .text .fv_btn .btn span {
  font-size: 2.2rem;
  padding-top: 2px;
  font-family: "Chatwork Sans B", sans-serif;
  padding: 15px 0;
}

@media screen and (max-width: 768px) {
  .fv .inner .text .fv_btn .btn span {
    font-size: 1.6rem;
  }
}
.fv .inner .text .fv_btn .btn.btn_inquiry {
  background: #FFF;
}

.fv .inner .text .fv_btn .btn.btn_inquiry span {
  color: #f03748;
  font-family: "Chatwork Sans B", sans-serif;
}

.fv .inner .text .fv_btn .btn.btn_inquiry span::after {
  background: url(../img/icn_bot_arrow_red.svg) no-repeat center/100% 100%;
}

.fv_lp_sp {
  display: none;
}

@media screen and (max-width: 768px) {
  .fv_lp_sp {
    display: flex;
    padding: 3% 0%;
    align-items: center;
    justify-content: space-between;
  }
  .fv_lp_sp .btn {
    width: 48%;
    margin: 0 auto;
    height: 50px;
  }
  .fv_lp_sp .btn span {
    font-size: clamp(1.6rem, 2vw, 1.6rem);
  }
  .fv_lp_sp .btn.btn_inquiry {
    background: #FFF;
  }
  .fv_lp_sp .btn.btn_inquiry span {
    color: #f03748;
    font-family: "Chatwork Sans B", sans-serif;
  }
  .fv_lp_sp .btn.btn_inquiry span::after {
    background: url(../img/icn_bot_arrow_red.svg) no-repeat center/100% 100%;
  }
}
.main_lp .marker {
  background: linear-gradient(to bottom, transparent 0, transparent 55%, #fff100 55%);
  font-family: "Chatwork Sans B", sans-serif;
}

.main_lp .a01 .a01_list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}

@media screen and (min-width: 769px) {
  .main_lp .a01 .a01_list {
    width: 100%;
    max-width: 950px;
    margin: 0 auto;
    gap: 40px 3%;
  }
}
@media screen and (max-width: 768px) {
  .main_lp .a01 .a01_list {
    gap: 30px 3%;
  }
}
.main_lp .a01 .a01_list li {
  position: relative;
  background-color: #FFF;
  font-size: clamp(1.3rem, 2vw, 1.6rem);
  text-align: center;
  line-height: 1.4;
  border-radius: 15px;
}

@media screen and (min-width: 769px) {
  .main_lp .a01 .a01_list li {
    width: 30%;
    padding: 3%;
  }
}
@media screen and (max-width: 768px) {
  .main_lp .a01 .a01_list li {
    width: 47%;
    padding: 4%;
    min-height: 81px;
    display: flex;
    align-items: center;
    justify-content: center;
  }
}
.main_lp .a01 .a01_list li div {
  display: inline-block;
}

.main_lp .a01 .a01_list li::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: -15px;
  left: 0;
  width: 0px;
  height: 0px;
  margin: auto;
  border-style: solid;
  border-color: #FFF transparent transparent transparent;
  border-width: 15px 10px 0 10px;
}

.main_lp .a01 .a01_list li span {
  color: #f03748;
  font-family: "Chatwork Sans EB", sans-serif;
}

.main_lp .a01_arrow {
  background-color: #FFF;
  position: relative;
  padding-top: 100px;
}

.main_lp .a01_arrow::before {
  position: absolute;
  top: 24px;
  left: 50%;
  translate: -50% 0;
  width: 160px;
  height: 24px;
  background-color: #f03748;
  content: "";
}

.main_lp .a01_arrow::after {
  position: absolute;
  top: 47.8px;
  left: 50%;
  translate: -50% 0;
  width: 160px;
  height: 24px;
  background-color: #f03748;
  clip-path: polygon(0 0, 50% 100%, 100% 0);
  content: "";
}

.main_lp .a01_arrow p {
  text-align: center;
  position: relative;
  z-index: 2;
  font-size: clamp(1.8rem, 2vw, 2.8rem);
  margin-inline: auto;
  border-radius: 16px;
  background-color: #f03748;
  color: #fff;
  font-family: "Chatwork Sans EB", sans-serif;
}

@media screen and (min-width: 769px) {
  .main_lp .a01_arrow p {
    width: min(100%, 1080px);
    padding: 30px 0;
  }
}
@media screen and (max-width: 768px) {
  .main_lp .a01_arrow p {
    width: 90%;
    padding: 16px;
    line-height: 1.6;
  }
}
@media screen and (min-width: 769px) {
  .main_lp .a01_arrow p::after {
    position: absolute;
    right: 8px;
    bottom: 0;
    width: 200px;
    height: 178px;
    background-image: url(../img/lp/labor/pht_second_a04_02.png);
    background-position: center bottom;
    background-repeat: no-repeat;
    background-size: 100% auto;
    content: "";
  }
}
.main_lp .a03 {
  text-align: center;
  padding: 2%;
  border-radius: 20px;
  background-color: #FFF;
}

.main_lp .a03 img {
  max-width: 100%;
  height: auto;
}

@media screen and (min-width: 769px) {
  .main_lp .three_reason {
    display: flex;
    flex-wrap: wrap;
    gap: 0px 3%;
  }
}
.main_lp .three_reason-picture {
  width: 100%;
  aspect-ratio: 16/9;
  padding: 6%;
  background-color: #fff;
}

.main_lp .three_reason-picture img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.main_lp .three_reason li {
  position: relative;
  background: #fdedee;
}

@media screen and (min-width: 769px) {
  .main_lp .three_reason li {
    width: 31%;
    border-bottom: 8px solid #f03748;
  }
}
@media screen and (max-width: 768px) {
  .main_lp .three_reason li {
    border-bottom: 4px solid #f03748;
    margin-bottom: 50px;
  }
  .main_lp .three_reason li:last-child {
    margin-bottom: 0px;
  }
}
.main_lp .three_reason li .image_cycle {
  position: absolute;
  border: 2px solid #f03748;
  left: 0px;
  right: 0px;
  margin: auto;
  display: flex;
  align-items: center;
  justify-content: center;
}

@media screen and (min-width: 769px) {
  .main_lp .three_reason li .image_cycle {
    top: -40px;
    width: 80px;
    height: 80px;
  }
}
@media screen and (max-width: 768px) {
  .main_lp .three_reason li .image_cycle {
    top: -30px;
    width: 60px;
    height: 60px;
  }
}
.main_lp .three_reason li .image_cycle {
  background: #FFF;
  border-radius: 100vh;
}

.main_lp .three_reason li .image_cycle img {
  max-width: 85%;
  height: auto;
}

.main_lp .three_reason li .point {
  position: relative;
  color: #FFF;
  z-index: 1;
  text-align: center;
  letter-spacing: 1px;
  font-family: "Chatwork Sans B", sans-serif;
}

@media screen and (min-width: 769px) {
  .main_lp .three_reason li .point {
    width: 165px;
    padding: 3.5% 0;
    margin: 5% auto 4% auto;
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 768px) {
  .main_lp .three_reason li .point {
    width: 165px;
    padding: 3% 0;
    margin: 5% auto 3% auto;
    font-size: 1.5rem;
  }
}
.main_lp .three_reason li .point::before {
  transform: skewX(-25deg);
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: -1;
  background-color: #f03748;
}

.main_lp .three_reason li h3 {
  line-height: 1.4;
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(1.6rem, 2vw, 1.8rem);
}

@media screen and (min-width: 769px) {
  .main_lp .three_reason li h3 {
    text-align: center;
    height: 75px;
    display: flex;
    align-items: center;
    justify-content: center;
  }
}
@media screen and (max-width: 768px) {
  .main_lp .three_reason li h3 {
    padding: 3% 6% 4% 6%;
    text-align: center;
  }
}
.main_lp .three_reason li .txt {
  line-height: 1.6;
  font-size: clamp(1.3rem, 2vw, 1.5rem);
  letter-spacing: 1px;
}

@media screen and (min-width: 769px) {
  .main_lp .three_reason li .txt {
    padding: 0% 6% 7% 6%;
  }
}
@media screen and (max-width: 768px) {
  .main_lp .three_reason li .txt {
    padding: 0% 6% 7% 6%;
  }
}
@media screen and (min-width: 769px) {
  .main_lp #service {
    background-repeat: no-repeat;
    background-color: #fff7f7;
    background-image: url(../img/lp/icn_cb_red_2.svg), url(../img/lp/icn_cb_red_2.svg);
    background-size: 430px auto, 430px auto;
    background-position: top -270px right -215px, bottom -215px left -215px;
  }
}
@media screen and (max-width: 768px) {
  .main_lp #service {
    background-repeat: no-repeat;
    background-color: #fff7f7;
    background-image: url(../img/lp/icn_cb_red_2.svg), url(../img/lp/icn_cb_red_2.svg);
    background-size: 100px auto, 100px auto;
    background-position: top -50px right -50px, bottom -50px left -50px;
  }
}
.main_lp #service .sub_text {
  margin-top: 20px;
  line-height: 1.3;
  font-size: clamp(1.2rem, 2vw, 1.4rem);
}

@media screen and (min-width: 769px) {
  .main_lp .second_a02 .a02_box_wrap {
    display: flex;
    gap: 25px 2%;
    flex-wrap: wrap;
  }
}
@media screen and (max-width: 768px) {
  .main_lp .second_a02 .a02_box_wrap {
    display: flex;
    gap: 20px 2%;
    flex-wrap: wrap;
    align-items: stretch;
  }
}
.main_lp .second_a02 .a02_box_wrap .a02_box {
  border: 2px solid #f03748;
  background: #FFF;
}

@media screen and (min-width: 769px) {
  .main_lp .second_a02 .a02_box_wrap .a02_box {
    border-radius: 20px;
    width: 32%;
  }
}
@media screen and (max-width: 768px) {
  .main_lp .second_a02 .a02_box_wrap .a02_box {
    border-radius: 15px;
    width: 49%;
    padding-bottom: 5px;
  }
  .main_lp .second_a02 .a02_box_wrap .a02_box:last-child {
    margin-bottom: 0px;
  }
}
.main_lp .second_a02 .a02_box_wrap .a02_box p {
  background: #f03748;
  text-align: center;
  color: #FFF;
  letter-spacing: 2px;
}

@media screen and (min-width: 769px) {
  .main_lp .second_a02 .a02_box_wrap .a02_box p {
    border-radius: 17px 17px 0 0;
    padding: 15px 0;
    font-size: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .main_lp .second_a02 .a02_box_wrap .a02_box p {
    border-radius: 12px 12px 0 0;
    padding: 10px 0;
    font-size: 1.4rem;
  }
}
@media screen and (min-width: 769px) {
  .main_lp .second_a02 .a02_box_wrap .a02_box ul {
    padding: 4% 4% 5% 4%;
  }
}
@media screen and (max-width: 768px) {
  .main_lp .second_a02 .a02_box_wrap .a02_box ul {
    padding: 1% 3% 3% 3%;
  }
}
.main_lp .second_a02 .a02_box_wrap .a02_box ul li {
  position: relative;
}

@media screen and (min-width: 769px) {
  .main_lp .second_a02 .a02_box_wrap .a02_box ul li {
    margin: 10px 0 0 15px;
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 768px) {
  .main_lp .second_a02 .a02_box_wrap .a02_box ul li {
    margin: 10px 0 0 5px;
    font-size: 1.1rem;
  }
}
.main_lp .second_a02 .a02_box_wrap .a02_box ul li::before {
  content: "・";
  position: absolute;
  font-size: 20px;
}

@media screen and (min-width: 769px) {
  .main_lp .second_a02 .a02_box_wrap .a02_box ul li::before {
    top: -4px;
    left: -20px;
  }
}
@media screen and (max-width: 768px) {
  .main_lp .second_a02 .a02_box_wrap .a02_box ul li::before {
    top: -5px;
    left: -14px;
  }
}
@media screen and (min-width: 769px) {
  .main_lp .a04_2 {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 780px;
    margin: 60px auto 0 auto;
    gap: 0 6%;
  }
}
@media screen and (max-width: 768px) {
  .main_lp .a04_2 {
    margin: 30px auto 0 auto;
  }
}
@media screen and (min-width: 769px) {
  .main_lp .a04_2 .a04_2_in {
    width: 47%;
  }
}
@media screen and (max-width: 768px) {
  .main_lp .a04_2 .a04_2_in {
    width: 80%;
    text-align: center;
    margin: 0 auto 20px;
  }
}
.main_lp .a04_2 .a04_2_in img {
  width: 100%;
  height: auto;
}

.main_lp .a04_2 ul {
  border-top: 2px dotted #CCC;
}

@media screen and (min-width: 769px) {
  .main_lp .a04_2 ul {
    padding-top: 15px;
    width: 47%;
  }
}
@media screen and (max-width: 768px) {
  .main_lp .a04_2 ul {
    padding-top: 10px;
  }
}
.main_lp .a04_2 ul li {
  background-image: url(../img/lp/accounting/icn_fv_check.png);
  background-repeat: no-repeat;
  line-height: 1.4;
  border-bottom: 2px dotted #CCC;
}

@media screen and (min-width: 769px) {
  .main_lp .a04_2 ul li {
    margin-bottom: 20px;
    padding: 0px 0px 20px 27px;
    background-size: 19px 19px;
    background-position: left 0px top 4px;
    font-size: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .main_lp .a04_2 ul li {
    margin-bottom: 10px;
    padding: 0px 0px 10px 20px;
    background-size: 14px 14px;
    background-position: left 0px top 2px;
    font-size: 1.4rem;
  }
}
.main_lp .a04_2 ul li:last-child {
  margin-bottom: 0;
}

.main_lp #a05 {
  background-image: url(../img/bg_top_flow.png);
  background-repeat: repeat;
}

@media screen and (min-width: 769px) {
  .main_lp .a05 {
    display: flex;
    flex-wrap: wrap;
    gap: 0px 2%;
  }
}
@media screen and (max-width: 768px) {
  .main_lp .a05 {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 60px 4%;
    margin-top: 50px;
  }
}
.main_lp .a05 li {
  position: relative;
  background: #FFF;
}

@media screen and (min-width: 769px) {
  .main_lp .a05 li {
    border-radius: 20px;
    padding: 30px 20px 10px 20px;
    width: 18.4%;
  }
}
@media screen and (max-width: 768px) {
  .main_lp .a05 li {
    border-radius: 10px;
    width: 47%;
    padding: 20px 10px 10px 10px;
  }
}
.main_lp .a05 li img {
  display: block;
  height: auto;
}

@media screen and (min-width: 769px) {
  .main_lp .a05 li img {
    margin: 20px auto;
    max-width: 120px;
  }
}
@media screen and (max-width: 768px) {
  .main_lp .a05 li img {
    margin: 10px auto;
    max-width: 70px;
  }
}
.main_lp .a05 li .flow {
  position: absolute;
  color: #FFF;
  z-index: 1;
  text-align: center;
  letter-spacing: 1px;
  font-family: "Chatwork Sans B", sans-serif;
}

@media screen and (min-width: 769px) {
  .main_lp .a05 li .flow {
    width: 135px;
    padding: 4% 3.5%;
    margin: 7% auto 5% auto;
    font-size: 1.8rem;
    top: -20px;
    left: 0;
    right: 0;
    margin: auto;
  }
}
@media screen and (max-width: 768px) {
  .main_lp .a05 li .flow {
    width: 95px;
    padding: 3% 0;
    margin: 5% auto 3% auto;
    font-size: 1.5rem;
    top: -20px;
    left: 0;
    right: 0;
    margin: auto;
  }
}
.main_lp .a05 li .flow::before {
  transform: skewX(-25deg);
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: -1;
  background-color: #f03748;
}

.main_lp .a05 li h3 {
  border-top: 2px solid #f03748;
  border-bottom: 2px solid #f03748;
  font-family: "Chatwork Sans B", sans-serif;
  text-align: center;
  color: #f03748;
}

@media screen and (min-width: 769px) {
  .main_lp .a05 li h3 {
    margin-bottom: 20px;
    padding: 4.5% 0 3.5%;
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 768px) {
  .main_lp .a05 li h3 {
    margin-bottom: 10px;
    padding: 4.5% 0 3.5%;
    font-size: 1.4rem;
  }
}
.main_lp .a05 li p {
  line-height: 1.4;
}

@media screen and (min-width: 769px) {
  .main_lp .a05 li p {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 768px) {
  .main_lp .a05 li p {
    font-size: 1.4rem;
  }
}
@media screen and (min-width: 769px) {
  .main_lp .a06 {
    display: flex;
    flex-wrap: wrap;
    gap: 0px 2%;
  }
}
@media screen and (max-width: 768px) {
  .main_lp .a06 {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0px 3%;
  }
}
.main_lp .a06 li {
  position: relative;
  background: #F0F0F0;
  border: 2px solid #2bb0e9;
}

@media screen and (min-width: 769px) {
  .main_lp .a06 li {
    border-radius: 20px;
    width: 18.4%;
  }
}
@media screen and (max-width: 768px) {
  .main_lp .a06 li {
    border-radius: 10px;
    width: 47%;
    margin-bottom: 35px;
    min-height: 220px;
  }
}
.main_lp .a06 li h3 {
  font-family: "Chatwork Sans B", sans-serif;
  text-align: center;
  color: #FFF;
  background-color: #2bb0e9;
}

@media screen and (min-width: 769px) {
  .main_lp .a06 li h3 {
    border-radius: 17px 17px 0 0;
    padding: 7.5% 0 6.5%;
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 768px) {
  .main_lp .a06 li h3 {
    border-radius: 8px 8px 0 0;
    padding: 4.5% 0 3.5%;
    font-size: 1.4rem;
  }
}
.main_lp .a06 li .plan_p {
  text-align: center;
  line-height: 1.4;
}

@media screen and (min-width: 769px) {
  .main_lp .a06 li .plan_p {
    margin: 0 10%;
    padding: 8% 0;
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 768px) {
  .main_lp .a06 li .plan_p {
    padding: 6% 0;
    font-size: 1.4rem;
  }
}
.main_lp .a06 li .plan_p span {
  font-family: "Chatwork Sans B", sans-serif;
}

@media screen and (min-width: 769px) {
  .main_lp .a06 li .plan_p span {
    font-size: 2.8rem;
  }
}
@media screen and (max-width: 768px) {
  .main_lp .a06 li .plan_p span {
    font-size: 2.2rem;
  }
}
.main_lp .a06 li .plan_border {
  border-top: 2px solid #c7cad1;
  border-bottom: 2px solid #c7cad1;
}

.main_lp .a06 li .plan_custom {
  line-height: 1.4;
}

@media screen and (min-width: 769px) {
  .main_lp .a06 li .plan_custom {
    margin: 70px 10% 20px 10%;
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 768px) {
  .main_lp .a06 li .plan_custom {
    margin: 30px 10% 20px 10%;
    font-size: 1.4rem;
  }
}
.main_lp .a06 li .btn {
  width: 90%;
  margin: 0 auto;
}

@media screen and (min-width: 769px) {
  .main_lp .a06 li .btn span {
    padding: 10px 0;
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 768px) {
  .main_lp .a06 li .btn span {
    padding: 10px 0;
    font-size: 1.4rem;
  }
}
@media screen and (min-width: 769px) {
  .main_lp #a06 .top_contents_button .btn {
    width: 460px;
  }
}
@media screen and (max-width: 768px) {
  .main_lp #a06 .top_contents_button .btn {
    width: 80%;
  }
}
.lp_logo_list {
  display: flex;
  gap: 25px 2%;
  flex-wrap: wrap;
  justify-content: center;
}

.lp_logo_list li {
  position: relative;
  border: 1px solid #f0f0f0;
  display: flex;
  align-items: center;
  justify-content: center;
}

@media screen and (min-width: 769px) {
  .lp_logo_list li {
    width: 18%;
    height: 134px;
  }
}
@media screen and (max-width: 768px) {
  .lp_logo_list li {
    width: 49%;
    height: 90px;
  }
}
.lp_logo_list li img {
  display: block;
  margin: 0 auto 15px;
  width: 100%;
  height: auto;
}

.lp_logo_list li span {
  display: block;
  width: 100%;
  text-align: center;
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
}

@media screen and (min-width: 769px) {
  .lp_logo_list li span {
    font-size: 1.2rem;
    bottom: 5px;
  }
}
@media screen and (max-width: 768px) {
  .lp_logo_list li span {
    font-size: 1.1rem;
    bottom: 5px;
  }
}
.btn {
  position: relative;
}

.btn.lp_type_blue {
  background: #007bc1;
}

.btn.lp_type_blue span {
  border: 3px solid #007bc1;
}

.btn_inquiry.lp_type_blue span {
  border: 3px solid #007bc1;
  color: #007bc1 !important;
}

.btn_inquiry.lp_type_blue span::after {
  background: url(../img/icn_bot_arrow_blue.svg) no-repeat center/100% 100% !important;
}

.contact.lp_type_blue span {
  border: 3px solid #007bc1;
  color: #007bc1 !important;
}

.contact.lp_type_blue span::after {
  background: url(../img/icn_bot_arrow_blue.svg) no-repeat center/100% 100% !important;
}

.edit_time::before {
  content: "＼30秒で入力完了／";
  position: absolute;
  color: #000;
  font-size: clamp(1.4rem, 2vw, 1.8rem);
  top: -22px;
  margin: auto;
}

.a01_lp .a01_list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}

@media screen and (min-width: 769px) {
  .a01_lp .a01_list {
    width: 100%;
    max-width: 950px;
    margin: 0 auto;
    gap: 40px 5%;
  }
}
@media screen and (max-width: 768px) {
  .a01_lp .a01_list {
    gap: 30px 3%;
  }
}
@media screen and (min-width: 769px) {
  .a01_lp .a01_list li {
    width: 29%;
  }
}
@media screen and (max-width: 768px) {
  .a01_lp .a01_list li {
    width: 47%;
  }
}
.a01_lp .a01_list li {
  text-align: center;
  position: relative;
}

.a01_lp .a01_list li img {
  height: auto;
}

@media screen and (min-width: 769px) {
  .a01_lp .a01_list li img {
    width: 80%;
  }
}
@media screen and (max-width: 768px) {
  .a01_lp .a01_list li img {
    width: 80%;
  }
}
@media screen and (min-width: 769px) {
  .a01_lp .a01_list li div {
    padding: 3%;
  }
}
@media screen and (max-width: 768px) {
  .a01_lp .a01_list li div {
    padding: 4%;
  }
}
.a01_lp .a01_list li div {
  position: relative;
  margin-bottom: 15px;
  background-color: #FFF;
  font-size: clamp(1.3rem, 2vw, 1.6rem);
  text-align: center;
  line-height: 1.5;
  border-radius: 15px;
}

.a01_lp .a01_list li div::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: -15px;
  left: 0;
  width: 0px;
  height: 0px;
  margin: auto;
  border-style: solid;
  border-color: #FFF transparent transparent transparent;
  border-width: 15px 10px 0 10px;
}

.a01_lp .a01_list li div span {
  color: #f03748;
  font-family: "Chatwork Sans EB", sans-serif;
}

@media screen and (max-width: 768px) {
  .fv_lp {
    height: auto;
    margin-top: -5px;
    padding-bottom: 0px;
    background: none;
  }
}
.fv_lp .inner {
  padding: 0;
}

@media screen and (min-width: 1220px) {
  .fv_lp .inner {
    display: flex;
    align-items: end;
  }
}
@media screen and (max-width: 1219px) {
  .fv_lp .inner {
    width: 98%;
    margin: 0 1%;
  }
}
@media screen and (min-width: 769px) {
  .fv_lp .inner .text {
    width: 52%;
    padding-left: 2%;
    margin: 0 auto;
  }
}
@media screen and (max-width: 768px) {
  .fv_lp .inner .text {
    overflow: hidden;
    margin: 0 auto;
    width: 100%;
  }
}
@media screen and (min-width: 769px) {
  .fv_lp .inner .text .catch {
    margin-top: 25px;
  }
}
@media screen and (max-width: 768px) {
  .fv_lp .inner .text .catch {
    margin-top: 22px;
    text-align: center;
  }
}
@media screen and (min-width: 769px) {
  .fv_lp .inner .text .catch .sub_catch {
    margin-bottom: 5px;
  }
}
@media screen and (max-width: 768px) {
  .fv_lp .inner .text .catch .sub_catch {
    margin-bottom: 10px;
  }
}
.fv_lp .inner .text .catch .sub_catch {
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(1.8rem, 2.6vw, 3.4rem);
}

.fv_lp .inner .text .catch .sub_catch span {
  color: #f8ac00;
}

@media screen and (min-width: 769px) {
  .fv_lp .inner .text .catch .main_catch img {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .fv_lp .inner .text .catch .main_catch img {
    width: 90%;
  }
}
.fv_lp .inner .text .catch .main_catch img {
  height: auto;
}

.fv_lp .inner .text .catch .main_catch {
  font-family: "Chatwork Sans EB", sans-serif;
  font-size: clamp(2.4rem, 3vw, 4.2rem);
  line-height: 1.2;
}

.fv_lp .inner .text .catch .main_catch span {
  font-size: clamp(3.2rem, 6vw, 6.6rem);
  color: #f03748;
}

.fv_lp .inner .text .catch .main_catch i {
  font-size: clamp(1.2rem, 1.8vw, 1.3rem);
  font-style: normal;
}

.fv_lp .inner .text .catch .main_catch a {
  text-decoration: underline;
}

.fv_lp .inner .text .catch .ill {
  text-align: center;
}

.fv_lp .inner .text .catch .ill img {
  width: 100%;
  max-width: 568px;
  height: auto;
}

@media screen and (min-width: 769px) {
  .fv_lp .inner .text .fv_lp_list {
    margin: 30px auto 20px;
  }
}
@media screen and (max-width: 768px) {
  .fv_lp .inner .text .fv_lp_list {
    width: 90%;
    margin: 20px auto 10px;
  }
}
.fv_lp .inner .text .fv_lp_list {
  border-radius: 15px;
}

@media screen and (max-width: 768px) {
  .fv_lp .inner .text .fv_lp_list p {
    text-align: center;
  }
}
.fv_lp .inner .text .fv_lp_list p {
  margin-bottom: 10px;
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(1.6rem, 2vw, 2.4rem);
  letter-spacing: 1px;
}

.fv_lp .inner .text .fv_lp_list p span {
  font-family: "Chatwork Sans EB", sans-serif;
  font-size: clamp(1.9rem, 4vw, 4.4rem);
}

.fv_lp .inner .text .fv_lp_list ul {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 10px 10px;
}

@media screen and (min-width: 769px) {
  .fv_lp .inner .text .fv_lp_list ul li {
    padding: 10px 10px 8px 10px;
  }
}
@media screen and (max-width: 768px) {
  .fv_lp .inner .text .fv_lp_list ul li {
    padding: 10px 10px 8px 10px;
  }
}
.fv_lp .inner .text .fv_lp_list ul li {
  width: 48%;
  border-radius: 10px;
  background: #22b396;
  font-size: clamp(1.4rem, 2vw, 1.8rem);
  letter-spacing: 1px;
  text-align: center;
  font-family: "Chatwork Sans B", sans-serif;
  color: #FFF;
}

.fv_lp .inner .text {
  /*.edit_time {
      margin-left: 4vw;
      font-size: clamp(1.4rem, 2vw, 1.8rem);
  }*/
}

.fv_lp .inner .text .text_info {
  position: relative;
  font-size: clamp(1.1rem, 2vw, 1.3rem);
  line-height: 1.4;
  font-family: "Chatwork Sans L", sans-serif;
}

@media screen and (min-width: 769px) {
  .fv_lp .inner .text .text_info {
    margin: 15px 15px 20px 15px;
    color: #808080;
  }
  .fv_lp .inner .text .text_info span {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .fv_lp .inner .text .text_info {
    width: 92%;
    margin: 0px auto;
    padding: 1% 4%;
    color: #444;
  }
}
.fv_lp .inner .text .text_info::before {
  content: "※";
  position: absolute;
  top: 0;
  left: -15px;
}

@media screen and (max-width: 768px) {
  .fv_lp .inner .text .text_info::before {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .fv_lp .inner .text .fv_sp_image {
    text-align: center;
    margin-bottom: 25px;
  }
  .fv_lp .inner .text .fv_sp_image img {
    display: block;
    margin: 0 auto;
    width: 80%;
    max-width: 400px;
    height: auto;
  }
}
@media screen and (min-width: 1220px) {
  .fv_lp .inner .text h1 {
    margin: 55px 0px 0px 40px;
  }
  .fv_lp .inner .text h1 img {
    width: 505px;
    height: auto;
  }
}
@media screen and (max-width: 1219px) {
  .fv_lp .inner .text h1 {
    text-align: center;
  }
  .fv_lp .inner .text h1 img {
    width: 75%;
    height: auto;
  }
}
@media screen and (max-width: 768px) {
  .fv_lp .inner .text h1 {
    text-align: center;
  }
  .fv_lp .inner .text h1 img {
    width: 75%;
    height: auto;
  }
}
@media screen and (min-width: 769px) {
  .fv_lp .inner .text .fv_btn {
    margin: 0px 0 0 0px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px 0;
  }
}
.fv_lp .inner .text .fv_btn .btn {
  width: 49%;
  display: flex;
  align-items: center;
  justify-content: center;
}

@media screen and (min-width: 769px) {
  .fv_lp .inner .text .fv_btn .btn span {
    display: block;
    text-align: center;
  }
}
.fv_lp .inner .text .fv_btn .btn span {
  font-size: clamp(1.5rem, 2vw, 2rem);
  padding-top: 2px;
  font-family: "Chatwork Sans B", sans-serif;
  padding: 15px 0;
}

@media screen and (max-width: 768px) {
  .fv_lp .inner .text .fv_btn .btn span {
    font-size: 1.6rem;
  }
}
.fv_lp .inner .text .fv_btn .btn.btn_inquiry {
  background: #FFF;
}

.fv_lp .inner .text .fv_btn .btn.btn_inquiry span {
  color: #f03748;
  font-family: "Chatwork Sans B", sans-serif;
}

.fv_lp .inner .text .fv_btn .btn.btn_inquiry span::after {
  background: url(../img/icn_bot_arrow_red.svg) no-repeat center/100% 100%;
}

@media screen and (min-width: 769px) {
  .fv_lp .inner .image {
    width: 45%;
    text-align: right;
    margin: 0 auto;
  }
}
@media screen and (max-width: 768px) {
  .fv_lp .inner .image {
    text-align: center;
    margin: 0 auto;
  }
}
@media screen and (min-width: 769px) {
  .fv_lp .inner .image img {
    width: 95%;
  }
}
@media screen and (max-width: 768px) {
  .fv_lp .inner .image img {
    width: 80%;
  }
}
.fv_lp .inner .image img {
  height: auto;
}

.fv_lp .fv_lp_sp {
  display: block;
}

.fv_lp .fv_lp_sp a {
  width: 80%;
}

.fv_lp .fv_lp_sp a.btn_inquiry {
  margin-top: 20px;
}

@media screen and (min-width: 769px) {
  .fv_lp.fv_lp2 .inner {
    align-items: center;
  }
}
@media screen and (min-width: 769px) and (min-width: 769px) {
  .fv_lp.fv_lp2 .inner .text .catch {
    margin-top: 0;
  }
}
@media screen and (min-width: 769px) {
  .fv_lp.fv_lp2 .inner .fv_lp_list {
    margin: 13px auto 30px;
  }
}
@media screen and (max-width: 768px) {
  .fv_lp.fv_lp2 .inner .fv_lp_list {
    width: 90%;
    margin: 10px auto 0px;
  }
}
.fv_lp.fv_lp2 .inner .fv_lp_list {
  background: #F1F1F1;
  border-radius: 15px;
  padding: 20px;
}

.fv_lp.fv_lp2 .inner .fv_lp_list p {
  margin-bottom: 10px;
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(1.6rem, 2vw, 2.4rem);
  text-align: center;
  letter-spacing: 1px;
}

.fv_lp.fv_lp2 .inner .fv_lp_list ul {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 10px 10px;
}

@media screen and (min-width: 769px) {
  .fv_lp.fv_lp2 .inner .fv_lp_list ul li {
    padding: 10px 10px 8px 10px;
  }
}
@media screen and (max-width: 768px) {
  .fv_lp.fv_lp2 .inner .fv_lp_list ul li {
    padding: 10px 10px 8px 10px;
  }
}
.fv_lp.fv_lp2 .inner .fv_lp_list ul li {
  width: 48%;
  border-radius: 10px;
  background: #fed7da;
  font-size: clamp(1.4rem, 2vw, 1.8rem);
  letter-spacing: 1px;
  text-align: center;
  font-family: "Chatwork Sans B", sans-serif;
  color: #000;
}

@media screen and (min-width: 769px) {
  .fv_lp.fv_lp2 .fv_lp_sp {
    display: none;
  }
}
.fv_lp.fv_lp2 .fv_lp_sp a {
  width: 80%;
}

.fv_lp.fv_lp2 .fv_lp_sp a.btn_inquiry {
  margin-top: 20px;
}

.fv_lp_page_button_2 {
  background: #FFF7F7;
  background: #FFF7F7;
}

@media screen and (min-width: 769px) {
  .fv_lp_page_button_2 {
    padding: 40px 0 25px;
  }
}
@media screen and (max-width: 768px) {
  .fv_lp_page_button_2 {
    padding: 25px 0 25px;
  }
}
.fv_lp_page_button_2 .page_button_2 {
  margin: 0 auto;
}

@media screen and (min-width: 769px) {
  .fv_lp_form .inner {
    gap: 0 30px;
  }
}
@media screen and (max-width: 768px) {
  .fv_lp_form .inner {
    width: 100%;
    margin: 0;
  }
}
.fv_lp_form .text {
  width: auto !important;
  flex: 1;
}

.fv_lp_form .fv_lp_form_in {
  width: min(100%, 420px) !important;
}

@media screen and (max-width: 768px) {
  .fv_lp_form .fv_lp_form_in {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
}
.column-sub {
  position: relative;
  z-index: 2;
  background-color: #f7f7f7;
}

@media screen and (min-width: 960px) {
  .column-sub {
    flex: 0 0 auto;
    width: min(100%, 420px);
    padding: 16px 22px;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.16);
  }
}
@media screen and (max-width: 959px) {
  .column-sub {
    padding: 40px 4%;
  }
}
.form-heading {
  position: relative;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(1.8rem, 1.92vw, 2.4rem);
  line-height: 1.4;
  text-align: center;
}

.form-heading::before, .form-heading::after {
  position: absolute;
  bottom: 0;
  width: 2px;
  background-color: #191919;
  content: "";
}

@media screen and (min-width: 769px) {
  .form-heading::before, .form-heading::after {
    height: 56px;
  }
}
@media screen and (max-width: 768px) {
  .form-heading::before, .form-heading::after {
    height: 48px;
  }
}
.form-heading::before {
  left: -16px;
  rotate: -30deg;
}

.form-heading::after {
  right: -16px;
  rotate: 30deg;
}

.form-title {
  margin-top: 10px;
  font-family: "Chatwork Sans B", sans-serif;
  font-size: 1.6rem;
}

.form-point {
  background-color: #FFF;
}

@media screen and (min-width: 769px) {
  .form-point {
    margin-top: 16px;
    padding: 16px;
  }
}
@media screen and (max-width: 768px) {
  .form-point {
    margin-top: 24px;
    padding: 16px;
  }
}
.form-point li {
  display: flex;
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(1.4rem, 1.28vw, 1.6rem);
  line-height: 1.6;
  align-items: center;
  -moz-column-gap: 8px;
       column-gap: 8px;
}

.form-point li::before {
  width: 16px;
  height: 16px;
  background-image: url(../img/icn_checkbox.svg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 100% auto;
  content: "";
}

.form .mktoForm select.mktoField {
  box-sizing: border-box;
}

.form .mktoHtmlText.mktoHasWidth {
  padding: 0.5em 0 0 !important;
}

div.mktoRequiredField label.mktoLabel.mktoHasWidth:after {
  content: "＃";
  width: 20px;
  height: 16px;
  font-size: 10px;
  line-height: 1;
  text-shadow: none;
  color: #F03648;
  background: none;
  border-radius: 3px;
  margin-left: 0px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.marketo_comment {
  margin-top: 3px;
  font-size: 10px;
  line-height: 1.5;
  text-align: left;
}

.marketo_comment:first-child {
  margin-top: 15px;
}

.marketo_comment a {
  color: #f03748;
}

/* --------------------------------------------
東証上場付きheader
-------------------------------------------- */
.h_logo_jpx {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
}

.h_logo_jpx .logo_cwa {
  width: auto;
  height: 67px;
  margin-left: 15px;
}

@media screen and (max-width: 980px) {
  .h_logo_jpx .logo_cwa {
    margin-left: 10px;
    height: 45px;
  }
}
@media screen and (max-width: 768px) {
  .h_logo_jpx .logo_cwa {
    height: 35px;
  }
}
.h_logo_jpx .logo_jpx {
  width: auto;
  height: 63px;
  margin-left: 30px;
}

@media (min-width: 768px) and (max-width: 1424px) {
  .h_logo_jpx .logo_jpx {
    margin-left: 15px;
  }
}
@media screen and (max-width: 980px) {
  .h_logo_jpx .logo_jpx {
    height: 45px;
    margin-left: 15px;
  }
}
@media screen and (max-width: 768px) {
  .h_logo_jpx .logo_jpx {
    height: 35px;
    margin-left: 10px;
  }
}
.h_logo_jpx p {
  margin-left: 15px;
  font-size: clamp(0.9rem, 1.5vw, 1.1rem);
  line-height: 1.4;
}

@media screen and (max-width: 768px) {
  .h_logo_jpx p {
    line-height: 1.2;
    margin-left: 10px;
  }
}
@media screen and (min-width: 1425px) {
  .h_logo_jpx {
    width: 45%;
    max-width: 635px;
  }
}
.h_nav {
  display: flex;
  margin-left: auto;
  flex: 0 0 0;
  align-items: center;
  gap: 0 20px;
}

@media screen and (min-width: 1425px) {
  .h_nav {
    width: 55%;
  }
}
@media (min-width: 768px) and (max-width: 1424px) {
  .h_nav {
    width: 59%;
  }
}
@media (min-width: 768px) and (max-width: 1424px) {
  .h_nav .nav .nav_btn a {
    width: 120px;
  }
}
@media (min-width: 981px) and (max-width: 1260px) {
  .h_nav ul.nav li:nth-child(1),
  .h_nav ul.nav li:nth-child(2),
  .h_nav ul.nav li:nth-child(3),
  .h_nav ul.nav li:nth-child(4) {
    display: none;
  }
  .h_nav ul.nav li {
    height: 80px;
  }
}
/* --------------------------------------------
cwa_case
-------------------------------------------- */
#cwa_case {
  background: #fff7f7;
}

@media screen and (min-width: 769px) {
  #cwa_case .cwa_case_list {
    display: flex;
    justify-content: space-between;
    gap: 0 33px;
    width: 100%;
    max-width: 1180px;
    margin: 0 auto;
  }
}
@media screen and (min-width: 769px) {
  #cwa_case .cwa_case_list .cwa_case_list_box {
    width: 33%;
  }
}
@media screen and (max-width: 768px) {
  #cwa_case .cwa_case_list .cwa_case_list_box {
    margin-bottom: 25px;
  }
}
#cwa_case .cwa_case_list .cwa_case_list_box {
  border-radius: 17px;
  background-color: #fff;
  box-shadow: rgba(0, 0, 0, 0.08) 0px 0px 4px 0px;
}

#cwa_case .cwa_case_list .cwa_case_list_box img {
  width: 100%;
  height: auto;
  border-radius: 17px 17px 0 0;
}

#cwa_case .cwa_case_list .cwa_case_list_box .cwa_case_list_box_text {
  padding: 20px 25px;
}

#cwa_case .cwa_case_list .cwa_case_list_box .cwa_case_list_box_text .company_name {
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(1.5rem, 2vw, 1.8rem);
}

#cwa_case .cwa_case_list .cwa_case_list_box .cwa_case_list_box_text h3 {
  padding: 20px 0px 10px;
  line-height: 1.3;
  font-family: "Chatwork Sans EB", sans-serif;
  font-size: clamp(1.6rem, 2vw, 1.8rem);
  color: #f03748;
}

#cwa_case .cwa_case_list .cwa_case_list_box .cwa_case_list_box_text ul {
  display: flex;
  justify-content: space-between;
  gap: 0px 6px;
  padding-bottom: 25px;
}

#cwa_case .cwa_case_list .cwa_case_list_box .cwa_case_list_box_text ul li {
  border-radius: 6px;
  background-color: #13202f;
  color: #fff;
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(1.4rem, 2vw, 1.3rem);
  padding: 5px 8px 3px 8px;
  text-align: center;
}

#cwa_case .cwa_case_list .cwa_case_list_box .cwa_case_list_box_text .case_text {
  font-size: clamp(1.4rem, 2vw, 1.5rem);
  line-height: 1.6;
}

/* 導入事例・お客様の声 */
.cwa-7_case {
  background-repeat: no-repeat;
  background-size: cover;
}

@media screen and (min-width: 769px) {
  .cwa-7_case .inner {
    width: auto;
    margin: 0 auto;
    padding: 80px 32px;
  }
}
@media screen and (max-width: 768px) {
  .cwa-7_case .inner {
    width: 92%;
    margin: 0 4%;
    padding: 40px 0 40px 0;
  }
}
.cwa-7_case .company_name {
  font-size: clamp(1.6rem, 2vw, 2.3rem) !important;
}

.cwa-7_case h3 {
  border-bottom: 1px solid #ced0d3;
  padding: 20px 0px 20px !important;
  margin-bottom: 20px;
}

.cwa-7_case .cwa_case_result {
  margin-top: 20px;
  display: flex;
  align-items: stretch;
}

.cwa-7_case .cwa_case_result .cwa_case_result_l {
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 5px 0 0 5px;
  padding: 10px 8px;
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(1.4rem, 1.8vw, 1.4rem);
  writing-mode: vertical-rl;
  background: #f03748;
  color: #FFF;
}

.cwa-7_case .cwa_case_result .cwa_case_result_r {
  display: flex;
  justify-content: center;
  flex-direction: column;
  gap: 10px 0px;
  padding: 20px 15px;
  background: #FFF;
  border: 1px solid #ced0d3;
  border-left: none;
  border-radius: 0 5px 5px 0;
  flex: 1;
}

.cwa-7_case .cwa_case_result .cwa_case_result_r .cwa_case_result_r_txt {
  padding-left: 13px;
  position: relative;
  font-family: "Chatwork Sans B", sans-serif;
  font-size: clamp(1.4rem, 1.8vw, 1.5rem);
}

.cwa-7_case .cwa_case_result .cwa_case_result_r .cwa_case_result_r_txt::before, .cwa-7_case .cwa_case_result .cwa_case_result_r .cwa_case_result_r_txt::after {
  content: "";
  display: block;
  position: absolute;
}

.cwa-7_case .cwa_case_result .cwa_case_result_r .cwa_case_result_r_txt::before {
  width: 12px;
  height: 12px;
  border-radius: 100vh;
  background: #f03748;
  left: -3px;
  top: 1px;
}

.cwa-7_case .cwa_case_result .cwa_case_result_r .cwa_case_result_r_txt::after {
  border-left: 2px solid #FFF;
  border-bottom: 2px solid #FFF;
  width: 7px;
  height: 5px;
  transform: rotate(-45deg);
  left: 0px;
  top: 4px;
}

/* ==============================================================================
   swiper-bundle.min.css
   ============================================================================== */
/**
 * Swiper 11.2.10
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2025 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: June 28, 2025
 */
@font-face {
  font-family: swiper-icons;
  src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA");
  font-weight: 400;
  font-style: normal;
}
:root {
  --swiper-theme-color:#007aff;
}

:host {
  position: relative;
  display: block;
  margin-left: auto;
  margin-right: auto;
  z-index: 1;
}

.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  z-index: 1;
  display: block;
}

.swiper-vertical > .swiper-wrapper {
  flex-direction: column;
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
  box-sizing: content-box;
}

.swiper-android .swiper-slide, .swiper-ios .swiper-slide, .swiper-wrapper {
  transform: translate3d(0px, 0, 0);
}

.swiper-horizontal {
  touch-action: pan-y;
}

.swiper-vertical {
  touch-action: pan-x;
}

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
  display: block;
}

.swiper-slide-invisible-blank {
  visibility: hidden;
}

.swiper-autoheight, .swiper-autoheight .swiper-slide {
  height: auto;
}

.swiper-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height;
}

.swiper-backface-hidden .swiper-slide {
  transform: translateZ(0);
  backface-visibility: hidden;
}

.swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px;
}

.swiper-3d .swiper-wrapper {
  transform-style: preserve-3d;
}

.swiper-3d {
  perspective: 1200px;
}

.swiper-3d .swiper-cube-shadow, .swiper-3d .swiper-slide {
  transform-style: preserve-3d;
}

.swiper-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}

.swiper-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}

.swiper-css-mode.swiper-horizontal > .swiper-wrapper {
  scroll-snap-type: x mandatory;
}

.swiper-css-mode.swiper-vertical > .swiper-wrapper {
  scroll-snap-type: y mandatory;
}

.swiper-css-mode.swiper-free-mode > .swiper-wrapper {
  scroll-snap-type: none;
}

.swiper-css-mode.swiper-free-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: none;
}

.swiper-css-mode.swiper-centered > .swiper-wrapper::before {
  content: "";
  flex-shrink: 0;
  order: 9999;
}

.swiper-css-mode.swiper-centered > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: center center;
  scroll-snap-stop: always;
}

.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
  margin-inline-start: var(--swiper-centered-offset-before);
}

.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
  height: 100%;
  min-height: 1px;
  width: var(--swiper-centered-offset-after);
}

.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
  margin-block-start: var(--swiper-centered-offset-before);
}

.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper::before {
  width: 100%;
  min-width: 1px;
  height: var(--swiper-centered-offset-after);
}

.swiper-3d .swiper-slide-shadow, .swiper-3d .swiper-slide-shadow-bottom, .swiper-3d .swiper-slide-shadow-left, .swiper-3d .swiper-slide-shadow-right, .swiper-3d .swiper-slide-shadow-top {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}

.swiper-3d .swiper-slide-shadow {
  background: rgba(0, 0, 0, 0.15);
}

.swiper-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent;
}

.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader, .swiper:not(.swiper-watch-progress) .swiper-lazy-preloader {
  animation: swiper-preloader-spin 1s infinite linear;
}

.swiper-lazy-preloader-white {
  --swiper-preloader-color:#fff;
}

.swiper-lazy-preloader-black {
  --swiper-preloader-color:#000;
}

@keyframes swiper-preloader-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.swiper-virtual .swiper-slide {
  -webkit-backface-visibility: hidden;
  transform: translateZ(0);
}

.swiper-virtual.swiper-css-mode .swiper-wrapper::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
}

.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after {
  height: 1px;
  width: var(--swiper-virtual-size);
}

.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after {
  width: 1px;
  height: var(--swiper-virtual-size);
}

:root {
  --swiper-navigation-size:44px;
}

.swiper-button-next, .swiper-button-prev {
  position: absolute;
  top: var(--swiper-navigation-top-offset, 50%);
  width: calc(var(--swiper-navigation-size) / 44 * 27);
  height: var(--swiper-navigation-size);
  margin-top: calc(0px - var(--swiper-navigation-size) / 2);
  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));
}

.swiper-button-next.swiper-button-disabled, .swiper-button-prev.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none;
}

.swiper-button-next.swiper-button-hidden, .swiper-button-prev.swiper-button-hidden {
  opacity: 0;
  cursor: auto;
  pointer-events: none;
}

.swiper-navigation-disabled .swiper-button-next, .swiper-navigation-disabled .swiper-button-prev {
  display: none !important;
}

.swiper-button-next svg, .swiper-button-prev svg {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  transform-origin: center;
}

.swiper-rtl .swiper-button-next svg, .swiper-rtl .swiper-button-prev svg {
  transform: rotate(180deg);
}

.swiper-button-prev, .swiper-rtl .swiper-button-next {
  left: var(--swiper-navigation-sides-offset, 10px);
  right: auto;
}

.swiper-button-next, .swiper-rtl .swiper-button-prev {
  right: var(--swiper-navigation-sides-offset, 10px);
  left: auto;
}

.swiper-button-lock {
  display: none;
}

.swiper-button-next:after, .swiper-button-prev:after {
  font-family: swiper-icons;
  font-size: var(--swiper-navigation-size);
  text-transform: none !important;
  letter-spacing: 0;
  font-variant: initial;
  line-height: 1;
}

.swiper-button-prev:after, .swiper-rtl .swiper-button-next:after {
  content: "prev";
}

.swiper-button-next, .swiper-rtl .swiper-button-prev {
  right: var(--swiper-navigation-sides-offset, 10px);
  left: auto;
}

.swiper-button-next:after, .swiper-rtl .swiper-button-prev:after {
  content: "next";
}

.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: 0.3s opacity;
  transform: translate3d(0, 0, 0);
  z-index: 10;
}

.swiper-pagination.swiper-pagination-hidden {
  opacity: 0;
}

.swiper-pagination-disabled > .swiper-pagination, .swiper-pagination.swiper-pagination-disabled {
  display: none !important;
}

.swiper-horizontal > .swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction {
  bottom: var(--swiper-pagination-bottom, 8px);
  top: var(--swiper-pagination-top, auto);
  left: 0;
  width: 100%;
}

.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transform: scale(0.33);
  position: relative;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
  transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  transform: scale(0.33);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  transform: scale(0.33);
}

.swiper-pagination-bullet {
  width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));
  height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));
  display: inline-block;
  border-radius: var(--swiper-pagination-bullet-border-radius, 50%);
  background: var(--swiper-pagination-bullet-inactive-color, #000);
  opacity: var(--swiper-pagination-bullet-inactive-opacity, 0.2);
}

button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
}

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer;
}

.swiper-pagination-bullet:only-child {
  display: none !important;
}

.swiper-pagination-bullet-active {
  opacity: var(--swiper-pagination-bullet-opacity, 1);
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
}

.swiper-pagination-vertical.swiper-pagination-bullets, .swiper-vertical > .swiper-pagination-bullets {
  right: var(--swiper-pagination-right, 8px);
  left: var(--swiper-pagination-left, auto);
  top: 50%;
  transform: translate3d(0px, -50%, 0);
}

.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet, .swiper-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
  display: block;
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic, .swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  transform: translateY(-50%);
  width: 8px;
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet, .swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  transition: 0.2s transform, 0.2s top;
}

.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet, .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px);
}

.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic, .swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap;
}

.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet, .swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 0.2s transform, 0.2s left;
}

.swiper-horizontal.swiper-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 0.2s transform, 0.2s right;
}

.swiper-pagination-fraction {
  color: var(--swiper-pagination-fraction-color, inherit);
}

.swiper-pagination-progressbar {
  background: var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, 0.25));
  position: absolute;
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transform: scale(0);
  transform-origin: left top;
}

.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  transform-origin: right top;
}

.swiper-horizontal > .swiper-pagination-progressbar, .swiper-pagination-progressbar.swiper-pagination-horizontal, .swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite, .swiper-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: var(--swiper-pagination-progressbar-size, 4px);
  left: 0;
  top: 0;
}

.swiper-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite, .swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite, .swiper-pagination-progressbar.swiper-pagination-vertical, .swiper-vertical > .swiper-pagination-progressbar {
  width: var(--swiper-pagination-progressbar-size, 4px);
  height: 100%;
  left: 0;
  top: 0;
}

.swiper-pagination-lock {
  display: none;
}

.swiper-scrollbar {
  border-radius: var(--swiper-scrollbar-border-radius, 10px);
  position: relative;
  touch-action: none;
  background: var(--swiper-scrollbar-bg-color, rgba(0, 0, 0, 0.1));
}

.swiper-scrollbar-disabled > .swiper-scrollbar, .swiper-scrollbar.swiper-scrollbar-disabled {
  display: none !important;
}

.swiper-horizontal > .swiper-scrollbar, .swiper-scrollbar.swiper-scrollbar-horizontal {
  position: absolute;
  left: var(--swiper-scrollbar-sides-offset, 1%);
  bottom: var(--swiper-scrollbar-bottom, 4px);
  top: var(--swiper-scrollbar-top, auto);
  z-index: 50;
  height: var(--swiper-scrollbar-size, 4px);
  width: calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%));
}

.swiper-scrollbar.swiper-scrollbar-vertical, .swiper-vertical > .swiper-scrollbar {
  position: absolute;
  left: var(--swiper-scrollbar-left, auto);
  right: var(--swiper-scrollbar-right, 4px);
  top: var(--swiper-scrollbar-sides-offset, 1%);
  z-index: 50;
  width: var(--swiper-scrollbar-size, 4px);
  height: calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%));
}

.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: var(--swiper-scrollbar-drag-bg-color, rgba(0, 0, 0, 0.5));
  border-radius: var(--swiper-scrollbar-border-radius, 10px);
  left: 0;
  top: 0;
}

.swiper-scrollbar-cursor-drag {
  cursor: move;
}

.swiper-scrollbar-lock {
  display: none;
}

.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}

.swiper-zoom-container > canvas, .swiper-zoom-container > img, .swiper-zoom-container > svg {
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.swiper-slide-zoomed {
  cursor: move;
  touch-action: none;
}

.swiper .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000;
}

.swiper-free-mode > .swiper-wrapper {
  transition-timing-function: ease-out;
  margin: 0 auto;
}

.swiper-grid > .swiper-wrapper {
  flex-wrap: wrap;
}

.swiper-grid-column > .swiper-wrapper {
  flex-wrap: wrap;
  flex-direction: column;
}

.swiper-fade.swiper-free-mode .swiper-slide {
  transition-timing-function: ease-out;
}

.swiper-fade .swiper-slide {
  pointer-events: none;
  transition-property: opacity;
}

.swiper-fade .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-fade .swiper-slide-active {
  pointer-events: auto;
}

.swiper-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper.swiper-cube {
  overflow: visible;
}

.swiper-cube .swiper-slide {
  pointer-events: none;
  backface-visibility: hidden;
  z-index: 1;
  visibility: hidden;
  transform-origin: 0 0;
  width: 100%;
  height: 100%;
}

.swiper-cube .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-cube.swiper-rtl .swiper-slide {
  transform-origin: 100% 0;
}

.swiper-cube .swiper-slide-active, .swiper-cube .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper-cube .swiper-slide-active, .swiper-cube .swiper-slide-next, .swiper-cube .swiper-slide-prev {
  pointer-events: auto;
  visibility: visible;
}

.swiper-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0px;
  width: 100%;
  height: 100%;
  opacity: 0.6;
  z-index: 0;
}

.swiper-cube .swiper-cube-shadow:before {
  content: "";
  background: #000;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  filter: blur(50px);
}

.swiper-cube .swiper-slide-next + .swiper-slide {
  pointer-events: auto;
  visibility: visible;
}

.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-bottom, .swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-left, .swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-right, .swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-top {
  z-index: 0;
  backface-visibility: hidden;
}

.swiper.swiper-flip {
  overflow: visible;
}

.swiper-flip .swiper-slide {
  pointer-events: none;
  backface-visibility: hidden;
  z-index: 1;
}

.swiper-flip .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-flip .swiper-slide-active, .swiper-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-bottom, .swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-left, .swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-right, .swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-top {
  z-index: 0;
  backface-visibility: hidden;
}

.swiper-creative .swiper-slide {
  backface-visibility: hidden;
  overflow: hidden;
  transition-property: transform, opacity, height;
}

.swiper.swiper-cards {
  overflow: visible;
}

.swiper-cards .swiper-slide {
  transform-origin: center bottom;
  backface-visibility: hidden;
  overflow: hidden;
}/*# sourceMappingURL=style.css.map */