<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">@charset "UTF-8";
/* use npm version */
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
   ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */

html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
  margin-top: 0 !important;
}

/* Sections
   ========================================================================== */

/**
 * Remove the margin in all browsers.
 */

body {
  margin: 0;
  /* overflow: hidden; */
}

/**
 * Render the `main` element consistently in IE.
 */

main {
  display: block;
  position: relative;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr {
  -webkit-box-sizing: content-box;
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
 * 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: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */

a {
  background-color: transparent;
  cursor: pointer;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  -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;
}

/**
 * 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: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */

small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */

img {
  border-style: none;
}

/* Forms
   ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */

button,
input {
  /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */

button,
select {
  /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */

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

/**
 * Restore the focus styles unset by the previous rule.
 */

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */

legend {
  -webkit-box-sizing: border-box;
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */

textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */

[type="checkbox"],
[type="radio"] {
  -webkit-box-sizing: border-box;
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * 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 odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */

[type="search"] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

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

/* Misc
   ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */

template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */

[hidden] {
  display: none;
}

/* original */
html,
body,
h1,
h2,
h3,
h4,
h5,
h6,
a,
p,
span,
em,
small,
strong,
sub,
sup,
mark,
del,
ins,
strike,
abbr,
dfn,
blockquote,
q,
cite,
code,
pre,
li,
dl,
dt,
dd,
div,
section,
article,
main,
aside,
nav,
header,
hgroup,
footer,
img,
figure,
figcaption,
address,
time,
audio,
video,
canvas,
iframe,
details,
summary,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td {
  margin: 0;
  padding: 0;
  border: 0;
}
html {
  font-size: 62.5%;
}
body {
  font-size: 1.4rem;
  line-height: 1.5;
  letter-spacing: 0.04em;
}
article,
aside,
footer,
header,
nav,
section,
main {
  display: block;
}
* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
*:before,
*:after {
  -webkit-box-sizing: inherit;
  box-sizing: inherit;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
}
tr,
td,
th {
  vertical-align: middle;
}
th,
td {
  padding: 0.75rem;
}
th {
  text-align: left;
}
ol,
ul {
  margin: 0;
  list-style: none;
  padding: 0;
}
img,
video {
  max-width: 100%;
}
img {
  border-style: none;
  vertical-align: top;
}
code,
kbd,
tt,
var {
  color: #fff;
  background: #000;
  font-family: "Consolas", "monaco", monospace;
  font-size: 1.2rem;
}
dfn,
cite,
em,
i {
  font-style: italic;
}
dt {
  font-weight: bold;
}
dd {
  margin: 0 0 20px;
}
address {
  margin-bottom: 1rem;
  font-style: normal;
  line-height: inherit;
}
pre {
  overflow: auto;
  padding: 1.5rem;
  color: #fff;
  background: #000;
  font-family: "Consolas", "monaco", monospace;
  font-size: 1.2rem;
  line-height: 1.5;
}
#wpadminbar .ab-sub-wrapper,
#wpadminbar ul,
#wpadminbar ul li {
  opacity: 1;
}
#wpadminbar #wp-admin-bar-user-info .avatar {
  max-height: 64px;
}
.ja {
  font-family: "Noto Serif JP", serif;
}
.en {
  font-family: "Lato", sans-serif;
}
html {
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic",
    sans-serif;
  color: #222;
}
@media screen and (min-width: 769px) {
  body {
    position: relative;
  }
}
a {
  color: #222;
  text-decoration: none;
  word-break: break-all;
}
@media screen and (min-width: 769px) {
  a {
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  a:hover {
    opacity: 0.7;
  }
}
img {
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
}
@media screen and (max-width: 768px) {
  img {
    width: 100%;
  }
}

.is-pc-view {
  display: none;
}

.is-sp-view {
  display: block;
}

@media screen and (min-width: 1024px) {
  .is-pc-view {
    display: block;
  }

  .is-sp-view {
    display: none;
  }
}

.sub-title .en {
  font-weight: bold;
}

body {
  font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI",
    "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic",
    Verdana, Meiryo, sans-serif;
}

header {
  display: flex;
}

header .menu {
  width: 100%;
}

header .company-logo {
  height: 29.81px;
  width: auto;
}

.bg-gray {
  background: #f8f8f8;
}

.bg-light-gray {
  background: #f4f4f4;
}

.content {
  margin: auto;
  max-width: 1000px;
}

.btn-white {
  color: #e6531e;
  border: 1px solid #e6531e;
  border-radius: 5px;
  background: #ffffff;
}

.btn-white::after {
  content: "";
  position: absolute;
  right: 12px;
  display: inline-block;
  background-image: url("assets/images/common/arrow-right-orange.svg");
  background-size: contain;
  background-repeat: no-repeat;
  width: 9px;
  height: 9px;
  top: 50%;
  transform: translateY(-50%);
}

.btn-orange {
  background: #e6531e;
  color: #ffffff;
  border-radius: 5px;
  border: none;
}

.btn-orange::after {
  content: "";
  position: absolute;
  right: 12px;
  display: inline-block;
  color: #ffffff;
  background-image: url("assets/images/common/arrow-right-white.svg");
  background-size: contain;
  background-repeat: no-repeat;
  width: 9px;
  height: 9px;
  top: 50%;
  transform: translateY(-50%);
}

.btn-white-blue {
  color: #014f8d;
  border: 1px solid #014f8d;
  border-radius: 5px;
  background: #ffffff;
}

.btn-white-blue::after {
  content: "";
  position: absolute;
  right: 12px;
  display: inline-block;
  background-image: url("assets/images/common/arrow-right-blue.svg");
  background-size: contain;
  background-repeat: no-repeat;
  width: 9px;
  height: 9px;
  top: 50%;
  transform: translateY(-50%);
}

.btn-blue {
  color: #ffffff;
  border: none;
  border-radius: 5px;
  background: #014f8d;
}

.btn-blue::after {
  content: "";
  position: absolute;
  right: 12px;
  display: inline-block;
  background-image: url("assets/images/common/arrow-right-white.svg");
  background-size: contain;
  background-repeat: no-repeat;
  width: 9px;
  height: 9px;
  top: 50%;
  transform: translateY(-50%);
}

.comming-soon::after {
  background-image: none;
}

.main-title {
  font-size: 35px;
  font-weight: bold;
  letter-spacing: 0.2rem;
  margin-top: 12px;
}

.color-white {
  color: #ffffff;
}

.color-orange {
  color: #e6531e;
}

.color-blue {
  color: #014f8d;
}

.color-black {
  color: #000;
}

.color-thin-black {
  color: #313131;
}

.slide-number {
  font-family: "DIN Alternate", sans-serif;
  font-size: 45px;
  color: #014f8d;
  line-height: normal;
}

.slide-vertical-border {
  width: 2px;
  height: 47px;
  background: #014f8d;
  margin-left: 18px;
  margin-right: 18px;
}

.slide-title {
  font-size: 24px;
  color: #014f8d;
  font-weight: bold;
  letter-spacing: 0.145rem;
  line-height: 27px;
}

@media screen and (min-width: 1024px) {
  .slide-title {
    line-height: 42px;
  }
}

.slide-main-desc {
  font-size: 16px;
  font-weight: bold;
  letter-spacing: 0.2rem;
  margin-top: 20px;
}

.slide-sub-desc {
  width: 100%;
  font-size: 14px;
  margin-top: 20px;
}

@media screen and (min-width: 1024px) {
  .slide-sub-desc {
    width: 441px;
  }
}

.slide-pagination.is-sp-view {
  bottom: -90px !important;
}

@media screen and (min-width: 1024px) {
  .slide-pagination.is-pc-view {
    bottom: 0px !important;
  }
}

.top-mv {
  background: url(assets/images/top/top-mv-background.svg);
  background-repeat: no-repeat;
  background-size: cover;
  overflow: hidden;
  padding-bottom: 50px;
  position: relative;
  z-index: 2;
}

@media screen and (min-width: 1024px) {
  .top-mv {
    padding-bottom: 230px;
  }

  .top-mv .content {
    max-width: 1000px;
  }
}

header.sticky {
  display: none;
}

@media screen and (min-width: 1024px) {
  header.sticky {
    display: flex;
    width: 100%;
    margin-top: 0;
    height: fit-content;
    position: fixed;
    top: 46px;
    z-index: 2;
  }
}

header.sticky .header-inner {
  border-radius: 15px;
  background: #fff;
  margin-top: 0;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.menu-wrap.is-sp-view {
  width: 32px;
}

header.sticky .header-inner {
  padding-left: 24px;
  padding-right: 24px;
  margin-right: 50px;
  margin-left: 50px;
  width: 100%;
}

header.sticky .menu-wrap {
  display: flex;
}

@media screen and (min-width: 1024px) {
  .top-mv .menu-wrap {
    display: flex;
    align-items: center;
    font-size: 12px;
    font-weight: bold;
  }

  header.sticky .menu-wrap {
    display: none;
    align-items: center;
    font-size: 12px;
    height: 100%;
    font-weight: bold;
  }

  .top-mv .menu-wrap a:not(:last-child) {
    color: #ffffff;
  }

  .top-mv .menu-wrap p {
    margin-right: 30px;
    color: #ffffff;
  }

  header.sticky .menu-wrap.is-pc-view p {
    margin-right: 30px;
    color: #000;
  }

  header.sticky .menu-wrap.is-pc-view .contact-btn p {
    margin-right: 0;
    color: #ffffff;
  }

  .top-mv .sticky .menu-wrap a:not(:last-child) {
    margin-right: 30px;
    color: #000;
  }

  header.sticky .header-inner {
    padding-right: 0;
    overflow: hidden;
  }

  .top-mv .sticky .menu-wrap {
    height: 100%;
  }

  .top-mv .contact-btn {
    width: 148px;
    height: 38px;
    border-radius: 5px;
    background: #e6531e;
    border: none;
    color: #ffffff;
    font-family: "Lato", sans-serif;
    letter-spacing: 0.165rem;
    font-size: 10px;
  }

  header.sticky .contact-btn {
    width: 148px;
    height: 38px;
    border-radius: 5px;
    background: #e6531e;
    border: none;
    color: #ffffff;
    font-family: "Lato", sans-serif;
    letter-spacing: 0.165rem;
    font-size: 10px;
  }

  header.sticky .contact-btn {
    background: unset;
    height: 100%;
    border-radius: 0;
    background: #e6531e;
    display: flex;
    justify-content: center;
    align-items: center;
  }
}

.top-mv .header-inner {
  margin: 24px 24px 0;
  justify-content: space-between;
  width: 100%;
  align-items: center;
}

.top-mv .header-inner.is-sp-view {
  display: flex;
}

.header-inner.is-sp-view .menu-wrap {
  width: 32px;
}

@media screen and (min-width: 1024px) {
  .top-mv .header-inner.is-sp-view {
    display: none;
  }

  .top-mv .header-inner {
    display: flex;
    margin-top: 50px;
    margin: 50px 50px 0;
  }

  .top-mv .sticky .header-inner {
    overflow: hidden;
  }
}

.mv-align {
  margin-top: 74px;
  margin-left: 48px;
  margin-right: 48px;
}

@media screen and (min-width: 1024px) {
  .mv-align {
    margin-left: 74px;
    margin-right: 74px;
  }
}

.mv-align .btn-align a {
  display: block;
  margin-top: 16px;
}

.mv-align .visual-wrap {
  display: flex;
  align-items: center;
  position: relative;
}

.mv-align .visual-wrap .visual-badge {
  position: absolute;
  top: 10%;
  width: 28%;
  right: 5%;
}

@media screen and (min-width: 1024px) {
  .top-mv .btn-align.is-pc-view {
    display: flex;
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
  }

  .top-mv .btn-align.is-pc-view a {
    flex-grow: 1;
    display: block;
  }

  .top-mv .btn-align.is-pc-view a:not(:first-child) {
    margin-left: 7px;
  }
}

@media screen and (min-width: 1024px) {
  .mv-align {
    display: flex;
    justify-content: space-between;
    margin: auto;
    margin-top: 2%;
  }
}

.top-mv .desc-content .title-wrap p {
  font-size: 12px;
  font-weight: 500;
  width: fit-content;
  letter-spacing: 0.1rem;
  color: #ffffff;
  display: inline;
  line-height: 12px;
}

.top-mv .desc-content .title-wrap {
  padding: 10px;
  display: inline-block;
  border: 1px solid #ffffff;
}

.top-mv .desc-content .desc-wrap p {
  font-size: 31px;
  color: #ffffff;
  font-weight: bold;
  width: 100%;
}

@media screen and (min-width: 1024px) {
  .top-mv .desc-content .desc-wrap p {
    width: fit-content;
  }
}

.top-mv .desc-content .desc-wrap span {
  padding-bottom: 4px;
  border-color: #fff;
  border-bottom: 3px solid #ffffff;
  line-height: 60px;
  letter-spacing: 0.8rem;
}

.top-mv .desc-content .desc-wrap {
  margin-top: 25px;
}

@media screen and (min-width: 1024px) {
  .top-mv .desc-content .desc-wrap {
    width: fit-content;
  }

  .top-mv .desc-content {
    width: fit-content;
  }
}

.top-mv .construction {
  margin-left: -30px;
  margin-top: 87px;
}

@media screen and (min-width: 1024px) {
  .top-mv .mv-align {
    display: flex;
  }

  .top-mv .construction {
    width: 490px;
  }
}

.more-btn {
  width: 100%;
  height: 37px;
  font-size: 12px;
  position: relative;
}

.price-btn {
  color: #e6531e;
  height: 37px;
  border: none;
  border-radius: 0;
  margin-right: 11px;
  width: 100%;
}

.price-link {
  width: 100%;
}

@media screen and (min-width: 1024px) {
  .price-link {
    width: 49%;
  }
}

.more-link {
  width: 100%;
}

@media screen and (min-width: 1024px) {
  .more-link {
    width: 49%;
  }
}

.price-btn .price-str {
  font-size: 12px;
}

.price-number {
  font-size: 25px;
  font-family: "DIN Alternate", sans-serif;
  margin-right: 5px;
  margin-left: 5px;
}

#mv .btn-wrap {
  width: 100%;
  display: flex;
  justify-content: center;
  margin-top: 25px;
}

@media screen and (min-width: 1024px) {
  #mv .btn-wrap {
    margin-bottom: 32px;
    justify-content: start;
  }
}

#mv .bottom {
  background: #ffffff;
  padding-top: 48px;
  margin-right: -24px;
  margin-left: -24px;
}

@media screen and (min-width: 1024px) {
  #mv .bottom {
    height: 50vh;
    /* max-height: 365px; */
    margin: unset;
    padding-top: 28px;
    margin-left: -200%;
    margin-right: -200%;
  }
}

@media screen and (min-width: 1024px) {
  #mv .bottom-inner {
    max-width: 1000px;
    margin: auto;
  }
}

#mv .bottom .screen {
  margin: auto;
  border: solid #000 2px;
  border-radius: 12px;
  box-shadow: 0 0 30px rgba(0, 0, 0, 0.45);
  margin-right: 48px;
  margin-left: 48px;
}

#mv .bottom .screen img {
  width: 100%;
  height: auto;
  border-radius: 12px;
}

#mv .bottom .btn-wrap-bottom.is-sp-view {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  margin-top: 24px;
  height: 160px;
}

@media screen and (min-width: 1024px) {
  #mv .content {
    position: relative;
    height: 100%;
  }

  #mv .bottom .btn-wrap-bottom.is-sp-view {
    display: none;
  }

  #mv .bottom .screen-wrap {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 6%;
    width: 570px;
  }

  #mv .bottom .screen {
    width: fit-content;
    position: relative;
    width: 100%;
    margin: unset;
  }

  #mv .bottom .screen img {
    width: inherit;
  }

  #mv .more-btn {
    width: 160px;
    height: 37px;
    font-size: 12px;
  }

  #mv .bottom .btn-wrap-bottom {
    width: 90%;
    justify-content: space-between;
  }

  #mv .bottom .btn-wrap-bottom.is-pc-view {
    position: absolute;
    display: flex;
    bottom: -94px;
    left: 0;
    right: 0;
    margin: auto;
  }
}

#question {
  position: relative;
  justify-content: center;
  display: flex;
  align-items: center;
  height: unset;
  padding: 40px 24px;
}

@media screen and (min-width: 1024px) {
  #question {
    position: relative;
    height: 100vh;
    padding: 80px 48px;
    padding: unset;
  }
}

#question .question:not(:first-child) {
  margin-top: 10px;
}

#question .item {
  display: flex;
  flex-direction: column;
  border: 1px solid #e8e8e8;
  height: 100%;
}

@media screen and (min-width: 1024px) {
  #question .item img {
    width: 279px;
    height: 151px;
  }

  #question .question:not(:first-child) {
    margin-top: 0px;
  }
}

#question .sub-title-wrap {
  width: fit-content;
}

#question .sub-title {
  display: inline;
  font-size: 11px;
  font-weight: bold;
  color: #e6531e;
}

#question .title-wrap {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

#question .main-title {
  font-size: 33px;
  font-weight: bold;
  margin-top: 22px;
  color: #005496;
  text-align: center;
  letter-spacing: 0.2rem;
}

#question .underbar {
  background: #e6531e;
}

#question .list {
  margin-top: 30px;
}

@media screen and (min-width: 1024px) {
  #question .list {
    display: flex;
  }
}

#question .item-moji {
  color: #014f8d;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 30px;
  height: 100%;
}

#question .content {
  margin-right: 24px;
  margin-left: 24px;
  padding: 24px;
  padding-top: 24px;
  margin: auto;
  box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.1);
  border-radius: 5px;
  background: #ffffff;
}

@media screen and (min-width: 1024px) {
  #question .content {
    padding-left: 72px;
    padding-right: 72px;
    padding-top: 80px;
    padding-bottom: 72px;
    margin: auto;
  }
}

#service {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-left: 24px;
  padding-right: 24px;
}

@media screen and (min-width: 1024px) {
  #service {
    padding-top: 80px;
    padding-right: 48px;
    padding-left: 48px;
    height: 100vh;
    padding: unset;
  }
}

#service .title-wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  margin: auto;
  right: 0;
  left: 0;
  margin: auto;
}

#service .title-tooltip {
  right: 22px;
  position: absolute;
  top: -35px;
  display: none;
}

@media screen and (min-width: 1024px) {
  #service .title-tooltip {
    display: block;
  }
}

#service .title-inner {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background: #ffffff;
  width: 80%;
  border-radius: 15px;
  margin-right: 24px;
  margin-left: 24px;
  position: relative;
}

@media screen and (min-width: 768px) {
  #service .title-inner {
    margin-left: 0;
    margin-right: 0;
  }
}

#service .title-inner .title-icon {
  margin-top: 36.6px;
  margin-bottom: 14.1px;
  width: 52.65px;
  height: 59.9px;
}

#service .sub-title {
  color: #e6531e;
}

#service .sub-title-wrap {
  display: inline-block;
  margin: auto;
  margin-bottom: 34px;
}

#service .main-title-desc {
  font-size: 20px;
  font-weight: bold;
  letter-spacing: 0.2rem;
  color: #005496;
}

#service .main-title {
  font-size: 27px;
  font-weight: bold;
  color: #005496;
  margin-top: 6px;
}

#service .sub-desc {
  text-align: center;
  color: #014f8d;
  font-weight: bold;
  font-size: 14px;
  letter-spacing: 0.1rem;
  margin-top: 22px;
  margin-left: 24px;
  margin-right: 24px;
  margin-bottom: 32px;
}

#service .content {
  width: 100%;
  margin-top: 29vh;
  background: #005496;
}

#service .content-inner {
  margin-top: -176px;
}

#service .card {
  width: 100%;
  display: flex;
  flex-direction: column;
}

#service .card-arrow {
  height: 61.89px;
  margin: auto;
}

#service .card-inner {
  border-radius: 5px;
  padding-top: 44px;
  padding-bottom: 36px;
  max-width: 278px;
  width: 100%;
  display: flex;
  margin: auto;
  flex-direction: column;
  justify-content: center;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  border: 2px solid #ffff;
  border-radius: 5px;
  color: #ffff;
}

#service .card:not(:last-child) {
  margin-bottom: 11px;
}

@media screen and (min-width: 1024px) {
  #service .card:not(:last-child) {
    margin-bottom: 0;
    margin-right: 11px;
  }

  #service .card {
    margin-bottom: 0;
  }
}

#service .card-subtitle {
  font-size: 12px;
}

.card-img .more-btn .btn-orange {
  border-radius: 0px 0px 5px 5px;
}

#service .card-title {
  margin-top: 8px;
  font-size: 20px;
  font-weight: bold;
  letter-spacing: 0.2rem;
}

#service .card-img {
  height: 49px;
  margin-bottom: 26px;
}

#service p {
  text-align: center;
}

#service .card-align {
  display: flex;
  flex-direction: column;
  margin-bottom: 77px;
  justify-content: center;
  align-items: center;
  position: relative;
}

@media screen and (min-width: 1024px) {
  #service .card-align {
    flex-direction: unset;
    width: 80%;
    margin-right: auto;
    margin-left: auto;
  }
}

#benefit {
  background: url(assets/images/common/benefit-background.svg);
  background-size: cover;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-top: 100px;
}

#benefit .sub-title {
  font-weight: bold;
}

@media screen and (min-width: 1024px) {
  #benefit {
    height: 100vh;
    padding-top: 0px;
  }
}

#benefit .title-wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
}

#benefit .sub-title-wrap {
  display: inline-block;
}

#benefit .step-item .title-wrap {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

#benefit .main-title {
  font-size: 27px;
  color: #005496;
  text-align: center;
}

#benefit .sub-desc {
  margin-top: 20px;
  text-align: center;
  color: #014f8d;
}

#benefit .step {
  margin: auto;
  margin-top: 25px;
  overflow-x: auto;
  white-space: nowrap;
  padding-left: 24px;
  padding-right: 24px;
}

@media screen and (min-width: 1024px) {
  #benefit .step {
    display: flex;
    padding-left: 0px;
    padding-right: 0px;
  }
}

#benefit .step-design {
  position: relative;
}

#benefit .title-icon-wrap {
  position: relative;
}

#benefit .step-arrow {
  width: 48px;
}

#benefit .step-construction {
  position: relative;
}

#benefit .step-arrow {
  position: absolute;
  top: 95px;
  right: -27px;
  z-index: 1;
}

#benefit .step-arrow-pulldown {
  position: absolute;
  width: 48px;
  top: 95px;
  right: 0;
  z-index: 1;
}

@media screen and (min-width: 1024px) {
  #benefit .step {
    justify-content: center;
  }

  #benefit .step.is-sp-view {
    display: none;
  }
}

#benefit .content {
  max-width: unset;
  overflow: auto;
  position: relative;
}

@media screen and (min-width: 1024px) {
  #benefit .content {
    overflow: unset;
  }
}

#benefit .step-item {
  width: 326px;
  margin-bottom: 25px;
}

@media screen and (min-width: 1024px) {
  #benefit .content {
    overflow: unset;
  }

  #benefit .step-item {
    margin-bottom: 0;
    margin-right: 6px;
  }
}

#benefit .step-management .icon-construction {
  margin-right: 37px;
}

.step-icon-wrap {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.step-icon {
  width: auto;
}

#benefit .step .title-wrap {
  width: 100%;
  height: 45px;
  background: #014f8d;
  font-size: 20px;
  font-weight: bold;
  letter-spacing: 0.2rem;
  color: #ffffff;
}

#benefit .step .target-user {
  background: #dedede;
  height: 150px;
}

@media screen and (min-width: 1024px) {
  #benefit .step .target-user {
    height: 110px;
    overflow: unset;
  }
}

#benefit .benefit-tooltip {
  position: absolute;
  top: -40px;
  right: 60px;
  width: 200px;
}

.step-icon-align {
  padding-top: 16px;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
}

.step-management .step-icon-align {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 100%;
  width: 257px;
  margin: auto;
}

#benefit .step-management .icon-construction {
  margin-right: 0;
}

.icon-construction {
  margin-right: 45px;
}

.icon-construction img {
  height: 51.83px;
  margin-bottom: 17.6px;
}

.icon-general-construction img {
  height: 51.83px;
  margin-bottom: 17.6px;
}

.icon-management {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.step-management .icon-construction {
  margin-right: 0;
}

.icon-management img {
  margin-bottom: 8px;
}

.icon-align {
  display: flex;
}

.step-icon-title {
  font-size: 11px;
  font-weight: bold;
  color: #005496;
  text-align: center;
}

#benefit .service {
  color: #005496;
}

#benefit .service .sub-title {
  font-size: 11px;
  font-weight: bold;
  letter-spacing: 0.2rem;
  padding-top: 10px;
  padding-left: 19px;
}

#benefit .service .title {
  font-size: 16px;
  font-weight: bold;
  letter-spacing: 0.2rem;
  margin-right: 10px;
}

#benefit .service .title-wrap {
  background: transparent;
  font-size: unset;
  color: #005496;
  display: flex;
  flex-direction: row;
  justify-content: unset;
  height: 20px;
  margin-top: 6px;
  padding-left: 19px;
}

#benefit .service-item {
  /* padding-left: 19px; */
}

#benefit .service .vertical-bar {
  width: 1px;
  height: 11px;
  background: #005496;
  margin-right: 10px;
}

#benefit .service .border {
  height: 1px;
  width: 100%;
  background: #e8e8e8;
  margin-top: 10px;
  margin-left: 0;
}

#benefit .service .item-gray {
  background: #efefef;
}

@media screen and (min-width: 1024px) {
}

@media screen and (min-width: 1024px) {
  .scroll-mark {
    color: #e6531e;
    text-orientation: sideways;
    display: inline-flex;
    position: absolute;
    right: 0;
    align-items: center;
    -moz-transform: rotate(90deg);
    -webkit-transform: rotate(90deg);
    -o-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
    right: -80px;
  }
  .border {
    background: #e6531e;
    margin-left: 20px;
    width: 75px;
    height: 1px;
  }
}

.content-blue .screen .more-wrap,
.content-orange .screen .more-wrap {
  position: absolute;
  bottom: 10px;
  left: 10px;
  display: flex;
}

.content-blue .screen .more-wrap img,
.content-orange .screen .more-wrap img {
  margin-right: 5px;
  width: 20px;
  height: 20px;
}

.content-orange .service-content .btn-wrap button {
  width: 49%;
}

#top-kagimoba.content-orange .service-content .btn-wrap button {
  width: 100%;
}

#top-kagimoba.content-orange .service-content .btn-wrap button.price-btn {
  width: 49%;
}

#top-kagibase.content-blue .service-content .btn-wrap button.price-btn {
  width: 49%;
}

.content-orange .sub-title {
  color: #e6531e;
}

.content-orange .title-wrap {
  display: flex;
}

.content-orange .title-left {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}

.content-orange .sub-title-wrap {
  width: fit-content;
}

.content-orange .sub-title {
  display: inline;
  font-size: 11px;
  font-weight: bold;
}

.content-orange .underbar {
  background: #000;
}

.content-orange .main-title {
  font-size: 33px;
  font-weight: bold;
  letter-spacing: 0.2rem;
  margin-top: 12px;
  color: #e6531e;
}

.content-orange .function .main-title {
  font-size: 33px;
  font-weight: bold;
  letter-spacing: 0.2rem;
  margin-top: 12px;
  color: #e6531e;
}

.content-orange .function .sub-help-title {
  color: #e6531e;
}

@media screen and (min-width: 1024px) {
  .content-orange .function .main-title {
    color: #ffff;
  }

  .content-orange .function .sub-help-title {
    color: #ffff;
  }
}

@media screen and (min-width: 1024px) {
  .content-orange .main-title {
    color: #e6531e;
  }
}

.content-orange .main-desc {
  margin-top: 30px;
  font-size: 16px;
  letter-spacing: 0.1rem;
  margin-bottom: 24px;
  font-weight: bold;
}

.content-orange .sub-desc {
  font-size: 14px;
  letter-spacing: 0.2rem;
}

.content-orange .sub-help-title {
  letter-spacing: 0.2rem;
  font-size: 11px;
  font-weight: bold;
  /* color: #ffffff; */
}

@media screen and (min-width: 1024px) {
  .content-orange .sub-help-title {
    color: #e6531e;
  }
}

.content-orange .tooltip-wrap {
  width: 120px;
  /* height: 170px; */
}

.content-orange {
  margin-top: 64px;
}

@media screen and (min-width: 1024px) {
  .content-orange {
    margin-top: 0;
    height: 100vh;
    position: relative;
    display: flex;
    align-items: center;
  }
}

.content-orange .content {
  margin-bottom: 48px;
  margin-right: 24px;
  margin-left: 24px;
}

@media screen and (min-width: 1024px) {
  .content-orange .content {
    margin: auto;
    width: 1000px;
    position: relative;
    margin-top: 10%;
  }
}

.content-orange .btn-wrap {
  width: 100%;
  display: flex;
  justify-content: space-between;
  margin-top: 25px;
  flex-direction: column;
}

.content-orange .btn-wrap.is-pc-view {
  display: none;
}

@media screen and (min-width: 1024px) {
  .content-orange .btn-wrap {
    justify-content: start;
    flex-direction: unset;
  }

  .content-orange .btn-wrap.is-sp-view {
    display: none;
  }

  .content-orange .price-btn {
    margin-right: 0;
    width: 100%;
  }

  .content-orange .btn-wrap.is-pc-view {
    display: flex;
    justify-content: space-between;
  }
}

.content-orange .user-wrap {
  border-color: #005496;
}

.content-orange .function-user-title {
  color: #005496;
}

.content-orange .price-link {
  margin-bottom: 16px;
}

.function-user-align {
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 1000px;
}

@media screen and (min-width: 1024px) {
  .function-user-align {
    justify-content: space-between;
  }
}

.function .item-align .icon-item {
  background: #ffffff;
  border-radius: 15px;
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.05);
  display: flex;
  justify-content: center;
  width: 132px;
  height: 132px;
  margin: auto;
}

.function .item-align .user-wrap {
  margin: auto;
}

@media screen and (min-width: 1024px) {
  .function .item-align .icon-item {
    margin: unset;
  }
}

.function .item-align .icon-wrap {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.function .item-align {
  display: block;
}

@media screen and (min-width: 1024px) {
  .function .item-align {
    display: flex;
    justify-content: space-between;
    width: 100%;
    margin-top: 30px;
  }
}

.function .item-align li:not(:first-child) {
  margin-top: 24px;
}

@media screen and (min-width: 1024px) {
  .function .item-align li:not(:first-child) {
    margin-top: 0;
  }
}

.function .item-align li {
  position: relative;
}

.function .item-align .icon-item img {
  position: absolute;
  top: 25%;
  width: 40%;
}

.content-orange .function .item-align .icon-wrap .buturyu {
  width: 62.5px;
}

.content-orange .function .item-align .icon-wrap .kanri {
  width: 51.47px;
}

.content-orange .function .item-align .icon-wrap .sintyoku {
  width: 43.91px;
}

.content-orange .function .item-align .icon-wrap .renkei {
  width: 82.43px;
}

.content-orange .function .item-align .icon-wrap .option {
  width: 40.63px;
}

.function .item-align .icon-wrap p {
  position: absolute;
  bottom: 16px;
  font-weight: bold;
  font-size: 11px;
  letter-spacing: 0.2rem;
  text-align: center;
}

@media screen and (min-width: 1024px) {
  .content-orange .service {
    display: flex;
  }

  .content-orange .service-content {
    width: 440px;
  }
}

.content-orange .screen {
  margin: auto;
  margin-top: 48px;
  border: solid #000 2px;
  border-radius: 12px;
  box-shadow: 0 0 30px rgba(0, 0, 0, 0.45);
  position: relative;
  cursor: pointer;
}

@media screen and (min-width: 1024px) {
  .content-orange .screen {
    margin: auto;
    height: 300px;
    margin-left: 0;
  }
}

.content-orange .screen img {
  width: 100%;
  height: auto;
  border-radius: 12px;
}

@media screen and (min-width: 1024px) {
  .content-orange .screen img {
    width: auto;
    height: 100%;
  }
}

.content-orange .function {
  margin-top: 0;
}

@media screen and (min-width: 1024px) {
  .content-orange .function {
    margin-top: -48px;
    background: unset;
  }
}

.content-orange .background {
  position: absolute;
  top: 0;
  width: 40%;
  height: calc(100% - 90px);
  background: url(assets/images/top/background-orange.png);
  background-size: cover;
  z-index: -1;
  margin-bottom: 90px;
}

#margin2 .line {
  margin: auto;
  width: 1px;
  height: 100px;
  background-color: #e6531e;
}

/* ここから */

.content-blue .title-wrap {
  display: flex;
}

.content-blue .sub-title-wrap {
  color: #014f8d;
}

.content-blue .title-left {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}

.content-blue .sub-title-wrap {
  width: fit-content;
}

.content-blue .sub-title {
  display: inline;
  font-size: 11px;
  font-weight: bold;
}

.content-blue .underbar {
  background: #000;
}

.content-blue .main-title {
  font-size: 33px;
  font-weight: bold;
  letter-spacing: 0.2rem;
  margin-top: 12px;
  color: #014f8d;
}

.content-blue .function .main-title {
  font-size: 33px;
  font-weight: bold;
  letter-spacing: 0.2rem;
  margin-top: 12px;
  color: #014f8d;
}

.content-blue .function .sub-help-title {
  color: #014f8d;
}

.content-blue .function .title-wrap {
  flex-direction: column;
  display: flex;
}

@media screen and (min-width: 1024px) {
  .content-blue .function .title-wrap {
    justify-content: flex-end;
    margin-left: auto;
    display: flex;
    width: fit-content;
    flex-direction: column;
  }

  .content-blue .function .main-title {
    color: #ffff;
  }

  .content-blue .function .sub-help-title {
    color: #ffff;
  }
}

.content-blue .price-btn {
  color: #014f8d;
}

.content-blue .main-desc {
  margin-top: 30px;
  font-size: 16px;
  letter-spacing: 0.1rem;
  margin-bottom: 24px;
  font-weight: bold;
}

.content-blue .sub-desc {
  font-size: 14px;
  letter-spacing: 0.2rem;
}

.content-blue .sub-help-title {
  letter-spacing: 0.2rem;
  font-size: 11px;
  font-weight: bold;
  /* color: #ffffff; */
}

@media screen and (min-width: 1024px) {
  .content-blue .sub-help-title {
    color: #014f8d;
  }
}

.content-blue .tooltip-wrap {
  width: 120px;
  /* height: 170px; */
}

.content-blue {
  margin-top: 64px;
}

@media screen and (min-width: 1024px) {
  .content-blue {
    position: relative;
    margin-top: 0;
    height: 100vh;
    display: flex;
    align-items: center;
  }
}

.content-blue .content {
  margin-bottom: 48px;
  margin-right: 24px;
  margin-left: 24px;
}

@media screen and (min-width: 1024px) {
  .content-blue .content {
    margin: auto;
    width: 1000px;
  }
}

.content-blue .btn-wrap {
  width: 100%;
  display: flex;
  justify-content: center;
  margin-top: 25px;
  flex-direction: column;
}

.content-blue .btn-wrap.is-pc-view {
  display: none;
}

@media screen and (min-width: 1024px) {
  .content-blue .btn-wrap {
    justify-content: start;
  }

  .content-blue .btn-wrap.is-sp-view {
    display: none;
  }

  .content-blue .btn-wrap.is-pc-view {
    display: flex;
    flex-direction: unset;
    justify-content: space-between;
  }
}

.content-blue .item-align li .yoyaku {
  width: 55.42px;
}

.content-blue .item-align li .kasidashi {
  width: 72px;
}

.content-blue .item-align li .rireki {
  width: 57px;
}

.content-blue .item-align li .touroku-riyoushya {
  width: 33.43px;
  top: 32%;
}

.content-blue .item-align li .touroku-kagi {
  width: 40.8px;
  top: 32%;
}

@media screen and (min-width: 1024px) {
  .content-blue .service {
    display: flex;
  }

  .content-blue .service-content {
    width: 427px;
  }
}

.content-blue .screen {
  margin: auto;
  margin-top: 48px;
  border: solid #000 2px;
  border-radius: 12px;
  box-shadow: 0 0 30px rgba(0, 0, 0, 0.45);
  position: relative;
  cursor: pointer;
}

@media screen and (min-width: 1024px) {
  .content-blue .screen {
    margin: auto;
    height: 300px;
    margin-right: 0;
  }
}

.content-blue .screen img {
  width: 100%;
  height: auto;
  border-radius: 12px;
}

@media screen and (min-width: 1024px) {
  .content-blue .screen img {
    width: auto;
    height: 100%;
  }
}

.content-blue .screen-align {
  margin-left: 68px;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}

.content-blue .btn-align {
  display: flex;
  justify-content: space-between;
}

.content-blue .btn-align a {
  width: 49%;
}

.content-blue .btn-align.is-pc-view {
  display: none;
}

@media screen and (min-width: 1024px) {
  .content-blue .btn-align.is-pc-view {
    display: flex;
  }

  .content-blue .btn-align.is-pc-view a {
    width: 33%;
  }
}

.content-blue .function {
  margin-top: 48px;
}

@media screen and (min-width: 1024px) {
  .content-blue .function {
    background: unset;
    margin-top: -48px;
  }
}

.content-blue .background {
  position: absolute;
  top: 0;
  width: 40%;
  height: calc(100% - 90px);
  background: url(assets/images/top/background-blue.png);
  z-index: -1;
  margin-bottom: 90px;
  right: 0;
  background-size: cover;
}

.content-blue .icon-construction {
  margin-right: 0;
}

.content-blue .step-icon-align {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 100%;
  width: 207px;
  margin: auto;
}

.content-blue .step-icon-title {
  color: #e6531e;
}

.content-blue .toyomoba-screen {
  height: 325px;
}

.content-blue .price-link {
  margin-bottom: 16px;
}

.user-wrap {
  height: 132px;
  border: 1px solid #e6531e;
  border-radius: 15px;
  width: 264px;
  position: relative;
}

.function-user-title {
  position: absolute;
  top: -10px;
  right: 0;
  left: 0;
  margin: auto;
  width: fit-content;
  font-weight: Bold;
  color: #e6531e;
  background: #ffffff;
  display: inline-block;
  font-size: 16px;
  line-height: 16px;
  padding-left: 10px;
  padding-right: 10px;
}

.cta-wrap .item {
  width: 218px;
  height: 138px;
  border: 1px solid #ffffff;
  border-radius: 15px;
  position: relative;
  display: flex;
  align-items: flex-end;
  margin: auto;
}

footer .item img {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  margin: auto;
  top: 29%;
}

.cta-wrap .item img {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  margin: auto;
  top: 29%;
}

footer {
  margin-top: 111px;
  background: rgba(0, 0, 0, 0.4);
}

.cta-btns {
  background: rgba(0, 0, 0, 0.4);
}

.cta-wrap {
  display: flex;
  justify-content: space-between;
  margin: auto;
  flex-direction: column;
  padding-top: 98px;
  padding-bottom: 48px;
  height: 600px;
  position: relative;
}

@media screen and (min-width: 1024px) {
  .cta-wrap {
    height: 435px;
    padding-top: 166px;
    padding-bottom: 129px;
    width: 728px;
    flex-direction: unset;
  }
}

.cta-wrap .item .whitepaper {
  width: 22.81px;
}

.cta-wrap .item .mail {
  width: 31.79px;
}

.cta-wrap .item .tel {
  width: 28.12px;
  top: 20%;
}

.cta-wrap p {
  font-size: 13px;
  color: #ffffff;
  text-align: center;
  width: 100%;
  margin-bottom: 32px;
}

.cta-wrap .tel-text {
  margin-bottom: 0;
}

.cta-wrap .tel-num {
  margin-bottom: 10px;
}

.cta-wrap .text-wrap {
  width: 100%;
}

.footer-service {
  position: relative;
}

.footer-service .footer-cta {
  position: absolute;
  max-width: 1000px;
  top: -50px;
  height: 100px;
  display: flex;
  letter-spacing: 0.125rem;
  font-size: 20px;
  font-weight: bold;
  color: #ffff;
  align-items: center;
  justify-content: center;
  background-color: #e6531e;
  width: 80%;
  right: 0;
  left: 0;
  border-radius: 5px;
  margin: auto;
  box-shadow: 0 0 20px rgb(0 0 20 / 30%);
}

.footer-service .footer-cta::after {
  content: "";
  position: absolute;
  right: 29px;
  display: inline-block;
  background-image: url("assets/images/common/arrow-right-white.svg");
  background-size: contain;
  background-repeat: no-repeat;
  width: 14px;
  height: 11px;
  top: 50%;
  transform: translateY(-50%);
}

.footer-service .footer-cta:hover {
  cursor: pointer;
}

footer .footer-nav {
  background: url(assets/images/common/footer-nav-background.png);
  padding-top: 48px;
  padding-bottom: 48px;
}

footer .footer-nav a {
  color: #ffffff;
}

@media screen and (min-width: 1024px) {
  footer .footer-nav {
    height: 100%;
    padding-top: 100px;
  }
}

footer .company-logo {
  width: 224.32px;
  margin-bottom: 24px;
  height: 100%;
}

footer .footer-nav .nav {
  color: #ffffff;
  font-size: 12px;
  font-weight: bold;
}

@media screen and (min-width: 1024px) {
  footer .footer-nav .nav ul {
    display: flex;
    align-items: center;
    margin-bottom: 30px;
    justify-content: space-between;
  }

  footer .footer-nav .nav ul li {
    margin-right: 16px;
  }

  footer .footer-nav .nav {
    width: 639px;
  }
}

footer .footer-nav button {
  width: 100%;
  height: 37px;
  border: 1px solid #1b5480;
  border-radius: 5px;
  background: transparent;
  color: #ffffff;
  font-size: 12px;
  font-weight: bold;
  position: relative;
}

footer .footer-nav button::after {
  content: "";
  position: absolute;
  right: 12px;
  display: inline-block;
  background-image: url("assets/images/common/background.png");
  background-size: contain;
  background-repeat: no-repeat;
  width: 9px;
  height: 9px;
  top: 50%;
  transform: translateY(-50%);
}

footer .footer-inner {
  display: flex;
  justify-content: space-between;
}

footer .footer-nav .nav li {
  margin-bottom: 16px;
}

@media screen and (min-width: 1024px) {
  footer .footer-nav .nav ul li {
    margin-right: 0;
  }

  footer .footer-nav .nav li {
    margin-bottom: 0;
  }
}

footer .footer-inner {
  margin-right: 24px;
  margin-left: 24px;
  display: flex;
  flex-direction: column;
}

@media screen and (min-width: 1024px) {
  footer .footer-inner {
    margin-right: 100px;
    margin-left: 100px;
    flex-direction: unset;
  }
}

footer .copywrite {
  font-size: 10px;
  color: #5881a2;
  padding-top: 32px;
  margin: unset;
  text-align: center;
}

@media screen and (min-width: 1024px) {
  footer .copywrite {
    text-align: right;
    padding-right: 5px;
  }
}

footer .border {
  width: 1px;
  height: 11px;
}

@media screen and (min-width: 1024px) {
  footer .footer-nav .nav .border {
    margin: unset;
    background: #ffffff;
    height: 11px;
  }
}

footer .corporate-link {
  display: block;
}

html.fsvs #fsvs-pagination li &gt; span &gt; span {
  border: 1px solid #fd6b36;
}

html.fsvs #fsvs-pagination li &gt; span {
  border: 1px solid #fd6b36;
}

html.fsvs #fsvs-pagination li.active &gt; span {
  border: 1px dashed #fd6b36;
}

html.fsvs #fsvs-pagination li.active &gt; span &gt; span {
  background: #fd6b36;
}

.line-wrap {
  height: 100%;
  display: flex;
  align-items: center;
}

.underbar-white {
  height: 2px;
  width: 100%;
  background: #ffffff;
}

.underbar-black {
  height: 2px;
  width: 100%;
  background: #000;
}

.underbar-orange {
  height: 2px;
  width: 100%;
  background: #fd6b36;
}

.underbar-blue {
  height: 2px;
  width: 100%;
  background: #014f8d;
}

.page-mv {
  overflow: hidden;
}

.page-mv .up {
  color: #ffffff;
  margin-bottom: 48px;
  margin-right: 24px;
  margin-left: 24px;
}

@media screen and (min-width: 1024px) {
  .page-mv .up {
    height: 50vh;
    max-height: 365px;
    margin-right: unset;
    margin-left: unset;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    margin-bottom: 32px;
  }
}

.page-mv {
  height: 357px;
  background: url(assets/images/common/subpage-background.png);
  background-size: cover;
  background-position: center;
}

.page-mv.sub-page-mv {
  height: 100vh;
  background: url(assets/images/common/subpage-background.png);
  background-size: cover;
}

.page-mv .content {
  display: flex;
  justify-content: center;
  position: relative;
  height: 100%;
}

.page-mv .mv-desc {
  position: absolute;
  bottom: 21px;
  font-size: 16px;
  color: #ffffff;
  font-weight: bold;
  left: 0;
}

.page-mv .sub-title-wrap {
}

.page-mv .title-wrap {
  display: flex;
  position: relative;
  justify-content: center;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  color: #ffffff;
  margin: auto;
}

@media screen and (min-width: 1024px) {
  .page-mv.service-detail .title-wrap {
    align-items: flex-start;
  }
}

.page-mv .tooltip-wrap {
  position: absolute;
  width: 185px;
  height: 185px;
}

.page-mv .sub-title-wrap {
  width: fit-content;
}

.page-mv .title-out-wrapper {
  display: flex;
  margin-bottom: 46px;
  margin-top: auto;
  margin-right: auto;
  margin-left: auto;
}

@media screen and (min-width: 1024px) {
  .page-mv .title-out-wrapper {
    margin-left: unset;
    margin-right: auto;
    margin-top: auto;
  }
}

.page-second-view .content.is-sp-view {
  position: relative;
  margin-left: 48px;
  margin-right: 48px;
}

.page-second-view .screen {
  margin: auto;
  border: solid #000 2px;
  overflow: hidden;
  border-radius: 21px;
  box-shadow: 0 0 30px rgba(0, 0, 0, 0.45);
  margin-top: 26px;
}

.page-second-view .screen-icon {
  position: absolute;
  right: -39px;
  top: -23px;
  width: 80px;
  height: 80px;
}

@media screen and (min-width: 1024px) {
  .page-second-view .screen-icon {
    width: 110px;
    height: 110px;
    right: -45px;
    top: -52px;
  }
}

@media screen and (min-width: 1024px) {
  .page-second-view .screen {
    margin-top: 0px;
  }
}

.page-second-view .screen img {
  width: 100%;
  height: auto;
}

@media screen and (min-width: 1024px) {
  .page-second-view .screen img {
    width: 570px;
  }
}

.page-second-view .screen-desc {
  margin-top: 26px;
  letter-spacing: 0.1rem;
  line-height: 25px;
}

@media screen and (min-width: 1024px) {
  .page-second-view .screen-desc {
    margin-top: 0;
  }
}

.page-second-view .desc-title {
  margin-bottom: 20px;
  font-size: 16px;
  font-weight: bold;
  letter-spacing: 0.2rem;
  margin-top: 20px;
}

@media screen and (min-width: 1024px) {
  .page-second-view .desc-title {
    margin-top: 0;
  }
}

.page-second-view .price-link {
  margin-top: 30px;
  display: block;
  width: 100%;
  margin-bottom: 16px;
}

.page-second-view .price-link .price-btn {
  color: #014f8d;
  height: 51px;
}

.page-second-view .price-link .price-btn .price-str {
  font-size: 16px;
}

.page-second-view .btn-wrap {
  display: flex;
  flex-direction: column;
  width: 100%;
}

.page-second-view .more-link {
  width: 100%;
  margin-bottom: 16px;
}

.page-second-view .content.is-pc-view {
  display: none;
}

@media screen and (min-width: 1024px) {
  .page-second-view .content.is-pc-view {
    display: block;
    margin-top: -126px;
    margin-bottom: 135px;
  }

  .page-second-view .more-link {
    margin-bottom: 0;
  }

  .page-second-view .content .desc-screen-wrap {
    display: flex;
  }

  .page-second-view .content .btn-wrap {
    display: flex;
    flex-direction: unset;
  }

  .page-second-view .content .btn-wrap .more-link {
    margin-top: 63px;
  }

  .page-second-view .content .btn-wrap .more-link:not(:last-child) {
    margin-right: 30px;
  }
}

.page-second-view .btn-wrap {
}

.page-second-view .left {
  width: 340px;
  margin-right: 106px;
}

@media screen and (min-width: 1024px) {
  .page-second-view .left {
    margin-top: 152px;
  }
}

.page-second-view .right {
  flex-grow: 1;
  position: relative;
}

.page-mv header {
  position: absolute;
  width: 100%;
}

@media screen and (min-width: 1024px) {
  .page-mv header {
    top: 50px;
    width: 120%;
  }
}

.page-mv .title-left {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}

.page-mv .up .sub-title-wrap {
  width: fit-content;
}

.page-mv .up .sub-title {
  display: inline;
  font-size: 11px;
  font-weight: bold;
}

.page-mv .main-desc {
  font-size: 16px;
  letter-spacing: 0.1rem;
  margin-bottom: 24px;
  font-weight: bold;
}

.page-mv .sub-desc {
  font-size: 14px;
  letter-spacing: 0.2rem;
}

.page-mv .sub-help-title {
  letter-spacing: 0.2rem;
  font-size: 15px;
  font-weight: bold;
}

.page-mv .company-logo-wrap {
  width: 246px;
}

.page-mv .menu-wrap.is-sp-view {
  width: 32px;
}

@media screen and (min-width: 1024px) {
  .page-mv .menu-wrap.is-pc-view {
    display: flex;
    align-items: center;
    font-size: 12px;
    font-weight: bold;
    color: #ffffff;
  }
  .page-mv .menu-wrap.is-pc-view a:not(:last-child) {
    margin-right: 30px;
    color: #ffffff;
  }

  .page-mv .contact-btn {
    width: 148px;
    height: 38px;
    border-radius: 5px;
    background: #e6531e;
    border: none;
    color: #ffffff;
    font-family: "Lato", sans-serif;
    letter-spacing: 0.165rem;
    font-size: 10px;
  }
}

.page-mv .header-inner {
  display: flex;
  margin: 24px 24px 0;
  justify-content: space-between;
  width: 100%;
  align-items: center;
}

@media screen and (min-width: 1024px) {
  .page-mv .header-inner {
    margin-top: 0;
  }
}

.page-mv .mv-desc {
  margin-left: 24px;
}

@media screen and (min-width: 1024px) {
  .page-mv .mv-desc {
    margin-left: 0;
  }
}

.page-mv .desc-wrap {
  margin-top: 30px;
}

@media screen and (min-width: 1024px) {
  .page-mv .desc-wrap {
    color: #000;
    position: unset;
    width: 320px;
    margin-top: 0;
  }
}

.page-mv .btn-wrap {
  width: 100%;
  display: flex;
  justify-content: center;
  margin-top: 25px;
}

@media screen and (min-width: 1024px) {
  .page-mv .btn-wrap {
    margin-bottom: 32px;
    justify-content: start;
  }
}

.page-mv .bottom {
  background: #ffffff;
  padding-top: 48px;
  margin-right: -24px;
  margin-left: -24px;
}

@media screen and (min-width: 1024px) {
  .page-mv .bottom {
    height: 50vh;
    /* max-height: 365px; */
    margin: unset;
    padding-top: 28px;
    margin-left: -200%;
    margin-right: -200%;
  }
}

@media screen and (min-width: 1024px) {
  .page-mv .bottom-inner {
    max-width: 1000px;
    margin: auto;
  }
}

.page-mv .bottom .screen {
  margin: auto;
  border: solid #000 2px;
  border-radius: 12px;
  box-shadow: 0 0 30px rgba(0, 0, 0, 0.45);
  margin-right: 48px;
  margin-left: 48px;
}

.page-mv .bottom .screen img {
  width: 100%;
  height: auto;
  border-radius: 12px;
}

.page-mv .bottom .btn-wrap-bottom.is-sp-view {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  margin-top: 24px;
  height: 160px;
}

@media screen and (min-width: 1024px) {
  .page-mv .content {
    position: relative;
    height: 100%;
  }

  .page-mv .bottom .btn-wrap-bottom.is-sp-view {
    display: none;
  }

  .page-mv .bottom .screen-wrap {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 6%;
    width: 570px;
  }

  .page-mv .bottom .screen {
    width: fit-content;
    position: relative;
    width: 100%;
    margin: unset;
  }

  .page-mv .bottom .screen img {
    width: inherit;
  }

  .page-mv .more-btn {
    width: 160px;
    height: 37px;
    font-size: 12px;
  }

  .page-mv .bottom .btn-wrap-bottom {
    width: 90%;
    justify-content: space-between;
  }

  .page-mv .bottom .btn-wrap-bottom.is-pc-view {
    position: absolute;
    display: flex;
    bottom: -94px;
    left: 0;
    right: 0;
    margin: auto;
  }
}

#kagibase-second-view {
}

.content-blue-page {
  background: url(./assets/images/common/background.png);
  background-size: 100% 70%;
  overflow: hidden;
}

.content-blue-page .up {
  color: #ffffff;
  margin-bottom: 48px;
  margin-right: 24px;
  margin-left: 24px;
}

@media screen and (min-width: 1024px) {
  .content-blue-page .up {
    height: 50vh;
    max-height: 365px;
    margin-right: unset;
    margin-left: unset;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    margin-bottom: 32px;
  }
}

.content-blue-page .title-wrap {
  display: flex;
}

.content-blue-page .title-left {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}

.content-blue-page .up .sub-title-wrap {
  width: fit-content;
}

.content-blue-page .up .sub-title {
  display: inline;
  font-size: 11px;
  font-weight: bold;
}

.content-blue-page .main-desc {
  font-size: 16px;
  letter-spacing: 0.1rem;
  margin-bottom: 24px;
  font-weight: bold;
}

.content-blue-page .sub-desc {
  font-size: 14px;
  letter-spacing: 0.2rem;
}

.content-blue-page .up .sub-help-title {
  letter-spacing: 0.2rem;
  font-size: 11px;
  font-weight: bold;
}

.content-blue-page .company-logo-wrap {
  width: 246px;
}

.content-blue-page .menu-wrap.is-sp-view {
  width: 32px;
}

@media screen and (min-width: 1024px) {
  .content-blue-page .menu-wrap.is-pc-view {
    display: flex;
    align-items: center;
    font-size: 12px;
    font-weight: bold;
  }
  .content-blue-page .menu-wrap.is-pc-view a:not(:last-child) {
    margin-right: 30px;
    color: #ffffff;
  }

  .content-blue-page .contact-btn {
    width: 148px;
    height: 38px;
    border-radius: 5px;
    background: #e6531e;
    border: none;
    color: #ffffff;
    font-family: "Lato", sans-serif;
    letter-spacing: 0.165rem;
    font-size: 10px;
  }
}

.content-blue-page .header-inner {
  display: flex;
  margin: 24px 24px 0;
  justify-content: space-between;
  width: 100%;
  align-items: center;
}

@media screen and (min-width: 1024px) {
  .content-blue-page .header-inner {
    margin-top: 50px;
  }
}

.content-blue-page .tooltip-wrap {
  width: 120px;
  height: 170px;
}

.content-blue-page .desc-wrap {
  margin-top: 30px;
}

@media screen and (min-width: 1024px) {
  .content-blue-page .desc-wrap {
    color: #000;
    position: unset;
    width: 320px;
    margin-top: 0;
  }
}

.content-blue-page .btn-wrap {
  width: 100%;
  display: flex;
  justify-content: center;
  margin-top: 25px;
}

@media screen and (min-width: 1024px) {
  .content-blue-page .btn-wrap {
    margin-bottom: 32px;
    justify-content: start;
  }
}

.content-blue-page .bottom {
  background: #ffffff;
  padding-top: 48px;
  margin-right: -24px;
  margin-left: -24px;
}

@media screen and (min-width: 1024px) {
  .content-blue-page .bottom {
    height: 50vh;
    /* max-height: 365px; */
    margin: unset;
    padding-top: 28px;
    margin-left: -200%;
    margin-right: -200%;
  }
}

@media screen and (min-width: 1024px) {
  .content-blue-page .bottom-inner {
    max-width: 1000px;
    margin: auto;
  }
}

.content-blue-page .bottom .screen {
  margin: auto;
  border: solid #000 2px;
  border-radius: 12px;
  box-shadow: 0 0 30px rgba(0, 0, 0, 0.45);
  margin-right: 48px;
  margin-left: 48px;
}

.content-blue-page .bottom .screen img {
  width: 100%;
  height: auto;
  border-radius: 12px;
}

.content-blue-page .bottom .btn-wrap-bottom.is-sp-view {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  margin-top: 24px;
  height: 100px;
}

@media screen and (min-width: 1024px) {
  .content-blue-page .content {
    position: relative;
    height: 100%;
  }

  .content-blue-page .bottom .btn-wrap-bottom.is-sp-view {
    display: none;
  }

  .content-blue-page .bottom .screen-wrap {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 6%;
    width: 570px;
  }

  .content-blue-page .bottom .screen {
    width: fit-content;
    position: relative;
    width: 100%;
    margin: unset;
  }

  .content-blue-page .bottom .screen img {
    width: inherit;
  }

  .content-blue-page .more-btn {
    width: 274px;
    height: 37px;
    font-size: 12px;
  }

  .content-blue-page .bottom .btn-wrap-bottom {
    justify-content: space-between;
  }

  .content-blue-page .bottom .btn-wrap-bottom.is-pc-view {
    position: absolute;
    display: flex;
    bottom: -94px;
    left: 0;
    right: 0;
    margin: auto;
  }
}

.service-detail-recomend {
  background: url(assets/images/common/recommend-background.png);
  background-size: 100% 100%;
}

.service-detail-recomend .sub-title-wrap {
  display: inline-block;
  color: #e6531e;
  margin: auto;
}

.service-detail-recomend .underbar {
  background: #e6531e;
}

.service-detail-recomend .content {
  display: flex;
  flex-direction: column;
  padding-top: 100px;
  margin: 0 24px;
  padding-bottom: 100px;
}

@media screen and (min-width: 1024px) {
  .service-detail-recomend .content {
    margin: auto;
    padding-bottom: 130px;
    padding-top: 130px;
  }
}

.service-detail-recomend .main-title {
  color: #ffffff;
  text-align: center;
  font-size: 27px;
  font-weight: bold;
  letter-spacing: 0.2rem;
  margin-top: 22px;
  line-height: 37px;
}

.service-detail-recomend .problem-wrap .alert-wrap img {
  position: absolute;
  top: 0;
  width: 64.97px;
  height: 64.97px;
  max-height: unset;
}

.service-detail-recomend .problem-wrap .alert-wrap {
  position: relative;
  display: flex;
  justify-content: space-between;
}

.service-detail-recomend .problem-wrap .top-border {
  background: #014f8d;
  margin-top: 16.4px;
  height: 1px;
  width: calc(100% - 76.67px);
  margin-left: auto;
}

.service-detail-recomend .problem-wrap .bottom-border {
  background: #014f8d;
  margin-top: 50px;
  height: 1px;
}

.service-detail-recomend .problem-wrap .img-wrap {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 50px;
  width: 103px;
  margin-right: auto;
  margin-left: auto;
}

.service-detail-recomend .problem-wrap .img-wrap img {
  width: 103px;
}

.service-detail-recomend .problem-wrap .img-wrap img.problem-1-icon {
  height: 111px;
  width: auto;
}

.service-detail-recomend .problem-2.kagibase-problem .img-wrap img {
  height: 111px;
}

.service-detail-recomend .problem-wrap .desc {
  font-size: 14px;
  font-weight: bold;
  color: #ffffff;
  letter-spacing: 0.1rem;
  margin-top: 31px;
  line-height: 25px;
}

.service-detail-recomend .problem-2 {
  margin-top: 32px;
}

@media screen and (min-width: 1024px) {
  .service-detail-recomend .problem-wrap .img-wrap {
    margin-right: unset;
    margin-left: unset;
  }
  .service-detail-recomend .problem-1 {
    width: 475px;
  }
  .service-detail-recomend .problem-2 {
    width: 475px;
    margin-top: 0;
  }

  .service-detail-recomend .problem-wrap {
    display: flex;
    height: 160px;
    margin-top: 32px;
  }

  .service-detail-recomend .img-desc-wrap {
    display: flex;
  }

  .service-detail-recomend .desc {
    width: 288px;
  }

  .service-detail-recomend .problem-wrap .desc {
    margin-top: 0;
    display: flex;
    align-items: center;
  }

  .service-detail-recomend .problem-wrap .img-wrap {
    flex-grow: 1;
  }

  .service-detail-recomend .problem-wrap .img-wrap {
    margin-top: 0;
  }

  .service-detail-recomend .problem-wrap .bottom-border {
    margin-top: 0;
  }

  .service-detail-recomend .problem-1 {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    margin-right: 50px;
  }

  #kagimoba-recomend.service-detail-recomend .problem-wrap .img-wrap img {
    height: unset;
    width: 103.19px;
  }

  .service-detail-recomend .problem-2 {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }
}

.service-benefit {
  position: relative;
  margin-bottom: 100px;
}

.service-benefit .main-title {
  font-size: 27px;
  text-align: center;
}

.service-benefit .benefit-inner .sub-title-wrap {
  width: fit-content;
  margin: auto;
}

.service-benefit .benefit-inner {
  padding-bottom: 160px;
  padding-top: 100px;
  overflow: hidden;
}

@media screen and (min-width: 1024px) {
  .service-benefit .benefit-inner {
    padding-top: 100px;
  }
}

.service-benefit .swiper-container {
  margin: auto;
  display: flex;
  align-items: center;
  max-width: 1000px;
  justify-content: center;
  margin-top: 50px;
  margin-right: 24px;
  margin-left: 24px;
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
  overflow: unset !important;
}

@media screen and (min-width: 1024px) {
  .service-benefit .swiper-container {
    margin-right: auto;
    margin-left: auto;
    box-shadow: none;
  }
}

.service-benefit .swiper-wrapper {
  height: 100%;
}

.service-benefit .swiper-slide {
  border-radius: 10px;
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
  background: #ffffff;
  width: 1000px;
  display: flex;
  overflow: hidden;
  height: 100%;
  flex-direction: column;
}

@media screen and (min-width: 1024px) {
  .service-benefit .swiper-slide {
    height: 360px;
    flex-direction: unset;
  }
}

.service-benefit .swiper-slide img {
  width: 100%;
  height: auto;
}

.service-benefit .swiper-slide img:hover {
  cursor: pointer;
}

@media screen and (min-width: 1024px) {
  .service-benefit .swiper-slide img {
    width: 461px;
  }
}

.service-benefit .desc-wrap {
  padding: 32px;
}

@media screen and (min-width: 1024px) {
  .service-benefit .desc-wrap {
    padding: 60px;
  }
}

.service-benefit .title-wrap {
  display: flex;
  align-items: center;
}

.service-benefit .number {
  font-family: "DIN Alternate", sans-serif;
  font-size: 45px;
  color: #014f8d;
  line-height: normal;
}

.swiper-pagination {
  /* width: max-content !important; */
  width: fit-content !important;
  right: 0;
  width: 100%;
  left: 0;
  position: unset !important;
  margin: auto;
}

.service-benefit .swiper-pagination-bullet {
  /* margin-bottom: 21px !important; */
}

.service-benefit .swiper-custom-pagination {
  position: absolute;
  bottom: 0;
  width: 1000px;
}

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

.service-benefit .swiper-button-next::after {
  content: "";
  position: absolute;
  display: inline-block;
  width: 50px;
  height: 50px;
  background-image: url(assets/images/common/slide-right-blue.png);
  background-size: contain;
  vertical-align: middle;
}

.service-benefit .swiper-button-prev::after {
  content: "";
  position: absolute;
  display: inline-block;
  width: 50px;
  height: 50px;
  background-image: url(assets/images/common/slide-right-blue.png);
  background-size: contain;
  vertical-align: middle;
}

.service-benefit .swiper-button-prev.swiper-button-disabled::after {
  content: "";
  background-image: url(assets/images/common/slide-left-gray.png);
}

.service-benefit .swiper-button-next.swiper-button-disabled::after {
  content: "";
  background-image: url(assets/images/common/slide-right-gray.png);
}

.service-benefit .swiper-button-next.swiper-button-disabled,
.service-benefit .swiper-button-prev.swiper-button-disabled {
  opacity: 1;
}

.service-benefit .swiper-button-prev::after {
  content: "";
  position: absolute;
  display: inline-block;
  width: 50px;
  height: 50px;
  background-image: url(assets/images/common/slide-left-blue.png);
  background-size: contain;
  vertical-align: middle;
}

.service-benefit .swiper-button-prev {
  left: -68.5px;
}

.service-benefit .swiper-button-next {
  right: -66.5px;
}

.service-benefit .swiper-custom-pagination-inner {
  position: relative;
  width: fit-content;
  margin: auto;
}

.service-benefit .swiper-pagination-bullet:first-child {
  position: relative;
}

.service-benefit .prev-btn {
  position: relative;
}

.service-benefit .prev-btn::after {
  content: "";
  bottom: 3px !important;
  position: absolute;
  display: inline-block;
  right: 30px;
  width: 50px;
  height: 50px;
  background-image: url(assets/images/common/slide-left-gray.png);
  background-size: contain;
  vertical-align: middle;
}

.service-benefit .prev-btn.active::after {
  content: "";
  bottom: 3px !important;
  position: absolute;
  display: inline-block;
  right: 30px;
  width: 50px;
  height: 50px;
  background-image: url(assets/images/common/slide-left-blue.png);
  background-size: contain;
  vertical-align: middle;
}

.service-benefit .next-btn {
  position: relative;
}

.service-benefit .next-btn::after {
  content: "";
  bottom: 3px !important;
  position: absolute;
  display: inline-block;
  left: 30px;
  width: 50px;
  height: 50px;
  background-image: url(assets/images/common/slide-right-gray.png);
  background-size: contain;
  vertical-align: middle;
}

.service-benefit .next-btn.active::after {
  content: "";
  background-image: url(assets/images/common/slide-right-blue.png);
}

.service-benefit .background {
  width: 100%;
  height: 406px;
  position: absolute;
  background: #f4f4f4;
  top: 0;
  z-index: -1;
}

.service-benefit .img-wrap {
  position: relative;
}

.service-benefit .more-wrap {
  position: absolute;
  bottom: 10px;
  left: 10px;
  display: flex;
}

.service-benefit .more-wrap img {
  margin-right: 5px;
  width: 20px;
  height: 20px;
}

#kagibase-benefit .more-wrap p {
  font-size: 12px;
  font-weight: bold;
  letter-spacing: 0.2rem;
}

#kagimoba-cta-btn {
  background-color: rgba(0, 0, 0, 0.4);
}

.feature-flow .title-wrap {
  display: flex;
  flex-direction: column;
  text-align: center;
}

.feature-flow .sub-title-wrap {
  width: fit-content;
  margin: auto;
}

.feature-flow .label {
  background: #e6531e;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  border-radius: 8px;
  font-size: 12px;
  font-weight: bold;
  color: #ffffff;
  width: 60px;
  height: fit-content;
  margin-right: 13px;
}

@media screen and (min-width: 1024px) {
  .feature-flow .label {
    height: 31px;
    width: 81px;
  }
}

.feature-flow .toyomoba .label {
  background: #e6531e;
}

.feature-flow .doormoba .label {
  background: #ba3100;
}

.feature-flow .kagimoba .label {
  background: #005496;
}

.feature-flow .label-doormoba {
  background: #ba3100;
}

.feature-flow .label-kagimoba {
  background: #005496;
}

.feature-flow .label-kagibase {
  background: #05345a;
}

.feature-flow .kagibase .label {
  background: #05345a;
}

.feature-flow .desc-item {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

@media screen and (min-width: 1024px) {
  .feature-flow .desc-item {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-direction: row;
  }
}

.feature-flow .desc-item:not(:first-child) {
  margin-top: 32px;
}

@media screen and (min-width: 1024px) {
  .feature-flow .desc-item:not(:first-child) {
    margin-top: 10px;
  }
}

.feature-flow .content {
  max-width: 742px;
}

.feature-flow .desc {
  background: #f8f8f8;
  border: 1px solid #005496;
  padding: 35px;
  border-radius: 8px;
  margin: auto;
  margin-top: 50px;
  margin-right: 48px;
  margin-left: 48px;
}

@media screen and (min-width: 1024px) {
  .feature-flow .desc {
    margin: auto;
    margin-top: 50px;
  }
}

.feature-flow .flow-detail {
  margin-top: 28px;
  margin-left: 48px;
  margin-right: 48px;
}

@media screen and (min-width: 1024px) {
  .feature-flow .flow-detail {
    margin-left: 0;
    margin-right: 0;
  }
}

.feature-flow .flow-detail .item {
  display: flex;
  flex-direction: column;
}

@media screen and (min-width: 768px) {
  .feature-flow .flow-detail .item {
    flex-direction: row;
  }
}

.feature-flow .flow-detail .number-icon {
  width: 54px;
  background: #014f8d;
  font-size: 19px;
  font-weight: bold;
  font-family: "DIN Alternate", sans-serif;
  color: #ffffff;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: -16px;
  height: 54px;
  left: -16px;
}

@media screen and (min-width: 768px) {
  .feature-flow .flow-detail .number-icon {
    position: unset;
  }
}

.feature-flow .item {
  display: flex;
  justify-content: center;
  height: 101px;
  align-items: center;
  position: relative;
}

@media screen and (min-width: 768px) {
  .feature-flow .item {
    position: unset;
  }
}

.feature-flow .wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-left: 23px;
  flex-grow: 1;
  height: 100%;
  width: 100%;
}

@media screen and (min-width: 768px) {
  .feature-flow .wrap {
    width: unset;
  }
}

.feature-flow .wrap .item-title {
  margin-left: 48px;
}

@media screen and (min-width: 1024px) {
  .feature-flow .wrap .item-title {
    margin-left: 24px;
  }
}

.feature-flow .label-wrap-line-align {
  display: flex;
  justify-content: center;
  align-items: center;
}

@media screen and (min-width: 1024px) {
  .feature-flow .label-wrap-line-align {
    display: flex;
  }
}

.feature-flow .label {
  /* height: 23px; */
  font-size: 12px;
  border-radius: 4px;
}

.feature-flow .item .label:nth-child(2) {
  margin-top: 8px;
}

@media screen and (min-width: 1024px) {
  .feature-flow .label:first-child {
    margin-right: 5px;
    margin-left: 30px;
  }

  .feature-flow .item .label:nth-child(2) {
    margin-top: 0px;
  }

  .feature-flow .label {
    /* height: px; */
  }
}

.feature-flow .desc .label {
  margin-bottom: 12px;
}

@media screen and (min-width: 1024px) {
  .feature-flow .desc .label {
    margin-bottom: 0;
    margin-left: 0;
  }
}

.feature-flow .desc p {
  width: fit-content;
}

.feature-flow .vertical-line {
  height: 20px;
  width: 1px;
  background: #a5a5a5;
}

.feature-flow .flow-detail .label-wrap {
  display: flex;
  margin-left: 30px;
  flex-direction: column;
}

@media screen and (min-width: 1024px) {
  .feature-flow .flow-detail .label-wrap {
    width: 230px;
    flex-direction: unset;
  }
}

.service-detail-modal {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100vh;
  position: fixed;
  width: 100%;
  background: rgba(0, 0, 0, 0.7);
  z-index: 3;
}

.swiper-container-modal .img-wrap {
  width: fit-content;
  margin: auto;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}

@media screen and (min-width: 716.02px) {
  .swiper-container-modal .img-wrap {
    height: unset;
  }
}

@media screen and (min-width: 1024px) {
  .swiper-container-modal .img-wrap {
    height: 100%;
  }
}

.swiper-container-modal {
  max-width: 1000px;
  height: 90%;
  position: relative;
}

.swiper-container-modal .swiper-slide {
  display: flex;
  align-items: center;
}

.swiper-container-modal .close-btn {
  position: absolute;
  top: 10px;
  left: 20px;
  width: 48px;
  height: 48px;
}

.swiper-container-modal .slide-number {
  position: absolute;
  bottom: 10px;
  right: 20px;
  width: 30px;
  height: 30px;
}

.swiper-container-modal .close-btn,
.swiper-container-modal .close-btn:hover {
  cursor: pointer;
}

.swiper-container-modal .clickpoint {
  position: absolute;
  background: transparent;
}

.swiper-container-modal .clickpoint:hover {
  cursor: pointer;
}

.swiper-container-modal .clickpoint.kagimoba-slide1-2 {
  height: 7%;
  width: 10%;
  left: 8%;
  top: 41%;
}

.swiper-container-modal .clickpoint.kagimoba-slide1-3-1 {
  height: 5%;
  width: 12%;
  left: 23%;
  top: 44%;
}

.swiper-container-modal .clickpoint.kagimoba-slide1-3-2 {
  height: 5%;
  width: 12%;
  left: 39%;
  top: 44%;
}

.swiper-container-modal .clickpoint.kagimoba-slide1-3-3 {
  height: 5%;
  width: 12%;
  left: 54%;
  top: 44%;
}

.swiper-container-modal .clickpoint.kagimoba-slide1-4 {
  height: 6%;
  width: 10%;
  left: 79%;
  top: 39%;
}

.swiper-container-modal .clickpoint.kagimoba-slide1-5 {
  height: 100%;
  width: 100%;
}

.swiper-container-modal .clickpoint.kagimoba-slide2-1 {
  height: 6%;
  width: 10%;
  left: 8%;
  top: 44%;
}

.swiper-container-modal .clickpoint.kagimoba-slide2-2 {
  height: 6%;
  width: 16%;
  left: 18%;
  top: 39%;
}

.swiper-container-modal .clickpoint.kagimoba-slide2-3 {
  height: 22%;
  width: 24%;
  left: 49%;
  top: 42%;
}

.swiper-container-modal .clickpoint.kagimoba-slide3-1 {
  height: 7%;
  width: 10%;
  left: 8%;
  top: 45%;
}

.swiper-container-modal .clickpoint.kagimoba-slide4-1 {
  height: 7%;
  width: 8%;
  left: 8%;
  top: 49%;
}

.swiper-container-modal .clickpoint.kagibase-slide1-1 {
  height: 6%;
  width: 5%;
  left: 9%;
  top: 52%;
}

.swiper-container-modal .clickpoint.kagibase-slide1-2 {
  height: 30px;
  width: 52px;
  left: 66px;
  top: 251px;
}

.swiper-container-modal .clickpoint.kagibase-slide3-2 {
  height: 8%;
  width: 11%;
  left: 24%;
  top: 44%;
}

.swiper-container-modal .clickpoint.kagibase-slide3-3 {
  height: 8%;
  width: 13%;
  left: 46%;
  top: 65%;
}

.swiper-pagination-modal {
  margin-top: 50px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.swiper-container-modal {
  overflow: hidden;
}

.benefit-1-modal {
  display: none;
  z-index: 11;
}

.benefit-2-modal {
  display: none;
  z-index: 11;
}

.benefit-3-modal {
  display: none;
  z-index: 11;
}

.benefit-4-modal {
  display: none;
  z-index: 11;
}

.benefit-5-modal {
  display: none;
  z-index: 11;
}

.benefit-6-modal {
  display: none;
  z-index: 11;
}

.kagibase-system {
  padding-top: 37px;
}

.kagibase-system .desc-wrap {
  margin-bottom: 84px;
}

.kagibase-system .sub-title-wrap {
  display: inline-block;
  width: fit-content;
}

.kagibase-system .main-title {
  text-align: center;
}

.kagibase-system .title-wrap {
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center;
}

.kagibase-system .desc {
  text-align: center;
  color: #014f8d;
  font-weight: bold;
}

.kagibase-system .desc-wrap {
  margin-top: 37px;
}

.kagibase-system .content {
  margin-left: 48px;
  margin-right: 48px;
}

@media screen and (min-width: 1024px) {
  .kagibase-system .content {
    margin: auto;
  }
}

.kagibase-ability .content {
  margin-left: 48px;
  margin-right: 48px;
}

@media screen and (min-width: 1024px) {
  .kagibase-ability .content {
    margin: auto;
  }
}

.kagibase-ability .sub-title-wrap {
  display: inline-block;
  width: fit-content;
}

.kagibase-ability .main-title {
  text-align: center;
}

.kagibase-ability .title-wrap {
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center;
}

.kagibase-ability .desc {
  text-align: center;
  color: #014f8d;
  font-weight: bold;
}

.kagibase-ability .desc-wrap {
  margin-top: 37px;
}

.kagibase-ability {
  padding-top: 97px;
}

.kagibase-ability .ability-item {
  border-radius: 15px;
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.05);
  padding: 44px;
  min-height: 322px;
  display: flex;
  align-items: center;
  flex-direction: column;
  margin-bottom: 10px;
}

@media screen and (min-width: 768px) {
  .kagibase-ability .ability-item {
    /* max-width: 422px; */
    width: 100%;
  }
}

.kagibase-ability .ability-row {
  display: flex;
  flex-direction: column;
  width: 100%;
  max-width: 422px;
}

@media screen and (min-width: 768px) {
  .kagibase-ability .ability-row {
    flex-direction: unset;
    max-width: unset;
  }

  .kagibase-ability .ability-row:first-child {
    margin-bottom: 10px;
  }
}

.kagibase-ability .ability-item img {
  height: 120px;
}

@media screen and (min-width: 1024px) {
  .kagibase-ability .ability-item img {
    height: unset;
  }
}

.kagibase-ability .ability-list {
  display: flex;
  align-items: center;
  flex-direction: column;
  margin-bottom: 10px;
  margin-bottom: 150px;
}

.kagibase-ability .ability-item:first-child {
  margin-right: 0px;
}

@media screen and (min-width: 768px) {
  .kagibase-ability .ability-item:first-child {
    margin-right: 10px;
  }
}

.kagibase-ability .title {
  font-weight: bold;
  width: 100%;
  margin-top: 21px;
  font-size: 16px;
}

.kagibase-ability .desc {
  font-weight: unset;
  color: #000;
  text-align: left;
  font-size: 14px;
  width: 100%;
  margin-top: 12px;
}

.kagibase-ability .title-wrap {
  margin-bottom: 50px;
}

.docSlider {
  z-index: 2;
}

.price-mv .header-inner {
  display: flex;
  margin: 24px 24px 0;
  justify-content: space-between;
  width: 100%;
  align-items: center;
}

@media screen and (min-width: 1024px) {
  .price-mv .header-inner {
    margin-top: 50px;
    margin: 50px 50px 0;
  }

  .price-mv .sticky .header-inner {
    overflow: hidden;
  }

  .top-mv .menu-wrap.is-pc-view {
    display: flex;
    align-items: center;
    font-size: 12px;
    font-weight: bold;
  }
}

.title-wrap.title-price {
  position: relative;
}

.title-wrap.title-contact {
  position: relative;
}

.title-wrap.title-privacy {
  position: relative;
}

.title-wrap.title-price img {
  position: absolute;
  top: -80%;
  width: 196.66px;
  height: 196.66px;
  max-width: unset;
  max-height: unset;
}

.title-wrap.title-contact img {
  position: absolute;
  top: -80%;
  width: 239.21px;
  height: 196.66px;
  max-width: unset;
  max-height: unset;
}

.title-wrap.title-privacy img {
  position: absolute;
  top: -80%;
  width: 239.21px;
  height: 196.66px;
  max-width: unset;
  max-height: unset;
}

header.sticky .menu-wrap.is-pc-view {
  display: flex;
  align-items: center;
  font-size: 12px;
  height: 100%;
  font-weight: bold;
}

.top-mv .menu-wrap.is-pc-view a:not(:last-child) {
  color: #ffffff;
}

.top-mv .menu-wrap.is-pc-view p {
  color: #ffffff;
  margin-right: 30px;
}

#top-doamoba .price-btn {
  margin-bottom: 16px;
}

#top-toyomoba .price-btn {
  margin-bottom: 16px;
}

@media screen and (min-width: 1024px) {
  #top-doamoba .price-btn {
    margin-bottom: 0px;
  }

  #top-toyomoba .price-btn {
    margin-bottom: 0px;
  }
}

.sub-page-content {
  max-width: 1100px;
  box-shadow: 0 0 25px rgba(0, 0, 0, 0.05);
  margin: auto;
  margin-top: -180px;
  background: #ffffff;
  border-radius: 10px;
  margin-right: 24px;
  margin-left: 24px;
  padding-bottom: 110px;
}

@media screen and (min-width: 1024px) {
  .sub-page-content {
    margin-right: auto;
    margin-left: auto;
  }
}

.sub-page-content .content {
  margin: auto;
  max-width: 1000px;
  padding-top: 75px;
  padding-right: 32px;
  padding-left: 32px;
}

@media screen and (min-width: 1024px) {
  .sub-page-content .content {
    padding-right: 0px;
    padding-left: 0px;
  }
}

.sub-page-content .content .desc {
  text-align: center;
  /* color: #014f8d; */
  font-size: 14px;
  font-weight: bold;
  letter-spacing: 0.1rem;
}

.plan-list {
  margin-top: 50px;
  margin-right: 24px;
  margin-left: 24px;
}

.plan-list .comming-soon {
  width: 100%;
}

@media screen and (min-width: 1024px) {
  .plan-list .comming-soon {
    width: 49%;
  }
}

.plan-item {
  border-radius: 10px;
  overflow: hidden;
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
  max-width: 873px;
  margin: auto;
  display: flex;
  flex-direction: column;
}

@media screen and (min-width: 1024px) {
  .plan-item {
    display: flex;
    flex-direction: row;
  }
}

.plan-item:not(:first-child) {
  margin-top: 30px;
}

.plan-item .img-wrap {
  width: 100%;
  overflow: hidden;
}

@media screen and (min-width: 1024px) {
  .plan-item .img-wrap {
    width: fit-content;
    min-width: 328px;
    display: flex;
  }

  .plan-item .img-wrap img {
    width: 328px;
    height: 100%;
  }
}

.plan-item .title-wrap {
  color: #005496;
  font-weight: bold;
}

.plan-item .title {
  font-size: 27px;
  font-weight: bold;
  letter-spacing: 0.1rem;
}

.plan-item .sub-title {
  font-size: 15px;
  letter-spacing: 0.2rem;
}

.plan-item .desc-main {
  font-size: 16px;
  letter-spacing: 0.2rem;
  font-weight: bold;
  margin-bottom: 16px;
}

@media screen and (min-width: 1024px) {
  .plan-item .desc-main {
    margin-bottom: 32px;
  }
}

.plan-item .desc {
  font-size: 14px;
  letter-spacing: 0.1rem;
}

.plan-item .title-wrap {
  margin-bottom: 16px;
}

@media screen and (min-width: 1024px) {
  .plan-item .title-wrap {
    margin-bottom: 32px;
  }
}

.plan-item .plan-item-wrap {
  padding: 50px;
}

.plan-item .price-btn {
  color: #005496;
  margin-right: 0;
  margin-bottom: 8px;
}

.plan-item .btn-wrap {
  margin-top: 30px;
}

@media screen and (min-width: 1024px) {
  .plan-item .btn-wrap {
    display: flex;
    justify-content: space-between;
  }
}

.sub-page-content .title {
  color: #005496;
  font-size: 20px;
  font-weight: bold;
  letter-spacing: 0.2rem;
}

.contact-page.sub-page-content .content {
  max-width: 855px;
  margin-right: 0;
  margin-left: 0;
}

@media screen and (min-width: 1024px) {
  .contact-page.sub-page-content .content {
    margin-right: auto;
    margin-left: auto;
  }
}

.contact-page.sub-page-content .content .btn {
  padding: 0;
}

.contact-page.sub-page-content .content .btn:hover {
  cursor: pointer;
}

.contact-page.sub-page-content .content .btn input {
  height: 100%;
}

@media screen and (min-width: 1024px) {
}

.contact-page .content .title {
  margin-top: 80px;
}

.contact-page .tel-contact {
  background: #f7f7f7;
  width: 100%;
  margin-top: 20px;
  border-radius: 5px;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  flex-direction: column;
  padding-top: 15px;
  padding-bottom: 15px;
}

@media screen and (min-width: 1024px) {
  .contact-page .tel-contact {
    height: 55px;
    margin-right: auto;
    margin-left: auto;
    display: flex;
    flex-direction: row;
  }
}

.contact-page .tel-number {
  font-size: 20px;
  font-weight: bold;
  color: #014f8d;
  position: relative;
  text-align: center;
}

.contact-page .tel-number::before {
  content: "";
  background: url(assets/images/common/tel-icon.svg);
  display: inline-block;
  width: 24px;
  left: -32px;
  position: absolute;
  height: 24px;
  top: 50%;
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);

  background-size: contain;
  vertical-align: middle;
}

.contact-page .business-hour-wrap {
  right: 0px;
  padding-right: 30px;
}

@media screen and (min-width: 768px) {
  .contact-page .business-hour-wrap {
    position: absolute;
    right: 0px;
    display: flex;
  }
}

.contact-page .business-hour {
  font-size: 12px;
  letter-spacing: 0.11rem;
  color: #005496;
  font-weight: bold;
}

.contact-page .vertical-line {
  display: none;
}

@media screen and (min-width: 768px) {
  .contact-page .vertical-line {
    display: block;
    height: 27px;
    width: 1px;
    background: #005496;
    margin-right: 12px;
  }
}

.contact-page .business-hour-date {
  font-size: 10px;
  color: #005496;
}

.contact-page .hour-date-wrap {
  display: flex;
  flex-direction: column;
}

.contact-page .contact-form {
  width: 100%;
  overflow: hidden;
  margin-top: 20px;
}

.contact-page .form-item {
  width: 100%;
  border-radius: 5px;
  overflow: hidden;
}

@media screen and (min-width: 768px) {
  .contact-page .form-item {
    display: flex;
  }
}

.contact-page .radio-box {
  display: flex;
  font-size: 14px;
  padding: 22px;
}

@media screen and (min-width: 768px) {
  .contact-page .radio-box {
    display: flex;
    align-items: center;
    padding: unset;
    padding-left: 18px;
  }
}

.contact-page .radio-box .radio-box-item {
  margin-right: 16px;
}

/* input[type="radio"] {
  display: none;
}
.customRadioBox {
  box-sizing: border-box;
  cursor: pointer;
  display: inline-block;
  padding: 5px 30px;
  position: relative;
  width: auto;
}
.customRadioBox::before {
  background: #fff;
  border: 1px solid #ccc;
  border-radius: 50%;
  content: "";
  display: block;
  height: 16px;
  left: 5px;
  margin-top: -8px;
  position: absolute;
  top: 50%;
  width: 16px;
}
.customRadioBox::after {
  background: #00cccc;
  border-radius: 50%;
  content: "";
  display: block;
  height: 8px;
  left: 10px;
  margin-top: -3px;
  opacity: 0;
  position: absolute;
  top: 50%;
  width: 8px;
}
input[type="radio"]:checked + .customRadioBox::before {
  border-color: #666;
}
input[type="radio"]:checked + .customRadioBox::after {
  opacity: 1;
} */

/* ラジオボタン02 */
input[type="radio"] {
  display: none;
}
.radio02 {
  box-sizing: border-box;
  cursor: pointer;
  display: inline-block;
  padding: 5px 30px;
  position: relative;
  width: auto;
  color: #005496;
  font-weight: bold;
}
.radio02::before {
  background: #fff;
  border: 1px solid #005496;
  border-radius: 50%;
  content: "";
  display: block;
  height: 16px;
  left: 5px;
  margin-top: -8px;
  position: absolute;
  top: 50%;
  width: 16px;
}
.radio02::after {
  background: #005496;
  border-radius: 50%;
  content: "";
  display: block;
  height: 8px;
  left: 9px;
  margin-top: -4px;
  opacity: 0;
  position: absolute;
  top: 50%;
  width: 8px;
}
input[type="radio"]:checked + .radio02::before {
  border-color: #005496;
}
input[type="radio"]:checked + .radio02::after {
  opacity: 1;
}

.contact-page .form-title {
  background: #005496;
  height: 55px;
  color: #ffffff;
  font-size: 15px;
  padding-left: 20px;
  font-weight: bold;
  letter-spacing: 0.2rem;
  display: flex;
  justify-self: center;
  align-items: center;
  position: relative;
}

@media screen and (min-width: 768px) {
  .contact-page .form-title {
    border-radius: 0 0 0 5px;
    min-width: 177px;
    height: 55px;
  }
}

.contact-page .form-item input[type="text"] {
  background: #f7f7f7;
  color: #005496;
  height: 55px;
  margin-bottom: unset;
  border-radius: 0 0 5px 5px;
  padding-left: 18px;
  letter-spacing: 0.2rem;
  font-size: 14px;
}

@media screen and (min-width: 768px) {
  .contact-page .form-item input[type="text"] {
    border-radius: 0 5px 5px 0;
  }
}

.contact-page .form-item:not(:first-child) {
  margin-top: 10px;
}

.contact-page .form-item.-required .form-title::after {
  content: "※必須";
  position: absolute;
  right: 3px;
  bottom: 3px;
  font-size: 9px;
  font-weight: bold;
}

@media screen and (min-width: 768px) {
  .contact-page .form-title-contact {
    height: auto;
  }
}

.contact-page .form-item textarea {
  padding: 18px;
  border-radius: 0 0 5px 5px;
}

.contact-page.contact-thanks .content .title-underbar {
  width: 100%;
  height: 2px;
  background: #005496;
}

.contact-page.contact-thanks .content .title-wrap {
  width: fit-content;
}

.contact-page.contact-thanks .content .title {
  margin-top: 0;
}

.contact-page.contact-thanks .content .desc {
  margin-top: 40px;
  text-align: left;
  font-weight: unset;
}

.contact-page.contact-thanks .content .btn {
  position: absolute;
  bottom: -20px;
  right: 0;
  left: 0;
  margin: auto;
  width: fit-content;
}

.contact-page.contact-thanks .content .btn button {
  width: 208px;
  height: 37px;
  position: relative;
  font-weight: bold;
  letter-spacing: 0.125rem;
}

.contact-page.contact-thanks .sub-page-content {
  padding-bottom: 70px;
  position: relative;
}

.contact-page .cation {
  display: flex;
  font-weight: Bold;
  color: #014f8d;
  justify-content: center;
  margin-top: 75px;
  margin-bottom: 30px;
  width: 100%;
}

.contact-page a {
  color: #e6531e;
}

.contact-page .btn-align a {
  display: inline-block;
  margin: auto;
}

.contact-page .submit-btn button {
  width: 208px;
  margin: auto;
}

.contact-page .btn-align {
  display: flex;
}

.privacy-page.sub-page-content .content {
  max-width: 855px;
  margin-right: 48px;
  margin-left: 48px;
}

@media screen and (min-width: 768px) {
  .privacy-page.sub-page-content .content {
    margin-right: auto;
    margin-left: auto;
  }
}

.privacy-page.sub-page-content .content .desc {
  text-align: left;
  line-height: 25px;
  margin-top: 20px;
}

.privacy-page.sub-page-content .content .main-desc-title {
  margin-bottom: 75px;
}

.privacy-page.sub-page-content .content .desc:first-child {
  margin-top: 0;
}

.privacy-page.sub-page-content .content .desc.color-black {
  color: #000;
  font-weight: unset;
}

.privacy-page.sub-page-content .content .privacy-item {
  margin-bottom: 50px;
}

.privacy-page.sub-page-content .content .privacy-item .icon-wrap {
  position: absolute;
  left: -56px;
  top: 2px;
}

.privacy-page.sub-page-content .content .privacy-item .icon-wrap img {
  height: 35.02px;
  width: 35.02px;
}

.privacy-page.sub-page-content .content .privacy-item .list .list-item {
  margin-top: 25px;
  position: relative;
  margin-left: 56px;
}

.privacy-page.sub-page-content
  .content
  .privacy-item
  .list
  .list-item
  .main-desc {
  font-size: 14px;
  letter-spacing: 0.1rem;
  line-height: 25px;
}

.privacy-page.sub-page-content
  .content
  .privacy-item
  .list
  .list-item
  .desc-wrap {
  margin-top: 15px;
  margin-bottom: 0;
}

.privacy-page.sub-page-content .content .privacy-item .list .list-item .desc {
  margin-top: 0;
  padding: 16px 18px;
  font-size: 14px;
  letter-spacing: 0.1rem;
  font-weight: unset;
}

.privacy-page.sub-page-content
  .content
  .privacy-item
  .list
  .list-item
  .desc-gray {
}

.next-btn.active:hover {
  cursor: pointer;
}

.prev-btn.active:hover {
  cursor: pointer;
}

.kagibase-main {
  overflow: hidden;
}

.kagibase-works {
  position: relative;
}

.kagibase-works .title-wrap {
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: center;
  margin-bottom: 50px;
}

.kagibase-works .sub-title-wrap {
  width: fit-content;
  margin-right: auto;
  margin-left: auto;
}

.kagibase-works .case {
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
  width: fit-content;
  position: relative;
  margin: auto;
  margin-bottom: 56px;
  display: flex;
  flex-direction: column;
  border-radius: 0 0 15px 15px;
  width: 264px;
}

@media screen and (min-width: 1024px) {
  .kagibase-works .case {
    height: 164px;
    width: unset;
    flex-direction: row;
    margin: unset;
    height: unset;
    width: 495px;
  }
}

@media screen and (min-width: 1024px) {
  .kagibase-works .case .img-wrap {
    width: 207px;
  }
}

.kagibase-works .case .works-thumbnail {
  height: 100%;
  width: 100%;
  overflow: hidden;
  border-radius: 15px 15px 0 0;
}

@media screen and (min-width: 1024px) {
  .kagibase-works .case .works-thumbnail {
    border-radius: 15px 0 0 15px;
    width: 207px;
    height: 164px;
    height: 100%;
  }
}

.kagibase-works .content {
  margin-left: 24px;
  margin-right: 24px;
}

@media screen and (min-width: 1024px) {
  .kagibase-works .content {
    margin: auto;
  }
}

.kagibase-works .case .title {
  color: #014f8d;
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 20px;
}

.kagibase-works .desc {
  padding: 37px 31px;
}

@media screen and (min-width: 1024px) {
  .kagibase-works .desc {
    width: 288px;
  }
}

.kagibase-works .row {
  margin-bottom: 56px;
}

@media screen and (min-width: 1024px) {
  .kagibase-works .row {
    justify-content: space-between;
    display: flex;
  }
}

.kagibase-works .label {
  width: 72.05px;
  position: absolute;
  top: -36px;
  left: -21.1px;
}

.cases {
  width: 100%;
  margin-top: 150px;
}

.cases .content {
  display: flex;
  justify-content: center;
  flex-direction: column;
}

.cases .desc-wrap {
  margin-top: 25px;
}

.cases .item {
  width: 313px;
  margin: auto;
  margin-top: 32px;
}

.cases .list {
}

@media screen and (min-width: 1024px) {
  .cases .list {
    display: flex;
  }
}

.cases .title-wrap {
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin: auto;
}

.cases .sub-title-wrap {
  display: inline-block;
  margin: auto;
}

.cases .sub-title {
  width: fit-content;
}

.cases .main-title {
  text-align: center;
}

.cases .img-wrap {
  width: 313px;
  height: 219px;
  background: #d5d5d5;
  border-radius: 5px;
}

.cases .title {
  color: #014f8d;
  font-size: 16px;
  font-weight: bold;
  letter-spacing: 0.2rem;
}

.cases .sub-title {
  letter-spacing: 0.075rem;
}

.kagimoba-main {
  overflow: hidden;
}

.fade-out {
}

#menu-icon {
  position: sticky;
  top: 0;
}

#menu-modal {
  position: sticky;
  top: 0;
  z-index: 3;
  padding: 24px 24px 0;
  font-weight: bold;
  font-size: 28px;
  line-height: 60px;
  height: 100vh;
  background: #005496;
}

#menu-modal .company-logo {
  width: auto;
}

#menu-modal a {
  color: #e6531e !important;
}

#menu-modal .white {
  color: #fff !important;
}

#menu-modal .logo-icon-align {
  display: flex;
  justify-content: space-between;
  margin-bottom: 16px;
  line-height: 0;
}

#menu-modal .menu {
  color: #e6531e !important;
}

#menu-modal .company-logo {
  height: 29.81px;
}

#menu-modal span {
  color: #fff;
  font-size: 17px;
}

.pager {
  position: fixed;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  padding: 0;
  z-index: 4;
}

.pager li {
  display: block;
  margin: 20px 40px;
}

.pager a {
  display: block;
  width: 10px;
  height: 10px;
  background: #dedede;
  border-radius: 50%;
}

.pager .is-current a {
  background: #e6531e;
}

.back-btn {
  display: none;
}

@media screen and (min-width: 1024px) {
  .back-btn {
    position: fixed;
    bottom: 50px;
    height: 50px;
    width: 100vw;

    left: 0;
    right: 0;
    margin: auto;

    max-width: 1000px;
    z-index: 4;

    display: flex;
    margin-left: auto;
    justify-content: flex-end;
  }

  .back-btn-inner {
    width: 186px;
    height: 40px;
    background: #005496;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-right: 0;
    box-shadow: 0px 0px 30px rgba(0, 0, 0, 0.16);
    border-radius: 5px;
    letter-spacing: 0.2rem;
    font-size: 11px;
    font-weight: bold;
    color: #ffff;
  }
}
</pre></body></html>