@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&family=Noto+Sans+JP:wght@100..900&display=swap");
/*! 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 */
}

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

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

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

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

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

* {
  min-inline-size: 0;
}

header, h1, h2, h3, h4, div, p, ul, ol, li, dl, dt, dd, a, th, td {
  box-sizing: border-box;
}

html,
body {
  background: #F5F5F7;
  scroll-behavior: smooth;
}

html,
body {
  font-family: "Noto Sans JP", "游ゴシック体", "Yu Gothic", "YuGothic", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "MS Pゴシック", "MS PGothic", sans-serif;
  font-optical-sizing: auto;
  font-feature-settings: "palt";
  font-weight: 400;
  font-style: normal;
  color: #1D1D1F;
}

html {
  font-size: var(--font-size-default);
}

a {
  text-decoration: none;
  outline: none;
}

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

p {
  margin: 0 0 1.5em;
}
p:last-child {
  margin-bottom: 0;
}

.mt0 {
  margin-top: 0px !important;
}

.mt5 {
  margin-top: 5px !important;
}

.mt10 {
  margin-top: 10px !important;
}

.mt15 {
  margin-top: 15px !important;
}

.mt20 {
  margin-top: 20px !important;
}

.mt25 {
  margin-top: 25px !important;
}

.mt30 {
  margin-top: 30px !important;
}

.mt35 {
  margin-top: 35px !important;
}

.mt40 {
  margin-top: 40px !important;
}

.mt45 {
  margin-top: 45px !important;
}

.mt50 {
  margin-top: 50px !important;
}

.mt55 {
  margin-top: 55px !important;
}

.mt60 {
  margin-top: 60px !important;
}

.mt65 {
  margin-top: 65px !important;
}

.mt70 {
  margin-top: 70px !important;
}

.mt75 {
  margin-top: 75px !important;
}

.mt80 {
  margin-top: 80px !important;
}

.mt85 {
  margin-top: 85px !important;
}

.mt90 {
  margin-top: 90px !important;
}

.mt95 {
  margin-top: 95px !important;
}

.mt100 {
  margin-top: 100px !important;
}

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

.mb5 {
  margin-bottom: 5px !important;
}

.mb10 {
  margin-bottom: 10px !important;
}

.mb15 {
  margin-bottom: 15px !important;
}

.mb20 {
  margin-bottom: 20px !important;
}

.mb25 {
  margin-bottom: 25px !important;
}

.mb30 {
  margin-bottom: 30px !important;
}

.mb35 {
  margin-bottom: 35px !important;
}

.mb40 {
  margin-bottom: 40px !important;
}

.mb45 {
  margin-bottom: 45px !important;
}

.mb50 {
  margin-bottom: 50px !important;
}

.mb55 {
  margin-bottom: 55px !important;
}

.mb60 {
  margin-bottom: 60px !important;
}

.mb65 {
  margin-bottom: 65px !important;
}

.mb70 {
  margin-bottom: 70px !important;
}

.mb75 {
  margin-bottom: 75px !important;
}

.mb80 {
  margin-bottom: 80px !important;
}

.mb85 {
  margin-bottom: 85px !important;
}

.mb90 {
  margin-bottom: 90px !important;
}

.mb95 {
  margin-bottom: 95px !important;
}

.mb100 {
  margin-bottom: 100px !important;
}

.pt0 {
  padding-top: 0px !important;
}

.pt5 {
  padding-top: 5px !important;
}

.pt10 {
  padding-top: 10px !important;
}

.pt15 {
  padding-top: 15px !important;
}

.pt20 {
  padding-top: 20px !important;
}

.pt25 {
  padding-top: 25px !important;
}

.pt30 {
  padding-top: 30px !important;
}

.pt35 {
  padding-top: 35px !important;
}

.pt40 {
  padding-top: 40px !important;
}

.pt45 {
  padding-top: 45px !important;
}

.pt50 {
  padding-top: 50px !important;
}

.pt55 {
  padding-top: 55px !important;
}

.pt60 {
  padding-top: 60px !important;
}

.pt65 {
  padding-top: 65px !important;
}

.pt70 {
  padding-top: 70px !important;
}

.pt75 {
  padding-top: 75px !important;
}

.pt80 {
  padding-top: 80px !important;
}

.pt85 {
  padding-top: 85px !important;
}

.pt90 {
  padding-top: 90px !important;
}

.pt95 {
  padding-top: 95px !important;
}

.pt100 {
  padding-top: 100px !important;
}

.pb0 {
  padding-bottom: 0px !important;
}

.pb5 {
  padding-bottom: 5px !important;
}

.pb10 {
  padding-bottom: 10px !important;
}

.pb15 {
  padding-bottom: 15px !important;
}

.pb20 {
  padding-bottom: 20px !important;
}

.pb25 {
  padding-bottom: 25px !important;
}

.pb30 {
  padding-bottom: 30px !important;
}

.pb35 {
  padding-bottom: 35px !important;
}

.pb40 {
  padding-bottom: 40px !important;
}

.pb45 {
  padding-bottom: 45px !important;
}

.pb50 {
  padding-bottom: 50px !important;
}

.pb55 {
  padding-bottom: 55px !important;
}

.pb60 {
  padding-bottom: 60px !important;
}

.pb65 {
  padding-bottom: 65px !important;
}

.pb70 {
  padding-bottom: 70px !important;
}

.pb75 {
  padding-bottom: 75px !important;
}

.pb80 {
  padding-bottom: 80px !important;
}

.pb85 {
  padding-bottom: 85px !important;
}

.pb90 {
  padding-bottom: 90px !important;
}

.pb95 {
  padding-bottom: 95px !important;
}

.pb100 {
  padding-bottom: 100px !important;
}

header {
  width: 384px;
  height: 90px;
  padding: 24px;
  background: #fff;
  border-radius: 0 0 19px 0;
  position: absolute;
  left: 0;
  top: 0;
}
header img {
  width: 175px;
  height: auto;
  vertical-align: middle;
  margin-right: 10px;
}
header p {
  font-size: 13px;
  display: inline-block;
}
header .header-entry {
  display: none;
}
@media (max-width: 768px) {
  header {
    width: 100%;
    border-radius: 0;
    height: 60px;
    padding: 17px 12px;
    position: fixed;
    z-index: 20;
  }
  header p {
    font-size: 9px;
  }
  header img {
    width: 100px;
  }
  header .header-entry {
    display: block;
    position: absolute;
    top: 10px;
    right: 10px;
    width: 125px;
    height: 40px;
    background: #0069c6;
    border-radius: 8px;
    transition: 0.3s;
  }
  header .header-entry a {
    font-size: 13px;
    font-weight: 700;
    display: block;
    line-height: 40px;
    color: #fff;
    text-align: center;
  }
  header .header-entry:hover {
    opacity: 0.75;
  }
}

.main-v {
  position: relative;
  width: 100%;
  height: 100vh;
  min-height: 650px;
  max-height: 800px;
  display: flex;
  align-items: center;
  background: url("../images/main-v.webp") no-repeat 50% 50%;
  background-size: cover;
}
@media (max-width: 768px) {
  .main-v {
    display: block;
  }
}
.main-v__inner {
  width: 100%;
  text-align: center;
  padding: 50px;
}
@media (max-width: 768px) {
  .main-v__inner {
    padding: 50px 25px;
  }
}
.main-v__inner .title-area {
  max-width: 1190px;
  text-align: center;
  margin: auto;
  padding-top: 100px;
}
@media (max-width: 768px) {
  .main-v__inner .title-area {
    padding-top: 100px;
  }
}
.main-v__inner .title-area .sub-t {
  max-width: 770px;
  background-color: #fff;
  border-radius: 8px;
  margin: auto;
  padding: 16px 24px;
  display: inline-block;
}
.main-v__inner .title-area .sub-t p {
  font-size: clamp(16px, 3.3vw, 40px);
  font-weight: 700;
  line-height: 100%;
  color: #0069c6;
}
@media (max-width: 768px) {
  .main-v__inner .title-area .sub-t {
    padding: 10px;
  }
}
.main-v__inner .title-area .main-t {
  display: flex;
  color: #fff;
}
.main-v__inner .title-area .main-t p.times {
  font-family: "游ゴシック体", "Yu Gothic", "YuGothic", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  margin: 0;
  writing-mode: vertical-rl;
  text-orientation: upright;
  font-size: clamp(20px, 2.5vw, 30px);
  font-weight: bold;
  letter-spacing: 3px;
  padding-top: 10px;
}
.main-v__inner .title-area .main-t p.times span {
  -webkit-text-combine: horizontal;
  -ms-text-combine-horizontal: all;
  text-combine-upright: all;
  padding-bottom: 3px;
}
.main-v__inner .title-area .main-t h1 {
  padding-left: 20px;
  font-size: clamp(40px, 6.7vw, 90px);
  font-weight: 900;
  margin: 50px 0;
}
@media (max-width: 768px) {
  .main-v__inner .title-area .main-t {
    display: block;
  }
  .main-v__inner .title-area .main-t p.times {
    writing-mode: horizontal-tb;
    margin: 20px 0;
  }
  .main-v__inner .title-area .main-t h1 {
    margin-top: 20px;
    line-height: 140%;
    padding: 0 15px;
  }
}
.main-v__inner .title-area .main-info {
  display: flex;
  align-items: center;
  max-width: 750px;
  margin: 80px auto 0;
  text-align: left;
  color: #fff;
  justify-content: center;
}
.main-v__inner .title-area .main-info .date {
  padding-right: 20px;
  font-size: clamp(15px, 2vw, 24px);
  line-height: 1.5;
  position: relative;
  margin-bottom: 20px;
}
.main-v__inner .title-area .main-info .date p {
  margin: 0;
  padding-left: 40px;
}
.main-v__inner .title-area .main-info .date p::before {
  content: "";
  display: inline-block;
  width: 24px;
  height: 24px;
  background: url("../images/calendar_wh.png") no-repeat;
  background-size: contain;
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -12px;
}
.main-v__inner .title-area .main-info .location {
  font-size: clamp(15px, 2vw, 24px);
  line-height: 1.6;
  position: relative;
}
.main-v__inner .title-area .main-info .location p {
  margin: 0;
  padding-left: 40px;
}
.main-v__inner .title-area .main-info .location p::before {
  content: "";
  display: inline-block;
  width: 24px;
  height: 24px;
  background: url("../images/map-pin_wh.png") no-repeat;
  background-size: contain;
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -12px;
}
@media screen and (max-width: 560px) {
  .main-v__inner .title-area .main-info {
    display: block;
    padding: 0 20px;
  }
}

.entry-btn {
  width: 300px;
  position: absolute;
  bottom: 40px;
  right: 25px;
  background: #0069c6;
  border-radius: 16px;
  padding: 0;
  position: fixed;
  right: 50px;
  bottom: 50px;
  z-index: 10;
  transition: 0.3s;
}
.entry-btn p a {
  display: block;
  font-size: 18px;
  font-weight: 700;
  text-align: center;
  color: #fff;
  padding: 20px;
  line-height: 160%;
}
.entry-btn p a:before {
  content: "無料";
  display: inline-block;
  margin-right: 10px;
  background-color: #fff;
  color: #0069c6;
  font-size: 14px;
  text-align: center;
  border-radius: 12px;
  line-height: 26px;
  padding: 0 10px;
}
.entry-btn p a span {
  font-size: 15px;
  font-weight: 500;
}
.entry-btn:hover {
  opacity: 0.75;
}
@media (max-width: 768px) {
  .entry-btn {
    position: relative;
    right: auto;
    bottom: auto;
    margin: auto;
    width: calc(100% - 80px);
  }
  .entry-btn p a {
    font-size: 17px;
  }
  .entry-btn p a span {
    font-size: 14px;
  }
}

.section {
  width: 100%;
  position: relative;
  overflow: hidden;
}
.section__inner {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 40px;
  position: relative;
}
.section__inner .col2 {
  display: flex;
  justify-content: space-between;
}
.section__inner .col2 .col {
  flex-basis: calc(50% - 20px);
}
@media (max-width: 768px) {
  .section__inner {
    padding: 30px 25px;
  }
  .section__inner .pc_only {
    display: none;
  }
}
.section.about {
  color: #0658A1;
  background-color: #fff;
  background-image: url("../images/bg_copy.png");
  background-repeat: no-repeat;
  background-position: 50% 70%;
  background-size: contain;
}
@media (max-width: 768px) {
  .section.about {
    background-position: 100% 85%;
    background-size: 200%;
  }
  .section.about .section__inner {
    padding-top: 50px !important;
  }
}
.section.about h2 {
  font-size: 40px;
  font-weight: 900;
  line-height: 160%;
}
.section.about h2 span {
  font-size: 24px;
  font-weight: 700;
}
@media (max-width: 1100px) {
  .section.about h2 {
    font-size: clamp(36px, 2.3vw, 38px);
  }
  .section.about h2 span {
    font-size: clamp(20px, 1.8vw, 22px);
    display: inline-block;
    line-height: 150%;
  }
}
@media (max-width: 768px) {
  .section.about h2 {
    margin-top: 0;
  }
}
.section.about p {
  font-size: 18px;
  font-weight: 400;
  line-height: 175%;
}
@media (max-width: 980px) {
  .section.about p .pc_only {
    display: none;
  }
}
.section.about .bg-pic {
  width: calc(50% - 60px);
  max-height: 500px;
  position: absolute;
  right: 0;
  top: 100px;
}
.section.about .bg-pic img {
  width: 100%;
  max-height: 500px;
  height: auto;
  border-radius: 16px 0 0 16px;
  overflow: hidden;
  object-fit: cover;
}
@media (max-width: 980px) {
  .section.about .bg-pic {
    position: relative;
    width: 100%;
    top: 30px;
  }
  .section.about .bg-pic img {
    border-radius: 8px;
  }
}
.section.about .bg-dot {
  width: 260px;
  height: 240px;
  background: url("../images/bg_dot.png") no-repeat;
  background-size: cover;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 5;
}
@media (max-width: 980px) {
  .section.about .bg-dot {
    z-index: 0;
  }
}
@media (max-width: 768px) {
  .section.about .bg-dot {
    display: none;
  }
}
.section.about .copy {
  margin-top: 160px;
  padding-bottom: 80px;
}
@media (max-width: 768px) {
  .section.about .copy {
    margin-top: 30px;
    padding-bottom: 40px;
  }
}
.section.about .copy p {
  text-align: center;
  font-size: 18px;
  font-weight: 700;
}
.section.about .copy p.lead {
  font-size: 28px;
  font-weight: 900;
}
@media (max-width: 1100px) {
  .section.about .copy p {
    font-size: clamp(16px, 1.5vw, 18px);
  }
  .section.about .copy p.lead {
    font-size: clamp(22px, 2.3vw, 28px);
  }
}
@media (max-width: 980px) {
  .section.about .col2 {
    display: block;
  }
}
.section .strip-img {
  width: 100%;
  min-height: 166px;
}
.section .strip-img img {
  width: 100%;
  height: auto;
}
@media (max-width: 768px) {
  .section .strip-img img {
    width: auto;
    height: 166px;
    object-fit: cover;
  }
}
.section.case, .section.qa {
  background-color: #fff;
  margin-top: 80px;
  padding-top: 20px;
  padding-bottom: 80px;
}
@media (max-width: 768px) {
  .section.case, .section.qa {
    margin-top: 0;
    padding-bottom: 40px;
  }
}
.section.category .bg-dot2, .section.advantages .bg-dot2, .section.guide .bg-dot2, .section.case .bg-dot2, .section.how .bg-dot2, .section.qa .bg-dot2, .section.link .bg-dot2 {
  width: 260px;
  height: 240px;
  background: url("../images/bg_dot.png") no-repeat;
  background-size: cover;
  position: absolute;
  top: -40px;
  left: -20px;
}
@media (max-width: 768px) {
  .section.category .bg-dot2, .section.advantages .bg-dot2, .section.guide .bg-dot2, .section.case .bg-dot2, .section.how .bg-dot2, .section.qa .bg-dot2, .section.link .bg-dot2 {
    display: none;
  }
}
.section.category .bg-dot3, .section.advantages .bg-dot3, .section.guide .bg-dot3, .section.case .bg-dot3, .section.how .bg-dot3, .section.qa .bg-dot3, .section.link .bg-dot3 {
  width: 260px;
  height: 240px;
  background: url("../images/bg_dot.png") no-repeat;
  background-size: cover;
  position: absolute;
  top: 0;
  right: 0;
}
@media (max-width: 768px) {
  .section.category .bg-dot3, .section.advantages .bg-dot3, .section.guide .bg-dot3, .section.case .bg-dot3, .section.how .bg-dot3, .section.qa .bg-dot3, .section.link .bg-dot3 {
    display: none;
  }
}
.section.category .bg-dot4, .section.advantages .bg-dot4, .section.guide .bg-dot4, .section.case .bg-dot4, .section.how .bg-dot4, .section.qa .bg-dot4, .section.link .bg-dot4 {
  width: 260px;
  height: 240px;
  background: url("../images/bg_dot.png") no-repeat;
  background-size: cover;
  position: absolute;
  bottom: 0;
  left: 0;
}
@media (max-width: 768px) {
  .section.category .bg-dot4, .section.advantages .bg-dot4, .section.guide .bg-dot4, .section.case .bg-dot4, .section.how .bg-dot4, .section.qa .bg-dot4, .section.link .bg-dot4 {
    display: none;
  }
}
.section.category .bg-dot5, .section.advantages .bg-dot5, .section.guide .bg-dot5, .section.case .bg-dot5, .section.how .bg-dot5, .section.qa .bg-dot5, .section.link .bg-dot5 {
  width: 260px;
  height: 240px;
  background: url("../images/bg_dot.png") no-repeat;
  background-size: cover;
  position: absolute;
  top: -100px;
  left: 0;
}
@media (max-width: 768px) {
  .section.category .bg-dot5, .section.advantages .bg-dot5, .section.guide .bg-dot5, .section.case .bg-dot5, .section.how .bg-dot5, .section.qa .bg-dot5, .section.link .bg-dot5 {
    display: none;
  }
}
.section.category .bg-dot6, .section.advantages .bg-dot6, .section.guide .bg-dot6, .section.case .bg-dot6, .section.how .bg-dot6, .section.qa .bg-dot6, .section.link .bg-dot6 {
  width: 260px;
  height: 240px;
  background: url("../images/bg_dot.png") no-repeat;
  background-size: cover;
  position: absolute;
  bottom: -100px;
  right: 0;
}
@media (max-width: 768px) {
  .section.category .bg-dot6, .section.advantages .bg-dot6, .section.guide .bg-dot6, .section.case .bg-dot6, .section.how .bg-dot6, .section.qa .bg-dot6, .section.link .bg-dot6 {
    display: none;
  }
}
.section.category h2, .section.advantages h2, .section.guide h2, .section.case h2, .section.how h2, .section.qa h2, .section.link h2 {
  text-align: center;
  font-size: 48px;
  font-weight: 700;
  line-height: 150%;
}
.section.category h2 span, .section.advantages h2 span, .section.guide h2 span, .section.case h2 span, .section.how h2 span, .section.qa h2 span, .section.link h2 span {
  color: #0069c6;
  font-family: Montserrat;
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}
@media (max-width: 1100px) {
  .section.category h2, .section.advantages h2, .section.guide h2, .section.case h2, .section.how h2, .section.qa h2, .section.link h2 {
    font-size: clamp(24px, 3.3vw, 40px);
  }
  .section.category h2 span, .section.advantages h2 span, .section.guide h2 span, .section.case h2 span, .section.how h2 span, .section.qa h2 span, .section.link h2 span {
    font-size: clamp(16px, 1.6vw, 20px);
  }
}
.section.category p, .section.advantages p, .section.guide p, .section.case p, .section.how p, .section.qa p, .section.link p {
  line-height: 160%;
}
.section.category p.lead, .section.advantages p.lead, .section.guide p.lead, .section.case p.lead, .section.how p.lead, .section.qa p.lead, .section.link p.lead {
  font-size: 16px;
  line-height: 170%;
  text-align: center;
}
@media (max-width: 1100px) {
  .section.category p.lead, .section.advantages p.lead, .section.guide p.lead, .section.case p.lead, .section.how p.lead, .section.qa p.lead, .section.link p.lead {
    padding: 0 150px;
  }
}
@media (max-width: 768px) {
  .section.category p.lead, .section.advantages p.lead, .section.guide p.lead, .section.case p.lead, .section.how p.lead, .section.qa p.lead, .section.link p.lead {
    padding: 0;
  }
}
.section.category ul.category-grid, .section.advantages ul.category-grid, .section.guide ul.category-grid, .section.case ul.category-grid, .section.how ul.category-grid, .section.qa ul.category-grid, .section.link ul.category-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  margin: 80px 0;
  padding: 0;
}
@media (max-width: 1100px) {
  .section.category ul.category-grid, .section.advantages ul.category-grid, .section.guide ul.category-grid, .section.case ul.category-grid, .section.how ul.category-grid, .section.qa ul.category-grid, .section.link ul.category-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 768px) {
  .section.category ul.category-grid, .section.advantages ul.category-grid, .section.guide ul.category-grid, .section.case ul.category-grid, .section.how ul.category-grid, .section.qa ul.category-grid, .section.link ul.category-grid {
    gap: 24px 10px;
    margin: 40px 0 0;
  }
}
.section.category ul.category-grid li, .section.advantages ul.category-grid li, .section.guide ul.category-grid li, .section.case ul.category-grid li, .section.how ul.category-grid li, .section.qa ul.category-grid li, .section.link ul.category-grid li {
  background-color: #fff;
  min-height: 180px;
  border-radius: 16px;
  overflow: hidden;
  display: flex;
}
.section.category ul.category-grid li .img, .section.advantages ul.category-grid li .img, .section.guide ul.category-grid li .img, .section.case ul.category-grid li .img, .section.how ul.category-grid li .img, .section.qa ul.category-grid li .img, .section.link ul.category-grid li .img {
  flex-basis: 134px;
  height: 100%;
}
.section.category ul.category-grid li .img img, .section.advantages ul.category-grid li .img img, .section.guide ul.category-grid li .img img, .section.case ul.category-grid li .img img, .section.how ul.category-grid li .img img, .section.qa ul.category-grid li .img img, .section.link ul.category-grid li .img img {
  width: 100%;
  height: auto;
  object-fit: cover;
}
.section.category ul.category-grid li .img img.sp_only, .section.advantages ul.category-grid li .img img.sp_only, .section.guide ul.category-grid li .img img.sp_only, .section.case ul.category-grid li .img img.sp_only, .section.how ul.category-grid li .img img.sp_only, .section.qa ul.category-grid li .img img.sp_only, .section.link ul.category-grid li .img img.sp_only {
  display: none;
}
.section.category ul.category-grid li .tx, .section.advantages ul.category-grid li .tx, .section.guide ul.category-grid li .tx, .section.case ul.category-grid li .tx, .section.how ul.category-grid li .tx, .section.qa ul.category-grid li .tx, .section.link ul.category-grid li .tx {
  display: flex;
  padding: 24px;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  flex: 1 0 0;
}
.section.category ul.category-grid li .tx h3, .section.advantages ul.category-grid li .tx h3, .section.guide ul.category-grid li .tx h3, .section.case ul.category-grid li .tx h3, .section.how ul.category-grid li .tx h3, .section.qa ul.category-grid li .tx h3, .section.link ul.category-grid li .tx h3 {
  font-size: 18px;
  font-weight: 700;
  margin: 5px 0;
}
.section.category ul.category-grid li .tx p, .section.advantages ul.category-grid li .tx p, .section.guide ul.category-grid li .tx p, .section.case ul.category-grid li .tx p, .section.how ul.category-grid li .tx p, .section.qa ul.category-grid li .tx p, .section.link ul.category-grid li .tx p {
  font-size: 14px;
  line-height: 160%;
}
@media (max-width: 768px) {
  .section.category ul.category-grid li, .section.advantages ul.category-grid li, .section.guide ul.category-grid li, .section.case ul.category-grid li, .section.how ul.category-grid li, .section.qa ul.category-grid li, .section.link ul.category-grid li {
    display: block;
  }
  .section.category ul.category-grid li .img, .section.advantages ul.category-grid li .img, .section.guide ul.category-grid li .img, .section.case ul.category-grid li .img, .section.how ul.category-grid li .img, .section.qa ul.category-grid li .img, .section.link ul.category-grid li .img {
    max-height: 80px;
    overflow: hidden;
  }
  .section.category ul.category-grid li .img img, .section.advantages ul.category-grid li .img img, .section.guide ul.category-grid li .img img, .section.case ul.category-grid li .img img, .section.how ul.category-grid li .img img, .section.qa ul.category-grid li .img img, .section.link ul.category-grid li .img img {
    width: 100%;
    height: 80px;
    object-position: 50%;
  }
  .section.category ul.category-grid li .img img.sp_only, .section.advantages ul.category-grid li .img img.sp_only, .section.guide ul.category-grid li .img img.sp_only, .section.case ul.category-grid li .img img.sp_only, .section.how ul.category-grid li .img img.sp_only, .section.qa ul.category-grid li .img img.sp_only, .section.link ul.category-grid li .img img.sp_only {
    display: block;
  }
  .section.category ul.category-grid li .tx, .section.advantages ul.category-grid li .tx, .section.guide ul.category-grid li .tx, .section.case ul.category-grid li .tx, .section.how ul.category-grid li .tx, .section.qa ul.category-grid li .tx, .section.link ul.category-grid li .tx {
    padding: 16px;
  }
}
.section.category ul.advantages-grid, .section.advantages ul.advantages-grid, .section.guide ul.advantages-grid, .section.case ul.advantages-grid, .section.how ul.advantages-grid, .section.qa ul.advantages-grid, .section.link ul.advantages-grid {
  display: grid;
  gap: 24px;
  padding: 0;
  margin-bottom: 80px;
}
.section.category ul.advantages-grid li, .section.advantages ul.advantages-grid li, .section.guide ul.advantages-grid li, .section.case ul.advantages-grid li, .section.how ul.advantages-grid li, .section.qa ul.advantages-grid li, .section.link ul.advantages-grid li {
  background-color: #fff;
  border-radius: 16px;
  overflow: hidden;
  display: flex;
  padding: 24px 80px;
  justify-content: center;
  align-items: center;
  gap: 40px;
  align-self: stretch;
}
.section.category ul.advantages-grid li .tx h3, .section.advantages ul.advantages-grid li .tx h3, .section.guide ul.advantages-grid li .tx h3, .section.case ul.advantages-grid li .tx h3, .section.how ul.advantages-grid li .tx h3, .section.qa ul.advantages-grid li .tx h3, .section.link ul.advantages-grid li .tx h3 {
  font-size: 32px;
  font-weight: 500;
  line-height: 160%;
  margin-top: 0;
}
.section.category ul.advantages-grid li .tx h3 span, .section.advantages ul.advantages-grid li .tx h3 span, .section.guide ul.advantages-grid li .tx h3 span, .section.case ul.advantages-grid li .tx h3 span, .section.how ul.advantages-grid li .tx h3 span, .section.qa ul.advantages-grid li .tx h3 span, .section.link ul.advantages-grid li .tx h3 span {
  font-family: Montserrat;
  font-size: 32px;
  font-style: normal;
  font-weight: 400;
  color: #0069c6;
}
@media (max-width: 1100px) {
  .section.category ul.advantages-grid li .tx h3, .section.advantages ul.advantages-grid li .tx h3, .section.guide ul.advantages-grid li .tx h3, .section.case ul.advantages-grid li .tx h3, .section.how ul.advantages-grid li .tx h3, .section.qa ul.advantages-grid li .tx h3, .section.link ul.advantages-grid li .tx h3 {
    font-size: clamp(24px, 2.6vw, 32px);
  }
  .section.category ul.advantages-grid li .tx h3 span, .section.advantages ul.advantages-grid li .tx h3 span, .section.guide ul.advantages-grid li .tx h3 span, .section.case ul.advantages-grid li .tx h3 span, .section.how ul.advantages-grid li .tx h3 span, .section.qa ul.advantages-grid li .tx h3 span, .section.link ul.advantages-grid li .tx h3 span {
    font-size: clamp(22px, 2.6vw, 32px);
  }
}
.section.category ul.advantages-grid li .tx p, .section.advantages ul.advantages-grid li .tx p, .section.guide ul.advantages-grid li .tx p, .section.case ul.advantages-grid li .tx p, .section.how ul.advantages-grid li .tx p, .section.qa ul.advantages-grid li .tx p, .section.link ul.advantages-grid li .tx p {
  font-size: 16px;
  font-weight: 400;
  line-height: 170%;
}
.section.category ul.advantages-grid li .tx.w550, .section.advantages ul.advantages-grid li .tx.w550, .section.guide ul.advantages-grid li .tx.w550, .section.case ul.advantages-grid li .tx.w550, .section.how ul.advantages-grid li .tx.w550, .section.qa ul.advantages-grid li .tx.w550, .section.link ul.advantages-grid li .tx.w550 {
  flex-basis: 550px;
}
.section.category ul.advantages-grid li .tx.w450, .section.advantages ul.advantages-grid li .tx.w450, .section.guide ul.advantages-grid li .tx.w450, .section.case ul.advantages-grid li .tx.w450, .section.how ul.advantages-grid li .tx.w450, .section.qa ul.advantages-grid li .tx.w450, .section.link ul.advantages-grid li .tx.w450 {
  flex-basis: 450px;
}
.section.category ul.advantages-grid li .img450, .section.advantages ul.advantages-grid li .img450, .section.guide ul.advantages-grid li .img450, .section.case ul.advantages-grid li .img450, .section.how ul.advantages-grid li .img450, .section.qa ul.advantages-grid li .img450, .section.link ul.advantages-grid li .img450 {
  flex-basis: 450px;
}
.section.category ul.advantages-grid li .img450 img, .section.advantages ul.advantages-grid li .img450 img, .section.guide ul.advantages-grid li .img450 img, .section.case ul.advantages-grid li .img450 img, .section.how ul.advantages-grid li .img450 img, .section.qa ul.advantages-grid li .img450 img, .section.link ul.advantages-grid li .img450 img {
  width: 100%;
  height: auto;
}
.section.category ul.advantages-grid li .img450 img.sp_only, .section.advantages ul.advantages-grid li .img450 img.sp_only, .section.guide ul.advantages-grid li .img450 img.sp_only, .section.case ul.advantages-grid li .img450 img.sp_only, .section.how ul.advantages-grid li .img450 img.sp_only, .section.qa ul.advantages-grid li .img450 img.sp_only, .section.link ul.advantages-grid li .img450 img.sp_only {
  display: none;
}
.section.category ul.advantages-grid li .img550, .section.advantages ul.advantages-grid li .img550, .section.guide ul.advantages-grid li .img550, .section.case ul.advantages-grid li .img550, .section.how ul.advantages-grid li .img550, .section.qa ul.advantages-grid li .img550, .section.link ul.advantages-grid li .img550 {
  flex-basis: 550px;
}
.section.category ul.advantages-grid li .img550 img, .section.advantages ul.advantages-grid li .img550 img, .section.guide ul.advantages-grid li .img550 img, .section.case ul.advantages-grid li .img550 img, .section.how ul.advantages-grid li .img550 img, .section.qa ul.advantages-grid li .img550 img, .section.link ul.advantages-grid li .img550 img {
  width: 100%;
  height: auto;
}
.section.category ul.advantages-grid li .img550 img.sp_only, .section.advantages ul.advantages-grid li .img550 img.sp_only, .section.guide ul.advantages-grid li .img550 img.sp_only, .section.case ul.advantages-grid li .img550 img.sp_only, .section.how ul.advantages-grid li .img550 img.sp_only, .section.qa ul.advantages-grid li .img550 img.sp_only, .section.link ul.advantages-grid li .img550 img.sp_only {
  display: none;
}
.section.category ul.advantages-grid li .caution, .section.advantages ul.advantages-grid li .caution, .section.guide ul.advantages-grid li .caution, .section.case ul.advantages-grid li .caution, .section.how ul.advantages-grid li .caution, .section.qa ul.advantages-grid li .caution, .section.link ul.advantages-grid li .caution {
  font-size: 11px;
  text-indent: -1em;
  padding-left: 1em;
  line-height: 150%;
  margin-top: 10px;
}
@media (max-width: 768px) {
  .section.category ul.advantages-grid li, .section.advantages ul.advantages-grid li, .section.guide ul.advantages-grid li, .section.case ul.advantages-grid li, .section.how ul.advantages-grid li, .section.qa ul.advantages-grid li, .section.link ul.advantages-grid li {
    display: block;
    padding: 24px;
  }
  .section.category ul.advantages-grid li img.pc_only, .section.advantages ul.advantages-grid li img.pc_only, .section.guide ul.advantages-grid li img.pc_only, .section.case ul.advantages-grid li img.pc_only, .section.how ul.advantages-grid li img.pc_only, .section.qa ul.advantages-grid li img.pc_only, .section.link ul.advantages-grid li img.pc_only {
    display: none;
  }
  .section.category ul.advantages-grid li img.sp_only, .section.advantages ul.advantages-grid li img.sp_only, .section.guide ul.advantages-grid li img.sp_only, .section.case ul.advantages-grid li img.sp_only, .section.how ul.advantages-grid li img.sp_only, .section.qa ul.advantages-grid li img.sp_only, .section.link ul.advantages-grid li img.sp_only {
    display: block !important;
    max-width: 450px;
    margin: auto;
  }
  .section.category ul.advantages-grid li img.detail, .section.advantages ul.advantages-grid li img.detail, .section.guide ul.advantages-grid li img.detail, .section.case ul.advantages-grid li img.detail, .section.how ul.advantages-grid li img.detail, .section.qa ul.advantages-grid li img.detail, .section.link ul.advantages-grid li img.detail {
    width: 190px;
    height: auto;
    display: block;
    margin: 10px auto 0;
  }
  .section.category ul.advantages-grid li .img550 img, .section.advantages ul.advantages-grid li .img550 img, .section.guide ul.advantages-grid li .img550 img, .section.case ul.advantages-grid li .img550 img, .section.how ul.advantages-grid li .img550 img, .section.qa ul.advantages-grid li .img550 img, .section.link ul.advantages-grid li .img550 img {
    max-width: 300px;
  }
  .section.category ul.advantages-grid li .tx, .section.advantages ul.advantages-grid li .tx, .section.guide ul.advantages-grid li .tx, .section.case ul.advantages-grid li .tx, .section.how ul.advantages-grid li .tx, .section.qa ul.advantages-grid li .tx, .section.link ul.advantages-grid li .tx {
    margin-bottom: 30px;
  }
}
.section.category .col2, .section.advantages .col2, .section.guide .col2, .section.case .col2, .section.how .col2, .section.qa .col2, .section.link .col2 {
  display: flex;
  justify-content: space-between;
  position: relative;
  z-index: 2;
  margin-bottom: 50px;
}
.section.category .col2 .col, .section.advantages .col2 .col, .section.guide .col2 .col, .section.case .col2 .col, .section.how .col2 .col, .section.qa .col2 .col, .section.link .col2 .col {
  flex-basis: calc(50% - 12px);
  background: #fff;
  border-radius: 16px;
  padding: 40px 40px 0;
  position: relative;
}
.section.category .col2 .col h3, .section.advantages .col2 .col h3, .section.guide .col2 .col h3, .section.case .col2 .col h3, .section.how .col2 .col h3, .section.qa .col2 .col h3, .section.link .col2 .col h3 {
  font-size: 24px;
  font-weight: 700;
  line-height: 100%; /* 22.4px */
  color: #0069c6;
  margin-top: 0;
}
.section.category .col2 .col h3 span, .section.advantages .col2 .col h3 span, .section.guide .col2 .col h3 span, .section.case .col2 .col h3 span, .section.how .col2 .col h3 span, .section.qa .col2 .col h3 span, .section.link .col2 .col h3 span {
  display: inline-block;
  padding: 0 15px;
  border-radius: 4px;
  border: 2px solid #0069c6;
  font-size: 14px;
  margin-bottom: 15px;
}
.section.category .col2 .col h4, .section.advantages .col2 .col h4, .section.guide .col2 .col h4, .section.case .col2 .col h4, .section.how .col2 .col h4, .section.qa .col2 .col h4, .section.link .col2 .col h4 {
  font-size: 20px;
  font-weight: 700;
  margin-bottom: 10px;
}
.section.category .col2 .col p, .section.advantages .col2 .col p, .section.guide .col2 .col p, .section.case .col2 .col p, .section.how .col2 .col p, .section.qa .col2 .col p, .section.link .col2 .col p {
  font-size: 16px;
  font-weight: 400;
  border-bottom: 1px solid #bfbfbf;
  padding-bottom: 25px;
}
.section.category .col2 .col dl, .section.advantages .col2 .col dl, .section.guide .col2 .col dl, .section.case .col2 .col dl, .section.how .col2 .col dl, .section.qa .col2 .col dl, .section.link .col2 .col dl {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 40px;
}
.section.category .col2 .col dl dt, .section.advantages .col2 .col dl dt, .section.guide .col2 .col dl dt, .section.case .col2 .col dl dt, .section.how .col2 .col dl dt, .section.qa .col2 .col dl dt, .section.link .col2 .col dl dt {
  flex-basis: 30%;
  margin-bottom: 10px;
  line-height: 140%;
}
.section.category .col2 .col dl dd, .section.advantages .col2 .col dl dd, .section.guide .col2 .col dl dd, .section.case .col2 .col dl dd, .section.how .col2 .col dl dd, .section.qa .col2 .col dl dd, .section.link .col2 .col dl dd {
  margin: 0;
  flex-basis: 70%;
  margin-bottom: 10px;
  line-height: 140%;
}
@media (max-width: 768px) {
  .section.category .col2 .col dl dt, .section.category .col2 .col dl dd, .section.advantages .col2 .col dl dt, .section.advantages .col2 .col dl dd, .section.guide .col2 .col dl dt, .section.guide .col2 .col dl dd, .section.case .col2 .col dl dt, .section.case .col2 .col dl dd, .section.how .col2 .col dl dt, .section.how .col2 .col dl dd, .section.qa .col2 .col dl dt, .section.qa .col2 .col dl dd, .section.link .col2 .col dl dt, .section.link .col2 .col dl dd {
    flex-basis: 50%;
  }
}
.section.category .col2 .col ul, .section.advantages .col2 .col ul, .section.guide .col2 .col ul, .section.case .col2 .col ul, .section.how .col2 .col ul, .section.qa .col2 .col ul, .section.link .col2 .col ul {
  margin: 0;
  padding-left: 1.5em;
  margin-bottom: 40px;
}
.section.category .col2 .col ul li, .section.advantages .col2 .col ul li, .section.guide .col2 .col ul li, .section.case .col2 .col ul li, .section.how .col2 .col ul li, .section.qa .col2 .col ul li, .section.link .col2 .col ul li {
  list-style: disc;
  margin-bottom: 10px;
  line-height: 140%;
}
@media (max-width: 768px) {
  .section.category .col2, .section.advantages .col2, .section.guide .col2, .section.case .col2, .section.how .col2, .section.qa .col2, .section.link .col2 {
    display: block;
  }
  .section.category .col2 .col, .section.advantages .col2 .col, .section.guide .col2 .col, .section.case .col2 .col, .section.how .col2 .col, .section.qa .col2 .col, .section.link .col2 .col {
    margin-bottom: 25px;
    padding: 25px 25px 1px;
  }
}
.section.category .guide_illust1, .section.advantages .guide_illust1, .section.guide .guide_illust1, .section.case .guide_illust1, .section.how .guide_illust1, .section.qa .guide_illust1, .section.link .guide_illust1 {
  position: absolute;
  width: 100px;
  height: 244px;
  top: 75px;
  left: 70px;
  z-index: 1;
}
.section.category .guide_illust1 img, .section.advantages .guide_illust1 img, .section.guide .guide_illust1 img, .section.case .guide_illust1 img, .section.how .guide_illust1 img, .section.qa .guide_illust1 img, .section.link .guide_illust1 img {
  width: 100%;
  height: auto;
}
@media (max-width: 1100px) {
  .section.category .guide_illust1, .section.advantages .guide_illust1, .section.guide .guide_illust1, .section.case .guide_illust1, .section.how .guide_illust1, .section.qa .guide_illust1, .section.link .guide_illust1 {
    width: 70px;
    top: 90px;
  }
}
@media (max-width: 768px) {
  .section.category .guide_illust1, .section.advantages .guide_illust1, .section.guide .guide_illust1, .section.case .guide_illust1, .section.how .guide_illust1, .section.qa .guide_illust1, .section.link .guide_illust1 {
    display: none;
  }
}
.section.category .guide_illust2, .section.advantages .guide_illust2, .section.guide .guide_illust2, .section.case .guide_illust2, .section.how .guide_illust2, .section.qa .guide_illust2, .section.link .guide_illust2 {
  position: absolute;
  width: 162px;
  height: 228px;
  bottom: -35px;
  right: -15px;
  z-index: 1;
}
.section.category .guide_illust2 img, .section.advantages .guide_illust2 img, .section.guide .guide_illust2 img, .section.case .guide_illust2 img, .section.how .guide_illust2 img, .section.qa .guide_illust2 img, .section.link .guide_illust2 img {
  width: 100%;
  height: auto;
}
@media (max-width: 1100px) {
  .section.category .guide_illust2, .section.advantages .guide_illust2, .section.guide .guide_illust2, .section.case .guide_illust2, .section.how .guide_illust2, .section.qa .guide_illust2, .section.link .guide_illust2 {
    width: 110px;
    height: 160px;
  }
}
@media (max-width: 768px) {
  .section.category .guide_illust2, .section.advantages .guide_illust2, .section.guide .guide_illust2, .section.case .guide_illust2, .section.how .guide_illust2, .section.qa .guide_illust2, .section.link .guide_illust2 {
    display: none;
  }
}
.section.category .swiper,
.section.category .swiper2, .section.advantages .swiper,
.section.advantages .swiper2, .section.guide .swiper,
.section.guide .swiper2, .section.case .swiper,
.section.case .swiper2, .section.how .swiper,
.section.how .swiper2, .section.qa .swiper,
.section.qa .swiper2, .section.link .swiper,
.section.link .swiper2 {
  width: 100%;
  max-width: 1200px;
  height: 100%;
  overflow: visible;
  padding-right: 60px;
}
.section.category .swiper-pagination, .section.advantages .swiper-pagination, .section.guide .swiper-pagination, .section.case .swiper-pagination, .section.how .swiper-pagination, .section.qa .swiper-pagination, .section.link .swiper-pagination {
  margin: 30px 0;
}
.section.category .swiper-pagination-bullet, .section.advantages .swiper-pagination-bullet, .section.guide .swiper-pagination-bullet, .section.case .swiper-pagination-bullet, .section.how .swiper-pagination-bullet, .section.qa .swiper-pagination-bullet, .section.link .swiper-pagination-bullet {
  border: 1px solid #0069C6;
  opacity: 1;
  background-color: transparent;
}
.section.category .swiper-pagination-bullet-active, .section.advantages .swiper-pagination-bullet-active, .section.guide .swiper-pagination-bullet-active, .section.case .swiper-pagination-bullet-active, .section.how .swiper-pagination-bullet-active, .section.qa .swiper-pagination-bullet-active, .section.link .swiper-pagination-bullet-active {
  background-color: #0069C6;
}
.section.category .swiper-button-next, .section.category .swiper-button-prev, .section.advantages .swiper-button-next, .section.advantages .swiper-button-prev, .section.guide .swiper-button-next, .section.guide .swiper-button-prev, .section.case .swiper-button-next, .section.case .swiper-button-prev, .section.how .swiper-button-next, .section.how .swiper-button-prev, .section.qa .swiper-button-next, .section.qa .swiper-button-prev, .section.link .swiper-button-next, .section.link .swiper-button-prev {
  width: 40px;
  height: 40px;
  border-radius: 40px;
  border: 1px solid #0069C6;
  background-color: rgb(222, 233, 243);
  color: #0069C6;
}
.section.category .swiper-button-next:after, .section.category .swiper-button-prev:after, .section.advantages .swiper-button-next:after, .section.advantages .swiper-button-prev:after, .section.guide .swiper-button-next:after, .section.guide .swiper-button-prev:after, .section.case .swiper-button-next:after, .section.case .swiper-button-prev:after, .section.how .swiper-button-next:after, .section.how .swiper-button-prev:after, .section.qa .swiper-button-next:after, .section.qa .swiper-button-prev:after, .section.link .swiper-button-next:after, .section.link .swiper-button-prev:after {
  font-size: 18px;
  color: #0069C6;
}
.section.category .swiper-button-next svg, .section.category .swiper-button-prev svg, .section.advantages .swiper-button-next svg, .section.advantages .swiper-button-prev svg, .section.guide .swiper-button-next svg, .section.guide .swiper-button-prev svg, .section.case .swiper-button-next svg, .section.case .swiper-button-prev svg, .section.how .swiper-button-next svg, .section.how .swiper-button-prev svg, .section.qa .swiper-button-next svg, .section.qa .swiper-button-prev svg, .section.link .swiper-button-next svg, .section.link .swiper-button-prev svg {
  height: 50%;
  object-fit: contain;
  transform-origin: center;
  width: 50%;
  fill: #0069C6;
  pointer-events: none;
}
.section.category ul.case-grid, .section.advantages ul.case-grid, .section.guide ul.case-grid, .section.case ul.case-grid, .section.how ul.case-grid, .section.qa ul.case-grid, .section.link ul.case-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  margin: 120px 0 0;
  padding: 0;
}
.section.category ul.case-grid li, .section.advantages ul.case-grid li, .section.guide ul.case-grid li, .section.case ul.case-grid li, .section.how ul.case-grid li, .section.qa ul.case-grid li, .section.link ul.case-grid li {
  background: #F5F5F7;
  border-radius: 16px;
  padding: 60px 20px 32px;
  position: relative;
}
.section.category ul.case-grid li h3, .section.advantages ul.case-grid li h3, .section.guide ul.case-grid li h3, .section.case ul.case-grid li h3, .section.how ul.case-grid li h3, .section.qa ul.case-grid li h3, .section.link ul.case-grid li h3 {
  color: #0069c6;
  text-align: center;
  font-family: "Noto Sans JP";
  font-size: 24px;
  font-style: normal;
  font-weight: 700;
  line-height: 160%; /* 38.4px */
}
.section.category ul.case-grid li h3 span, .section.advantages ul.case-grid li h3 span, .section.guide ul.case-grid li h3 span, .section.case ul.case-grid li h3 span, .section.how ul.case-grid li h3 span, .section.qa ul.case-grid li h3 span, .section.link ul.case-grid li h3 span {
  display: inline-block;
  border-radius: 4px;
  background: #B8E0FF;
  padding: 2px 10px;
  font-size: 16px;
  font-weight: 500;
  margin-bottom: 10px;
  line-height: 120%;
}
@media (max-width: 768px) {
  .section.category ul.case-grid li h3, .section.advantages ul.case-grid li h3, .section.guide ul.case-grid li h3, .section.case ul.case-grid li h3, .section.how ul.case-grid li h3, .section.qa ul.case-grid li h3, .section.link ul.case-grid li h3 {
    font-size: 20px;
  }
  .section.category ul.case-grid li h3 span, .section.advantages ul.case-grid li h3 span, .section.guide ul.case-grid li h3 span, .section.case ul.case-grid li h3 span, .section.how ul.case-grid li h3 span, .section.qa ul.case-grid li h3 span, .section.link ul.case-grid li h3 span {
    font-size: 12px;
    padding: 2px 5px;
  }
}
.section.category ul.case-grid li p, .section.advantages ul.case-grid li p, .section.guide ul.case-grid li p, .section.case ul.case-grid li p, .section.how ul.case-grid li p, .section.qa ul.case-grid li p, .section.link ul.case-grid li p {
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 170%; /* 27.2px */
  padding: 0 12px;
}
.section.category ul.case-grid li:first-child::before, .section.advantages ul.case-grid li:first-child::before, .section.guide ul.case-grid li:first-child::before, .section.case ul.case-grid li:first-child::before, .section.how ul.case-grid li:first-child::before, .section.qa ul.case-grid li:first-child::before, .section.link ul.case-grid li:first-child::before {
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  top: -80px;
  width: 150px;
  height: 150px;
  background: url("../images/img_case_01.png") no-repeat;
  background-size: contain;
  transform: translateX(-75px);
}
.section.category ul.case-grid li:nth-child(2):before, .section.advantages ul.case-grid li:nth-child(2):before, .section.guide ul.case-grid li:nth-child(2):before, .section.case ul.case-grid li:nth-child(2):before, .section.how ul.case-grid li:nth-child(2):before, .section.qa ul.case-grid li:nth-child(2):before, .section.link ul.case-grid li:nth-child(2):before {
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  top: -80px;
  width: 150px;
  height: 150px;
  background: url("../images/img_case_02.png") no-repeat;
  background-size: contain;
  transform: translateX(-75px);
}
.section.category ul.case-grid li:nth-child(3)::before, .section.advantages ul.case-grid li:nth-child(3)::before, .section.guide ul.case-grid li:nth-child(3)::before, .section.case ul.case-grid li:nth-child(3)::before, .section.how ul.case-grid li:nth-child(3)::before, .section.qa ul.case-grid li:nth-child(3)::before, .section.link ul.case-grid li:nth-child(3)::before {
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  top: -80px;
  width: 150px;
  height: 150px;
  background: url("../images/img_case_03.png") no-repeat;
  background-size: contain;
  transform: translateX(-75px);
}
.section.category ul.how-grid, .section.advantages ul.how-grid, .section.guide ul.how-grid, .section.case ul.how-grid, .section.how ul.how-grid, .section.qa ul.how-grid, .section.link ul.how-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
  margin: 50px 0 0;
  padding: 0 0 70px;
}
.section.category ul.how-grid li .img, .section.advantages ul.how-grid li .img, .section.guide ul.how-grid li .img, .section.case ul.how-grid li .img, .section.how ul.how-grid li .img, .section.qa ul.how-grid li .img, .section.link ul.how-grid li .img {
  background-color: #ccc;
  border-radius: 16px;
  width: 100%;
  max-width: 350px;
  overflow: hidden;
  margin: auto;
}
.section.category ul.how-grid li .img img, .section.advantages ul.how-grid li .img img, .section.guide ul.how-grid li .img img, .section.case ul.how-grid li .img img, .section.how ul.how-grid li .img img, .section.qa ul.how-grid li .img img, .section.link ul.how-grid li .img img {
  width: 100%;
  height: auto;
}
.section.category ul.how-grid li p, .section.advantages ul.how-grid li p, .section.guide ul.how-grid li p, .section.case ul.how-grid li p, .section.how ul.how-grid li p, .section.qa ul.how-grid li p, .section.link ul.how-grid li p {
  font-size: 16px;
  font-weight: 400;
  line-height: 160%;
  margin: 30px 10px 10px;
}
.section.category ul.how-grid li p span, .section.advantages ul.how-grid li p span, .section.guide ul.how-grid li p span, .section.case ul.how-grid li p span, .section.how ul.how-grid li p span, .section.qa ul.how-grid li p span, .section.link ul.how-grid li p span {
  color: #9c9c9c;
  line-height: 140%;
  display: inline-block;
}
.section.category ul.how-grid li p.step, .section.advantages ul.how-grid li p.step, .section.guide ul.how-grid li p.step, .section.case ul.how-grid li p.step, .section.how ul.how-grid li p.step, .section.qa ul.how-grid li p.step, .section.link ul.how-grid li p.step {
  color: #0069c6;
  font-family: Montserrat;
  font-size: 14px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
}
.section.category ul.how-grid li p.step span, .section.advantages ul.how-grid li p.step span, .section.guide ul.how-grid li p.step span, .section.case ul.how-grid li p.step span, .section.how ul.how-grid li p.step span, .section.qa ul.how-grid li p.step span, .section.link ul.how-grid li p.step span {
  font-size: 24px;
  color: #0069c6;
}
.section.category ul.how-grid li h3, .section.advantages ul.how-grid li h3, .section.guide ul.how-grid li h3, .section.case ul.how-grid li h3, .section.how ul.how-grid li h3, .section.qa ul.how-grid li h3, .section.link ul.how-grid li h3 {
  font-size: 24px;
  font-weight: 700;
  margin: 0 10px;
}
@media (max-width: 768px) {
  .section.category ul.how-grid li h3, .section.advantages ul.how-grid li h3, .section.guide ul.how-grid li h3, .section.case ul.how-grid li h3, .section.how ul.how-grid li h3, .section.qa ul.how-grid li h3, .section.link ul.how-grid li h3 {
    font-size: 18px;
  }
}
.section.category ul.qa-grid, .section.advantages ul.qa-grid, .section.guide ul.qa-grid, .section.case ul.qa-grid, .section.how ul.qa-grid, .section.qa ul.qa-grid, .section.link ul.qa-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 24px;
  margin: 80px 0 0;
  padding: 0;
}
@media (max-width: 768px) {
  .section.category ul.qa-grid, .section.advantages ul.qa-grid, .section.guide ul.qa-grid, .section.case ul.qa-grid, .section.how ul.qa-grid, .section.qa ul.qa-grid, .section.link ul.qa-grid {
    grid-template-columns: repeat(1, 1fr);
  }
}
.section.category ul.qa-grid li, .section.advantages ul.qa-grid li, .section.guide ul.qa-grid li, .section.case ul.qa-grid li, .section.how ul.qa-grid li, .section.qa ul.qa-grid li, .section.link ul.qa-grid li {
  border-top: 1px solid #CCC;
  padding-top: 24px;
}
.section.category ul.qa-grid li p.q, .section.advantages ul.qa-grid li p.q, .section.guide ul.qa-grid li p.q, .section.case ul.qa-grid li p.q, .section.how ul.qa-grid li p.q, .section.qa ul.qa-grid li p.q, .section.link ul.qa-grid li p.q {
  font-size: 16px;
  font-weight: 700;
  line-height: 160%; /* 25.6px */
  margin-bottom: 20px;
}
.section.category ul.qa-grid li p.q:before, .section.advantages ul.qa-grid li p.q:before, .section.guide ul.qa-grid li p.q:before, .section.case ul.qa-grid li p.q:before, .section.how ul.qa-grid li p.q:before, .section.qa ul.qa-grid li p.q:before, .section.link ul.qa-grid li p.q:before {
  content: "Q";
  margin-right: 0.75em;
}
.section.category ul.qa-grid li p.a, .section.advantages ul.qa-grid li p.a, .section.guide ul.qa-grid li p.a, .section.case ul.qa-grid li p.a, .section.how ul.qa-grid li p.a, .section.qa ul.qa-grid li p.a, .section.link ul.qa-grid li p.a {
  border-radius: 16px;
  background: #F5F5F7;
  padding: 16px 24px;
  color: #0069c6;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: 160%; /* 25.6px */
  margin-bottom: 30px;
  padding-left: 3.5em;
  text-indent: -2em;
}
.section.category ul.qa-grid li p.a:before, .section.advantages ul.qa-grid li p.a:before, .section.guide ul.qa-grid li p.a:before, .section.case ul.qa-grid li p.a:before, .section.how ul.qa-grid li p.a:before, .section.qa ul.qa-grid li p.a:before, .section.link ul.qa-grid li p.a:before {
  content: "A";
  margin-right: 1em;
}
@media (max-width: 768px) {
  .section.category ul.qa-grid li p.a, .section.advantages ul.qa-grid li p.a, .section.guide ul.qa-grid li p.a, .section.case ul.qa-grid li p.a, .section.how ul.qa-grid li p.a, .section.qa ul.qa-grid li p.a, .section.link ul.qa-grid li p.a {
    margin-bottom: 0;
  }
}
.section.category .banner-link, .section.advantages .banner-link, .section.guide .banner-link, .section.case .banner-link, .section.how .banner-link, .section.qa .banner-link, .section.link .banner-link {
  width: 100%;
  margin: 0 0 60px;
  border-radius: 16px;
  overflow: hidden;
  position: relative;
}
.section.category .banner-link img, .section.advantages .banner-link img, .section.guide .banner-link img, .section.case .banner-link img, .section.how .banner-link img, .section.qa .banner-link img, .section.link .banner-link img {
  width: 100%;
  height: 126px;
  min-height: 78px;
  object-position: 50%;
  object-fit: cover;
  transition: 0.3s;
}
@media (max-width: 768px) {
  .section.category .banner-link img, .section.advantages .banner-link img, .section.guide .banner-link img, .section.case .banner-link img, .section.how .banner-link img, .section.qa .banner-link img, .section.link .banner-link img {
    height: 78px;
  }
}
.section.category .banner-link:hover img, .section.advantages .banner-link:hover img, .section.guide .banner-link:hover img, .section.case .banner-link:hover img, .section.how .banner-link:hover img, .section.qa .banner-link:hover img, .section.link .banner-link:hover img {
  opacity: 0.65;
}
.section.category .banner-link a, .section.advantages .banner-link a, .section.guide .banner-link a, .section.case .banner-link a, .section.how .banner-link a, .section.qa .banner-link a, .section.link .banner-link a {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding: 48px;
  text-align: center;
  color: #FFF;
  font-size: 24px;
  font-weight: 700;
  line-height: 130%; /* 24px */
}
.section.category .banner-link a:after, .section.advantages .banner-link a:after, .section.guide .banner-link a:after, .section.case .banner-link a:after, .section.how .banner-link a:after, .section.qa .banner-link a:after, .section.link .banner-link a:after {
  content: "";
  display: inline-block;
  width: 23px;
  height: 23px;
  background: url("../images/btn_arrow.png") no-repeat;
  background-size: contain;
  margin-left: 0.75em;
  transform: translateY(3px);
}
@media (max-width: 768px) {
  .section.category .banner-link a, .section.advantages .banner-link a, .section.guide .banner-link a, .section.case .banner-link a, .section.how .banner-link a, .section.qa .banner-link a, .section.link .banner-link a {
    font-size: 16px;
    padding: 0;
    line-height: 78px;
  }
  .section.category .banner-link a:after, .section.advantages .banner-link a:after, .section.guide .banner-link a:after, .section.case .banner-link a:after, .section.how .banner-link a:after, .section.qa .banner-link a:after, .section.link .banner-link a:after {
    transform: translateY(5px);
  }
}
.section.entry {
  height: 400px;
  background: url("../images/bg_cta.jpg") no-repeat 50%;
  background-size: cover;
  padding: 56px 0;
}
.section.entry h2 {
  color: #FFF;
  text-align: center;
  font-size: 32px;
  font-weight: 700;
  line-height: 160%;
  letter-spacing: 0.96px;
  margin-top: 0;
}
.section.entry h2 span {
  font-size: 24px;
}
@media (max-width: 1100px) {
  .section.entry h2 {
    font-size: clamp(22px, 2.6vw, 32px);
  }
  .section.entry h2 span {
    font-size: clamp(22px, 1.8vw, 24px);
  }
}
.section.entry .copy {
  color: #FFF;
  text-align: center;
  font-size: 20px;
  font-weight: 700;
  line-height: 160%; /* 32px */
  letter-spacing: 0.6px;
  margin: 0 0 20px;
}
@media (max-width: 1100px) {
  .section.entry .copy {
    font-size: clamp(16px, 1.6vw, 20px);
  }
}
.section.entry .qr-code {
  width: 460px;
  margin: auto;
  border-radius: 8px;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 24px;
}
.section.entry .qr-code img {
  display: block;
  flex-basis: 115px;
  height: auto;
}
.section.entry .qr-code p {
  flex-basis: 280px;
  color: #0069C6;
  font-size: 20px;
  font-weight: 700;
  line-height: 165%; /* 33px */
}
@media (max-width: 768px) {
  .section.entry .qr-code {
    display: block;
    width: 100%;
  }
  .section.entry .qr-code img {
    width: 115px;
    margin: auto;
    margin-bottom: 20px;
  }
  .section.entry .qr-code p {
    text-align: center;
    font-size: 16px;
  }
}
@media (max-width: 768px) {
  .section.entry {
    height: auto;
  }
}

.ly-footer {
  position: relative;
  margin-top: auto;
  background: #798899;
  color: #fff;
  z-index: 1;
}

.ly-footer {
  padding: 0 40px;
}
@media (max-width: 768px) {
  .ly-footer {
    padding: 0 20px;
  }
}

.ly-footer-inner {
  padding-top: 60px;
  padding-bottom: 60px;
}

.ly-footer-inner {
  width: 100%;
  max-width: 1200px;
  margin-right: auto;
  margin-left: auto;
  box-sizing: border-box;
}

.bl-sitemap {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(180px, 100%), 1fr));
  gap: clamp(3em, 5.5555555556vw, 5em);
  margin: 0;
  line-height: 1.4;
}

.bl-sitemap .-sitemap {
  margin: 0;
}

.bl-sitemap .-sitemap > dt {
  margin-bottom: 0.75em;
  font-weight: 700;
}

.bl-sitemap .-sitemap > dd {
  margin: 0;
  font-size: clamp(0.875rem, 0.9722222222vw, 1.00625rem);
}

.bl-sitemap .-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4em 1em;
  margin: 0;
  padding: 0;
}

.bl-sitemap .-list.-fxd-column {
  flex-direction: column;
}

li {
  list-style: none outside none;
}

.bl-utility {
  display: flex;
  justify-content: center;
  margin: 4em 0 0 0;
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.4;
  padding: 0;
}

.bl-utility .-item {
  position: relative;
  padding: 0 1.25em;
}

.bl-utility .-item::after {
  position: absolute;
  top: 50%;
  right: 0;
  display: block;
  width: 1px;
  height: 70%;
  background: #fff;
  transform: translateY(-50%);
  content: "";
}

.bl-utility .-item > a {
  color: #fff;
}

.bl-utility .-item:first-child {
  padding-left: 0;
}

.bl-utility .-item:last-child {
  padding-right: 0;
}

.bl-utility .-item:last-child::after {
  display: none;
}

.el-copyright {
  margin: 2em 0 0;
  padding-top: 1em;
  border-top: 1px solid rgba(255, 255, 255, 0.5);
  font-size: 0.875rem;
  text-align: center;
}

.trademark {
  font-size: 12px;
  text-align: center;
  margin-top: 10px;
}

@media screen and (max-width: 768px) {
  .bl-utility {
    font-size: clamp(0.75rem, 1.8229166667vw, 0.875rem);
  }
  a {
    color: #fff;
  }
}/*# sourceMappingURL=style.css.map */