@charset "UTF-8";
/* ==========================================================================
#Variables
========================================================================== */
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap");
/* Define theme colors */
/* ==========================================================================
   #Breakpoint
   ========================================================================== */
/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
/* HTML5 display definitions
========================================================================== */
/**
* Correct `block` display not defined for any HTML5 element in IE 8/9.
* Correct `block` display not defined for `details` or `summary` in IE 10/11
* and Firefox.
* Correct `block` display not defined for `main` in IE 11.
*/
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}

/**
* 1. Correct `inline-block` display not defined in IE 8/9.
* 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
*/
audio,
canvas,
progress,
video {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */
}

/**
* Prevent modern browsers from displaying `audio` without controls.
* Remove excess height in iOS 5 devices.
*/
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
* Address `[hidden]` styling not present in IE 8/9/10.
* Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
*/
[hidden],
template {
  display: none;
}

/* Links
========================================================================== */
/**
* Remove the gray background color from active links in IE 10.
*/
a {
  text-decoration: none;
}

/**
* Improve readability when focused and also mouse hovered in all browsers.
*/
a:active,
a:hover {
  outline: 0;
}

/* Text-level semantics
========================================================================== */
/**
* Address styling not present in IE 8/9/10/11, Safari, and Chrome.
*/
abbr[title] {
  border-bottom: 1px dotted;
}

/**
* Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
*/
b,
strong {
  font-weight: 700;
}

/**
* Address styling not present in Safari and Chrome.
*/
dfn {
  font-style: italic;
}

/**
* Address styling not present in IE 8/9.
*/
mark {
  background: #fff;
  color: #000;
}

/**
* Address inconsistent and variable font size in all browsers.
*/
small {
  font-size: 80%;
}

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

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* Embedded content
========================================================================== */
/**
* Correct overflow not hidden in IE 9/10/11.
*/
svg:not(:root) {
  overflow: hidden;
}

/* Grouping content
========================================================================== */
/**
* Address margin not present in IE 8/9 and Safari.
*/
figure {
  margin: 1em 40px;
}

/**
* Address differences between Firefox and other browsers.
*/
hr {
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  height: 0;
}

/**
* Contain overflow in all browsers.
*/
pre {
  overflow: auto;
}

/**
* Address odd `em`-unit font size rendering in all browsers.
*/
code,
kbd,
pre,
samp {
  font-family: monospace, "Arial";
  font-size: 1em;
}

/* Forms
========================================================================== */
/**
* Known limitation: by default, Chrome and Safari on OS X allow very limited
* styling of `select`, unless a `border` property is set.
*/
/**
* 1. Correct color not being inherited.
*    Known issue: affects color of disabled elements.
* 2. Correct font properties not being inherited.
* 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
*/
button,
input,
optgroup,
select,
textarea {
  color: inherit;
  /* 1 */
  font: inherit;
  /* 2 */
  margin: 0;
  outline: none;
  /* 3 */
}
button:focus, button:visited, button:active,
input:focus,
input:visited,
input:active,
optgroup:focus,
optgroup:visited,
optgroup:active,
select:focus,
select:visited,
select:active,
textarea:focus,
textarea:visited,
textarea:active {
  outline: none;
}

/**
* Address `overflow` set to `hidden` in IE 8/9/10/11.
*/
button {
  outline: none;
  overflow: visible;
}

/**
* Address inconsistent `text-transform` inheritance for `button` and `select`.
* All other form control elements do not inherit `text-transform` values.
* Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
* Correct `select` style inheritance in Firefox.
*/
button,
select {
  text-transform: none;
}

/**
* 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
*    and `video` controls.
* 2. Correct inability to style clickable `input` types in iOS.
* 3. Improve usability and consistency of cursor style between image-type
*    `input` and others.
*/
button,
html input[type=button],
input[type=reset],
input[type=submit] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */
}

/**
* Re-set default cursor for disabled elements.
*/
button[disabled],
html input[disabled] {
  cursor: default;
}

/**
* Remove inner padding and border in Firefox 4+.
*/
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

/**
* Address Firefox 4+ setting `line-height` on `input` using `!important` in
* the UA stylesheet.
*/
input::-moz-focus-inner {
  line-height: normal;
}

/**
* It's recommended that you don't attempt to style these elements.
* Firefox's implementation doesn't respect box-sizing, padding, or width.
*
* 1. Address box sizing set to `content-box` in IE 8/9/10.
* 2. Remove excess padding in IE 8/9/10.
*/
input[type=checkbox],
input[type=radio] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
* Fix the cursor style for Chrome's increment/decrement buttons. For certain
* `font-size` values of the `input`, it causes the cursor style of the
* decrement button to change from `default` to `text`.
*/
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
* 1. Address `appearance` set to `searchfield` in Safari and Chrome.
* 2. Address `box-sizing` set to `border-box` in Safari and Chrome
*    (include `-moz` to future-proof).
*/
input[type=search] {
  -webkit-appearance: textfield;
  /* 1 */
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  /* 2 */
  box-sizing: content-box;
}

/**
* Remove inner padding and search cancel button in Safari and Chrome on OS X.
* Safari (but not Chrome) clips the cancel button when the search input has
* padding (and `textfield` appearance).
*/
input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
* Define consistent border, margin, and padding.
*/
fieldset {
  margin: 0 2px;
  border: 1px solid #c0c0c0;
  padding: 0.35em 0.625em 0.75em;
}

/**
* 1. Correct `color` not being inherited in IE 8/9/10/11.
* 2. Remove padding so people aren't caught out if they zero out fieldsets.
*/
legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
* Remove default vertical scrollbar in IE 8/9/10/11.
*/
textarea {
  overflow: auto;
}

/**
* Don't inherit the `font-weight` (applied by a rule above).
* NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
*/
optgroup {
  font-weight: 700;
}

/* Tables
========================================================================== */
/**
* Remove most spacing between table cells.
*/
table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

/* ==========================================================================
   #RESET
   ========================================================================== */
/**
 * A very simple reset that sits on top of Normalize.css.
 */
* {
  box-sizing: border-box;
}

body,
h1,
h2,
h3,
h4,
h5,
h6,
blockquote,
p,
pre,
dl,
dd,
ol,
ul,
figure,
hr,
fieldset,
legend {
  margin: 0;
  padding: 0;
}

/**
 * Remove trailing margins from nested lists.
 */
li > ol,
li > ul {
  margin-bottom: 0;
}

li {
  list-style: none;
}

/* ==========================================================================
#SHARED
========================================================================== */
/**
* Shared declarations for certain elements.
*/
/**
* Always declare margins in the same direction:
* csswizardry.com/2012/06/single-direction-margin-declarations
*/
address,
h1,
h2,
h3,
h4,
h5,
h6,
blockquote,
p,
pre,
dl,
ol,
ul,
figure,
hr,
table,
fieldset {
  margin-bottom: 0.9375rem;
}

/**
* Consistent indentation for lists.
*/
dd,
ol,
ul {
  margin-left: 0.9375rem;
}

html {
  font-size: 0.9722222222vw;
  line-height: 1.7146341463;
}
@media (min-width: 1440px) {
  html {
    font-size: 1rem;
  }
}
@media (max-width: 768px) {
  html {
    font-size: 2vw;
  }
}

body {
  color: #222;
  font-family: "Noto Sans JP", "Arial", Helvetica, sans-serif;
  font-weight: 400;
  word-break: break-all;
  font-size: 0.875rem;
  line-height: 1.5rem;
}
body.is-menu-open .site-main,
body.is-menu-open .footer {
  filter: blur(3px);
}

/* ==========================================================================
   #HEADINGS
   ========================================================================== */
h1 {
  font-size: 3.125rem;
  line-height: 3.125rem;
}

h2 {
  font-size: 1.875rem;
  line-height: 2.5rem;
}

h3 {
  font-size: 1.5rem;
  line-height: 2.125rem;
}

h4 {
  font-size: 1.25rem;
  line-height: 1.5rem;
}

h5 {
  font-size: 1.125rem;
  line-height: 1.5rem;
}

h6 {
  font-size: 0.875rem;
  line-height: 1.5rem;
}

/* ==========================================================================
   #Images
   ========================================================================== */
figure {
  margin: 0;
  padding: 0;
  display: block;
}

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

/* ==========================================================================
   #Animations
   ========================================================================== */
.infiDown {
  animation: fadeInDown 1.5s infinite;
}

.u_anime.fadeIn {
  opacity: 0;
  transition: opacity 1s, transform 1s cubic-bezier(0.015, 0.54, 0.35, 1), -webkit-transform 1s cubic-bezier(0.015, 0.54, 0.35, 1);
  transition-delay: 0.5s;
}
.u_anime.fadeInLeft {
  transform: translate(-2.5rem, 0);
  opacity: 0;
  transition: opacity 1s, transform 1s cubic-bezier(0.015, 0.54, 0.35, 1), -webkit-transform 1s cubic-bezier(0.015, 0.54, 0.35, 1);
  transition-delay: 0.5s;
}
.u_anime.fadeInRight {
  transform: translate(2.5rem, 0);
  opacity: 0;
  transition: opacity 1s, transform 1s cubic-bezier(0.015, 0.54, 0.35, 1), -webkit-transform 1s cubic-bezier(0.015, 0.54, 0.35, 1);
  transition-delay: 0.5s;
}
.u_anime.fadeInUp {
  transform: translate(0, 2.5rem);
  opacity: 0;
  transition: opacity 1s, transform 1s cubic-bezier(0.015, 0.54, 0.35, 1), -webkit-transform 1s cubic-bezier(0.015, 0.54, 0.35, 1);
  transition-delay: 0.5s;
}
.u_anime.fadeInDown {
  transform: translate(0, -2.5rem);
  opacity: 0;
  transition: opacity 1s, transform 1s cubic-bezier(0.015, 0.54, 0.35, 1), -webkit-transform 1s cubic-bezier(0.015, 0.54, 0.35, 1);
  transition-delay: 0.5s;
}
.u_anime.show.fadeIn {
  opacity: 1;
}
.u_anime.show.fadeInLeft {
  transform: translate(0px, 0px);
  opacity: 1;
}
.u_anime.show.fadeInRight {
  transform: translate(0px, 0px);
  opacity: 1;
}
.u_anime.show.fadeInUp {
  transform: translate(0px, 0px);
  opacity: 1;
}
.u_anime.show.fadeInDown {
  transform: translate(0px, 0px);
  opacity: 1;
}

@keyframes slideTxt {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: -151.5rem 0;
  }
}
@keyframes heartbeat {
  0% {
    transform: scale(1);
  }
  20% {
    transform: scale(1.03);
  }
  40% {
    transform: scale(1);
  }
  60% {
    transform: scale(1.03);
  }
  80% {
    transform: scale(1);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes fadeInDown {
  0% {
    opacity: 0;
    transform: translateY(-2.5rem);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
/* ==========================================================================
   #Wrapper
   ========================================================================== */
.container, .container__fluid {
  width: 100%;
  margin: 0 auto;
  padding-left: 0.9375rem;
  padding-right: 0.9375rem;
}
@media (min-width: 769px) {
  .container, .container__fluid {
    width: 100%;
    max-width: 72.8125rem;
  }
}
@media (max-width: 1166px) {
  .container, .container__fluid {
    max-width: 72.875rem;
  }
}
.container__fluid {
  width: 100%;
}

.row {
  display: flex;
  flex-wrap: wrap;
  margin-left: -0.9375rem;
  margin-right: -0.9375rem;
}

.col {
  padding-left: -0.9375rem;
  padding-right: -0.9375rem;
}
.col-3 {
  width: 33.33333%;
}
@media (max-width: 768px) {
  .col-3 {
    width: 100%;
  }
}
@media (min-width: sp) {
  .col-3 {
    width: 100%;
  }
}
.col-12 {
  width: 100%;
}

/* ==========================================================================
   #GENDER
   ========================================================================== */
/**
 * Icons
 */
/* stylelint-disable */
/* prettier-ignore */
/**
 * Background
 */
/* prettier-ignore */
@media (min-width: 769px) {
  .bg-pc--default {
    background-color: #222;
  }
  .bg-pc--black {
    background-color: #000;
  }
  .bg-pc--white {
    background-color: #fff;
  }
  .bg-pc--gray {
    background-color: #999;
  }
  .bg-pc--blue {
    background-color: #3567d7;
  }
}
@media (max-width: 768px) {
  .bg-sp--default {
    background-color: #222;
  }
  .bg-sp--black {
    background-color: #000;
  }
  .bg-sp--white {
    background-color: #fff;
  }
  .bg-sp--gray {
    background-color: #999;
  }
  .bg-sp--blue {
    background-color: #3567d7;
  }
}
@media (min-width: sp) {
  .bg-sp--default {
    background-color: #222;
  }
  .bg-sp--black {
    background-color: #000;
  }
  .bg-sp--white {
    background-color: #fff;
  }
  .bg-sp--gray {
    background-color: #999;
  }
  .bg-sp--blue {
    background-color: #3567d7;
  }
}
.bg--default {
  background-color: #222;
}
.bg--black {
  background-color: #000;
}
.bg--white {
  background-color: #fff;
}
.bg--gray {
  background-color: #999;
}
.bg--blue {
  background-color: #3567d7;
}

/**
 * Text Color
 */
/* prettier-ignore */
.text--default {
  color: #222;
}
.text--black {
  color: #000;
}
.text--white {
  color: #fff;
}
.text--gray {
  color: #999;
}
.text--blue {
  color: #3567d7;
}

/* ==========================================================================
   #Display
   ========================================================================== */
.d-block {
  display: block !important;
}
.d-flex {
  display: flex !important;
}
.d-fixed {
  display: fixed !important;
}
.d-none {
  display: none !important;
}
.d-inline-block {
  display: inline-block !important;
}
@media (max-width: 768px) {
  .d-sp-block {
    display: block !important;
  }
  .d-sp-flex {
    display: flex !important;
  }
  .d-sp-fixed {
    display: fixed !important;
  }
  .d-sp-none {
    display: none !important;
  }
  .d-sp-inline-block {
    display: inline-block !important;
  }
}
@media (min-width: sp) {
  .d-sp-block {
    display: block !important;
  }
  .d-sp-flex {
    display: flex !important;
  }
  .d-sp-fixed {
    display: fixed !important;
  }
  .d-sp-none {
    display: none !important;
  }
  .d-sp-inline-block {
    display: inline-block !important;
  }
}
@media (min-width: 769px) {
  .d-pc-block {
    display: block !important;
  }
  .d-pc-flex {
    display: flex !important;
  }
  .d-pc-fixed {
    display: fixed !important;
  }
  .d-pc-none {
    display: none !important;
  }
  .d-pc-inline-block {
    display: inline-block !important;
  }
}

.flex-row {
  flex-direction: row;
}
.flex-row-reverse {
  flex-direction: row-reverse;
}
.flex-column {
  flex-direction: column;
}
.flex-column-reverse {
  flex-direction: column-reverse;
}
.flex-wrap {
  flex-wrap: wrap;
}
.flex-no-wrap {
  flex-wrap: no-wrap;
}

.align_items-center {
  align-items: center;
}
.align_items-flex-start {
  align-items: flex-start;
}
.align_items-flex-end {
  align-items: flex-end;
}
.align_content-center {
  align-content: center;
}
.align_content-flex-start {
  align-content: flex-start;
}
.align_content-flex-end {
  align-content: flex-end;
}
.align_content-space-between {
  align-content: space-between;
}
.align_content-space-around {
  align-content: space-around;
}

.justify_items-center {
  justify-items: center;
}
.justify_items-flex-start {
  justify-items: flex-start;
}
.justify_items-flex-end {
  justify-items: flex-end;
}
.justify_content-center {
  justify-content: center;
}
.justify_content-flex-start {
  justify-content: flex-start;
}
.justify_content-flex-end {
  justify-content: flex-end;
}
.justify_content-space-between {
  justify-content: space-between;
}
.justify_content-space-around {
  justify-content: space-around;
}

.d-center {
  display: block;
  margin: 0 auto;
}

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

@media (min-width: 769px) {
  .only_sp {
    display: none !important;
  }
}

/* ==========================================================================
   #Text
   ========================================================================== */
/* prettier-ignore */
.text--hidden {
  font: 0/0 serif;
  color: transparent;
  text-shadow: none;
}
.text--center {
  text-align: center;
}

.list--unstyled {
  list-style: none;
  margin: 0;
}

/* ==========================================================================
   #Width
   ========================================================================== */
/* ==========================================================================
   #Spacing
   ========================================================================== */
/* padding left */
.pl--0 {
  padding-left: 0rem !important;
}

.pl--5 {
  padding-left: 0.3125rem !important;
}

.pl--10 {
  padding-left: 0.625rem !important;
}

.pl--15 {
  padding-left: 0.9375rem !important;
}

.pl--20 {
  padding-left: 1.25rem !important;
}

.pl--25 {
  padding-left: 1.5625rem !important;
}

.pl--30 {
  padding-left: 1.875rem !important;
}

.pl--35 {
  padding-left: 2.1875rem !important;
}

.pl--40 {
  padding-left: 2.5rem !important;
}

.pl--45 {
  padding-left: 2.8125rem !important;
}

.pl--50 {
  padding-left: 3.125rem !important;
}

/* padding right */
.pr--0 {
  padding-right: 0rem !important;
}

.pr--5 {
  padding-right: 0.3125rem !important;
}

.pr--10 {
  padding-right: 0.625rem !important;
}

.pr--15 {
  padding-right: 0.9375rem !important;
}

.pr--20 {
  padding-right: 1.25rem !important;
}

.pr--25 {
  padding-right: 1.5625rem !important;
}

.pr--30 {
  padding-right: 1.875rem !important;
}

.pr--35 {
  padding-right: 2.1875rem !important;
}

.pr--40 {
  padding-right: 2.5rem !important;
}

.pr--45 {
  padding-right: 2.8125rem !important;
}

.pr--50 {
  padding-right: 3.125rem !important;
}

/* padding top */
.pt--0 {
  padding-top: 0rem !important;
}

.pt--5 {
  padding-top: 0.3125rem !important;
}

.pt--10 {
  padding-top: 0.625rem !important;
}

.pt--15 {
  padding-top: 0.9375rem !important;
}

.pt--20 {
  padding-top: 1.25rem !important;
}

.pt--25 {
  padding-top: 1.5625rem !important;
}

.pt--30 {
  padding-top: 1.875rem !important;
}

.pt--35 {
  padding-top: 2.1875rem !important;
}

.pt--40 {
  padding-top: 2.5rem !important;
}

.pt--45 {
  padding-top: 2.8125rem !important;
}

.pt--50 {
  padding-top: 3.125rem !important;
}

/* padding bottom */
.pb--0 {
  padding-bottom: 0rem !important;
}

.pb--5 {
  padding-bottom: 0.3125rem !important;
}

.pb--10 {
  padding-bottom: 0.625rem !important;
}

.pb--15 {
  padding-bottom: 0.9375rem !important;
}

.pb--20 {
  padding-bottom: 1.25rem !important;
}

.pb--25 {
  padding-bottom: 1.5625rem !important;
}

.pb--30 {
  padding-bottom: 1.875rem !important;
}

.pb--35 {
  padding-bottom: 2.1875rem !important;
}

.pb--40 {
  padding-bottom: 2.5rem !important;
}

.pb--45 {
  padding-bottom: 2.8125rem !important;
}

.pb--50 {
  padding-bottom: 3.125rem !important;
}

/* padding x */
.px--0 {
  padding-left: 0rem !important;
  padding-right: 0rem !important;
}

.px--5 {
  padding-left: 0.3125rem !important;
  padding-right: 0.3125rem !important;
}

.px--10 {
  padding-left: 0.625rem !important;
  padding-right: 0.625rem !important;
}

.px--15 {
  padding-left: 0.9375rem !important;
  padding-right: 0.9375rem !important;
}

.px--20 {
  padding-left: 1.25rem !important;
  padding-right: 1.25rem !important;
}

.px--25 {
  padding-left: 1.5625rem !important;
  padding-right: 1.5625rem !important;
}

.px--30 {
  padding-left: 1.875rem !important;
  padding-right: 1.875rem !important;
}

.px--35 {
  padding-left: 2.1875rem !important;
  padding-right: 2.1875rem !important;
}

.px--40 {
  padding-left: 2.5rem !important;
  padding-right: 2.5rem !important;
}

.px--45 {
  padding-left: 2.8125rem !important;
  padding-right: 2.8125rem !important;
}

.px--50 {
  padding-left: 3.125rem !important;
  padding-right: 3.125rem !important;
}

/* padding y */
.py--0 {
  padding-top: 0rem !important;
  padding-bottom: 0rem !important;
}

.py--5 {
  padding-top: 0.3125rem !important;
  padding-bottom: 0.3125rem !important;
}

.py--10 {
  padding-top: 0.625rem !important;
  padding-bottom: 0.625rem !important;
}

.py--15 {
  padding-top: 0.9375rem !important;
  padding-bottom: 0.9375rem !important;
}

.py--20 {
  padding-top: 1.25rem !important;
  padding-bottom: 1.25rem !important;
}

.py--25 {
  padding-top: 1.5625rem !important;
  padding-bottom: 1.5625rem !important;
}

.py--30 {
  padding-top: 1.875rem !important;
  padding-bottom: 1.875rem !important;
}

.py--35 {
  padding-top: 2.1875rem !important;
  padding-bottom: 2.1875rem !important;
}

.py--40 {
  padding-top: 2.5rem !important;
  padding-bottom: 2.5rem !important;
}

.py--45 {
  padding-top: 2.8125rem !important;
  padding-bottom: 2.8125rem !important;
}

.py--50 {
  padding-top: 3.125rem !important;
  padding-bottom: 3.125rem !important;
}

/* margin left */
.ml--0 {
  margin-left: 0rem !important;
}

.ml--5 {
  margin-left: 0.3125rem !important;
}

.ml--10 {
  margin-left: 0.625rem !important;
}

.ml--15 {
  margin-left: 0.9375rem !important;
}

.ml--20 {
  margin-left: 1.25rem !important;
}

.ml--25 {
  margin-left: 1.5625rem !important;
}

.ml--30 {
  margin-left: 1.875rem !important;
}

.ml--35 {
  margin-left: 2.1875rem !important;
}

.ml--40 {
  margin-left: 2.5rem !important;
}

.ml--45 {
  margin-left: 2.8125rem !important;
}

.ml--50 {
  margin-left: 3.125rem !important;
}

/* margin right */
.mr--0 {
  margin-right: 0rem !important;
}

.mr--5 {
  margin-right: 0.3125rem !important;
}

.mr--10 {
  margin-right: 0.625rem !important;
}

.mr--15 {
  margin-right: 0.9375rem !important;
}

.mr--20 {
  margin-right: 1.25rem !important;
}

.mr--25 {
  margin-right: 1.5625rem !important;
}

.mr--30 {
  margin-right: 1.875rem !important;
}

.mr--35 {
  margin-right: 2.1875rem !important;
}

.mr--40 {
  margin-right: 2.5rem !important;
}

.mr--45 {
  margin-right: 2.8125rem !important;
}

.mr--50 {
  margin-right: 3.125rem !important;
}

/* margin top */
.mt--0 {
  margin-top: 0rem !important;
}

.mt--5 {
  margin-top: 0.3125rem !important;
}

.mt--10 {
  margin-top: 0.625rem !important;
}

.mt--15 {
  margin-top: 0.9375rem !important;
}

.mt--20 {
  margin-top: 1.25rem !important;
}

.mt--25 {
  margin-top: 1.5625rem !important;
}

.mt--30 {
  margin-top: 1.875rem !important;
}

.mt--35 {
  margin-top: 2.1875rem !important;
}

.mt--40 {
  margin-top: 2.5rem !important;
}

.mt--45 {
  margin-top: 2.8125rem !important;
}

.mt--50 {
  margin-top: 3.125rem !important;
}

/* margin bottom */
.mb--0 {
  margin-bottom: 0rem !important;
}

.mb--5 {
  margin-bottom: 0.3125rem !important;
}

.mb--10 {
  margin-bottom: 0.625rem !important;
}

.mb--15 {
  margin-bottom: 0.9375rem !important;
}

.mb--20 {
  margin-bottom: 1.25rem !important;
}

.mb--25 {
  margin-bottom: 1.5625rem !important;
}

.mb--30 {
  margin-bottom: 1.875rem !important;
}

.mb--35 {
  margin-bottom: 2.1875rem !important;
}

.mb--40 {
  margin-bottom: 2.5rem !important;
}

.mb--45 {
  margin-bottom: 2.8125rem !important;
}

.mb--50 {
  margin-bottom: 3.125rem !important;
}

/* margin x */
.mx--0 {
  margin-left: 0rem !important;
  margin-right: 0rem !important;
}

.mx--5 {
  margin-left: 0.3125rem !important;
  margin-right: 0.3125rem !important;
}

.mx--10 {
  margin-left: 0.625rem !important;
  margin-right: 0.625rem !important;
}

.mx--15 {
  margin-left: 0.9375rem !important;
  margin-right: 0.9375rem !important;
}

.mx--20 {
  margin-left: 1.25rem !important;
  margin-right: 1.25rem !important;
}

.mx--25 {
  margin-left: 1.5625rem !important;
  margin-right: 1.5625rem !important;
}

.mx--30 {
  margin-left: 1.875rem !important;
  margin-right: 1.875rem !important;
}

.mx--35 {
  margin-left: 2.1875rem !important;
  margin-right: 2.1875rem !important;
}

.mx--40 {
  margin-left: 2.5rem !important;
  margin-right: 2.5rem !important;
}

.mx--45 {
  margin-left: 2.8125rem !important;
  margin-right: 2.8125rem !important;
}

.mx--50 {
  margin-left: 3.125rem !important;
  margin-right: 3.125rem !important;
}

/* margin y */
.my--0 {
  margin-top: 0rem !important;
  margin-bottom: 0rem !important;
}

.my--5 {
  margin-top: 0.3125rem !important;
  margin-bottom: 0.3125rem !important;
}

.my--10 {
  margin-top: 0.625rem !important;
  margin-bottom: 0.625rem !important;
}

.my--15 {
  margin-top: 0.9375rem !important;
  margin-bottom: 0.9375rem !important;
}

.my--20 {
  margin-top: 1.25rem !important;
  margin-bottom: 1.25rem !important;
}

.my--25 {
  margin-top: 1.5625rem !important;
  margin-bottom: 1.5625rem !important;
}

.my--30 {
  margin-top: 1.875rem !important;
  margin-bottom: 1.875rem !important;
}

.my--35 {
  margin-top: 2.1875rem !important;
  margin-bottom: 2.1875rem !important;
}

.my--40 {
  margin-top: 2.5rem !important;
  margin-bottom: 2.5rem !important;
}

.my--45 {
  margin-top: 2.8125rem !important;
  margin-bottom: 2.8125rem !important;
}

.my--50 {
  margin-top: 3.125rem !important;
  margin-bottom: 3.125rem !important;
}

@media (min-width: 769px) {
  /* padding left */
  .pl-pc--0 {
    padding-left: 0rem !important;
  }
  .pl-pc--5 {
    padding-left: 0.3125rem !important;
  }
  .pl-pc--10 {
    padding-left: 0.625rem !important;
  }
  .pl-pc--15 {
    padding-left: 0.9375rem !important;
  }
  .pl-pc--20 {
    padding-left: 1.25rem !important;
  }
  .pl-pc--25 {
    padding-left: 1.5625rem !important;
  }
  .pl-pc--30 {
    padding-left: 1.875rem !important;
  }
  .pl-pc--35 {
    padding-left: 2.1875rem !important;
  }
  .pl-pc--40 {
    padding-left: 2.5rem !important;
  }
  .pl-pc--45 {
    padding-left: 2.8125rem !important;
  }
  .pl-pc--50 {
    padding-left: 3.125rem !important;
  }
  /* padding right */
  .pr-pc--0 {
    padding-right: 0rem !important;
  }
  .pr-pc--5 {
    padding-right: 0.3125rem !important;
  }
  .pr-pc--10 {
    padding-right: 0.625rem !important;
  }
  .pr-pc--15 {
    padding-right: 0.9375rem !important;
  }
  .pr-pc--20 {
    padding-right: 1.25rem !important;
  }
  .pr-pc--25 {
    padding-right: 1.5625rem !important;
  }
  .pr-pc--30 {
    padding-right: 1.875rem !important;
  }
  .pr-pc--35 {
    padding-right: 2.1875rem !important;
  }
  .pr-pc--40 {
    padding-right: 2.5rem !important;
  }
  .pr-pc--45 {
    padding-right: 2.8125rem !important;
  }
  .pr-pc--50 {
    padding-right: 3.125rem !important;
  }
  /* padding top */
  .pt-pc--0 {
    padding-top: 0rem !important;
  }
  .pt-pc--5 {
    padding-top: 0.3125rem !important;
  }
  .pt-pc--10 {
    padding-top: 0.625rem !important;
  }
  .pt-pc--15 {
    padding-top: 0.9375rem !important;
  }
  .pt-pc--20 {
    padding-top: 1.25rem !important;
  }
  .pt-pc--25 {
    padding-top: 1.5625rem !important;
  }
  .pt-pc--30 {
    padding-top: 1.875rem !important;
  }
  .pt-pc--35 {
    padding-top: 2.1875rem !important;
  }
  .pt-pc--40 {
    padding-top: 2.5rem !important;
  }
  .pt-pc--45 {
    padding-top: 2.8125rem !important;
  }
  .pt-pc--50 {
    padding-top: 3.125rem !important;
  }
  /* padding bottom */
  .pb-pc--0 {
    padding-bottom: 0rem !important;
  }
  .pb-pc--5 {
    padding-bottom: 0.3125rem !important;
  }
  .pb-pc--10 {
    padding-bottom: 0.625rem !important;
  }
  .pb-pc--15 {
    padding-bottom: 0.9375rem !important;
  }
  .pb-pc--20 {
    padding-bottom: 1.25rem !important;
  }
  .pb-pc--25 {
    padding-bottom: 1.5625rem !important;
  }
  .pb-pc--30 {
    padding-bottom: 1.875rem !important;
  }
  .pb-pc--35 {
    padding-bottom: 2.1875rem !important;
  }
  .pb-pc--40 {
    padding-bottom: 2.5rem !important;
  }
  .pb-pc--45 {
    padding-bottom: 2.8125rem !important;
  }
  .pb-pc--50 {
    padding-bottom: 3.125rem !important;
  }
  /* padding x */
  .px-pc--0 {
    padding-left: 0rem !important;
    padding-right: 0rem !important;
  }
  .px-pc--5 {
    padding-left: 0.3125rem !important;
    padding-right: 0.3125rem !important;
  }
  .px-pc--10 {
    padding-left: 0.625rem !important;
    padding-right: 0.625rem !important;
  }
  .px-pc--15 {
    padding-left: 0.9375rem !important;
    padding-right: 0.9375rem !important;
  }
  .px-pc--20 {
    padding-left: 1.25rem !important;
    padding-right: 1.25rem !important;
  }
  .px-pc--25 {
    padding-left: 1.5625rem !important;
    padding-right: 1.5625rem !important;
  }
  .px-pc--30 {
    padding-left: 1.875rem !important;
    padding-right: 1.875rem !important;
  }
  .px-pc--35 {
    padding-left: 2.1875rem !important;
    padding-right: 2.1875rem !important;
  }
  .px-pc--40 {
    padding-left: 2.5rem !important;
    padding-right: 2.5rem !important;
  }
  .px-pc--45 {
    padding-left: 2.8125rem !important;
    padding-right: 2.8125rem !important;
  }
  .px-pc--50 {
    padding-left: 3.125rem !important;
    padding-right: 3.125rem !important;
  }
  /* padding y */
  .py-pc--0 {
    padding-top: 0rem !important;
    padding-bottom: 0rem !important;
  }
  .py-pc--5 {
    padding-top: 0.3125rem !important;
    padding-bottom: 0.3125rem !important;
  }
  .py-pc--10 {
    padding-top: 0.625rem !important;
    padding-bottom: 0.625rem !important;
  }
  .py-pc--15 {
    padding-top: 0.9375rem !important;
    padding-bottom: 0.9375rem !important;
  }
  .py-pc--20 {
    padding-top: 1.25rem !important;
    padding-bottom: 1.25rem !important;
  }
  .py-pc--25 {
    padding-top: 1.5625rem !important;
    padding-bottom: 1.5625rem !important;
  }
  .py-pc--30 {
    padding-top: 1.875rem !important;
    padding-bottom: 1.875rem !important;
  }
  .py-pc--35 {
    padding-top: 2.1875rem !important;
    padding-bottom: 2.1875rem !important;
  }
  .py-pc--40 {
    padding-top: 2.5rem !important;
    padding-bottom: 2.5rem !important;
  }
  .py-pc--45 {
    padding-top: 2.8125rem !important;
    padding-bottom: 2.8125rem !important;
  }
  .py-pc--50 {
    padding-top: 3.125rem !important;
    padding-bottom: 3.125rem !important;
  }
  /* margin left */
  .ml-pc--0 {
    margin-left: 0rem !important;
  }
  .ml-pc--5 {
    margin-left: 0.3125rem !important;
  }
  .ml-pc--10 {
    margin-left: 0.625rem !important;
  }
  .ml-pc--15 {
    margin-left: 0.9375rem !important;
  }
  .ml-pc--20 {
    margin-left: 1.25rem !important;
  }
  .ml-pc--25 {
    margin-left: 1.5625rem !important;
  }
  .ml-pc--30 {
    margin-left: 1.875rem !important;
  }
  .ml-pc--35 {
    margin-left: 2.1875rem !important;
  }
  .ml-pc--40 {
    margin-left: 2.5rem !important;
  }
  .ml-pc--45 {
    margin-left: 2.8125rem !important;
  }
  .ml-pc--50 {
    margin-left: 3.125rem !important;
  }
  /* margin right */
  .mr-pc--0 {
    margin-right: 0rem !important;
  }
  .mr-pc--5 {
    margin-right: 0.3125rem !important;
  }
  .mr-pc--10 {
    margin-right: 0.625rem !important;
  }
  .mr-pc--15 {
    margin-right: 0.9375rem !important;
  }
  .mr-pc--20 {
    margin-right: 1.25rem !important;
  }
  .mr-pc--25 {
    margin-right: 1.5625rem !important;
  }
  .mr-pc--30 {
    margin-right: 1.875rem !important;
  }
  .mr-pc--35 {
    margin-right: 2.1875rem !important;
  }
  .mr-pc--40 {
    margin-right: 2.5rem !important;
  }
  .mr-pc--45 {
    margin-right: 2.8125rem !important;
  }
  .mr-pc--50 {
    margin-right: 3.125rem !important;
  }
  /* margin top */
  .mt-pc--0 {
    margin-top: 0rem !important;
  }
  .mt-pc--5 {
    margin-top: 0.3125rem !important;
  }
  .mt-pc--10 {
    margin-top: 0.625rem !important;
  }
  .mt-pc--15 {
    margin-top: 0.9375rem !important;
  }
  .mt-pc--20 {
    margin-top: 1.25rem !important;
  }
  .mt-pc--25 {
    margin-top: 1.5625rem !important;
  }
  .mt-pc--30 {
    margin-top: 1.875rem !important;
  }
  .mt-pc--35 {
    margin-top: 2.1875rem !important;
  }
  .mt-pc--40 {
    margin-top: 2.5rem !important;
  }
  .mt-pc--45 {
    margin-top: 2.8125rem !important;
  }
  .mt-pc--50 {
    margin-top: 3.125rem !important;
  }
  /* margin bottom */
  .mb-pc--0 {
    margin-bottom: 0rem !important;
  }
  .mb-pc--5 {
    margin-bottom: 0.3125rem !important;
  }
  .mb-pc--10 {
    margin-bottom: 0.625rem !important;
  }
  .mb-pc--15 {
    margin-bottom: 0.9375rem !important;
  }
  .mb-pc--20 {
    margin-bottom: 1.25rem !important;
  }
  .mb-pc--25 {
    margin-bottom: 1.5625rem !important;
  }
  .mb-pc--30 {
    margin-bottom: 1.875rem !important;
  }
  .mb-pc--35 {
    margin-bottom: 2.1875rem !important;
  }
  .mb-pc--40 {
    margin-bottom: 2.5rem !important;
  }
  .mb-pc--45 {
    margin-bottom: 2.8125rem !important;
  }
  .mb-pc--50 {
    margin-bottom: 3.125rem !important;
  }
  /* margin x */
  .mx-pc--0 {
    margin-left: 0rem !important;
    margin-right: 0rem !important;
  }
  .mx-pc--5 {
    margin-left: 0.3125rem !important;
    margin-right: 0.3125rem !important;
  }
  .mx-pc--10 {
    margin-left: 0.625rem !important;
    margin-right: 0.625rem !important;
  }
  .mx-pc--15 {
    margin-left: 0.9375rem !important;
    margin-right: 0.9375rem !important;
  }
  .mx-pc--20 {
    margin-left: 1.25rem !important;
    margin-right: 1.25rem !important;
  }
  .mx-pc--25 {
    margin-left: 1.5625rem !important;
    margin-right: 1.5625rem !important;
  }
  .mx-pc--30 {
    margin-left: 1.875rem !important;
    margin-right: 1.875rem !important;
  }
  .mx-pc--35 {
    margin-left: 2.1875rem !important;
    margin-right: 2.1875rem !important;
  }
  .mx-pc--40 {
    margin-left: 2.5rem !important;
    margin-right: 2.5rem !important;
  }
  .mx-pc--45 {
    margin-left: 2.8125rem !important;
    margin-right: 2.8125rem !important;
  }
  .mx-pc--50 {
    margin-left: 3.125rem !important;
    margin-right: 3.125rem !important;
  }
  /* margin y */
  .my-pc--0 {
    margin-top: 0rem !important;
    margin-bottom: 0rem !important;
  }
  .my-pc--5 {
    margin-top: 0.3125rem !important;
    margin-bottom: 0.3125rem !important;
  }
  .my-pc--10 {
    margin-top: 0.625rem !important;
    margin-bottom: 0.625rem !important;
  }
  .my-pc--15 {
    margin-top: 0.9375rem !important;
    margin-bottom: 0.9375rem !important;
  }
  .my-pc--20 {
    margin-top: 1.25rem !important;
    margin-bottom: 1.25rem !important;
  }
  .my-pc--25 {
    margin-top: 1.5625rem !important;
    margin-bottom: 1.5625rem !important;
  }
  .my-pc--30 {
    margin-top: 1.875rem !important;
    margin-bottom: 1.875rem !important;
  }
  .my-pc--35 {
    margin-top: 2.1875rem !important;
    margin-bottom: 2.1875rem !important;
  }
  .my-pc--40 {
    margin-top: 2.5rem !important;
    margin-bottom: 2.5rem !important;
  }
  .my-pc--45 {
    margin-top: 2.8125rem !important;
    margin-bottom: 2.8125rem !important;
  }
  .my-pc--50 {
    margin-top: 3.125rem !important;
    margin-bottom: 3.125rem !important;
  }
}
@media (max-width: 768px) {
  /* padding left */
  .pl-sp--0 {
    padding-left: 0rem !important;
  }
  .pl-sp--5 {
    padding-left: 0.3125rem !important;
  }
  .pl-sp--10 {
    padding-left: 0.625rem !important;
  }
  .pl-sp--15 {
    padding-left: 0.9375rem !important;
  }
  .pl-sp--20 {
    padding-left: 1.25rem !important;
  }
  .pl-sp--25 {
    padding-left: 1.5625rem !important;
  }
  .pl-sp--30 {
    padding-left: 1.875rem !important;
  }
  .pl-sp--35 {
    padding-left: 2.1875rem !important;
  }
  .pl-sp--40 {
    padding-left: 2.5rem !important;
  }
  .pl-sp--45 {
    padding-left: 2.8125rem !important;
  }
  .pl-sp--50 {
    padding-left: 3.125rem !important;
  }
  /* padding right */
  .pr-sp--0 {
    padding-right: 0rem !important;
  }
  .pr-sp--5 {
    padding-right: 0.3125rem !important;
  }
  .pr-sp--10 {
    padding-right: 0.625rem !important;
  }
  .pr-sp--15 {
    padding-right: 0.9375rem !important;
  }
  .pr-sp--20 {
    padding-right: 1.25rem !important;
  }
  .pr-sp--25 {
    padding-right: 1.5625rem !important;
  }
  .pr-sp--30 {
    padding-right: 1.875rem !important;
  }
  .pr-sp--35 {
    padding-right: 2.1875rem !important;
  }
  .pr-sp--40 {
    padding-right: 2.5rem !important;
  }
  .pr-sp--45 {
    padding-right: 2.8125rem !important;
  }
  .pr-sp--50 {
    padding-right: 3.125rem !important;
  }
  /* padding top */
  .pt-sp--0 {
    padding-top: 0rem !important;
  }
  .pt-sp--5 {
    padding-top: 0.3125rem !important;
  }
  .pt-sp--10 {
    padding-top: 0.625rem !important;
  }
  .pt-sp--15 {
    padding-top: 0.9375rem !important;
  }
  .pt-sp--20 {
    padding-top: 1.25rem !important;
  }
  .pt-sp--25 {
    padding-top: 1.5625rem !important;
  }
  .pt-sp--30 {
    padding-top: 1.875rem !important;
  }
  .pt-sp--35 {
    padding-top: 2.1875rem !important;
  }
  .pt-sp--40 {
    padding-top: 2.5rem !important;
  }
  .pt-sp--45 {
    padding-top: 2.8125rem !important;
  }
  .pt-sp--50 {
    padding-top: 3.125rem !important;
  }
  /* padding bottom */
  .pb-sp--0 {
    padding-bottom: 0rem !important;
  }
  .pb-sp--5 {
    padding-bottom: 0.3125rem !important;
  }
  .pb-sp--10 {
    padding-bottom: 0.625rem !important;
  }
  .pb-sp--15 {
    padding-bottom: 0.9375rem !important;
  }
  .pb-sp--20 {
    padding-bottom: 1.25rem !important;
  }
  .pb-sp--25 {
    padding-bottom: 1.5625rem !important;
  }
  .pb-sp--30 {
    padding-bottom: 1.875rem !important;
  }
  .pb-sp--35 {
    padding-bottom: 2.1875rem !important;
  }
  .pb-sp--40 {
    padding-bottom: 2.5rem !important;
  }
  .pb-sp--45 {
    padding-bottom: 2.8125rem !important;
  }
  .pb-sp--50 {
    padding-bottom: 3.125rem !important;
  }
  /* padding x */
  .px-sp--0 {
    padding-left: 0rem !important;
    padding-right: 0rem !important;
  }
  .px-sp--5 {
    padding-left: 0.3125rem !important;
    padding-right: 0.3125rem !important;
  }
  .px-sp--10 {
    padding-left: 0.625rem !important;
    padding-right: 0.625rem !important;
  }
  .px-sp--15 {
    padding-left: 0.9375rem !important;
    padding-right: 0.9375rem !important;
  }
  .px-sp--20 {
    padding-left: 1.25rem !important;
    padding-right: 1.25rem !important;
  }
  .px-sp--25 {
    padding-left: 1.5625rem !important;
    padding-right: 1.5625rem !important;
  }
  .px-sp--30 {
    padding-left: 1.875rem !important;
    padding-right: 1.875rem !important;
  }
  .px-sp--35 {
    padding-left: 2.1875rem !important;
    padding-right: 2.1875rem !important;
  }
  .px-sp--40 {
    padding-left: 2.5rem !important;
    padding-right: 2.5rem !important;
  }
  .px-sp--45 {
    padding-left: 2.8125rem !important;
    padding-right: 2.8125rem !important;
  }
  .px-sp--50 {
    padding-left: 3.125rem !important;
    padding-right: 3.125rem !important;
  }
  /* padding y */
  .py-sp--0 {
    padding-top: 0rem !important;
    padding-bottom: 0rem !important;
  }
  .py-sp--5 {
    padding-top: 0.3125rem !important;
    padding-bottom: 0.3125rem !important;
  }
  .py-sp--10 {
    padding-top: 0.625rem !important;
    padding-bottom: 0.625rem !important;
  }
  .py-sp--15 {
    padding-top: 0.9375rem !important;
    padding-bottom: 0.9375rem !important;
  }
  .py-sp--20 {
    padding-top: 1.25rem !important;
    padding-bottom: 1.25rem !important;
  }
  .py-sp--25 {
    padding-top: 1.5625rem !important;
    padding-bottom: 1.5625rem !important;
  }
  .py-sp--30 {
    padding-top: 1.875rem !important;
    padding-bottom: 1.875rem !important;
  }
  .py-sp--35 {
    padding-top: 2.1875rem !important;
    padding-bottom: 2.1875rem !important;
  }
  .py-sp--40 {
    padding-top: 2.5rem !important;
    padding-bottom: 2.5rem !important;
  }
  .py-sp--45 {
    padding-top: 2.8125rem !important;
    padding-bottom: 2.8125rem !important;
  }
  .py-sp--50 {
    padding-top: 3.125rem !important;
    padding-bottom: 3.125rem !important;
  }
  /* margin left */
  .ml-sp--0 {
    margin-left: 0rem !important;
  }
  .ml-sp--5 {
    margin-left: 0.3125rem !important;
  }
  .ml-sp--10 {
    margin-left: 0.625rem !important;
  }
  .ml-sp--15 {
    margin-left: 0.9375rem !important;
  }
  .ml-sp--20 {
    margin-left: 1.25rem !important;
  }
  .ml-sp--25 {
    margin-left: 1.5625rem !important;
  }
  .ml-sp--30 {
    margin-left: 1.875rem !important;
  }
  .ml-sp--35 {
    margin-left: 2.1875rem !important;
  }
  .ml-sp--40 {
    margin-left: 2.5rem !important;
  }
  .ml-sp--45 {
    margin-left: 2.8125rem !important;
  }
  .ml-sp--50 {
    margin-left: 3.125rem !important;
  }
  /* margin right */
  .mr-sp--0 {
    margin-right: 0rem !important;
  }
  .mr-sp--5 {
    margin-right: 0.3125rem !important;
  }
  .mr-sp--10 {
    margin-right: 0.625rem !important;
  }
  .mr-sp--15 {
    margin-right: 0.9375rem !important;
  }
  .mr-sp--20 {
    margin-right: 1.25rem !important;
  }
  .mr-sp--25 {
    margin-right: 1.5625rem !important;
  }
  .mr-sp--30 {
    margin-right: 1.875rem !important;
  }
  .mr-sp--35 {
    margin-right: 2.1875rem !important;
  }
  .mr-sp--40 {
    margin-right: 2.5rem !important;
  }
  .mr-sp--45 {
    margin-right: 2.8125rem !important;
  }
  .mr-sp--50 {
    margin-right: 3.125rem !important;
  }
  /* margin top */
  .mt-sp--0 {
    margin-top: 0rem !important;
  }
  .mt-sp--5 {
    margin-top: 0.3125rem !important;
  }
  .mt-sp--10 {
    margin-top: 0.625rem !important;
  }
  .mt-sp--15 {
    margin-top: 0.9375rem !important;
  }
  .mt-sp--20 {
    margin-top: 1.25rem !important;
  }
  .mt-sp--25 {
    margin-top: 1.5625rem !important;
  }
  .mt-sp--30 {
    margin-top: 1.875rem !important;
  }
  .mt-sp--35 {
    margin-top: 2.1875rem !important;
  }
  .mt-sp--40 {
    margin-top: 2.5rem !important;
  }
  .mt-sp--45 {
    margin-top: 2.8125rem !important;
  }
  .mt-sp--50 {
    margin-top: 3.125rem !important;
  }
  /* margin bottom */
  .mb-sp--0 {
    margin-bottom: 0rem !important;
  }
  .mb-sp--5 {
    margin-bottom: 0.3125rem !important;
  }
  .mb-sp--10 {
    margin-bottom: 0.625rem !important;
  }
  .mb-sp--15 {
    margin-bottom: 0.9375rem !important;
  }
  .mb-sp--20 {
    margin-bottom: 1.25rem !important;
  }
  .mb-sp--25 {
    margin-bottom: 1.5625rem !important;
  }
  .mb-sp--30 {
    margin-bottom: 1.875rem !important;
  }
  .mb-sp--35 {
    margin-bottom: 2.1875rem !important;
  }
  .mb-sp--40 {
    margin-bottom: 2.5rem !important;
  }
  .mb-sp--45 {
    margin-bottom: 2.8125rem !important;
  }
  .mb-sp--50 {
    margin-bottom: 3.125rem !important;
  }
  /* margin x */
  .mx-sp--0 {
    margin-left: 0rem !important;
    margin-right: 0rem !important;
  }
  .mx-sp--5 {
    margin-left: 0.3125rem !important;
    margin-right: 0.3125rem !important;
  }
  .mx-sp--10 {
    margin-left: 0.625rem !important;
    margin-right: 0.625rem !important;
  }
  .mx-sp--15 {
    margin-left: 0.9375rem !important;
    margin-right: 0.9375rem !important;
  }
  .mx-sp--20 {
    margin-left: 1.25rem !important;
    margin-right: 1.25rem !important;
  }
  .mx-sp--25 {
    margin-left: 1.5625rem !important;
    margin-right: 1.5625rem !important;
  }
  .mx-sp--30 {
    margin-left: 1.875rem !important;
    margin-right: 1.875rem !important;
  }
  .mx-sp--35 {
    margin-left: 2.1875rem !important;
    margin-right: 2.1875rem !important;
  }
  .mx-sp--40 {
    margin-left: 2.5rem !important;
    margin-right: 2.5rem !important;
  }
  .mx-sp--45 {
    margin-left: 2.8125rem !important;
    margin-right: 2.8125rem !important;
  }
  .mx-sp--50 {
    margin-left: 3.125rem !important;
    margin-right: 3.125rem !important;
  }
  /* margin y */
  .my-sp--0 {
    margin-top: 0rem !important;
    margin-bottom: 0rem !important;
  }
  .my-sp--5 {
    margin-top: 0.3125rem !important;
    margin-bottom: 0.3125rem !important;
  }
  .my-sp--10 {
    margin-top: 0.625rem !important;
    margin-bottom: 0.625rem !important;
  }
  .my-sp--15 {
    margin-top: 0.9375rem !important;
    margin-bottom: 0.9375rem !important;
  }
  .my-sp--20 {
    margin-top: 1.25rem !important;
    margin-bottom: 1.25rem !important;
  }
  .my-sp--25 {
    margin-top: 1.5625rem !important;
    margin-bottom: 1.5625rem !important;
  }
  .my-sp--30 {
    margin-top: 1.875rem !important;
    margin-bottom: 1.875rem !important;
  }
  .my-sp--35 {
    margin-top: 2.1875rem !important;
    margin-bottom: 2.1875rem !important;
  }
  .my-sp--40 {
    margin-top: 2.5rem !important;
    margin-bottom: 2.5rem !important;
  }
  .my-sp--45 {
    margin-top: 2.8125rem !important;
    margin-bottom: 2.8125rem !important;
  }
  .my-sp--50 {
    margin-top: 3.125rem !important;
    margin-bottom: 3.125rem !important;
  }
}
@media (min-width: sp) {
  /* padding left */
  .pl-sp--0 {
    padding-left: 0rem !important;
  }
  .pl-sp--5 {
    padding-left: 0.3125rem !important;
  }
  .pl-sp--10 {
    padding-left: 0.625rem !important;
  }
  .pl-sp--15 {
    padding-left: 0.9375rem !important;
  }
  .pl-sp--20 {
    padding-left: 1.25rem !important;
  }
  .pl-sp--25 {
    padding-left: 1.5625rem !important;
  }
  .pl-sp--30 {
    padding-left: 1.875rem !important;
  }
  .pl-sp--35 {
    padding-left: 2.1875rem !important;
  }
  .pl-sp--40 {
    padding-left: 2.5rem !important;
  }
  .pl-sp--45 {
    padding-left: 2.8125rem !important;
  }
  .pl-sp--50 {
    padding-left: 3.125rem !important;
  }
  /* padding right */
  .pr-sp--0 {
    padding-right: 0rem !important;
  }
  .pr-sp--5 {
    padding-right: 0.3125rem !important;
  }
  .pr-sp--10 {
    padding-right: 0.625rem !important;
  }
  .pr-sp--15 {
    padding-right: 0.9375rem !important;
  }
  .pr-sp--20 {
    padding-right: 1.25rem !important;
  }
  .pr-sp--25 {
    padding-right: 1.5625rem !important;
  }
  .pr-sp--30 {
    padding-right: 1.875rem !important;
  }
  .pr-sp--35 {
    padding-right: 2.1875rem !important;
  }
  .pr-sp--40 {
    padding-right: 2.5rem !important;
  }
  .pr-sp--45 {
    padding-right: 2.8125rem !important;
  }
  .pr-sp--50 {
    padding-right: 3.125rem !important;
  }
  /* padding top */
  .pt-sp--0 {
    padding-top: 0rem !important;
  }
  .pt-sp--5 {
    padding-top: 0.3125rem !important;
  }
  .pt-sp--10 {
    padding-top: 0.625rem !important;
  }
  .pt-sp--15 {
    padding-top: 0.9375rem !important;
  }
  .pt-sp--20 {
    padding-top: 1.25rem !important;
  }
  .pt-sp--25 {
    padding-top: 1.5625rem !important;
  }
  .pt-sp--30 {
    padding-top: 1.875rem !important;
  }
  .pt-sp--35 {
    padding-top: 2.1875rem !important;
  }
  .pt-sp--40 {
    padding-top: 2.5rem !important;
  }
  .pt-sp--45 {
    padding-top: 2.8125rem !important;
  }
  .pt-sp--50 {
    padding-top: 3.125rem !important;
  }
  /* padding bottom */
  .pb-sp--0 {
    padding-bottom: 0rem !important;
  }
  .pb-sp--5 {
    padding-bottom: 0.3125rem !important;
  }
  .pb-sp--10 {
    padding-bottom: 0.625rem !important;
  }
  .pb-sp--15 {
    padding-bottom: 0.9375rem !important;
  }
  .pb-sp--20 {
    padding-bottom: 1.25rem !important;
  }
  .pb-sp--25 {
    padding-bottom: 1.5625rem !important;
  }
  .pb-sp--30 {
    padding-bottom: 1.875rem !important;
  }
  .pb-sp--35 {
    padding-bottom: 2.1875rem !important;
  }
  .pb-sp--40 {
    padding-bottom: 2.5rem !important;
  }
  .pb-sp--45 {
    padding-bottom: 2.8125rem !important;
  }
  .pb-sp--50 {
    padding-bottom: 3.125rem !important;
  }
  /* padding x */
  .px-sp--0 {
    padding-left: 0rem !important;
    padding-right: 0rem !important;
  }
  .px-sp--5 {
    padding-left: 0.3125rem !important;
    padding-right: 0.3125rem !important;
  }
  .px-sp--10 {
    padding-left: 0.625rem !important;
    padding-right: 0.625rem !important;
  }
  .px-sp--15 {
    padding-left: 0.9375rem !important;
    padding-right: 0.9375rem !important;
  }
  .px-sp--20 {
    padding-left: 1.25rem !important;
    padding-right: 1.25rem !important;
  }
  .px-sp--25 {
    padding-left: 1.5625rem !important;
    padding-right: 1.5625rem !important;
  }
  .px-sp--30 {
    padding-left: 1.875rem !important;
    padding-right: 1.875rem !important;
  }
  .px-sp--35 {
    padding-left: 2.1875rem !important;
    padding-right: 2.1875rem !important;
  }
  .px-sp--40 {
    padding-left: 2.5rem !important;
    padding-right: 2.5rem !important;
  }
  .px-sp--45 {
    padding-left: 2.8125rem !important;
    padding-right: 2.8125rem !important;
  }
  .px-sp--50 {
    padding-left: 3.125rem !important;
    padding-right: 3.125rem !important;
  }
  /* padding y */
  .py-sp--0 {
    padding-top: 0rem !important;
    padding-bottom: 0rem !important;
  }
  .py-sp--5 {
    padding-top: 0.3125rem !important;
    padding-bottom: 0.3125rem !important;
  }
  .py-sp--10 {
    padding-top: 0.625rem !important;
    padding-bottom: 0.625rem !important;
  }
  .py-sp--15 {
    padding-top: 0.9375rem !important;
    padding-bottom: 0.9375rem !important;
  }
  .py-sp--20 {
    padding-top: 1.25rem !important;
    padding-bottom: 1.25rem !important;
  }
  .py-sp--25 {
    padding-top: 1.5625rem !important;
    padding-bottom: 1.5625rem !important;
  }
  .py-sp--30 {
    padding-top: 1.875rem !important;
    padding-bottom: 1.875rem !important;
  }
  .py-sp--35 {
    padding-top: 2.1875rem !important;
    padding-bottom: 2.1875rem !important;
  }
  .py-sp--40 {
    padding-top: 2.5rem !important;
    padding-bottom: 2.5rem !important;
  }
  .py-sp--45 {
    padding-top: 2.8125rem !important;
    padding-bottom: 2.8125rem !important;
  }
  .py-sp--50 {
    padding-top: 3.125rem !important;
    padding-bottom: 3.125rem !important;
  }
  /* margin left */
  .ml-sp--0 {
    margin-left: 0rem !important;
  }
  .ml-sp--5 {
    margin-left: 0.3125rem !important;
  }
  .ml-sp--10 {
    margin-left: 0.625rem !important;
  }
  .ml-sp--15 {
    margin-left: 0.9375rem !important;
  }
  .ml-sp--20 {
    margin-left: 1.25rem !important;
  }
  .ml-sp--25 {
    margin-left: 1.5625rem !important;
  }
  .ml-sp--30 {
    margin-left: 1.875rem !important;
  }
  .ml-sp--35 {
    margin-left: 2.1875rem !important;
  }
  .ml-sp--40 {
    margin-left: 2.5rem !important;
  }
  .ml-sp--45 {
    margin-left: 2.8125rem !important;
  }
  .ml-sp--50 {
    margin-left: 3.125rem !important;
  }
  /* margin right */
  .mr-sp--0 {
    margin-right: 0rem !important;
  }
  .mr-sp--5 {
    margin-right: 0.3125rem !important;
  }
  .mr-sp--10 {
    margin-right: 0.625rem !important;
  }
  .mr-sp--15 {
    margin-right: 0.9375rem !important;
  }
  .mr-sp--20 {
    margin-right: 1.25rem !important;
  }
  .mr-sp--25 {
    margin-right: 1.5625rem !important;
  }
  .mr-sp--30 {
    margin-right: 1.875rem !important;
  }
  .mr-sp--35 {
    margin-right: 2.1875rem !important;
  }
  .mr-sp--40 {
    margin-right: 2.5rem !important;
  }
  .mr-sp--45 {
    margin-right: 2.8125rem !important;
  }
  .mr-sp--50 {
    margin-right: 3.125rem !important;
  }
  /* margin top */
  .mt-sp--0 {
    margin-top: 0rem !important;
  }
  .mt-sp--5 {
    margin-top: 0.3125rem !important;
  }
  .mt-sp--10 {
    margin-top: 0.625rem !important;
  }
  .mt-sp--15 {
    margin-top: 0.9375rem !important;
  }
  .mt-sp--20 {
    margin-top: 1.25rem !important;
  }
  .mt-sp--25 {
    margin-top: 1.5625rem !important;
  }
  .mt-sp--30 {
    margin-top: 1.875rem !important;
  }
  .mt-sp--35 {
    margin-top: 2.1875rem !important;
  }
  .mt-sp--40 {
    margin-top: 2.5rem !important;
  }
  .mt-sp--45 {
    margin-top: 2.8125rem !important;
  }
  .mt-sp--50 {
    margin-top: 3.125rem !important;
  }
  /* margin bottom */
  .mb-sp--0 {
    margin-bottom: 0rem !important;
  }
  .mb-sp--5 {
    margin-bottom: 0.3125rem !important;
  }
  .mb-sp--10 {
    margin-bottom: 0.625rem !important;
  }
  .mb-sp--15 {
    margin-bottom: 0.9375rem !important;
  }
  .mb-sp--20 {
    margin-bottom: 1.25rem !important;
  }
  .mb-sp--25 {
    margin-bottom: 1.5625rem !important;
  }
  .mb-sp--30 {
    margin-bottom: 1.875rem !important;
  }
  .mb-sp--35 {
    margin-bottom: 2.1875rem !important;
  }
  .mb-sp--40 {
    margin-bottom: 2.5rem !important;
  }
  .mb-sp--45 {
    margin-bottom: 2.8125rem !important;
  }
  .mb-sp--50 {
    margin-bottom: 3.125rem !important;
  }
  /* margin x */
  .mx-sp--0 {
    margin-left: 0rem !important;
    margin-right: 0rem !important;
  }
  .mx-sp--5 {
    margin-left: 0.3125rem !important;
    margin-right: 0.3125rem !important;
  }
  .mx-sp--10 {
    margin-left: 0.625rem !important;
    margin-right: 0.625rem !important;
  }
  .mx-sp--15 {
    margin-left: 0.9375rem !important;
    margin-right: 0.9375rem !important;
  }
  .mx-sp--20 {
    margin-left: 1.25rem !important;
    margin-right: 1.25rem !important;
  }
  .mx-sp--25 {
    margin-left: 1.5625rem !important;
    margin-right: 1.5625rem !important;
  }
  .mx-sp--30 {
    margin-left: 1.875rem !important;
    margin-right: 1.875rem !important;
  }
  .mx-sp--35 {
    margin-left: 2.1875rem !important;
    margin-right: 2.1875rem !important;
  }
  .mx-sp--40 {
    margin-left: 2.5rem !important;
    margin-right: 2.5rem !important;
  }
  .mx-sp--45 {
    margin-left: 2.8125rem !important;
    margin-right: 2.8125rem !important;
  }
  .mx-sp--50 {
    margin-left: 3.125rem !important;
    margin-right: 3.125rem !important;
  }
  /* margin y */
  .my-sp--0 {
    margin-top: 0rem !important;
    margin-bottom: 0rem !important;
  }
  .my-sp--5 {
    margin-top: 0.3125rem !important;
    margin-bottom: 0.3125rem !important;
  }
  .my-sp--10 {
    margin-top: 0.625rem !important;
    margin-bottom: 0.625rem !important;
  }
  .my-sp--15 {
    margin-top: 0.9375rem !important;
    margin-bottom: 0.9375rem !important;
  }
  .my-sp--20 {
    margin-top: 1.25rem !important;
    margin-bottom: 1.25rem !important;
  }
  .my-sp--25 {
    margin-top: 1.5625rem !important;
    margin-bottom: 1.5625rem !important;
  }
  .my-sp--30 {
    margin-top: 1.875rem !important;
    margin-bottom: 1.875rem !important;
  }
  .my-sp--35 {
    margin-top: 2.1875rem !important;
    margin-bottom: 2.1875rem !important;
  }
  .my-sp--40 {
    margin-top: 2.5rem !important;
    margin-bottom: 2.5rem !important;
  }
  .my-sp--45 {
    margin-top: 2.8125rem !important;
    margin-bottom: 2.8125rem !important;
  }
  .my-sp--50 {
    margin-top: 3.125rem !important;
    margin-bottom: 3.125rem !important;
  }
}
.m--auto {
  margin-left: auto;
  margin-right: auto;
}
.ml--auto {
  margin-left: auto;
}
.mr--auto {
  margin-right: auto;
}
@media (min-width: 769px) {
  .mx__pc--auto {
    margin-left: auto;
    margin-right: auto;
  }
}
@media (max-width: 768px) {
  .mx__sp--auto {
    margin-left: auto;
    margin-right: auto;
  }
}
@media (min-width: sp) {
  .mx__sp--auto {
    margin-left: auto;
    margin-right: auto;
  }
}
.mx--auto {
  margin-left: auto;
  margin-right: auto;
}

.p--auto {
  padding-left: auto;
  padding-right: auto;
}
.pl--auto {
  padding-left: auto;
}
.pr--auto {
  padding-right: auto;
}
@media (min-width: 769px) {
  .px__pc--auto {
    padding-left: auto;
    padding-right: auto;
  }
}
@media (max-width: 768px) {
  .px__sp--auto {
    padding-left: auto;
    padding-right: auto;
  }
}
@media (min-width: sp) {
  .px__sp--auto {
    padding-left: auto;
    padding-right: auto;
  }
}
.px--auto {
  padding-left: auto;
  padding-right: auto;
}

/* ==========================================================================
   #Custom
   ========================================================================== */
.fixed {
  background-color: #222;
  position: fixed;
  z-index: 100001;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.hidden {
  overflow: hidden;
}

.scrollbar::-webkit-scrollbar-track {
  background-color: transparent;
  border-radius: 0.625rem;
  box-shadow: inset 0 0 0.1875rem rgba(0, 0, 0, 0.1);
}
.scrollbar::-webkit-scrollbar {
  width: 0.1875rem;
  height: 0.375rem;
  background-color: transparent;
}
.scrollbar::-webkit-scrollbar-thumb {
  background-color: rgba(34, 34, 34, 0.35);
  border-radius: 0.625rem;
  box-shadow: inset 0 0 0.1875rem rgba(0, 0, 0, 0.1);
}

/* ==========================================================================
   #Font
   ========================================================================== */
@media (max-width: 768px) {
  .font__size__sp--14 {
    font-size: 0.875rem;
  }
  .font__size__sp--18 {
    font-size: 1.125rem;
  }
}
@media (min-width: sp) {
  .font__size__sp--14 {
    font-size: 0.875rem;
  }
  .font__size__sp--18 {
    font-size: 1.125rem;
  }
}

/* ==========================================================================
   #Border
   ========================================================================== */
.text-orange-01 {
  color: #ef8217;
}

.text-orange-04 {
  color: #ea5504;
}

.btn {
  position: relative;
  padding: 4.875rem 0 7.9375rem;
}
.btn.btn01 {
  padding: 4.875rem 0;
}
.btn-heading {
  font-size: 1.5625rem;
  line-height: 1.875rem;
  font-weight: 500;
  color: #202020;
  margin: 0;
}
.btn-heading .fw-bold {
  font-weight: 800;
}
.btn-heading .clr_orange {
  color: #ef8217;
  font-weight: 700;
}
.btn-heading .num {
  font-size: 2.6875rem;
  line-height: 2.6875rem;
  transform: translateY(0.1875rem);
  display: inline-block;
}
.btn-heading .med {
  font-size: 2.0625rem;
  line-height: 2.0625rem;
  font-weight: 800;
}
.btn-box {
  margin-top: 1.125rem;
}
.btn-box__link {
  display: block;
  position: relative;
  width: 46.5625rem;
  height: 7.5rem;
  padding-bottom: 0.5rem;
  animation: heartbeat 1.2s infinite;
  background-image: url("../images/bg_btn.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  opacity: 1;
  transition: 0.25s opacity;
}
.btn-box__link::before {
  content: "";
  position: absolute;
  top: 48%;
  right: 3.25rem;
  width: 1.875rem;
  height: 2.5625rem;
  transform: translateY(-50%);
  transition: transform 0.3s ease;
  background-image: url("../images/arrow_btn.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  z-index: 1;
}
.btn-box__link:hover {
  opacity: 0.7;
}
.btn-box__deco {
  position: absolute;
  width: 6.25rem;
  height: 3.75rem;
  top: 8%;
  left: 6.5%;
  z-index: 1;
}
.btn-box__text {
  height: 100%;
  padding-bottom: 0.4375rem;
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.btn-box__text > span {
  color: #fff;
}
.btn-box__text > span.med {
  font-size: 1.6875rem;
  line-height: 2.0625rem;
  font-weight: 700;
}
.btn-box__text > span.larg {
  font-size: 2.375rem;
  line-height: 2.6875rem;
  font-weight: 900;
  letter-spacing: 0.07em;
  margin-top: 0.25rem;
}
@media (max-width: 768px) {
  .btn {
    padding: 4.125rem 0 7.25rem;
  }
  .btn.btn01 {
    padding: 4.125rem 0;
  }
  .btn-heading {
    font-size: 1.875rem;
    line-height: 2.1875rem;
    letter-spacing: 0.06em;
  }
  .btn-heading .num {
    font-size: 3.125rem;
    line-height: 3.125rem;
  }
  .btn-heading .med {
    font-size: 2.375rem;
    line-height: 2.375rem;
  }
  .btn-box {
    margin-top: 1.8125rem;
  }
  .btn-box__link {
    width: 46rem;
    height: 10.125rem;
    background-image: url("../images/bg_btn_sp.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
  }
  .btn-box__link::before {
    right: 1.5rem;
    width: 2.5rem;
    height: 3.25rem;
    background-image: url("../images/arrow_btn_sp.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
  }
  .btn-box__deco {
    width: 7.75rem;
    height: 4.6875rem;
    top: 8.2%;
    left: 3.5%;
  }
  .btn-box__deco img {
    width: 100%;
  }
  .btn-box__text > span.med {
    font-size: 2.125rem;
    line-height: 2.5rem;
  }
  .btn-box__text > span.larg {
    font-size: 2.5rem;
    line-height: 2.6875rem;
    margin-top: 0.625rem;
  }
}
@media (min-width: sp) {
  .btn {
    padding: 4.125rem 0 7.25rem;
  }
  .btn.btn01 {
    padding: 4.125rem 0;
  }
  .btn-heading {
    font-size: 1.875rem;
    line-height: 2.1875rem;
    letter-spacing: 0.06em;
  }
  .btn-heading .num {
    font-size: 3.125rem;
    line-height: 3.125rem;
  }
  .btn-heading .med {
    font-size: 2.375rem;
    line-height: 2.375rem;
  }
  .btn-box {
    margin-top: 1.8125rem;
  }
  .btn-box__link {
    width: 46rem;
    height: 10.125rem;
    background-image: url("../images/bg_btn_sp.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
  }
  .btn-box__link::before {
    right: 1.5rem;
    width: 2.5rem;
    height: 3.25rem;
    background-image: url("../images/arrow_btn_sp.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
  }
  .btn-box__deco {
    width: 7.75rem;
    height: 4.6875rem;
    top: 8.2%;
    left: 3.5%;
  }
  .btn-box__deco img {
    width: 100%;
  }
  .btn-box__text > span.med {
    font-size: 2.125rem;
    line-height: 2.5rem;
  }
  .btn-box__text > span.larg {
    font-size: 2.5rem;
    line-height: 2.6875rem;
    margin-top: 0.625rem;
  }
}

.section-concern {
  background-image: url("../images/bg_concern.jpg");
  background-repeat: no-repeat;
  background-size: 100% 100%;
  padding: 3.75rem 0 3.75rem;
}
@media (max-width: 768px) {
  .section-concern {
    background-image: url("../images/bg_concern_sp.jpg");
    padding-top: 2rem;
    padding: 3.75rem 0 2.375rem;
  }
  .section-concern .container, .section-concern .container__fluid {
    position: relative;
  }
}
@media (min-width: sp) {
  .section-concern {
    background-image: url("../images/bg_concern_sp.jpg");
    padding-top: 2rem;
    padding: 3.75rem 0 2.375rem;
  }
  .section-concern .container, .section-concern .container__fluid {
    position: relative;
  }
}

.concern-inner {
  display: flex;
  justify-content: space-between;
}
.concern-figure {
  width: 40%;
  position: relative;
}
.concern-figure img {
  position: absolute;
  width: 36.625rem;
  left: -4.2rem;
  max-width: 36.625rem;
  top: 0;
}
@media (max-width: 768px) {
  .concern-figure {
    position: absolute;
    left: 0;
    top: 0;
  }
  .concern-figure img {
    width: 23.75rem;
    left: 0;
    max-width: 23.75rem;
    top: -2.5rem;
  }
}
@media (min-width: sp) {
  .concern-figure {
    position: absolute;
    left: 0;
    top: 0;
  }
  .concern-figure img {
    width: 23.75rem;
    left: 0;
    max-width: 23.75rem;
    top: -2.5rem;
  }
}
.concern-img {
  width: 100%;
}
.concern-content {
  width: 54.2%;
}
@media (max-width: 768px) {
  .concern-content {
    width: 87%;
    margin-left: 2.5rem;
  }
}
@media (min-width: sp) {
  .concern-content {
    width: 87%;
    margin-left: 2.5rem;
  }
}
.concern-title {
  font-size: 3rem;
  font-weight: bold;
  margin-bottom: 1.25rem;
  color: #fff;
  background-image: url("../images/bg_concern_title.png");
  background-repeat: no-repeat;
  background-position: bottom 0 left 0.625rem;
  padding-bottom: 1.75rem;
  margin-bottom: 4.4rem;
  margin-top: 4.3rem;
  margin-left: -4.5rem;
}
@media (max-width: 768px) {
  .concern-title {
    background: none;
    text-align: right;
    line-height: 1.6;
    margin-top: 4rem;
  }
  .concern-title span {
    position: relative;
  }
  .concern-title span.first {
    right: 3.5rem;
  }
  .concern-title span.last {
    left: 2.5rem;
  }
}
@media (min-width: sp) {
  .concern-title {
    background: none;
    text-align: right;
    line-height: 1.6;
    margin-top: 4rem;
  }
  .concern-title span {
    position: relative;
  }
  .concern-title span.first {
    right: 3.5rem;
  }
  .concern-title span.last {
    left: 2.5rem;
  }
}
.concern-list {
  margin-left: 4.5rem;
  max-width: 29.5rem;
}
@media (max-width: 768px) {
  .concern-list {
    max-width: 100%;
  }
}
@media (min-width: sp) {
  .concern-list {
    max-width: 100%;
  }
}
.concern-item {
  font-size: 1.875rem;
  color: #fff;
  font-weight: 600;
  margin-bottom: 1.875rem;
  border-bottom: 1px solid #ef8217;
}
@media (max-width: 768px) {
  .concern-item {
    font-size: 2.25rem;
    margin-bottom: 0.8rem;
    padding: 1rem 0 1rem;
  }
}
@media (min-width: sp) {
  .concern-item {
    font-size: 2.25rem;
    margin-bottom: 0.8rem;
    padding: 1rem 0 1rem;
  }
}
.concern-item:last-child {
  margin-bottom: 0;
  border-bottom: 0;
}
@media (max-width: 768px) {
  .concern-item:last-child {
    padding-left: 0;
  }
}
@media (min-width: sp) {
  .concern-item:last-child {
    padding-left: 0;
  }
}
.concern-item:last-child .concern-txt {
  padding-bottom: 0;
  margin-left: 0;
}
.concern-txt {
  padding-bottom: 1.8125rem;
  display: inline-block;
  margin-left: 0.5rem;
}
@media (max-width: 768px) {
  .concern-txt {
    margin-left: 2.25rem;
    line-height: 1.5;
    padding-bottom: 0.5rem;
  }
}
@media (min-width: sp) {
  .concern-txt {
    margin-left: 2.25rem;
    line-height: 1.5;
    padding-bottom: 0.5rem;
  }
}
.concern-icon {
  position: relative;
  top: -0.25rem;
  width: 2.3125rem;
  margin-left: -3.5rem;
}
@media (max-width: 768px) {
  .concern-icon {
    width: 2.75rem;
    margin-left: -4.75rem;
  }
}
@media (min-width: sp) {
  .concern-icon {
    width: 2.75rem;
    margin-left: -4.75rem;
  }
}

/* ==========================================================================
   #Footer
   ========================================================================== */
.footer {
  position: relative;
  background-color: #ffe9d7;
}
.footer .container, .footer .container__fluid {
  min-height: 23.4375rem;
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  justify-content: space-between;
}
.footer-top {
  padding: 2.375rem 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.footer-logo > span {
  display: block;
  width: 16.375rem;
}
.footer-links {
  padding: 1.4375rem 0 0;
}
.footer-links__list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 3.125rem;
}
.footer-links__list li > a {
  font-size: 1.0625rem;
  line-height: 2.375rem;
  color: #000;
  font-weight: 500;
  letter-spacing: 0.03em;
  opacity: 1;
  transition: 0.25s opacity;
}
.footer-links__list li > a:hover {
  opacity: 0.7;
}
.footer-line {
  height: 3.25rem;
  background-color: #ef8217;
  position: relative;
  overflow: hidden;
}
.footer-line::after, .footer-line::before {
  content: "";
  position: absolute;
  top: 0;
  left: -2.5rem;
  height: 100%;
  transform: skew(-53deg);
}
.footer-line::after {
  width: 38%;
  opacity: 0.8;
  background-color: #f4963a;
  z-index: 1;
}
.footer-line::before {
  background-color: #ffa44a;
  width: 35.3%;
  opacity: 0.6;
  z-index: 2;
}
.footer-copyright {
  font-size: 1.0625rem;
  line-height: 2.375rem;
  font-weight: 500;
  color: #000;
  letter-spacing: 0.02em;
  padding: 1.1875rem 0;
}
.footer-copyright > span {
  padding: 0 1.125rem;
  position: relative;
}
.footer-copyright > span::before, .footer-copyright > span::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 8.125rem;
  height: 1px;
  background-color: #c3c3c3;
  transform: translateY(-50%);
  z-index: 1;
}
.footer-copyright > span::before {
  left: 100%;
}
.footer-copyright > span::after {
  right: 100%;
}
@media (max-width: 768px) {
  .footer-top {
    padding: 3.875rem 0 3.125rem;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
  }
  .footer-logo > a {
    width: 23.75rem;
  }
  .footer-logo > a img {
    width: 100%;
  }
  .footer-links {
    padding: 4.0625rem 0 0;
  }
  .footer-links__list {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    align-items: center;
    gap: 2.0625rem;
    margin: 0;
  }
  .footer-links__list li > a {
    font-size: 2rem;
    line-height: 2.375rem;
  }
  .footer-socials {
    margin-top: 6.375rem;
  }
  .footer-socials ul {
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 2.5rem;
  }
  .footer-socials ul li {
    width: 32px;
  }
  .footer-socials ul li a {
    width: 100%;
    height: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
  }
  .footer-copyright {
    font-size: 1.75rem;
    line-height: 2.4375rem;
    padding: 0.9375rem 0 2.1875rem;
  }
  .footer-copyright > span {
    padding: 0 2rem;
  }
  .footer-copyright > span::before, .footer-copyright > span::after {
    width: 8.875rem;
    top: 55%;
  }
  .footer-line {
    height: 4.25rem;
  }
  .footer-line::after {
    width: 32%;
  }
  .footer-line::before {
    width: 26.3%;
  }
}
@media (min-width: sp) {
  .footer-top {
    padding: 3.875rem 0 3.125rem;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
  }
  .footer-logo > a {
    width: 23.75rem;
  }
  .footer-logo > a img {
    width: 100%;
  }
  .footer-links {
    padding: 4.0625rem 0 0;
  }
  .footer-links__list {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    align-items: center;
    gap: 2.0625rem;
    margin: 0;
  }
  .footer-links__list li > a {
    font-size: 2rem;
    line-height: 2.375rem;
  }
  .footer-socials {
    margin-top: 6.375rem;
  }
  .footer-socials ul {
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 2.5rem;
  }
  .footer-socials ul li {
    width: 32px;
  }
  .footer-socials ul li a {
    width: 100%;
    height: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
  }
  .footer-copyright {
    font-size: 1.75rem;
    line-height: 2.4375rem;
    padding: 0.9375rem 0 2.1875rem;
  }
  .footer-copyright > span {
    padding: 0 2rem;
  }
  .footer-copyright > span::before, .footer-copyright > span::after {
    width: 8.875rem;
    top: 55%;
  }
  .footer-line {
    height: 4.25rem;
  }
  .footer-line::after {
    width: 32%;
  }
  .footer-line::before {
    width: 26.3%;
  }
}

.section-intro {
  background-image: url("../images/bg_intro.jpg");
  background-color: #fff;
  background-repeat: no-repeat;
  background-size: 120rem 35.875rem;
  padding: 5.625rem 0 7.5rem;
}
@media (max-width: 768px) {
  .section-intro {
    background-image: url("../images/bg_intro_sp.jpg");
    background-size: 100% 31.5rem;
    padding: 5.2rem 0 4rem;
  }
}
@media (min-width: sp) {
  .section-intro {
    background-image: url("../images/bg_intro_sp.jpg");
    background-size: 100% 31.5rem;
    padding: 5.2rem 0 4rem;
  }
}

.intro-title {
  text-align: center;
  margin-bottom: 6.25rem;
  position: relative;
}
.intro-title span {
  display: inline-block;
  line-height: 1;
  position: relative;
}
.intro-title span::before, .intro-title span::after {
  background-color: #fff;
  position: absolute;
  content: "";
  width: 6.0625rem;
  height: 2px;
  top: 50%;
  transform: translateY(-50%);
}
.intro-title span::before {
  left: -9.1875rem;
}
.intro-title span::after {
  right: -9.1875rem;
}
@media (max-width: 768px) {
  .intro-title span::before, .intro-title span::after {
    width: 5.3125rem;
  }
  .intro-title span::before {
    left: -8.75rem;
  }
  .intro-title span::after {
    right: -8.75rem;
  }
}
@media (min-width: sp) {
  .intro-title span::before, .intro-title span::after {
    width: 5.3125rem;
  }
  .intro-title span::before {
    left: -8.75rem;
  }
  .intro-title span::after {
    right: -8.75rem;
  }
}
@media (max-width: 768px) {
  .intro-title {
    margin-bottom: 5.75rem;
  }
}
@media (min-width: sp) {
  .intro-title {
    margin-bottom: 5.75rem;
  }
}
.intro-title-img {
  width: 30.25rem;
}
@media (max-width: 768px) {
  .intro-title-img {
    width: 27.5rem;
  }
}
@media (min-width: sp) {
  .intro-title-img {
    width: 27.5rem;
  }
}
.intro-figure {
  text-align: center;
}
.intro-img {
  width: 52.3125rem;
}
@media (max-width: 768px) {
  .intro-img {
    width: 92%;
  }
}
@media (min-width: sp) {
  .intro-img {
    width: 92%;
  }
}
.intro-txt {
  text-align: center;
  font-size: 2.1875rem;
  margin-top: 6.5625rem;
  font-weight: 700;
}
@media (max-width: 768px) {
  .intro-txt {
    line-height: 1.3;
    margin-top: 3.5rem;
  }
}
@media (min-width: sp) {
  .intro-txt {
    line-height: 1.3;
    margin-top: 3.5rem;
  }
}
.intro-txt .text-large {
  font-size: 3.9375rem;
  display: inline-block;
  transform: translateY(0.1875rem);
}
.intro-txt .underline {
  position: relative;
}
.intro-txt .underline::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -0.1875rem;
  width: 100%;
  height: 2px;
  background-color: #222;
}
@media (max-width: 768px) {
  .intro-txt .underline::after {
    height: 1px;
  }
}
@media (min-width: sp) {
  .intro-txt .underline::after {
    height: 1px;
  }
}

.package {
  position: relative;
  padding-top: 6.25rem;
}
.package-head {
  position: relative;
  background-color: #ececec;
  padding: 2.3125rem 2.3125rem 3.75rem;
  text-align: center;
  margin: 0;
}
.package-head::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  width: 0px;
  height: 0px;
  border-style: solid;
  border-width: 0 8.125rem 2.5rem 8.125rem;
  border-color: transparent transparent #ececec transparent;
  transform: translateX(-50%) rotate(180deg);
  z-index: 1;
}
.package-head > span {
  display: block;
  letter-spacing: 0.02em;
}
.package-head > span .underline {
  position: relative;
  font-weight: 700;
  font-size: 2.1875rem;
  line-height: 3.625rem;
  color: #202020;
}
.package-head > span .underline::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 2px;
  background-color: #aeaeae;
  bottom: 0;
  left: 0;
  z-index: 1;
}
.package-head > span:nth-child(1) {
  font-size: 1.6875rem;
  line-height: 3.625rem;
  font-weight: 500;
}
.package-head > span:nth-child(2) {
  margin-top: 0.625rem;
  font-size: 2.1875rem;
  line-height: 2.375rem;
  color: #202020;
  font-weight: 700;
}
.package-head > span:nth-child(2) .clr_orange {
  color: #ef8217;
}
.package-head > span:nth-child(2) .med {
  font-size: 2.6875rem;
  line-height: 2.6875rem;
}
.package-head > span:nth-child(2) .num {
  font-size: 3.3125rem;
  line-height: 3.3125rem;
  display: inline-block;
  transform: translateY(0.25rem);
}
.package-titSub {
  margin-top: 5.5rem;
}
.package-titSub > span {
  font-size: 2.6875rem;
  line-height: 4rem;
  font-weight: 700;
  color: #fff;
  display: block;
  text-align: center;
}
.package-titSub > span .clr_yellow {
  color: #fcff00;
  font-size: 3.3125rem;
  line-height: 3.3125rem;
}
.package-titSub > span .med {
  font-size: 2.6875rem;
  line-height: 4rem;
}
.package-titSub > span > span {
  position: relative;
  display: inline-block;
  padding: 0.25rem 2.8125rem 0.5rem;
}
.package-titSub > span > span::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 50%;
  z-index: -1;
}
.package-titSub > span:nth-child(1) > span::before {
  background-color: #231916;
  transform: translateX(-50%) skew(14deg);
}
.package-titSub > span:nth-child(2) {
  margin-top: 0.75rem;
  transform: rotate(-2.5deg);
}
.package-titSub > span:nth-child(2) > span {
  padding: 0.25rem 3.125rem 0.5rem;
}
.package-titSub > span:nth-child(2) > span::before {
  transform: translateX(-50%) skew(7.5deg);
  background-color: #ef8217;
}
.package-titSub > span > span > span.line-green{
  color: #3ac848;
}
.package-pic {
  margin-top: 4.25rem;
  position: relative;
  z-index: 1;
}
.package-pic::after {
  content: "";
  position: absolute;
  width: 100vw;
  height: 12.375rem;
  top: 12.75rem;
  left: 50%;
  transform: translateX(-50%);
  background: linear-gradient(180deg, rgb(153, 153, 153) 0%, rgb(255, 255, 255) 100%);
  opacity: 0.2;
  z-index: -1;
}
.package-pic figure {
  width: 100%;
  margin: 0 auto;
}
.package-present {
  margin-top: 5rem;
  background-color: #f0f0f0;
  padding: 3.125rem 4.375rem 0.625rem 2.5rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 1.0625rem 1.75rem;
}
.package-present ul {
  width: calc(50% - 1.75rem * 1 / 2);
  margin: 0;
}
.package-present ul:nth-child(1) > li:last-child {
  gap: 0.875rem;
}
.package-present ul:nth-child(1) > li:last-child figure {
  width: 9rem;
  padding-top: 1.5625rem;
}
.package-present ul:nth-child(1) > li:last-child .content {
  width: calc(100% - 3rem - 9rem);
}
.package-present ul:nth-child(2) {
  margin-top: 3.75rem;
}
.package-present ul:nth-child(2) li:last-child {
  white-space: nowrap;
  letter-spacing: -1px;
}
.package-present ul li {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  gap: 3rem;
}
.package-present ul li:not(:last-child) {
  margin-bottom: 0.8125rem;
}
.package-present ul li figure {
  width: 6.875rem;
  margin: 0;
}
.package-present ul li .content {
  height: 100%;
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  border-bottom: 1px solid #7b7671;
  width: calc(100% - 3rem - 6.875rem);
  padding: 2rem 0 2.125rem;
}
.package-present ul li .content > .tit {
  display: inline-block;
  font-size: 1.0625rem;
  line-height: 1.6875rem;
  font-weight: 500;
  color: #fff;
}
.package-present ul li .content > .tit > span {
  display: inline-block;
  padding: 0 0.5rem 0.1875rem;
  background-color: #202020;
}
.package-present ul li .content > .tit .num {
  font-size: 2.375rem;
  line-height: 2.375rem;
  display: inline-block;
  transform: translateY(0.125rem);
}
.package-present ul li .content > .text {
  font-size: 1.4375rem;
  line-height: 1.9375rem;
  font-weight: 700;
  color: #202020;
  margin-top: 0.75rem;
}
.package-present ul li:last-child .content {
  border-bottom: none;
}
@media (max-width: 768px) {
  .package {
    padding-top: 5.625rem;
  }
  .package-head {
    padding: 3.125rem 1.875rem 3.4375rem;
    max-width: unset;
    margin-left: -0.9375rem;
    margin-right: -0.9375rem;
  }
  .package-head::after {
    border-width: 0 10.625rem 3.125rem 10.625rem;
  }
  .package-head > span .underline {
    font-size: 2.5rem;
    line-height: 3.9375rem;
    letter-spacing: 0.12em;
  }
  .package-head > span:nth-child(1) {
    font-size: 2rem;
    line-height: 4rem;
    letter-spacing: 0.1em;
  }
  .package-head > span:nth-child(2) {
    margin-top: 0.625rem;
    font-size: 2.5rem;
    line-height: 3rem;
    letter-spacing: 0.06em;
  }
  .package-head > span:nth-child(2) .med {
    font-size: 3.375rem;
    line-height: 3.375rem;
  }
  .package-head > span:nth-child(2) .num {
    font-size: 4.5rem;
    line-height: 4.5rem;
  }
  .package-titSub {
    margin-top: 5.3125rem;
  }
  .package-titSub > span {
    font-size: 2.5rem;
    line-height: 3.4375rem;
  }
  .package-titSub > span .clr_yellow {
    font-size: 3.125rem;
    line-height: 3.4375rem;
  }
  .package-titSub > span .med {
    font-size: 3.125rem;
    line-height: 3.4375rem;
  }
  .package-titSub > span > span {
    padding: 0.25rem 4.0625rem 0.5rem;
  }
  .package-titSub > span:nth-child(2) {
    margin-top: 0.3125rem;
    transform: rotate(-2.8deg);
  }
  .package-titSub > span:nth-child(2) > span {
    padding: 0.375rem 5.9375rem 0.75rem;
  }
  .package-titSub > span:nth-child(2) > span::before {
    transform: translateX(-50%) skew(12deg);
  }
  .package-pic {
    margin-top: 3.625rem;
  }
  .package-pic::after {
    top: 12.1875rem;
  }
  .package-present {
    margin-top: 3.875rem;
    padding: 3.4375rem 3rem 3.25rem 0rem;
    gap: 0;
    display: block;
  }
  .package-present ul {
    width: 100%;
  }
  .package-present ul:nth-child(1) > li:last-child {
    gap: 2.5rem;
    min-height: auto;
  }
  .package-present ul:nth-child(1) > li:last-child figure {
    width: 13rem;
    padding-top: 0;
  }
  .package-present ul:nth-child(1) > li:last-child .content {
    width: calc(100% - 2.5rem - 13rem);
    min-height: auto;
  }
  .package-present ul li {
    gap: 5.5rem;
    align-items: center;
    min-height: 14.125rem;
  }
  .package-present ul li:not(:last-child) {
    margin-bottom: 1.125rem;
  }
  .package-present ul li figure {
    width: 9.8125rem;
  }
  .package-present ul li figure picture {
    display: block;
  }
  .package-present ul li figure picture img {
    width: 100%;
  }
  .package-present ul li .content {
    width: calc(100% - 5.5rem - 9.8125rem);
    padding: 1.5625rem 0 0.9375rem;
    min-height: 14.125rem;
    justify-content: center;
  }
  .package-present ul li .content > .tit {
    font-size: 1.375rem;
    line-height: 2.1875rem;
  }
  .package-present ul li .content > .tit > span {
    padding: 0 0.9375rem 0.1875rem;
  }
  .package-present ul li .content > .tit .num {
    font-size: 3.125rem;
    line-height: 3.125rem;
  }
  .package-present ul li .content > .text {
    font-size: 2rem;
    line-height: 3rem;
    letter-spacing: 0.06em;
  }
}
@media (min-width: sp) {
  .package {
    padding-top: 5.625rem;
  }
  .package-head {
    padding: 3.125rem 1.875rem 3.4375rem;
    max-width: unset;
    margin-left: -0.9375rem;
    margin-right: -0.9375rem;
  }
  .package-head::after {
    border-width: 0 10.625rem 3.125rem 10.625rem;
  }
  .package-head > span .underline {
    font-size: 2.5rem;
    line-height: 3.9375rem;
    letter-spacing: 0.12em;
  }
  .package-head > span:nth-child(1) {
    font-size: 2rem;
    line-height: 4rem;
    letter-spacing: 0.1em;
  }
  .package-head > span:nth-child(2) {
    margin-top: 0.625rem;
    font-size: 2.5rem;
    line-height: 3rem;
    letter-spacing: 0.06em;
  }
  .package-head > span:nth-child(2) .med {
    font-size: 3.375rem;
    line-height: 3.375rem;
  }
  .package-head > span:nth-child(2) .num {
    font-size: 4.5rem;
    line-height: 4.5rem;
  }
  .package-titSub {
    margin-top: 5.3125rem;
  }
  .package-titSub > span {
    font-size: 2.5rem;
    line-height: 3.4375rem;
  }
  .package-titSub > span .clr_yellow {
    font-size: 3.125rem;
    line-height: 3.4375rem;
  }
  .package-titSub > span .med {
    font-size: 3.125rem;
    line-height: 3.4375rem;
  }
  .package-titSub > span > span {
    padding: 0.25rem 4.0625rem 0.5rem;
  }
  .package-titSub > span:nth-child(2) {
    margin-top: 0.3125rem;
    transform: rotate(-2.8deg);
  }
  .package-titSub > span:nth-child(2) > span {
    padding: 0.375rem 5.9375rem 0.75rem;
  }
  .package-titSub > span:nth-child(2) > span::before {
    transform: translateX(-50%) skew(12deg);
  }
  .package-pic {
    margin-top: 3.625rem;
  }
  .package-pic::after {
    top: 12.1875rem;
  }
  .package-present {
    margin-top: 3.875rem;
    padding: 3.4375rem 3rem 3.25rem 0rem;
    gap: 0;
    display: block;
  }
  .package-present ul {
    width: 100%;
  }
  .package-present ul:nth-child(1) > li:last-child {
    gap: 2.5rem;
    min-height: auto;
  }
  .package-present ul:nth-child(1) > li:last-child figure {
    width: 13rem;
    padding-top: 0;
  }
  .package-present ul:nth-child(1) > li:last-child .content {
    width: calc(100% - 2.5rem - 13rem);
    min-height: auto;
  }
  .package-present ul li {
    gap: 5.5rem;
    align-items: center;
    min-height: 14.125rem;
  }
  .package-present ul li:not(:last-child) {
    margin-bottom: 1.125rem;
  }
  .package-present ul li figure {
    width: 9.8125rem;
  }
  .package-present ul li figure picture {
    display: block;
  }
  .package-present ul li figure picture img {
    width: 100%;
  }
  .package-present ul li .content {
    width: calc(100% - 5.5rem - 9.8125rem);
    padding: 1.5625rem 0 0.9375rem;
    min-height: 14.125rem;
    justify-content: center;
  }
  .package-present ul li .content > .tit {
    font-size: 1.375rem;
    line-height: 2.1875rem;
  }
  .package-present ul li .content > .tit > span {
    padding: 0 0.9375rem 0.1875rem;
  }
  .package-present ul li .content > .tit .num {
    font-size: 3.125rem;
    line-height: 3.125rem;
  }
  .package-present ul li .content > .text {
    font-size: 2rem;
    line-height: 3rem;
    letter-spacing: 0.06em;
  }
}

.section-possible {
  background-image: url("../images/bg_possible.jpg");
  background-size: 100% 100%;
  padding: 3.5rem 0 5rem;
}
@media (max-width: 768px) {
  .section-possible {
    padding-bottom: 12.5rem;
  }
}
@media (min-width: sp) {
  .section-possible {
    padding-bottom: 12.5rem;
  }
}
.section-possible .container, .section-possible .container__fluid {
  position: relative;
  max-width: 80.875rem;
}
@media (max-width: 768px) {
  .section-possible .container, .section-possible .container__fluid {
    padding: 0;
    position: static;
  }
}
@media (min-width: sp) {
  .section-possible .container, .section-possible .container__fluid {
    padding: 0;
    position: static;
  }
}

.possible-title {
  color: #fff;
  text-align: center;
  font-size: 3.5625rem;
  font-weight: normal;
  display: flex;
  align-items: flex-end;
  line-height: 1;
}
@media (max-width: 768px) {
  .possible-title {
    flex-wrap: wrap;
    justify-content: center;
    font-size: 3.25rem;
    line-height: 2;
  }
}
@media (min-width: sp) {
  .possible-title {
    flex-wrap: wrap;
    justify-content: center;
    font-size: 3.25rem;
    line-height: 2;
  }
}
.possible-title-img {
  width: 37.625rem;
}
@media (max-width: 768px) {
  .possible-title-img {
    width: 69%;
  }
}
@media (min-width: sp) {
  .possible-title-img {
    width: 69%;
  }
}
.possible-inner {
  max-width: 66.5625rem;
  width: 100%;
  margin: 3.375rem auto 0;
  position: relative;
}
@media (max-width: 768px) {
  .possible-inner {
    margin-top: 1.75rem;
  }
}
@media (min-width: sp) {
  .possible-inner {
    margin-top: 1.75rem;
  }
}
.possible-list {
  position: relative;
  width: 90%;
  background-color: #fff;
  margin: 0;
  padding: 3.5rem;
}
@media (max-width: 768px) {
  .possible-list {
    width: 100%;
    padding: 3.5rem 5.5rem 6rem;
  }
}
@media (min-width: sp) {
  .possible-list {
    width: 100%;
    padding: 3.5rem 5.5rem 6rem;
  }
}
.possible-item {
  color: #fff;
  background-color: #222;
  margin-bottom: 1.875rem;
  font-size: 1.75rem;
  font-weight: 600;
  position: relative;
  padding: 0.75rem 1rem 0.75rem 3.8rem;
  left: 1.5rem;
  display: inline-block;
}
@media (max-width: 768px) {
  .possible-item {
    font-size: 2.25rem;
    display: block;
    width: 100%;
    line-height: 1.5;
    padding: 1rem 2rem 1rem 6.5rem;
    left: 0;
    margin-bottom: 1.4rem;
  }
}
@media (min-width: sp) {
  .possible-item {
    font-size: 2.25rem;
    display: block;
    width: 100%;
    line-height: 1.5;
    padding: 1rem 2rem 1rem 6.5rem;
    left: 0;
    margin-bottom: 1.4rem;
  }
}
.possible-item:last-child {
  margin-bottom: 0;
}
.possible-img {
  position: absolute;
  bottom: -9.5rem;
  right: 0.9375rem;
  width: 29rem;
}
@media (max-width: 768px) {
  .possible-img {
    bottom: -4.4rem;
    right: -1.8rem;
    width: 24rem;
  }
}
@media (min-width: sp) {
  .possible-img {
    bottom: -4.4rem;
    right: -1.8rem;
    width: 24rem;
  }
}
.possible-icon {
  position: absolute;
  bottom: -0.1rem;
  left: -1.5rem;
  width: 4.375rem;
}
@media (max-width: 768px) {
  .possible-icon {
    left: -2.25rem;
    width: 6.375rem;
    top: -1.5rem;
  }
}
@media (min-width: sp) {
  .possible-icon {
    left: -2.25rem;
    width: 6.375rem;
    top: -1.5rem;
  }
}
.possible-bg {
  position: absolute;
  bottom: -3rem;
  left: -0.5rem;
}

.section {
  overflow: hidden;
  position: relative;
}

.section-service {
  text-align: center;
  padding-top: 5.625rem;
}
.section-service .line-yellow {
  background: rgba(0, 0, 0, 0) linear-gradient(transparent 70%, #fff200 0%) repeat scroll 0 0;
  font-size: 1.9375rem;
  font-weight: 600;
}
@media (max-width: 768px) {
  .section-service {
    padding-top: 3.75rem;
  }
}
@media (min-width: sp) {
  .section-service {
    padding-top: 3.75rem;
  }
}

.service-title {
  font-size: 4.5625rem;
  font-weight: normal;
  position: relative;
  padding-bottom: 3.75rem;
  max-width: 42.8125rem;
  margin: 0 auto;
}
.service-title::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 0.75rem;
  background-color: #ef8217;
  margin: auto;
}
.service-title::after {
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: -1.8rem;
  width: 0;
  height: 0;
  border-left: 1.125rem solid transparent;
  border-right: 1.125rem solid transparent;
  border-top: 2rem solid #ef8217;
}
@media (max-width: 768px) {
  .service-title::before {
    width: 83%;
  }
}
@media (min-width: sp) {
  .service-title::before {
    width: 83%;
  }
}
.service-txt {
  font-size: 1.9375rem;
  font-weight: 600;
  margin: 6.25rem 0 7.5rem;
}
@media (max-width: 768px) {
  .service-txt {
    margin: 6.25rem 0 8.75rem;
  }
}
@media (min-width: sp) {
  .service-txt {
    margin: 6.25rem 0 8.75rem;
  }
}
.service-list {
  display: flex;
  justify-content: center;
}
@media (max-width: 768px) {
  .service-list {
    flex-wrap: wrap;
  }
}
@media (min-width: sp) {
  .service-list {
    flex-wrap: wrap;
  }
}
.service-item {
  background-color: rgba(255, 234, 193, 0.65);
  width: 33.25rem;
  height: 33.25rem;
  border-radius: 50%;
  position: relative;
}
@media (max-width: 768px) {
  .service-item {
    width: 38rem;
    height: 38rem;
  }
}
@media (min-width: sp) {
  .service-item {
    width: 38rem;
    height: 38rem;
  }
}
.service-item:first-child {
  left: 1.75rem;
}
@media (max-width: 768px) {
  .service-item:first-child {
    left: 0;
  }
}
@media (min-width: sp) {
  .service-item:first-child {
    left: 0;
  }
}
.service-item:first-child .service-content {
  font-size: 1.9375rem;
}
.service-item:first-child .text-large {
  font-size: 3.625rem;
}
.service-item:first-child .service-point {
  left: 0;
  transform: translate(-25%, -45%);
}
@media (max-width: 768px) {
  .service-item:first-child .service-point {
    transform: translate(-30%, -38%);
  }
}
@media (min-width: sp) {
  .service-item:first-child .service-point {
    transform: translate(-30%, -38%);
  }
}
.service-item:first-child .service-img {
  width: 22.4375rem;
  position: absolute;
  bottom: 0.5rem;
  left: -2.25rem;
  right: 0;
  margin: auto;
}
@media (max-width: 768px) {
  .service-item:first-child .service-img {
    bottom: 6.5rem;
  }
}
@media (min-width: sp) {
  .service-item:first-child .service-img {
    bottom: 6.5rem;
  }
}
.service-item:first-child .text-small {
  padding: 0 1.2rem;
}
.service-item:last-child {
  right: 1.75rem;
}
@media (max-width: 768px) {
  .service-item:last-child {
    right: 0;
    bottom: 4.5rem;
  }
}
@media (min-width: sp) {
  .service-item:last-child {
    right: 0;
    bottom: 4.5rem;
  }
}
.service-item:last-child .service-content {
  font-size: 1.8125rem;
}
@media (max-width: 768px) {
  .service-item:last-child .service-content {
    margin-top: 8.5rem;
  }
}
@media (min-width: sp) {
  .service-item:last-child .service-content {
    margin-top: 8.5rem;
  }
}
.service-item:last-child .text-large {
  font-size: 3.3125rem;
}
.service-item:last-child .text-orange-01 {
  font-size: 4.0625rem;
}
.service-item:last-child .service-point {
  right: 0;
  transform: translate(25%, -45%);
}
@media (max-width: 768px) {
  .service-item:last-child .service-point {
    transform: translate(30%, -16%);
  }
}
@media (min-width: sp) {
  .service-item:last-child .service-point {
    transform: translate(30%, -16%);
  }
}
.service-item:last-child .service-img {
  width: 16.875rem;
  position: absolute;
  bottom: 1.75rem;
  left: 0px;
  right: 0;
  margin: auto;
}
.service-item:last-child .text-small {
  padding: 0 2rem;
}
.service-item .text-large {
  font-weight: bold;
}
.service-content {
  line-height: 1.3;
  margin-top: 4.375rem;
}
.service-point {
  position: absolute;
  top: 0;
  width: 12.5rem;
}
@media (max-width: 768px) {
  .service-point {
    width: 14.6875rem;
  }
}
@media (min-width: sp) {
  .service-point {
    width: 14.6875rem;
  }
}
.service-des {
  font-size: 1.4375rem;
  line-height: 1.5;
  margin: 3.75rem 0;
  font-weight: 500;
}
.service-des .text-orange-01 {
  font-size: 1.9375rem;
  font-weight: 700;
}
@media (max-width: 768px) {
  .service-des {
    font-size: 2rem;
    line-height: 3.375rem;
    margin: 0 0 3.75rem;
  }
  .service-des .text-orange-01 {
    font-size: 2.5rem;
    line-height: 2.5rem;
  }
}
@media (min-width: sp) {
  .service-des {
    font-size: 2rem;
    line-height: 3.375rem;
    margin: 0 0 3.75rem;
  }
  .service-des .text-orange-01 {
    font-size: 2.5rem;
    line-height: 2.5rem;
  }
}
.service-arrow {
  width: 19.3125rem;
}
.service-add {
  width: 6.25rem;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translate(22%, -50%);
  z-index: 1;
}
@media (max-width: 768px) {
  .service-add {
    top: auto;
    bottom: 0;
    right: 50%;
    transform: translate(50%, 20%);
  }
}
@media (min-width: sp) {
  .service-add {
    top: auto;
    bottom: 0;
    right: 50%;
    transform: translate(50%, 20%);
  }
}

.section-strength {
  background-color: #f6f6f6;
  padding-top: 6.875rem;
}
@media (max-width: 768px) {
  .section-strength {
    padding-top: 5rem;
  }
}
@media (min-width: sp) {
  .section-strength {
    padding-top: 5rem;
  }
}
.section-strength .line-yellow {
  background: rgba(0, 0, 0, 0) linear-gradient(transparent 70%, #fff200 0%) repeat scroll 0 0;
  font-size: 1.9375rem;
}
@media (max-width: 768px) {
  .section-strength .line-yellow {
    font-size: 2.75rem;
  }
}
@media (min-width: sp) {
  .section-strength .line-yellow {
    font-size: 2.75rem;
  }
}

.strength-title {
  font-size: 4.5625rem;
  background-color: #222;
  color: #fff;
  font-weight: normal;
  padding: 1rem;
  margin-bottom: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (max-width: 768px) {
  .strength-title {
    padding: 1.75rem;
    margin-left: -0.9375rem;
    margin-right: -0.9375rem;
  }
}
@media (min-width: sp) {
  .strength-title {
    padding: 1.75rem;
    margin-left: -0.9375rem;
    margin-right: -0.9375rem;
  }
}
.strength-title-img {
  width: 30.25rem;
}
.strength-title-txt {
  margin-left: 0.5rem;
  padding-bottom: 0.5rem;
}
.strength-list {
  background-image: url("../images/bg_strength.png");
  background-repeat: no-repeat;
  background-position: top 65% left 50%;
  background-size: 38.3125rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 8.125rem 0 8.75rem;
}
@media (max-width: 768px) {
  .strength-list {
    padding: 4.5rem 0 4rem;
    background-position: top 50.5% left 28%;
    background-size: 35.625rem;
  }
}
@media (min-width: sp) {
  .strength-list {
    padding: 4.5rem 0 4rem;
    background-position: top 50.5% left 28%;
    background-size: 35.625rem;
  }
}
.strength-item {
  width: 50%;
  display: flex;
}
@media (max-width: 768px) {
  .strength-item {
    flex-wrap: wrap;
  }
  .strength-item:nth-child(2) .strength-figure {
    order: 2;
  }
  .strength-item:nth-child(3) .strength-content {
    order: 2;
  }
}
@media (min-width: sp) {
  .strength-item {
    flex-wrap: wrap;
  }
  .strength-item:nth-child(2) .strength-figure {
    order: 2;
  }
  .strength-item:nth-child(3) .strength-content {
    order: 2;
  }
}
.strength-item:nth-child(odd) .strength-figure {
  left: -1.75rem;
}
@media (max-width: 768px) {
  .strength-item:nth-child(odd) .strength-figure {
    left: 4.5rem;
  }
}
@media (min-width: sp) {
  .strength-item:nth-child(odd) .strength-figure {
    left: 4.5rem;
  }
}
.strength-item:nth-child(even) {
  justify-content: flex-end;
}
.strength-item:nth-child(even) .strength-figure {
  right: -1.75rem;
}
@media (max-width: 768px) {
  .strength-item:nth-child(even) .strength-figure {
    right: 4.5rem;
  }
}
@media (min-width: sp) {
  .strength-item:nth-child(even) .strength-figure {
    right: 4.5rem;
  }
}
.strength-item:nth-child(1), .strength-item:nth-child(2) {
  margin-bottom: 6.625rem;
}
@media (max-width: 768px) {
  .strength-item:nth-child(1) .strength-figure, .strength-item:nth-child(2) .strength-figure {
    top: -2.7rem;
  }
}
@media (min-width: sp) {
  .strength-item:nth-child(1) .strength-figure, .strength-item:nth-child(2) .strength-figure {
    top: -2.7rem;
  }
}
@media (max-width: 768px) {
  .strength-item:nth-child(3), .strength-item:nth-child(4) {
    margin-top: 1rem;
  }
  .strength-item:nth-child(3) .strength-figure, .strength-item:nth-child(4) .strength-figure {
    top: -1.8rem;
  }
  .strength-item:nth-child(3) .strength-content, .strength-item:nth-child(4) .strength-content {
    margin-top: 1rem;
  }
}
@media (min-width: sp) {
  .strength-item:nth-child(3), .strength-item:nth-child(4) {
    margin-top: 1rem;
  }
  .strength-item:nth-child(3) .strength-figure, .strength-item:nth-child(4) .strength-figure {
    top: -1.8rem;
  }
  .strength-item:nth-child(3) .strength-content, .strength-item:nth-child(4) .strength-content {
    margin-top: 1rem;
  }
}
.strength-figure {
  position: relative;
  z-index: 10;
}
.strength-content {
  font-size: 23px;
  background-color: #fff;
  width: 18.75rem;
  height: 10rem;
  display: flex;
  justify-content: center;
  align-content: center;
  flex-wrap: wrap;
  border: 3px solid #b9b9b9;
  border-radius: 0.6rem;
  margin-top: 3.5rem;
  position: relative;
}
@media (max-width: 768px) {
  .strength-content {
    width: 94%;
    height: 15rem;
    border: 0.375rem solid #b9b9b9;
    line-height: 1.15;
    border-radius: 1.5rem;
  }
}
@media (min-width: sp) {
  .strength-content {
    width: 94%;
    height: 15rem;
    border: 0.375rem solid #b9b9b9;
    line-height: 1.15;
    border-radius: 1.5rem;
  }
}
.strength-content .text-large {
  font-size: 1.9375rem;
}
.strength-txt {
  width: 100%;
  text-align: center;
  font-size: 1.4375rem;
  font-weight: 700;
}
@media (max-width: 768px) {
  .strength-txt {
    font-size: 2.25rem;
  }
}
@media (min-width: sp) {
  .strength-txt {
    font-size: 2.25rem;
  }
}
.strength-img {
  width: 10.25rem;
}
@media (max-width: 768px) {
  .strength-img {
    width: 13.3rem;
  }
}
@media (min-width: sp) {
  .strength-img {
    width: 13.3rem;
  }
}
.strength-number {
  position: absolute;
  top: 0px;
  left: 0;
  right: 0;
  margin: auto;
  font-size: 4.5625rem;
  text-align: center;
  transform: translateY(-100%);
  font-weight: 900;
  background: #f6f6f6;
  display: block;
  width: 6.25rem;
  height: 4rem;
  line-height: 1;
  color: #444444;
}
@media (max-width: 768px) {
  .strength-number {
    font-size: 6.3125rem;
    width: 9rem;
    height: 5.2rem;
  }
}
@media (min-width: sp) {
  .strength-number {
    font-size: 6.3125rem;
    width: 9rem;
    height: 5.2rem;
  }
}

.achievements {
  padding-top: 5.5rem;
}
.achievements-title {
  text-align: center;
}
.achievements-title > span {
  font-size: 4.5625rem;
  line-height: 5rem;
  color: #202020;
  font-weight: 400;
  letter-spacing: 0.06em;
  min-width: 42.5rem;
  display: inline-block;
  margin: 0 auto;
  position: relative;
  padding-bottom: 2.5rem;
}
.achievements-title > span::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 0.75rem;
  background-color: #ef8217;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
}
.achievements-title > span::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  width: 0px;
  height: 0px;
  border-style: solid;
  border-width: 0 1.125rem 2rem 1.125rem;
  border-color: transparent transparent #ef8217 transparent;
  transform: translateX(-50%) rotate(180deg);
  z-index: 1;
}
.achievements-content {
  position: relative;
  margin-top: 5.625rem;
  padding-top: 7.375rem;
  overflow: hidden;
}
.achievements-content .bg {
  position: absolute;
  width: 100%;
  max-width: 1920px;
  min-width: 1693px;
  height: 99.1%;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
}
.achievements-content .bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media (max-width: 1166px) {
  .achievements-content .bg img {
    object-fit: contain;
  }
}
.achievements-content .head {
  text-align: center;
  font-size: 2.1875rem;
  line-height: 2.4375rem;
  color: #fff;
  font-weight: 700;
}
.achievements-content .head > span {
  background-color: #fff;
  color: #000;
  font-size: 3.3125rem;
  line-height: 3.9375rem;
  padding: 0.125rem 0.625rem 0.4375rem;
  display: inline-block;
}
.achievements-content .list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 2.875rem;
  margin: 8.625rem 0 0;
}
.achievements-content .list li {
  position: relative;
  width: calc(33.3333333333% - 2.875rem * 2 / 3);
  min-height: 32.8125rem;
  padding-bottom: 3.125rem;
}
.achievements-content .list li::before {
  content: "";
  position: absolute;
  width: 100%;
  height: calc(100% - 4.5625rem);
  background-color: #fff;
  border-radius: 0.5rem;
  bottom: 0;
  z-index: -1;
}
@media (min-width: 769px) {
  .achievements-content .list li:hover figure img {
    transform: scale(1.05);
  }
}
.achievements-content .list li figure {
  width: 11.75rem;
  height: 11.75rem;
  margin: 0 auto;
  border-radius: 50%;
  overflow: hidden;
}
.achievements-content .list li figure img {
  transition: transform 0.3s ease;
}
.achievements-content .list li .label {
  text-align: center;
  margin-top: -1.5rem;
}
.achievements-content .list li .label > span {
  background-color: #ef8217;
  max-width: 17.1875rem;
  min-height: 3.3125rem;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 1.4375rem;
  line-height: 2.375rem;
  font-weight: 700;
  margin: 0 auto;
  transform: translateX(0.8125rem) rotate(-4.5deg);
}
.achievements-content .list li .label > span .larg {
  font-size: 2.125rem;
  line-height: 2.125rem;
}
.achievements-content .list li .name {
  display: block;
  text-align: center;
  margin-top: 0.1875rem;
  color: #000;
  font-size: 1.0625rem;
  line-height: 2.375rem;
  font-weight: 400;
  transform: rotate(-4.5deg);
  padding-left: 2.625rem;
}
.achievements-content .list li .text {
  padding: 0 1.5625rem 0 2.5rem;
  margin-top: 0.9375rem;
}
.achievements-content .list li .text > span {
  font-size: 1.1875rem;
  line-height: 2.1875rem;
  color: #010101;
  font-weight: 400;
  letter-spacing: 0.02em;
}
.achievements-content .list li .text > span.age {
  margin-bottom: 1.75rem;
  color: #ef8217;
  display: block;
}
.achievements-content .list li .text > span.age > span {
  margin-left: 2.375rem;
  display: inline-block;
}
.achievements-content .slick-slide {
  margin: 0 0.625rem;
}
.achievements-content .slick-next {
  right: -2.5rem;
  width: 1.5rem;
  height: 4rem;
  transform: translate(0, 0);
  top: 51%;
}
.achievements-content .slick-next::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-image: url("../images/next.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
.achievements-content .slick-prev {
  left: -2.5rem;
  width: 1.5rem;
  height: 4rem;
  transform: translate(0, 0);
  top: 51%;
}
.achievements-content .slick-prev::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-image: url("../images/prev.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
@media (min-width: 769px) {
  .achievements-content .slick-slide {
    margin: 0 1.4375rem;
  }
  .achievements-content .slick-list {
    margin: 0 -1.4375rem;
  }
}
.achievements-content .profile {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 2.5rem 0 0;
}
.achievements-content .profile-content {
  padding-top: 7.6875rem;
  padding-left: 0.625rem;
}
.achievements-content .profile-head .clr_orange {
  color: #ef8217;
}
.achievements-content .profile-head > span .dots {
  font-size: 6.875rem;
  line-height: 6.875rem;
  position: relative;
  transform: rotate(-6deg);
  display: inline-block;
  margin: 0 0.3125rem;
}
.achievements-content .profile-head > span .dots::before {
  content: "・・・";
  position: absolute;
  font-size: 3.75rem;
  line-height: 3.75rem;
  letter-spacing: 0.65em;
  width: 100%;
  height: 2.5rem;
  left: 50%;
  transform: translateX(-50%);
  top: -1.4375rem;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-left: 1.5625rem;
  z-index: 1;
}
.achievements-content .profile-head > span .dots .num {
  font-size: 7.875rem;
  line-height: 7.875rem;
  display: inline-block;
  transform: translateY(0.1875rem);
}
.achievements-content .profile-head > span:nth-child(1) {
  font-size: 2.5625rem;
  line-height: 3.75rem;
  font-weight: 700;
}
.achievements-content .profile-head .line {
  border-top: 1px solid #fff;
  border-bottom: 1px solid #fff;
  color: #fff;
  font-size: 2.125rem;
  line-height: 4.0625rem;
  font-weight: 700;
  display: block;
  text-align: center;
  margin-top: 1.125rem;
  letter-spacing: 0.14em;
  padding-right: 1.125rem;
}
.achievements-content .profile-head .line .small {
  font-size: 1.625rem;
  line-height: 3.75rem;
}
.achievements-content .profile-x {
  margin: 3.3125rem 0 0 -0.875rem;
}
.achievements-content .profile-x img {
  width: 32.8125rem;
}
.achievements-content .profile-pic {
  position: absolute;
  z-index: 12;
  right: -0.8125rem;
  bottom: 0.9375rem;
}
.achievements-content .profile-pic figure {
  width: 35.5625rem;
}
.achievements-content .profile-pic .note {
  position: absolute;
  top: 11rem;
  right: -0.5rem;
  border-radius: 50%;
  font-size: 1.5rem;
  line-height: 2.25rem;
  font-weight: 500;
  padding: 2rem 1.625rem;
  transform: rotate(-6deg);
  color: #fff;
  background-color: #ef8217;
}
.achievements-txtMarque {
  width: 100%;
  height: 8.3125rem;
  position: absolute;
  left: 0;
  bottom: 6.25rem;
  pointer-events: none;
  z-index: -1;
}
.achievements-txtMarque::before {
  content: "";
  background-image: url("../images/txt_rebootAi.png");
  background-repeat: repeat-x;
  background-position: 0 0;
  background-size: 151.5rem 8.3125rem;
  width: 100%;
  height: 8.3125rem;
  position: absolute;
  left: 0;
  top: 0;
  opacity: 0.4;
  z-index: 1;
  animation: slideTxt linear 50s infinite;
}
@media (max-width: 768px) {
  .achievements {
    padding-top: 3.4375rem;
  }
  .achievements-title > span {
    font-size: 4.375rem;
    line-height: 5rem;
    min-width: 35.3125rem;
    padding-bottom: 2.875rem;
  }
  .achievements-title > span::before {
    height: 0.875rem;
  }
  .achievements-content {
    margin-top: 5rem;
    padding-top: 5.125rem;
  }
  .achievements-content .bg {
    max-width: 100%;
    min-width: 100%;
  }
  .achievements-content .bg img {
    object-fit: cover;
  }
  .achievements-content .head {
    font-size: 2.25rem;
    line-height: 5.9375rem;
  }
  .achievements-content .head > span {
    font-size: 3.4375rem;
    line-height: 3.9375rem;
    padding: 0.375rem 0.9375rem 0.625rem;
  }
  .achievements-content .list {
    display: block;
    margin: 4.375rem 0 0;
    padding: 0 2.375rem;
  }
  .achievements-content .list li {
    position: relative;
    width: 100%;
    padding-bottom: 3.125rem;
    min-height: 40.5rem;
  }
  .achievements-content .list li figure {
    width: 14.375rem;
    height: 14.375rem;
    margin: 0 auto;
  }
  .achievements-content .list li figure img {
    width: 100%;
  }
  .achievements-content .list li .label {
    margin-top: -1.625rem;
  }
  .achievements-content .list li .label > span {
    max-width: 100%;
    display: inline-block;
    padding: 0.5rem 1.875rem;
    min-width: 21.25rem;
    min-height: 4rem;
    font-size: 2rem;
    line-height: 2.8125rem;
    transform: translateX(1.0625rem) rotate(-4.5deg);
  }
  .achievements-content .list li .label > span .larg {
    font-size: 2.5rem;
    line-height: 2.5rem;
  }
  .achievements-content .list li .name {
    margin-top: 0.5rem;
    font-size: 2rem;
    line-height: 2.8125rem;
    transform: rotate(-4.5deg);
    padding-left: 4.125rem;
    letter-spacing: 0.04em;
  }
  .achievements-content .list li .text {
    padding: 0 1.875rem 0 2.1875rem;
    margin-top: 2rem;
  }
  .achievements-content .list li .text > span {
    font-size: 1.875rem;
    line-height: 3.3125rem;
    text-align: justify;
    letter-spacing: 0.04em;
  }
  .achievements-content .list li .text > span.age {
    margin-bottom: 1.25rem;
  }
  .achievements-content .list li .text > span.age > span {
    margin-left: 3.625rem;
  }
  .achievements-content .slick-slide {
    margin: 0 0.625rem;
  }
  .achievements-content .slick-next {
    right: 0.375rem;
  }
  .achievements-content .slick-prev {
    left: 0;
  }
  .achievements-content .profile {
    margin: 1.5625rem 0 0;
  }
  .achievements-content .profile-content {
    position: relative;
    z-index: 10;
    padding-top: 3.875rem;
    padding-left: 0;
  }
  .achievements-content .profile-head > span .dots {
    font-size: 5.625rem;
    line-height: 5.5rem;
    transform: translateY(-0.25rem) rotate(-6deg);
  }
  .achievements-content .profile-head > span .dots::before {
    font-size: 3.3125rem;
    line-height: 3.3125rem;
    letter-spacing: 0.55em;
    padding-left: 1.0625rem;
  }
  .achievements-content .profile-head > span .dots .num {
    font-size: 6.3125rem;
    line-height: 6.3125rem;
  }
  .achievements-content .profile-head > span:nth-child(1) {
    font-size: 2.0625rem;
    line-height: 3rem;
    letter-spacing: 0.045em;
  }
  .achievements-content .profile-head .line {
    font-size: 2rem;
    line-height: 2.4375rem;
    margin-top: 0.9375rem;
    padding: 0.4375rem 0;
  }
  .achievements-content .profile-head .line .small {
    font-size: 1.5rem;
    line-height: 2.4375rem;
  }
  .achievements-content .profile-x {
    margin: 3.0625rem 0 0 0.375rem;
  }
  .achievements-content .profile-x img {
    width: 29.8125rem;
  }
  .achievements-content .profile-pic {
    right: -12.1875rem;
    bottom: 1rem;
    width: 33.125rem;
  }
  .achievements-content .profile-pic figure {
    width: 100%;
    overflow: hidden;
    height: 80%;
  }
  .achievements-content .profile-pic figure img {
    width: 33.125rem;
    transform: translateY(3.75rem);
  }
  .achievements-content .profile-pic .note {
    top: 22.1875rem;
    right: 27.8125rem;
    font-size: 1.5rem;
    line-height: 2.5rem;
    padding: 2rem 1.625rem;
    width: 12.1875rem;
    height: 12.1875rem;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
  }
  .achievements-txtMarque {
    height: 7.1875rem;
    bottom: 4.6875rem;
  }
  .achievements-txtMarque::before {
    content: "";
    background-image: url("../images/txt_rebootAi.png");
    background-repeat: repeat-x;
    background-position: -1rem 0;
    background-size: 132.5rem 7.1875rem;
    width: 100%;
    height: 7.1875rem;
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0.4;
    z-index: 1;
  }
}
@media (min-width: sp) {
  .achievements {
    padding-top: 3.4375rem;
  }
  .achievements-title > span {
    font-size: 4.375rem;
    line-height: 5rem;
    min-width: 35.3125rem;
    padding-bottom: 2.875rem;
  }
  .achievements-title > span::before {
    height: 0.875rem;
  }
  .achievements-content {
    margin-top: 5rem;
    padding-top: 5.125rem;
  }
  .achievements-content .bg {
    max-width: 100%;
    min-width: 100%;
  }
  .achievements-content .bg img {
    object-fit: cover;
  }
  .achievements-content .head {
    font-size: 2.25rem;
    line-height: 5.9375rem;
  }
  .achievements-content .head > span {
    font-size: 3.4375rem;
    line-height: 3.9375rem;
    padding: 0.375rem 0.9375rem 0.625rem;
  }
  .achievements-content .list {
    display: block;
    margin: 4.375rem 0 0;
    padding: 0 2.375rem;
  }
  .achievements-content .list li {
    position: relative;
    width: 100%;
    padding-bottom: 3.125rem;
    min-height: 40.5rem;
  }
  .achievements-content .list li figure {
    width: 14.375rem;
    height: 14.375rem;
    margin: 0 auto;
  }
  .achievements-content .list li figure img {
    width: 100%;
  }
  .achievements-content .list li .label {
    margin-top: -1.625rem;
  }
  .achievements-content .list li .label > span {
    max-width: 100%;
    display: inline-block;
    padding: 0.5rem 1.875rem;
    min-width: 21.25rem;
    min-height: 4rem;
    font-size: 2rem;
    line-height: 2.8125rem;
    transform: translateX(1.0625rem) rotate(-4.5deg);
  }
  .achievements-content .list li .label > span .larg {
    font-size: 2.5rem;
    line-height: 2.5rem;
  }
  .achievements-content .list li .name {
    margin-top: 0.5rem;
    font-size: 2rem;
    line-height: 2.8125rem;
    transform: rotate(-4.5deg);
    padding-left: 4.125rem;
    letter-spacing: 0.04em;
  }
  .achievements-content .list li .text {
    padding: 0 1.875rem 0 2.1875rem;
    margin-top: 2rem;
  }
  .achievements-content .list li .text > span {
    font-size: 1.875rem;
    line-height: 3.3125rem;
    text-align: justify;
    letter-spacing: 0.04em;
  }
  .achievements-content .list li .text > span.age {
    margin-bottom: 1.25rem;
  }
  .achievements-content .list li .text > span.age > span {
    margin-left: 3.625rem;
  }
  .achievements-content .slick-slide {
    margin: 0 0.625rem;
  }
  .achievements-content .slick-next {
    right: 0.375rem;
  }
  .achievements-content .slick-prev {
    left: 0;
  }
  .achievements-content .profile {
    margin: 1.5625rem 0 0;
  }
  .achievements-content .profile-content {
    position: relative;
    z-index: 10;
    padding-top: 3.875rem;
    padding-left: 0;
  }
  .achievements-content .profile-head > span .dots {
    font-size: 5.625rem;
    line-height: 5.5rem;
    transform: translateY(-0.25rem) rotate(-6deg);
  }
  .achievements-content .profile-head > span .dots::before {
    font-size: 3.3125rem;
    line-height: 3.3125rem;
    letter-spacing: 0.55em;
    padding-left: 1.0625rem;
  }
  .achievements-content .profile-head > span .dots .num {
    font-size: 6.3125rem;
    line-height: 6.3125rem;
  }
  .achievements-content .profile-head > span:nth-child(1) {
    font-size: 2.0625rem;
    line-height: 3rem;
    letter-spacing: 0.045em;
  }
  .achievements-content .profile-head .line {
    font-size: 2rem;
    line-height: 2.4375rem;
    margin-top: 0.9375rem;
    padding: 0.4375rem 0;
  }
  .achievements-content .profile-head .line .small {
    font-size: 1.5rem;
    line-height: 2.4375rem;
  }
  .achievements-content .profile-x {
    margin: 3.0625rem 0 0 0.375rem;
  }
  .achievements-content .profile-x img {
    width: 29.8125rem;
  }
  .achievements-content .profile-pic {
    right: -12.1875rem;
    bottom: 1rem;
    width: 33.125rem;
  }
  .achievements-content .profile-pic figure {
    width: 100%;
    overflow: hidden;
    height: 80%;
  }
  .achievements-content .profile-pic figure img {
    width: 33.125rem;
    transform: translateY(3.75rem);
  }
  .achievements-content .profile-pic .note {
    top: 22.1875rem;
    right: 27.8125rem;
    font-size: 1.5rem;
    line-height: 2.5rem;
    padding: 2rem 1.625rem;
    width: 12.1875rem;
    height: 12.1875rem;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
  }
  .achievements-txtMarque {
    height: 7.1875rem;
    bottom: 4.6875rem;
  }
  .achievements-txtMarque::before {
    content: "";
    background-image: url("../images/txt_rebootAi.png");
    background-repeat: repeat-x;
    background-position: -1rem 0;
    background-size: 132.5rem 7.1875rem;
    width: 100%;
    height: 7.1875rem;
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0.4;
    z-index: 1;
  }
}

.introduction {
  padding: 9.375rem 0 0;
}
.introduction-pic {
  width: 69.75rem;
  margin: 0 auto;
}
.introduction-txtMarque {
  width: 100%;
  height: 21.6875rem;
  position: absolute;
  left: 0;
  top: 31.5625rem;
  pointer-events: none;
  z-index: -1;
}
.introduction-txtMarque::before {
  content: "";
  background-image: url("../images/txt_rebootAi.png");
  background-repeat: repeat-x;
  background-position: 0 0;
  background-size: 151.5rem 8.3125rem;
  width: 100%;
  height: 8.3125rem;
  position: absolute;
  left: 0;
  top: 0;
  opacity: 0.2;
  z-index: 1;
  animation: slideTxt linear 50s infinite;
}
.introduction-txtMarque::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 12.375rem;
  top: 9.375rem;
  left: 50%;
  transform: translateX(-50%);
  background: linear-gradient(180deg, rgb(153, 153, 153) 0%, rgb(255, 255, 255) 100%);
  opacity: 0.2;
  z-index: 1;
}
.introduction-heading {
  position: relative;
  margin: 3.25rem 0 4.25rem;
  min-height: 5rem;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  background-color: rgb(223, 223, 223);
  border: 0.25rem solid #fff;
  font-size: 1.6875rem;
  line-height: 2.1875rem;
  font-weight: 700;
  color: #202020;
  letter-spacing: 0.025em;
}
.introduction-heading .bg_black {
  background-color: #000;
  color: #fff;
  padding: 0 0.25rem;
  line-height: 1.3;
  display: inline-block;
}
.introduction-heading::before {
  content: "";
  position: absolute;
  top: calc(100% + 0.25rem);
  left: 50%;
  width: 0px;
  height: 0px;
  border-style: solid;
  border-width: 0 6.875rem 2rem 6.875rem;
  border-color: transparent transparent rgb(223, 223, 223) transparent;
  transform: translateX(-50%) rotate(180deg);
  z-index: 1;
}
@media (max-width: 768px) {
  .introduction {
    padding: 5.25rem 0 0;
  }
  .introduction-pic {
    width: 42.9375rem;
  }
  .introduction-pic img {
    width: 100%;
  }
  .introduction-txtMarque {
    height: 18.75rem;
    top: 18rem;
  }
  .introduction-txtMarque::before {
    content: "";
    background-image: url("../images/txt_rebootAi.png");
    background-repeat: repeat-x;
    background-position: -14.0625rem 0;
    background-size: 92.8125rem 5.125rem;
    height: 5.125rem;
  }
  .introduction-txtMarque::after {
    top: 5.9375rem;
  }
  .introduction-heading {
    margin: 4.5625rem 0.5rem 4.5625rem;
    min-height: 5.5625rem;
    font-size: 1.875rem;
    line-height: 2.625rem;
  }
  .introduction-heading::before {
    border-width: 0 8.125rem 2.25rem 8.125rem;
  }
}
@media (min-width: sp) {
  .introduction {
    padding: 5.25rem 0 0;
  }
  .introduction-pic {
    width: 42.9375rem;
  }
  .introduction-pic img {
    width: 100%;
  }
  .introduction-txtMarque {
    height: 18.75rem;
    top: 18rem;
  }
  .introduction-txtMarque::before {
    content: "";
    background-image: url("../images/txt_rebootAi.png");
    background-repeat: repeat-x;
    background-position: -14.0625rem 0;
    background-size: 92.8125rem 5.125rem;
    height: 5.125rem;
  }
  .introduction-txtMarque::after {
    top: 5.9375rem;
  }
  .introduction-heading {
    margin: 4.5625rem 0.5rem 4.5625rem;
    min-height: 5.5625rem;
    font-size: 1.875rem;
    line-height: 2.625rem;
  }
  .introduction-heading::before {
    border-width: 0 8.125rem 2.25rem 8.125rem;
  }
}

.steps-heading {
  position: relative;
  color: #fff;
  font-size: 1.8125rem;
  line-height: 2.1875rem;
  font-weight: 700;
  margin: 0;
}
.steps-heading .larg {
  font-size: 2.3125rem;
  line-height: 1.8125rem;
}
.steps-heading > span {
  max-width: 41.25rem;
  margin: 0 auto;
  position: relative;
  display: block;
}
.steps-heading > span > span {
  display: block;
  position: relative;
  overflow: hidden;
  padding: 0.8125rem 0.9375rem 0.8125rem 2.25rem;
}
.steps-heading > span > span::before {
  content: "";
  position: absolute;
  top: 0;
  left: 1.125rem;
  width: 100%;
  height: 100%;
  background-color: #ef7817;
  transform: skew(30deg);
  z-index: -1;
}
.steps-heading > span::after {
  content: "";
  position: absolute;
  background-image: url("../images/deco_title.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  width: 16.0625rem;
  height: 1.4375rem;
  top: 100%;
  right: 0;
  z-index: -1;
}
.steps-headSub {
  padding: 1.0625rem 0 3.5625rem;
  font-size: 2.9375rem;
  line-height: 3.4375rem;
  color: #202020;
  font-weight: 700;
  letter-spacing: 0.02em;
  position: relative;
  margin: 0;
  z-index: 1;
}
.steps-headSub::before {
  content: "";
  position: absolute;
  background-image: url("../images/deco_arrow_grey.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  width: 49.5rem;
  height: 7.0625rem;
  bottom: -1.6875rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
}
.steps-headSub .clr-orange {
  color: #ef7817;
}
.steps-headSub .num {
  font-size: 4.5625rem;
  line-height: 4.5625rem;
  display: inline-block;
  transform: translateY(0.25rem);
}
.steps-content {
  min-height: 13.875rem;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
  background-color: #363636;
  z-index: 0;
  font-size: 2.3125rem;
  line-height: 2.5rem;
  color: #fff;
  font-weight: 700;
  padding-bottom: 1.75rem;
}
.steps-content::after, .steps-content::before {
  content: "";
  position: absolute;
  top: 0;
  right: -9.375rem;
  height: 100%;
  background-color: #404040;
  transform: skew(-47deg);
  z-index: -1;
}
.steps-content::after {
  width: 44%;
  opacity: 0.46;
  z-index: -2;
}
.steps-content::before {
  opacity: 0.6;
  width: 36.3%;
}
.steps-content .num {
  font-size: 4.5rem;
  line-height: 4.5rem;
  color: #ef7817;
  display: inline-block;
  transform: translateY(0.25rem);
}
.steps-content .line {
  position: relative;
}
.steps-content .line::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 2px;
  background-color: #fff;
  bottom: -2.0625rem;
  left: 0;
  z-index: 1;
}
.steps-content .line::after {
  content: "";
  position: absolute;
  width: 2.5rem;
  height: 2px;
  background-color: #ef7817;
  bottom: -2.0625rem;
  left: 0;
  z-index: 1;
}

@media (max-width: 768px) {
  .steps-heading {
    font-size: 1.875rem;
    line-height: 2.1875rem;
    letter-spacing: 0.06em;
  }
  .steps-heading .larg {
    font-size: 2.375rem;
    line-height: 2.375rem;
  }
  .steps-heading > span {
    max-width: 42.8125rem;
  }
  .steps-heading > span > span {
    padding: 0.625rem 0.9375rem 0.9375rem 2.25rem;
  }
  .steps-heading > span::after {
    top: 99%;
    width: 17.3125rem;
    height: 1.5rem;
  }
  .steps-headSub {
    padding: 1.5rem 0 3.8125rem;
    font-size: 3.0625rem;
    line-height: 3.4375rem;
    letter-spacing: 0.05em;
  }
  .steps-headSub::before {
    bottom: -1.875rem;
  }
  .steps-headSub .num {
    font-size: 4.6875rem;
    line-height: 4.6875rem;
  }
  .steps-content {
    min-height: 15rem;
    font-size: 2.375rem;
    line-height: 2.5rem;
    padding-bottom: 1.75rem;
  }
  .steps-content::after, .steps-content::before {
    right: -9.375rem;
  }
  .steps-content::after {
    width: 57%;
  }
  .steps-content::before {
    width: 42%;
  }
  .steps-content .num {
    font-size: 4.6875rem;
    line-height: 4.6875rem;
    transform: translateY(0.125rem);
  }
  .steps-content .line {
    position: relative;
  }
  .steps-content .line::before {
    bottom: -2.25rem;
  }
  .steps-content .line::after {
    bottom: -2.25rem;
    width: 2.8125rem;
  }
}
@media (min-width: sp) {
  .steps-heading {
    font-size: 1.875rem;
    line-height: 2.1875rem;
    letter-spacing: 0.06em;
  }
  .steps-heading .larg {
    font-size: 2.375rem;
    line-height: 2.375rem;
  }
  .steps-heading > span {
    max-width: 42.8125rem;
  }
  .steps-heading > span > span {
    padding: 0.625rem 0.9375rem 0.9375rem 2.25rem;
  }
  .steps-heading > span::after {
    top: 99%;
    width: 17.3125rem;
    height: 1.5rem;
  }
  .steps-headSub {
    padding: 1.5rem 0 3.8125rem;
    font-size: 3.0625rem;
    line-height: 3.4375rem;
    letter-spacing: 0.05em;
  }
  .steps-headSub::before {
    bottom: -1.875rem;
  }
  .steps-headSub .num {
    font-size: 4.6875rem;
    line-height: 4.6875rem;
  }
  .steps-content {
    min-height: 15rem;
    font-size: 2.375rem;
    line-height: 2.5rem;
    padding-bottom: 1.75rem;
  }
  .steps-content::after, .steps-content::before {
    right: -9.375rem;
  }
  .steps-content::after {
    width: 57%;
  }
  .steps-content::before {
    width: 42%;
  }
  .steps-content .num {
    font-size: 4.6875rem;
    line-height: 4.6875rem;
    transform: translateY(0.125rem);
  }
  .steps-content .line {
    position: relative;
  }
  .steps-content .line::before {
    bottom: -2.25rem;
  }
  .steps-content .line::after {
    bottom: -2.25rem;
    width: 2.8125rem;
  }
}
.comparison {
  padding: 8.5rem 0 7.5rem;
}
.comparison > .title {
  margin: 0;
  text-align: center;
}
.comparison > .title > span {
  position: relative;
  font-size: 3.3125rem;
  line-height: 4.0625rem;
  font-weight: 700;
  color: #fff;
  min-width: 40.5rem;
  margin: 0 auto;
  background-color: #202020;
  display: inline-block;
  padding: 0 0.625rem 0.625rem;
}
.comparison > .title > span::before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  width: 0px;
  height: 0px;
  border-style: solid;
  border-width: 0 0.75rem 1.25rem 0.75rem;
  border-color: transparent transparent #202020 transparent;
  transform: translateX(-50%) rotate(180deg);
  z-index: 1;
}
.comparison-table {
  margin-top: 6.25rem;
}
.comparison-table__inner {
  position: relative;
}
.comparison-table__inner .bg {
  width: 100%;
}
.comparison-table__inner .inner {
  position: absolute;
  width: 100%;
  left: 50%;
  transform: translateX(-50%);
  top: 0;
  padding: 4.6875rem 3.125rem 2.1875rem;
  z-index: 1;
}
.comparison-table table {
  width: 100%;
  margin: 0;
}
.comparison-table table th,
.comparison-table table td {
  vertical-align: middle;
}
.comparison-table table th {
  height: 5.3125rem;
  font-size: 1.625rem;
  line-height: 1.625rem;
  font-weight: 700;
  color: #fff;
}
.comparison-table table td {
  height: 7.5rem;
  color: #fff;
  font-size: 1.5625rem;
  line-height: 2.0625rem;
}
.comparison-table table td:nth-child(1) {
  width: 23.6%;
  font-weight: 700;
  text-align: center;
}
.comparison-table table td:nth-child(2) {
  width: 45%;
  font-weight: 500;
  padding: 0 1.25rem 1.25rem 6.5625rem;
}
.comparison-table table td:nth-child(3) {
  width: 31.4%;
  color: #231916;
  padding: 0 1.25rem 0.75rem 5.625rem;
}
.comparison-table table td.larg {
  font-weight: 600;
  font-size: 2.875rem;
  line-height: 2.875rem;
}
.comparison-table table td.fw-regu {
  font-weight: 400;
  font-size: 1.1875rem;
  line-height: 1.75rem;
}
.comparison-table table tr:nth-child(1) td:nth-child(2) {
  padding-bottom: 2.1875rem;
}
.comparison-table table tr:nth-child(3) td:nth-child(2) {
  padding-bottom: 0.75rem;
}
.comparison-table table tr:nth-child(4) td:nth-child(2) {
  padding-bottom: 0rem;
}
.comparison-table table tr:nth-child(5) td:nth-child(2) {
  padding-bottom: 0rem;
  padding-top: 0.625rem;
}
.comparison-next {
  text-align: center;
  margin-top: 3.125rem;
}
.comparison-next img {
  width: 19.3125rem;
}
.comparison-start {
  position: relative;
}
.comparison-start .bg {
  position: absolute;
  width: 100%;
  max-width: 1920px;
  min-width: 1693px;
  height: 39rem;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
}
.comparison-start .bg img {
  width: 100%;
}
@media (max-width: 1166px) {
  .comparison-start .bg img {
    height: 100%;
    object-fit: contain;
  }
}
.comparison-start__content {
  position: relative;
  z-index: 1;
  min-height: 33.875rem;
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.comparison-start__content .tit {
  color: #fff;
  font-size: 2.3125rem;
  line-height: 3.5625rem;
  font-weight: 600;
  margin-bottom: 0.625rem;
}
.comparison-start__content .tit > span {
  display: inline-block;
  padding: 0 0.9375rem;
}
.comparison-start__content .desc {
  color: #fff;
  font-size: 2.1875rem;
  line-height: 3.9375rem;
  font-weight: 600;
  text-align: center;
}
.comparison-start__content .desc .num {
  font-size: 3.875rem;
  line-height: 3.875rem;
}
.comparison-start__content .desc .logo_txt {
  display: inline-flex;
  width: 24.375rem;
  transform: translateY(0.125rem);
}
.comparison-start__content .desc .clr_yellow {
  color: #fff000;
}
@media (max-width: 768px) {
  .comparison {
    padding: 5.75rem 0 7.5rem;
  }
  .comparison > .title {
    margin-bottom: 2.625rem;
  }
  .comparison > .title > span {
    font-size: 3.75rem;
    line-height: 4.1875rem;
    min-width: 43.75rem;
    padding: 0.375rem 0.625rem 1.1875rem;
    letter-spacing: 0.05em;
  }
  .comparison > .title > span::before {
    border-width: 0 1rem 1.75rem 1rem;
  }
  .comparison > .scroll {
    width: 15.125rem;
  }
  .comparison-table {
    margin-top: 2.1875rem;
  }
  .comparison-table__inner {
    overflow-x: scroll;
  }
  .comparison-table__inner .bg {
    width: 82rem;
  }
  .comparison-table__inner .bg img {
    width: 100%;
  }
  .comparison-table__inner .inner {
    width: 78.375rem;
    left: 0;
    transform: translateX(0);
    padding: 2.625rem 0 2.1875rem 3.4375rem;
  }
  .comparison-table table th {
    height: 9rem;
    font-size: 1.8125rem;
    line-height: 1.8125rem;
  }
  .comparison-table table td {
    height: 8.625rem;
    font-size: 1.6875rem;
    line-height: 2.6875rem;
  }
  .comparison-table table td:nth-child(2) {
    padding: 0 1.25rem 1.25rem 7.8125rem;
    letter-spacing: 0.06em;
    line-height: 1.45;
  }
  .comparison-table table td:nth-child(3) {
    padding: 0 1.25rem 0.3125rem 6.5625rem;
  }
  .comparison-table table td.larg {
    font-size: 3.1875rem;
    line-height: 3.1875rem;
  }
  .comparison-table table td.fw-regu {
    font-size: 1.3125rem;
    line-height: 1.9375rem;
  }
  .comparison-table table tr:nth-child(3) td:nth-child(2) {
    padding-bottom: 0.5rem;
  }
  .comparison-table table tr:nth-child(4) td:nth-child(2) {
    padding-top: 0.625rem;
  }
  .comparison-table table tr:nth-child(5) td:nth-child(2) {
    padding-top: 1.375rem;
  }
  .comparison-next {
    margin-top: 1.75rem;
  }
  .comparison-next img {
    width: 20.625rem;
  }
  .comparison-start .bg {
    max-width: 100%;
    min-width: 100%;
    height: 55.875rem;
  }
  .comparison-start .bg img {
    object-fit: cover;
    height: auto;
  }
  .comparison-start__content {
    min-height: 50.625rem;
    padding-top: 3.75rem;
  }
  .comparison-start__content .tit {
    font-size: 2.625rem;
    line-height: 4.0625rem;
    margin-bottom: 1.5625rem;
    letter-spacing: 0.04em;
  }
  .comparison-start__content .desc {
    font-size: 2.4375rem;
    line-height: 5.25rem;
    letter-spacing: 0.02em;
  }
  .comparison-start__content .desc .num {
    font-size: 4.375rem;
    line-height: 4.375rem;
    display: inline-block;
    transform: translateY(0.1875rem);
  }
  .comparison-start__content .desc .logo_txt {
    width: 26.125rem;
  }
  .comparison-start__content .desc .logo_txt img {
    width: 100%;
  }
}
@media (min-width: sp) {
  .comparison {
    padding: 5.75rem 0 7.5rem;
  }
  .comparison > .title {
    margin-bottom: 2.625rem;
  }
  .comparison > .title > span {
    font-size: 3.75rem;
    line-height: 4.1875rem;
    min-width: 43.75rem;
    padding: 0.375rem 0.625rem 1.1875rem;
    letter-spacing: 0.05em;
  }
  .comparison > .title > span::before {
    border-width: 0 1rem 1.75rem 1rem;
  }
  .comparison > .scroll {
    width: 15.125rem;
  }
  .comparison-table {
    margin-top: 2.1875rem;
  }
  .comparison-table__inner {
    overflow-x: scroll;
  }
  .comparison-table__inner .bg {
    width: 82rem;
  }
  .comparison-table__inner .bg img {
    width: 100%;
  }
  .comparison-table__inner .inner {
    width: 78.375rem;
    left: 0;
    transform: translateX(0);
    padding: 2.625rem 0 2.1875rem 3.4375rem;
  }
  .comparison-table table th {
    height: 9rem;
    font-size: 1.8125rem;
    line-height: 1.8125rem;
  }
  .comparison-table table td {
    height: 8.625rem;
    font-size: 1.6875rem;
    line-height: 2.6875rem;
  }
  .comparison-table table td:nth-child(2) {
    padding: 0 1.25rem 1.25rem 7.8125rem;
    letter-spacing: 0.06em;
    line-height: 1.45;
  }
  .comparison-table table td:nth-child(3) {
    padding: 0 1.25rem 0.3125rem 6.5625rem;
  }
  .comparison-table table td.larg {
    font-size: 3.1875rem;
    line-height: 3.1875rem;
  }
  .comparison-table table td.fw-regu {
    font-size: 1.3125rem;
    line-height: 1.9375rem;
  }
  .comparison-table table tr:nth-child(3) td:nth-child(2) {
    padding-bottom: 0.5rem;
  }
  .comparison-table table tr:nth-child(4) td:nth-child(2) {
    padding-top: 0.625rem;
  }
  .comparison-table table tr:nth-child(5) td:nth-child(2) {
    padding-top: 1.375rem;
  }
  .comparison-next {
    margin-top: 1.75rem;
  }
  .comparison-next img {
    width: 20.625rem;
  }
  .comparison-start .bg {
    max-width: 100%;
    min-width: 100%;
    height: 55.875rem;
  }
  .comparison-start .bg img {
    object-fit: cover;
    height: auto;
  }
  .comparison-start__content {
    min-height: 50.625rem;
    padding-top: 3.75rem;
  }
  .comparison-start__content .tit {
    font-size: 2.625rem;
    line-height: 4.0625rem;
    margin-bottom: 1.5625rem;
    letter-spacing: 0.04em;
  }
  .comparison-start__content .desc {
    font-size: 2.4375rem;
    line-height: 5.25rem;
    letter-spacing: 0.02em;
  }
  .comparison-start__content .desc .num {
    font-size: 4.375rem;
    line-height: 4.375rem;
    display: inline-block;
    transform: translateY(0.1875rem);
  }
  .comparison-start__content .desc .logo_txt {
    width: 26.125rem;
  }
  .comparison-start__content .desc .logo_txt img {
    width: 100%;
  }
}

.header {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 14;
}
@media (max-width: 768px) {
  .header {
    text-align: center;
    position: relative;
  }
}
@media (min-width: sp) {
  .header {
    text-align: center;
    position: relative;
  }
}
.header-inner {
  padding: 1.25rem 1.25rem 0;
  position: fixed;
  top: 0;
  left: 0px;
  z-index: 9999;
  transition: all 0.3s ease;
  width: 100%;
}
@media (min-width: 769px) {
  .header-inner {
    padding: 1rem 1.25rem;
  }
  .header-inner.scrolled {
    background: linear-gradient(to right, white 0%, transparent 90%);
  }
  .header-inner.scrolled .header-logo {
    margin: 0;
    line-height: 1;
    font-size: 0;
  }
}
@media (max-width: 768px) {
  .header-inner {
    padding-top: 2.5rem;
    border-bottom: 1px solid #989898;
    background: #fff;
  }
}
@media (min-width: sp) {
  .header-inner {
    padding-top: 2.5rem;
    border-bottom: 1px solid #989898;
    background: #fff;
  }
}
.header-logo {
  transition: all 0.3s ease;
}
.header-logo-img {
  width: 11rem;
}
@media (max-width: 768px) {
  .header-logo-img {
    width: 20rem;
  }
}
@media (min-width: sp) {
  .header-logo-img {
    width: 20rem;
  }
}
.header-nav {
  position: fixed;
  top: 1.4rem;
  right: 1.25rem;
  text-align: right;
  z-index: 9999;
}
@media (min-width: 1230px) and (max-width: 1366px) {
  .header-nav {
    top: 0.5rem;
  }
}
@media (max-width: 768px) {
  .header-nav {
    background: #fff;
    width: 80vw;
    max-width: 320px;
    height: calc(100vh - 6rem);
    padding-right: 40px;
    position: fixed;
    right: 0;
    top: 8rem;
    z-index: -1;
    overflow-y: auto;
    overflow-x: hidden;
    box-shadow: 1rem 0rem 2rem 1rem rgba(0, 0, 0, 0.25);
    transform: translateX(110%);
    transition: all 0.3s cubic-bezier(0.61, 0.92, 0.68, 1.14) 0s;
  }
  .header-nav.is-active {
    transform: translateX(10%);
  }
}
@media (min-width: sp) {
  .header-nav {
    background: #fff;
    width: 80vw;
    max-width: 320px;
    height: calc(100vh - 6rem);
    padding-right: 40px;
    position: fixed;
    right: 0;
    top: 8rem;
    z-index: -1;
    overflow-y: auto;
    overflow-x: hidden;
    box-shadow: 1rem 0rem 2rem 1rem rgba(0, 0, 0, 0.25);
    transform: translateX(110%);
    transition: all 0.3s cubic-bezier(0.61, 0.92, 0.68, 1.14) 0s;
  }
  .header-nav.is-active {
    transform: translateX(10%);
  }
}
@media (max-width: 768px) {
  .header-menu {
    width: 90%;
    margin: 0 auto;
  }
}
@media (min-width: sp) {
  .header-menu {
    width: 90%;
    margin: 0 auto;
  }
}
@media (max-width: 768px) {
  .header-menu-item {
    border-bottom: 1px solid #eee;
  }
  .header-menu-item:last-child {
    border-bottom: none;
  }
}
@media (min-width: sp) {
  .header-menu-item {
    border-bottom: 1px solid #eee;
  }
  .header-menu-item:last-child {
    border-bottom: none;
  }
}
.header-menu-link {
  color: #222;
  font-size: 0.875rem;
  line-height: 2;
  transition: color 0.3s ease;
  font-weight: 500;
}
.header-menu-link:hover {
  opacity: 0.75;
}
@media (max-width: 768px) {
  .header-menu-link {
    font-size: 2rem;
    display: block;
    padding: 5%;
    text-align: left;
  }
}
@media (min-width: sp) {
  .header-menu-link {
    font-size: 2rem;
    display: block;
    padding: 5%;
    text-align: left;
  }
}
.header-social {
  margin-top: 5rem;
}
@media (min-width: 1230px) and (max-width: 1366px) {
  .header-social {
    margin-top: 1rem;
  }
}
.header-social-item {
  margin-bottom: 0.625rem;
}
.header-social-link {
  transition: color 0.3s ease;
  display: block;
}
.header-social-link:hover {
  opacity: 0.75;
}
.header-social-link:hover .header-social-img {
  animation: zoom 0.5s ease infinite alternate;
}
.header-social-img {
  width: 2.875rem;
}
.header-btn-link {
  transition: color 0.3s ease;
}
.header-btn-link:hover {
  opacity: 0.7;
}
.header-btn-link:hover .header-btn-img {
  animation: zoom 0.5s ease infinite alternate;
}
.header-btn-img {
  width: 9.3125rem;
}
@media (min-width: 1230px) and (max-width: 1366px) {
  .header-btn-img {
    width: 7rem;
  }
}
.header .nav-toggle {
  display: inline-block;
  position: relative;
  width: 45px;
  height: 50px;
  cursor: pointer;
  color: silver;
  text-align: right;
  background-color: transparent;
  border: none;
  line-height: 0;
  padding-left: 5px;
  padding-right: 5px;
  padding-bottom: 2px;
  outline: none;
  z-index: 9999;
  position: fixed;
  top: 1rem;
  right: 0.9375rem;
}
.header .nav-toggle span {
  height: 3px;
  background-color: #222;
  border-radius: 0;
  position: relative;
  display: inline-block;
  width: 35px;
  -webkit-transition: 0.3s all ease;
  -ms-transition: 0.3s all ease;
  -moz-transition: 0.3s all ease;
  transition: 0.3s all ease;
}
.header .nav-toggle span::before, .header .nav-toggle span::after {
  background-color: #222;
  content: "";
  position: absolute;
  height: 3px;
  border-radius: 0;
  right: 0;
  top: -10.5px;
  -webkit-transition: 0.3s all ease;
  -ms-transition: 0.3s all ease;
  -moz-transition: 0.3s all ease;
  transition: 0.3s all ease;
  -webkit-transition-duration: 0.3s, 0.3s, 0.3s;
  transition-duration: 0.3s, 0.3s, 0.3s;
  -webkit-transition-delay: 0.3s, 0s, 0.3s;
  transition-delay: 0.3s, 0s, 0.3s;
  -webkit-transition-property: top, -webkit-transform, width;
  transition-property: top, transform, width;
  transform-origin: center;
}
.header .nav-toggle span::before {
  width: 35px;
}
.header .nav-toggle span::after {
  width: 35px;
  top: 10.5px;
}
.header .nav-toggle.is-active span {
  background: transparent;
  right: 0;
  left: auto;
  -webkit-transition: background 0.3s 0s ease;
  -ms-transition: background 0.3s 0s ease;
  -moz-transition: background 0.3s 0s ease;
  transition: background 0.3s 0s ease;
}
.header .nav-toggle.is-active span::before, .header .nav-toggle.is-active span::after {
  top: 0;
  right: 0;
  left: auto;
  width: 35px;
  -webkit-transition-delay: 0s, 0.3s;
  transition-delay: 0s, 0.3s;
}
.header .nav-toggle.is-active span::before {
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
.header .nav-toggle.is-active span::after {
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.header .nav-toggle small {
  display: none;
}

@keyframes zoom {
  from {
    transform: scale(0.95, 0.95);
  }
  to {
    transform: scale(1, 1);
  }
}
.section-fv {
  background-image: url("../images/bg_fv.png");
  background-size: cover;
  background-position: bottom right;
  background-repeat: no-repeat;
}
@media (max-width: 768px) {
  .section-fv {
    background-image: url("../images/bg_fv_sp.png");
    background-position: top 10rem right 0rem;
    margin-top: 8rem;
  }
}
@media (min-width: sp) {
  .section-fv {
    background-image: url("../images/bg_fv_sp.png");
    background-position: top 10rem right 0rem;
    margin-top: 8rem;
  }
}
.section-fv .container, .section-fv .container__fluid {
  max-width: 65.625rem;
  position: relative;
}
@media (min-width: 769px) {
  .section-fv .container, .section-fv .container__fluid {
    padding: 5rem 0 1.75rem;
  }
}
@media (max-width: 768px) {
  .section-fv .container, .section-fv .container__fluid {
    padding: 3rem 1.5rem 2rem;
  }
}
@media (min-width: sp) {
  .section-fv .container, .section-fv .container__fluid {
    padding: 3rem 1.5rem 2rem;
  }
}

.fv-img-01 {
  width: 22.3125rem;
}
.fv-img-02 {
  width: 20.625rem;
  margin-left: 0.5rem;
}
.fv-img-02-sp {
  position: relative;
  z-index: 1;
}
.fv-img-03 {
  width: 34.375rem;
  margin-top: 1.5rem;
  margin-left: 3.7rem;
}
.fv-img-03-sp {
  width: 19.5rem;
  position: absolute;
  bottom: 0;
  right: 0;
}
.fv-img-04 {
  width: 21.6875rem;
  position: absolute;
  right: 2.5rem;
  bottom: 0;
}
.fv-img-05 {
  width: 10.375rem;
  position: absolute;
  right: 0.5rem;
  top: 5.25rem;
}
.fv-title {
  font-size: 4.3125rem;
  font-weight: 800;
  line-height: 1;
  display: inline-block;
  text-align: center;
}
@media (max-width: 768px) {
  .fv-title {
    margin: 1rem 0 2.5rem 1rem;
  }
}
@media (min-width: sp) {
  .fv-title {
    margin: 1rem 0 2.5rem 1rem;
  }
}
.fv-title .text-orange-01 {
  font-size: 7.5625rem;
}
.fv-note {
  font-size: 0.6875rem;
  margin-left: 3.6rem;
  margin-top: 0.4rem;
}
@media (max-width: 768px) {
  .fv-note {
    font-size: 1.5rem;
    margin: 0;
  }
}
@media (min-width: sp) {
  .fv-note {
    font-size: 1.5rem;
    margin: 0;
  }
}

/*# sourceMappingURL=main.css.map */
