@charset "UTF-8";
/*!
 * Version: 1.2.2
 */
@import url("https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c:wght@400;500;700;800;900&family=Noto+Sans+JP:wght@400;700&display=swap");
/**
 * Based on
 *
 *  - reset.css 2.0 by Eric Meyer
      (public domain)
 *    http://meyerweb.com/eric/tools/css/reset/
 *
 *  - normalize.css 8.0.1 by Nicolas Gallagher and Jonathan Neal
 *    (licensed under MIT)
 *    https://github.com/necolas/normalize.css
 *
 *  - Reboot from Bootstrap 4.5.3
 *    (licensed under MIT)
 *    https://github.com/twbs/bootstrap
 */
/**
 * IE10+ doesn't honor `<meta name="viewport">` in some cases
 */
@-ms-viewport {
  width: device-width;
}
/**
 * general reset
 */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video, main {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

/**
 * HTML5 display-role reset for older browsers
 */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section,
main, summary {
  display: block;
}

/**
 * inherit box model for all elements
 */
*,
*::before,
*::after {
  box-sizing: inherit;
}

/**
 * html root rules
 * 1. set border-box for inheritance
 * 2. avoid 300ms click delay on touch devices that support the `touch-action`
 *    CSS property
 * 3. Prevent adjustments of font size after orientation changes in IE, on
 *    Windows Phone and iOS.
 * 4. Setting @viewport causes scrollbars to overlap content in IE11 and Edge,
 *    so we force a non-overlapping, non-auto-hiding scrollbar to counteract.
 * 5. Change the default tap highlight to be completely transparent in iOS.
 */
html {
  /* 1 */
  box-sizing: border-box;
  /* 2 */
  touch-action: manipulation;
  /* 3 */
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  /* 4 */
  -ms-overflow-style: scrollbar;
  /* 5 */
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

/**
 * body rules
 * 1. reset line-height to 1
 * 2. set base font-family to sans-serif
 * 3. Set an explicit initial text-align value so that we can later use the
 *    `inherit` value on things like `<th>` elements.
 */
body {
  /* 1 */
  line-height: 1;
  /* 2 */
  font-family: sans-serif;
  /* 3 */
  text-align: left;
}

/**
 * Future-proof rule: in browsers that support :focus-visible, suppress the focus outline
 * on elements that programmatically receive focus but wouldn't normally show a visible
 * focus outline. In general, this would mean that the outline is only applied if the
 * interaction that led to the element receiving programmatic focus was a keyboard interaction,
 * or the browser has somehow determined that the user is primarily a keyboard user and/or
 * wants focus outlines to always be presented.
 *
 * See https://developer.mozilla.org/en-US/docs/Web/CSS/:focus-visible
 * and https://developer.paciellogroup.com/blog/2018/03/focus-visible-and-backwards-compatibility/
 */
[tabindex="-1"]:focus:not(:focus-visible) {
  outline: 0 !important;
}

/**
 * Lists
 */
ol, ul {
  list-style: none;
}

/**
 * Quotes
 */
blockquote, q {
  quotes: none;
}

blockquote::before,
blockquote::after,
q::before,
q::after {
  content: "";
  content: none;
}

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

caption {
  caption-side: bottom;
}

/**
 * Table Headers
 * 1. Matches default `<td>` alignment by inheriting from the `<body>`, or the
 *    closest parent with a set `text-align`.
 * 2. Fix alignment for Safari
 */
th {
  /* 1 */
  text-align: inherit;
  /* 2 */
  text-align: -webkit-match-parent;
}

/**
 * Horizontal Lines
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  /* 1 */
  box-sizing: content-box;
  height: 0;
  /* 2 */
  overflow: visible;
}

/**
 * Preformatted Text
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Don't allow content to break outside
 * 3. We have @viewport set which causes scrollbars to overlap content in IE11
 *    and Edge, so we force a non-overlapping, non-auto-hiding scrollbar to
 *    counteract.
 */
pre,
code,
kbd,
samp {
  /* 1 */
  font-family: monospace, monospace;
}

pre {
  /* 2 */
  overflow: auto;
  /* 3 */
  -ms-overflow-style: scrollbar;
}

/**
 * Links
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */
a {
  /* 1 */
  background-color: transparent;
  /* 2 */
  -webkit-text-decoration-skip: objects;
}

/**
 * 1. Remove the bottom border in Chrome 57- and Firefox 39-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 * 3. Add explicit cursor to indicate changed behavior.
 * 4. Prevent the text-decoration to be skipped.
 */
abbr[title] {
  /* 1 */
  border-bottom: 0;
  /* 2 */
  text-decoration: underline;
  text-decoration: underline dotted;
  /* 3 */
  cursor: help;
  /* 4 */
  text-decoration-skip-ink: none;
}

address {
  font-style: normal;
  line-height: inherit;
}

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

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

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/**
 * Prevent `em` being affected from global reset
 */
em {
  font-style: italic;
}

/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/**
 * Hide SVG overflow in IE
 */
svg:not(:root) {
  overflow: hidden;
}

/**
 * Remove the default `border-radius` that macOS Chrome adds.
 * Details at https://github.com/twbs/bootstrap/issues/24093
 */
button {
  border-radius: 0;
}

/**
 * Work around a Firefox/IE bug where the transparent `button` background
 * results in a loss of the default `button` focus styles.
 * Credit: https://github.com/suitcss/base/
 */
button:focus {
  outline: 1px dotted;
  outline: 5px auto -webkit-focus-ring-color;
}

/**
 * form element resets
 * 1. Remove the margin in Firefox and Safari
 * 2. inherit font rules
 */
input,
button,
select,
optgroup,
textarea {
  /* 1 */
  margin: 0;
  /* 2 */
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=reset],
[type=submit],
[type=button] {
  /* 2 */
  -webkit-appearance: button;
}

/**
 * Remove the default appearance of temporal inputs to avoid a Mobile Safari
 * bug where setting a custom line-height prevents text from being vertically
 * centered within the input.
 * See https://bugs.webkit.org/show_bug.cgi?id=139848
 * and https://github.com/twbs/bootstrap/issues/11266
 */
input[type=date],
input[type=time],
input[type=datetime-local],
input[type=month] {
  -webkit-appearance: listbox;
}

/**
 * 1. Remove the default vertical scrollbar in IE.
 * 2. Textareas should really only resize vertically so they don't break their
 *    (horizontal) containers.
 */
textarea {
  overflow: auto;
  resize: vertical;
}

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

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

/**
 * Set the cursor for non-`<button>` buttons
 * Details at https://github.com/twbs/bootstrap/pull/30562
 */
[role=button] {
  cursor: pointer;
}

/**
 * Remove the inheritance of word-wrap in Safari.
 * See https://github.com/twbs/bootstrap/issues/24990
 */
select {
  word-wrap: normal;
}

/**
 * Remove inner border and padding from Firefox, but don't restore the outline
 * like Normalize.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * 1. Add the correct box sizing in IE 10-
 * 2. Remove the padding in IE 10-
 */
input[type=radio],
input[type=checkbox] {
  /* 1 */
  box-sizing: border-box;
  /* 2 */
  padding: 0;
}

/**
 * Suppress the focus outline on elements that cannot be accessed via keyboard.
 * This prevents an unwanted focus outline from appearing around elements that
 * might still respond to pointer events.
 * Credit: https://github.com/suitcss/base
 */
[tabindex="-1"]:focus {
  outline: 0 !important;
}

/**
 * Browsers set a default `min-width: min-content` on fieldsets,
 * unlike e.g. `<div>`s, which have `min-width: 0` by default.
 * So we reset that to ensure fieldsets behave more like a standard block element.
 * See https://github.com/twbs/bootstrap/issues/12359
 * and https://html.spec.whatwg.org/multipage/#the-fieldset-and-legend-elements
 */
fieldset {
  min-width: 0;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Set display to block for all browsers
 */
legend {
  /* 1 */
  max-width: 100%;
  white-space: normal;
  /* 2 */
  color: inherit;
  /* 3 */
  display: block;
}

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

/**
 * 1. Remove the default vertical scrollbar in IE 10+.
 * 2. Textareas should really only resize vertically so they don't break their
 *    (horizontal) containers.
 */
textarea {
  /* 1 */
  overflow: auto;
  /* 2 */
  resize: vertical;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type=checkbox],
[type=radio] {
  /* 1 */
  box-sizing: border-box;
  /* 2 */
  padding: 0;
}

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

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type=search] {
  /* 1 */
  -webkit-appearance: textfield;
  /* 2 */
  outline-offset: -2px;
}

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

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

/**
 * Correct element display for output
 */
output {
  display: inline-block;
}

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

/**
 * Always hide an element with the `hidden` HTML attribute (from PureCSS).
 * Needed for proper display in IE 10-.
 */
[hidden] {
  display: none;
}

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}
[dir=rtl] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

/*
 * Version: 1.1.5
 */
:root {
  --width: 1364;
}
@media only screen and (max-width: 1024px) {
  :root {
    --width: 375;
  }
}

/* Common Setting */
html {
  font-size: 62.5%;
}

body {
  font-family: "M PLUS Rounded 1c", sans-serif;
  background: #fff;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: subpixel-antialiased;
  -moz-osx-font-smoothing: unset;
  overflow-x: hidden;
  color: #444;
}
img {
  vertical-align: bottom;
}
@media only screen and (max-width: 1024px) {
  img {
    max-width: 100%;
    height: auto;
  }
}

p {
  line-height: 1.8;
  font-size: 1.6rem;
}
a {
  transition-property: opacity, visibility, z-index;
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1);
  color: #333;
  text-decoration: none;
}
a:hover, a:active, a:focus {
  color: #333;
  text-decoration: none;
}
a:hover {
  opacity: 0.6;
}

strong {
  font-weight: bold;
  font-weight: 700;
}
.is-pc {
  display: block;
}
@media only screen and (max-width: 1024px) {
  .is-pc {
    display: none;
  }
}

.is-pc-inline {
  display: inline-block;
}
@media only screen and (max-width: 1024px) {
  .is-pc-inline {
    display: none;
  }
}

.is-sp {
  display: none;
}
@media only screen and (max-width: 1024px) {
  .is-sp {
    display: block;
  }
}

.fade-in {
  opacity: 0;
  visibility: hidden;
  transition-property: opacity, visibility;
  transition-duration: 2s;
  transition-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1);
}
.fade-in.is-show {
  opacity: 1;
  visibility: visible;
}

.fade-in-left {
  opacity: 0;
  visibility: hidden;
  transform: translateX(-30px);
  transition-property: opacity, visibility, transform top right bottom left;
  transition-duration: 2s;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}
.fade-in-left.is-show {
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
}

.fade-in-right {
  opacity: 0;
  visibility: hidden;
  transform: translateX(30px);
  transition-property: opacity, visibility, transform top right bottom left;
  transition-duration: 2s;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}
.fade-in-right.is-show {
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
}

.fade-in-down {
  opacity: 0;
  visibility: hidden;
  transform: translateY(-30px);
  transition-property: opacity, visibility, transform top right bottom left;
  transition-duration: 2s;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}
.fade-in-down.is-show {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.fade-in-up {
  opacity: 0;
  visibility: hidden;
  transform: translateY(30px);
  transition-property: opacity, visibility, transform top right bottom left;
  transition-duration: 2s;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}
.fade-in-up.is-show {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.md-content-main {
  overflow: hidden;
}

.md-first-view {
  position: relative;
  margin-top: 170px;
}
@media only screen and (max-width: 1024px) {
  .md-first-view {
    margin-top: 65px;
  }
}
.md-first-view .mv-catch {
  background: #aaecef;
  padding-top: 40px;
  padding-bottom: 53px;
  position: relative;
}
@media only screen and (max-width: 1024px) {
  .md-first-view .mv-catch {
    padding-top: 25px;
    padding-right: 25px;
    padding-bottom: 25px;
    padding-left: 25px;
  }
}
.md-first-view .bg {
  width: calc(1200 / var(--width) * 100vw);
  margin: 0 auto;
}
@media only screen and (max-width: 1024px) {
  .md-first-view .bg {
    width: 100%;
  }
}
.md-first-view .mv-img-wrap {
  position: relative;
}
.md-first-view .mv-img {
  width: 100%;
  height: 516px;
  position: relative;
  overflow: hidden;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  border-radius: max(0px, min(120px, (100vw - 60px - 100%) * 9999));
}
@media only screen and (max-width: 1024px) {
  .md-first-view .mv-img {
    border-radius: 30px;
    height: calc(100vh - 170px);
  }
}
.md-first-view .mv-text {
  position: absolute;
  top: calc(168 / var(--width) * 100vw);
  left: calc(240 / var(--width) * 100vw);
}
@media only screen and (max-width: 1024px) {
  .md-first-view .mv-text {
    z-index: 2;
    left: 50%;
    top: 82px;
    transform: translateX(-50%);
    width: 236px;
  }
  .md-first-view .mv-text img {
    width: 100%;
    height: auto;
  }
}
.md-first-view .mv-text a {
  display: inline-block;
  transition-property: opacity, visibility, z-index;
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1);
}
.md-first-view .mv-text a:hover {
  opacity: 0.6;
}
.md-first-view .txt-0 .mv-text {
  top: 112px;
  left: 50%;
  transform: translateX(-50%);
  text-align: center;
}
@media only screen and (max-width: 1024px) {
  .md-first-view .txt-0 .mv-text {
    left: 50%;
    top: 82px;
    transform: translateX(-50%);
    width: 236px;
  }
  .md-first-view .txt-0 .mv-text img {
    width: 100%;
    height: auto;
  }
}
.md-first-view .txt-0 .mv-text a {
  display: inline-block;
  transition-property: opacity, visibility, z-index;
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1);
}
.md-first-view .txt-0 .mv-text a:hover {
  opacity: 0.6;
}
.md-first-view .txt-0 .first {
  display: block;
}
.md-first-view .txt-0 .second {
  display: none;
}
.md-first-view .txt-1 .mv-text {
  top: calc(168 / var(--width) * 100vw);
  left: calc(240 / var(--width) * 100vw);
}
@media only screen and (max-width: 1024px) {
  .md-first-view .txt-1 .mv-text {
    left: 50%;
    top: 82px;
    transform: translateX(-50%);
    width: 236px;
  }
  .md-first-view .txt-1 .mv-text img {
    width: 100%;
    height: auto;
  }
}
.md-first-view .txt-1 .mv-text a {
  display: inline-block;
  transition-property: opacity, visibility, z-index;
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1);
}
.md-first-view .txt-1 .mv-text a:hover {
  opacity: 0.6;
}
.md-first-view .txt-1 .first {
  display: none;
}
.md-first-view .txt-1 .second {
  display: block;
}
.md-first-view .catch-ttl {
  margin-bottom: 40px;
}
@media only screen and (max-width: 1024px) {
  .md-first-view .catch-btn {
    display: block !important;
    width: 166px;
    margin: 0 auto;
  }
  .md-first-view .catch-btn img {
    width: 100%;
    height: auto;
  }
}
.md-first-view .mv-illust {
  position: absolute;
  background-repeat: no-repeat;
  background-size: 100%;
  pointer-events: none;
}
.md-first-view .mv-illust.i-1-1 {
  width: 99px;
  height: 87px;
  background-image: url("../img/cmn/illust-fv-1-1.png");
  left: calc(-33 / var(--width) * 100vw);
  top: 288px;
}
@media only screen and (max-width: 1024px) {
  .md-first-view .mv-illust.i-1-1 {
    width: 68px;
    height: 60px;
    left: calc(-19 / var(--width) * 100vw);
    top: 207px;
  }
}
.md-first-view .mv-illust.i-1-2 {
  width: 82px;
  height: 74px;
  background-image: url("../img/cmn/illust-fv-1-2.png");
  right: calc(-56 / var(--width) * 100vw);
  top: 200px;
}
@media only screen and (max-width: 1024px) {
  .md-first-view .mv-illust.i-1-2 {
    width: 52px;
    height: 47px;
    right: calc(-20 / var(--width) * 100vw);
    top: 182px;
  }
}
.md-first-view .mv-illust.i-1-3 {
  width: 86px;
  height: 56px;
  background-image: url("../img/cmn/illust-fv-1-3.png");
  right: calc(5 / var(--width) * 100vw);
  top: 317px;
}
@media only screen and (max-width: 1024px) {
  .md-first-view .mv-illust.i-1-3 {
    width: 53px;
    height: 35px;
    right: auto;
    left: calc(62 / var(--width) * 100vw);
    top: auto;
    bottom: 20px;
  }
}
.md-first-view .mv-illust.i-2-1 {
  width: 87px;
  height: 134px;
  background-image: url("../img/cmn/illust-fv-2-1.png");
  left: calc(-33 / var(--width) * 100vw);
  top: 249px;
}
@media only screen and (max-width: 1024px) {
  .md-first-view .mv-illust.i-2-1 {
    width: 44px;
    height: 67px;
    left: auto;
    right: calc(35 / var(--width) * 100vw);
    top: auto;
    bottom: 68px;
  }
}
.md-first-view .mv-illust.i-2-2 {
  width: 103px;
  height: 99px;
  background-image: url("../img/cmn/illust-fv-2-2.png");
  right: calc(60 / var(--width) * 100vw);
  top: 210px;
}
@media only screen and (max-width: 1024px) {
  .md-first-view .mv-illust.i-2-2 {
    width: 52px;
    height: 49px;
    left: calc(9 / var(--width) * 100vw);
    right: auto;
    top: 66px;
  }
}
.md-first-view .mv-illust.i-2-3 {
  width: 106px;
  height: 145px;
  background-image: url("../img/cmn/illust-fv-2-3.png");
  right: calc(-38 / var(--width) * 100vw);
  top: 300px;
}
@media only screen and (max-width: 1024px) {
  .md-first-view .mv-illust.i-2-3 {
    width: 53px;
    height: 73px;
    right: auto;
    left: calc(35 / var(--width) * 100vw);
    top: auto;
    bottom: 43px;
  }
}
.md-first-view .mv-deco {
  position: absolute;
  background-repeat: no-repeat;
  background-size: 100%;
  z-index: 100;
  animation-timing-function: ease-in-out;
  animation-duration: 1.5s;
  animation-name: mvball;
  animation-iteration-count: infinite;
  animation-direction: alternate;
}
@media only screen and (max-width: 1024px) {
  .md-first-view .mv-deco {
    z-index: 0;
    pointer-events: none;
  }
}
.md-first-view .mv-deco.d-1 {
  width: 127px;
  height: 116px;
  background-image: url("../img/cmn/deco-fv-1.png");
  top: 87px;
  left: calc(40 / var(--width) * 100vw);
  animation-duration: 5s;
}
@media only screen and (max-width: 1024px) {
  .md-first-view .mv-deco.d-1 {
    width: 63px;
    height: 58px;
    top: 23px;
    left: calc(10 / var(--width) * 100vw);
  }
}
.md-first-view .mv-deco.d-2 {
  width: 67px;
  height: 62px;
  background-image: url("../img/cmn/deco-fv-2.png");
  top: 193px;
  left: calc(118 / var(--width) * 100vw);
  animation-duration: 2s;
}
@media only screen and (max-width: 1024px) {
  .md-first-view .mv-deco.d-2 {
    width: 33px;
    height: 31px;
    top: 78px;
    left: calc(48 / var(--width) * 100vw);
  }
}
.md-first-view .mv-deco.d-3 {
  width: 97px;
  height: 89px;
  background-image: url("../img/cmn/deco-fv-3.png");
  top: 500px;
  left: calc(105 / var(--width) * 100vw);
  animation-duration: 2.5s;
}
@media only screen and (max-width: 1024px) {
  .md-first-view .mv-deco.d-3 {
    width: 48px;
    height: 44px;
    top: auto;
    bottom: 68px;
    left: 0;
  }
}
.md-first-view .mv-deco.d-4 {
  width: 111px;
  height: 103px;
  background-image: url("../img/cmn/deco-fv-4.png");
  top: 44px;
  right: calc(52 / var(--width) * 100vw);
  animation-duration: 3.5s;
}
@media only screen and (max-width: 1024px) {
  .md-first-view .mv-deco.d-4 {
    width: 56px;
    height: 52px;
    top: 38px;
    right: calc(35 / var(--width) * 100vw);
  }
}
.md-first-view .mv-deco.d-5 {
  width: 65px;
  height: 59px;
  background-image: url("../img/cmn/deco-fv-5.png");
  top: 500px;
  right: calc(134 / var(--width) * 100vw);
  animation-duration: 4s;
}
@media only screen and (max-width: 1024px) {
  .md-first-view .mv-deco.d-5 {
    width: 32px;
    height: 30px;
    top: auto;
    bottom: 60px;
    right: calc(34 / var(--width) * 100vw);
  }
}
.md-first-view .mv-deco.d-6 {
  width: 127px;
  height: 120px;
  background-image: url("../img/cmn/deco-fv-6.png");
  top: 542px;
  right: calc(40 / var(--width) * 100vw);
  transition-delay: 5s;
}
@media only screen and (max-width: 1024px) {
  .md-first-view .mv-deco.d-6 {
    width: 63px;
    height: 60px;
    top: 127px;
    right: calc(-10 / var(--width) * 100vw);
  }
}
.md-first-view .mv-deco.d-7 {
  background-image: url("../img/cmn/deco-fv-4.png");
  width: 56px;
  height: 52px;
  top: auto;
  bottom: 25px;
  right: calc(-4 / var(--width) * 100vw);
}
.md-first-view .slick-list {
  overflow: visible;
}
.md-first-view .slick-slide img {
  width: 100%;
  height: auto;
}

.deco {
  position: absolute;
  background-repeat: no-repeat;
  pointer-events: none;
  background-size: 100%;
  animation-timing-function: ease-in-out;
  animation-duration: 1.5s;
  animation-name: mvball;
  animation-iteration-count: infinite;
  animation-direction: alternate;
}
.deco.d-1 {
  width: 108px;
  height: 101px;
  background-image: url("../img/cmn/gd-1.png");
  bottom: calc(65 / var(--width) * 100vw);
  left: calc(59 / var(--width) * 100vw);
  z-index: 0;
  animation-duration: 4s;
}
@media only screen and (max-width: 1024px) {
  .deco.d-1 {
    width: 54px;
    height: 51px;
    top: -36px;
    left: calc(-48 / var(--width) * 100vw);
  }
}
.deco.d-2 {
  width: 68px;
  height: 63px;
  background-image: url("../img/cmn/gd-2.png");
  bottom: calc(30 / var(--width) * 100vw);
  left: calc(102 / var(--width) * 100vw);
  animation-duration: 3s;
  z-index: 1;
}
@media only screen and (max-width: 1024px) {
  .deco.d-2 {
    width: 36px;
    height: 34px;
    top: 0;
    left: calc(-26 / var(--width) * 100vw);
  }
}
.deco.d-3 {
  width: 76px;
  height: 69px;
  background-image: url("../img/cmn/gd-3.png");
  top: calc(109 / var(--width) * 100vw);
  right: calc(-14 / var(--width) * 100vw);
  z-index: 1;
  animation-duration: 2s;
}
@media only screen and (max-width: 1024px) {
  .deco.d-3 {
    width: 38px;
    height: 35px;
    top: auto;
    bottom: calc(80 / var(--width) * 100vw);
    right: 0;
  }
}
.deco.d-4 {
  width: 124px;
  height: 116px;
  background-image: url("../img/cmn/gd-4.png");
  top: calc(135 / var(--width) * 100vw);
  right: calc(-84 / var(--width) * 100vw);
  z-index: 0;
}
@media only screen and (max-width: 1024px) {
  .deco.d-4 {
    width: 62px;
    height: 58px;
    top: auto;
    bottom: 50px;
    right: calc(-35 / var(--width) * 100vw);
  }
}
.deco.d-5 {
  width: 73px;
  height: 67px;
  background-image: url("../img/cmn/gd-5.png");
  top: calc(478 / var(--width) * 100vw);
  left: calc(-103 / var(--width) * 100vw);
  z-index: 1;
  animation-duration: 4s;
}
@media only screen and (max-width: 1024px) {
  .deco.d-5 {
    width: 36px;
    height: 34px;
    top: auto;
    bottom: 106px;
    left: calc(-36 / var(--width) * 100vw);
  }
}
.deco.d-6 {
  width: 127px;
  height: 120px;
  background-image: url("../img/cmn/gd-6.png");
  top: calc(520 / var(--width) * 100vw);
  left: calc(-64 / var(--width) * 100vw);
  z-index: 0;
  animation-duration: 3s;
}
@media only screen and (max-width: 1024px) {
  .deco.d-6 {
    width: 54px;
    height: 51px;
    top: auto;
    bottom: 50px;
    left: calc(-15 / var(--width) * 100vw);
  }
}
.deco.d-7 {
  width: 59px;
  height: 61px;
  background-image: url("../img/cmn/gd-7.png");
  bottom: calc(67 / var(--width) * 100vw);
  right: calc(6 / var(--width) * 100vw);
  z-index: 1;
  animation-duration: 2s;
}
@media only screen and (max-width: 1024px) {
  .deco.d-7 {
    width: 30px;
    height: 30px;
    bottom: 42px;
    left: calc(8 / var(--width) * 100vw);
    right: auto;
  }
}
.deco.d-8 {
  width: 115px;
  height: 119px;
  background-image: url("../img/cmn/gd-8.png");
  bottom: calc(-24 / var(--width) * 100vw);
  right: calc(-56 / var(--width) * 100vw);
  z-index: 0;
  animation-duration: 4s;
}
@media only screen and (max-width: 1024px) {
  .deco.d-8 {
    width: 58px;
    height: 60px;
    bottom: 0;
    left: calc(8 / var(--width) * 100vw);
    right: auto;
  }
}
.deco.d-9 {
  width: 108px;
  height: 101px;
  background-image: url("../img/cmn/gd-1.png");
  bottom: calc(65 / var(--width) * 100vw);
  left: calc(59 / var(--width) * 100vw);
  z-index: 0;
  animation-duration: 4s;
}
@media only screen and (max-width: 1024px) {
  .deco.d-9 {
    width: 54px;
    height: 51px;
    top: -43px;
    left: auto;
    right: 0;
  }
}
.deco.d-10 {
  width: 68px;
  height: 63px;
  background-image: url("../img/cmn/gd-2.png");
  bottom: calc(30 / var(--width) * 100vw);
  left: calc(102 / var(--width) * 100vw);
  animation-duration: 3s;
  z-index: 1;
}
@media only screen and (max-width: 1024px) {
  .deco.d-10 {
    width: 36px;
    height: 34px;
    top: -6px;
    left: auto;
    right: calc(-5 / var(--width) * 100vw);
  }
}
.deco.d-11 {
  width: 73px;
  height: 67px;
  background-image: url("../img/cmn/gd-5.png");
  top: calc(478 / var(--width) * 100vw);
  left: calc(-103 / var(--width) * 100vw);
  z-index: 1;
  animation-duration: 4s;
}
@media only screen and (max-width: 1024px) {
  .deco.d-11 {
    width: 36px;
    height: 34px;
    top: auto;
    bottom: 86px;
    left: auto;
    right: calc(-10 / var(--width) * 100vw);
  }
}
.deco.d-12 {
  width: 127px;
  height: 120px;
  background-image: url("../img/cmn/gd-6.png");
  top: calc(520 / var(--width) * 100vw);
  left: calc(-64 / var(--width) * 100vw);
  z-index: 0;
  animation-duration: 3s;
}
@media only screen and (max-width: 1024px) {
  .deco.d-12 {
    width: 54px;
    height: 51px;
    top: auto;
    bottom: 45px;
    left: auto;
    right: calc(-50 / var(--width) * 100vw);
  }
}

.page-wrap {
  padding-top: 170px;
}

@keyframes mvball {
  0% {
    transform: translate(0, 0px);
  }
  100% {
    transform: translate(0, -10px);
  }
}
.back-to-top {
  text-align: center;
  padding-top: 124px;
  padding-bottom: 115px;
}
@media only screen and (max-width: 1024px) {
  .back-to-top {
    padding-top: 60px;
    padding-bottom: 55px;
  }
}
.back-to-top a {
  display: inline-block;
  font-size: 2rem;
  background-repeat: no-repeat;
  background-position: 92% 50%;
}
@media screen and (max-width: 1024px) {
  .back-to-top a {
    width: 100%;
  }
}

/*
 * Version: 1.1.5
 */
.md-g-header {
  transition-property: transform;
  transition-duration: 2s;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 8200;
  background: #fef6e4;
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 130px;
  padding-right: calc(84 / var(--width) * 100vw);
  padding-left: calc(84 / var(--width) * 100vw);
}
@media only screen and (max-width: 1100px) {
  .md-g-header {
    transition-property: opacity, visibility, z-index;
    transition-duration: 0.2s;
    transition-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1);
    width: 100%;
    height: 65px;
    border-radius: 0;
    top: 0;
    left: 0;
    padding-right: 0;
    padding-left: 0;
  }
}
.md-g-header p {
  line-height: 1;
}
.md-g-header .h-logo {
  width: 343px;
  margin-right: calc(130 / var(--width) * 100vw);
}
@media only screen and (max-width: 1100px) {
  .md-g-header .h-logo {
    width: 112px;
    margin-left: 17px;
    margin-right: 12px;
  }
}
.md-g-header .h-logo img {
  width: 100%;
  height: auto;
}
.md-g-header .h-logo a {
  display: block;
}
.md-g-header .h-logo p {
  margin-bottom: 0;
}
.md-g-header .h-link {
  display: flex;
}
@media only screen and (max-width: 1024px) {
  .md-g-header .h-link {
    display: block;
    padding-right: 78px;
  }
}
.md-g-header .h-tel {
  margin-right: calc(40 / var(--width) * 100vw);
}
@media only screen and (max-width: 1024px) {
  .md-g-header .h-tel {
    width: 160px;
    margin-right: 0;
  }
  .md-g-header .h-tel img {
    width: 100%;
    height: auto;
  }
}
.md-g-header .h-line {
  margin-right: calc(24 / var(--width) * 100vw);
}
@media only screen and (max-width: 1024px) {
  .md-g-header .h-line {
    display: none;
  }
}
@media only screen and (max-width: 1024px) {
  .md-g-header .h-yt {
    display: none;
  }
}

.is-menu-open .md-g-nav {
  transition-property: opacity, visibility, z-index;
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1);
  opacity: 1;
  visibility: visible;
  z-index: 8000;
}

.md-g-nav {
  background: #ff919e;
  position: fixed;
  top: 130px;
  left: 0;
  width: 100%;
  z-index: 8000;
}
@media only screen and (max-width: 1024px) {
  .md-g-nav {
    top: 0;
    height: 100%;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
    opacity: 0;
    visibility: hidden;
    z-index: -1;
  }
}
.md-g-nav .nav-list {
  display: flex;
  justify-content: center;
}
@media only screen and (max-width: 1024px) {
  .md-g-nav .nav-list {
    display: block;
    padding-top: 65px;
  }
}
.md-g-nav .is-sp {
  text-align: center;
}
.md-g-nav .is-sp img {
  width: 221.5px;
  height: auto;
}
.md-g-nav .is-sp a {
  display: block;
  position: relative;
  padding: 6px 0;
}
.md-g-nav .is-sp a::before {
  content: "";
  position: absolute;
  border-bottom: 1px solid #fff;
  width: 100%;
  bottom: 0;
  left: 0;
}
.md-g-nav .is-sp.line a {
  background: #60c76f;
}
.md-g-nav .is-sp.yt a {
  background: #79c4e8;
}
.md-g-nav .menu {
  position: relative;
}
.md-g-nav .menu a,
.md-g-nav .menu span {
  display: block;
  color: #fff;
  font-size: 1.4rem;
  font-weight: 400;
  padding: 13px 20px;
  position: relative;
}
@media only screen and (max-width: 1024px) {
  .md-g-nav .menu a,
  .md-g-nav .menu span {
    text-align: center;
    font-size: 2.2rem;
    padding: 22px 0;
  }
}
.md-g-nav .menu a::before,
.md-g-nav .menu span::before {
  content: "";
  border-left: 1px solid #fff;
  height: 15px;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
@media only screen and (max-width: 1024px) {
  .md-g-nav .menu a::before,
  .md-g-nav .menu span::before {
    border-left: none;
    height: 0;
    border-bottom: 1px solid #fff;
    width: 100%;
    bottom: 0;
    top: auto;
  }
}
.md-g-nav .menu a {
  transition-property: color, background-color;
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}
.md-g-nav .menu a:hover {
  opacity: 1;
  color: #a81f18;
}
.md-g-nav .menu span {
  display: block;
  cursor: pointer;
}
@media only screen and (max-width: 1024px) {
  .md-g-nav .menu span::after {
    transition-property: transform right;
    transition-duration: 0.2s;
    transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 16px 9px 0 9px;
    border-color: #ffffff transparent transparent transparent;
    position: absolute;
    top: 50%;
    right: 26px;
    transform: translateY(-50%);
  }
}
.md-g-nav .menu.is-active a,
.md-g-nav .menu.is-active span {
  color: #a81f18;
}
.md-g-nav .menu.is-active .menu-second a {
  color: #fff;
}
.md-g-nav .menu:nth-child(1) a::before {
  display: none;
}
@media only screen and (max-width: 1024px) {
  .md-g-nav .menu:nth-child(1) a::before {
    display: block;
  }
}
.md-g-nav .menu:nth-child(2) span {
  padding: 13px 48px;
}
@media only screen and (max-width: 1024px) {
  .md-g-nav .menu:nth-child(2) span {
    padding: 22px 0;
  }
}
.md-g-nav .menu:nth-child(3) span {
  padding: 13px 62px;
}
@media only screen and (max-width: 1024px) {
  .md-g-nav .menu:nth-child(3) span {
    padding: 22px 0;
  }
}
.md-g-nav .menu .menu-second {
  position: absolute;
  width: 100%;
  left: 0;
  bottom: 0;
  visibility: hidden;
  opacity: 0;
  transform: translateY(calc(100% - 10px));
  transition-property: opacity, visibility, transform top right bottom left;
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}
@media only screen and (max-width: 1024px) {
  .md-g-nav .menu .menu-second {
    opacity: 1;
    visibility: visible;
    position: static;
    transform: translateY(0);
    visibility: visible;
  }
}
.md-g-nav .menu .menu-second li {
  background: #ff919e;
}
@media only screen and (max-width: 1024px) {
  .md-g-nav .menu .menu-second li {
    display: none;
  }
  .md-g-nav .menu .menu-second li:first-child {
    padding-top: 10px;
  }
  .md-g-nav .menu .menu-second li:last-child {
    padding-bottom: 10px;
    border-bottom: 1px solid #fff;
  }
}
.md-g-nav .menu .menu-second a {
  transition-property: color, background-color;
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
  text-align: center;
  padding: 12px 0;
}
@media only screen and (max-width: 1024px) {
  .md-g-nav .menu .menu-second a {
    font-size: 2rem;
  }
}
.md-g-nav .menu .menu-second a::before {
  display: none;
}
.md-g-nav .menu .menu-second a:hover {
  opacity: 1;
  background: #ff6a7c;
  color: #a81f18;
}
@media only screen and (max-width: 1024px) {
  .md-g-nav .menu .menu-second a:hover {
    background: #ff919e;
    color: #fff;
  }
}
.md-g-nav .menu:hover .menu-second {
  opacity: 1;
  visibility: visible;
  transform: translateY(100%);
}
@media only screen and (max-width: 1024px) {
  .md-g-nav .menu:hover .menu-second {
    transform: translateY(0);
  }
}

.md-menu-trigger {
  position: fixed;
  top: 0;
  right: 0;
  background: #ff919e;
  width: 65px;
  height: 65px;
  z-index: 9999;
  cursor: pointer;
  display: none;
}
@media only screen and (max-width: 1100px) {
  .md-menu-trigger {
    display: block;
  }
}
.md-menu-trigger::before, .md-menu-trigger::after {
  transition-property: transform right;
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
  content: "";
  width: 40px;
  border-top: 1px solid #fff;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}
.md-menu-trigger::before {
  top: 26px;
}
.md-menu-trigger::after {
  top: 39px;
}

.is-menu-show .md-g-header {
  transform: translate(-50%, 0);
}
@media only screen and (max-width: 1100px) {
  .is-menu-show .md-g-header {
    transform: translate(0, 0);
  }
}

.is-menu-open .md-menu-trigger::before {
  top: 50%;
  transform: translateX(-50%) rotate(45deg);
}
.is-menu-open .md-menu-trigger::after {
  top: 50%;
  transform: translateX(-50%) rotate(-45deg);
}
.is-menu-open .md-g-header {
  opacity: 1;
  visibility: visible;
  z-index: 9000;
}

/*
 * Version: 1.1.5
 */
.md-g-footer {
  background: #aaecef;
  padding-top: calc(58 / var(--width) * 100vw);
}
@media only screen and (max-width: 1024px) {
  .md-g-footer {
    padding-top: 30px;
  }
}
.md-g-footer .f-content {
  max-width: 1010px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-bottom: calc(80 / var(--width) * 100vw);
}
@media only screen and (max-width: 1024px) {
  .md-g-footer .f-content {
    display: block;
    padding-right: 20px;
    padding-bottom: 50px;
    padding-left: 20px;
  }
}
.md-g-footer .f-content .f-company {
  display: flex;
  align-items: center;
}
@media only screen and (max-width: 1024px) {
  .md-g-footer .f-content .f-company {
    justify-content: center;
  }
}
.md-g-footer .f-content .f-logo {
  width: 135px;
  margin-right: calc(32 / var(--width) * 100vw);
}
@media only screen and (max-width: 1024px) {
  .md-g-footer .f-content .f-logo {
    width: 90px;
    margin-right: 40px;
  }
}
.md-g-footer .f-content .f-logo img {
  width: 100%;
  height: auto;
}
.md-g-footer .f-content .f-group {
  width: 300px;
}
@media only screen and (max-width: 1024px) {
  .md-g-footer .f-content .f-group {
    width: auto;
  }
}
.md-g-footer .f-content .f-group li {
  text-align: center;
  font-size: 2.2rem;
  font-weight: 800;
  color: #444;
  line-height: 1.6;
}
@media only screen and (max-width: 1024px) {
  .md-g-footer .f-content .f-group li {
    text-align: left;
    font-size: 1.4rem;
  }
}
@media only screen and (max-width: 1024px) {
  .md-g-footer .f-content .f-tel {
    display: none;
  }
}
.md-g-footer .f-content .f-tel a {
  display: block;
  white-space: nowrap;
}
.md-g-footer .f-content .f-tel span {
  display: block;
}
.md-g-footer .f-content .f-tel span.tel {
  padding-top: 6px;
  font-size: 5.8rem;
  font-weight: 900;
  padding-left: 54px;
  background-image: url("../img/cmn/icon-phone.png");
  background-repeat: no-repeat;
  background-position: 0 100;
  color: #ff919e;
  margin-bottom: 10px;
}
.md-g-footer .f-content .f-tel span.hours {
  color: #444;
  font-size: 2.3rem;
}
.md-g-footer .copy {
  background: #79c4e8;
  color: #fefefe;
  text-align: center;
  font-size: 2rem;
  line-height: 33px;
  margin-bottom: 0 !important;
}
@media only screen and (max-width: 1024px) {
  .md-g-footer .copy {
    font-size: 1rem;
  }
}

/*
 * Version: 1.1.5
 */
.md-page-wrap {
  margin-top: 170px;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap {
    margin-top: 65px;
  }
}
.md-page-wrap .md-first-view {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  width: 100%;
  height: 596px;
}
.md-page-wrap .page-ttl {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 401px;
  transform: translate(-50%, -50%);
  transition-delay: 0.4s;
}
.md-page-wrap .page-ttl img {
  width: 100%;
  height: auto;
}
.md-page-wrap .service-navi {
  padding-top: 53px;
  padding-bottom: 58px;
  background: #fff;
  position: relative;
  margin-bottom: 122px;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .service-navi {
    padding-top: 26px;
    padding-bottom: 30px;
    margin-bottom: 100px;
  }
}
.md-page-wrap .service-navi:last-of-type {
  margin-bottom: 0;
}
.md-page-wrap .service-navi ul {
  max-width: 1020px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .service-navi ul {
    justify-content: center;
    padding-top: 30px;
    padding-bottom: 30px;
  }
}
.md-page-wrap .service-navi li {
  margin: 10px;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .service-navi li {
    margin: 5px;
  }
}
.md-page-wrap .service-navi li img {
  max-width: 100%;
  height: auto;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .service-navi li:nth-of-type(1) img {
    width: 120px;
  }
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .service-navi li:nth-of-type(2) img {
    width: 120px;
  }
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .service-navi li:nth-of-type(3) img {
    width: 84px;
  }
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .service-navi li:nth-of-type(4) img {
    width: 82px;
  }
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .service-navi li:nth-of-type(5) img {
    width: 107px;
  }
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .service-navi li:nth-of-type(6) img {
    width: 59px;
  }
}
.md-page-wrap .service-navi li a {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 2.3rem;
  font-weight: 700;
  text-align: center;
  line-height: 70px;
  color: #fff;
  display: block;
  background: #6ebfb0;
  transition-property: color, background-color;
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
  border-radius: 10px;
  width: calc(320 / var(--width) * 100vw);
  max-width: 320px;
  height: 70px;
  position: relative;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .service-navi li a {
    width: calc(160 / var(--width) * 100vw);
    max-width: 160px;
    height: auto;
    line-height: initial;
    font-size: 1.4rem;
    padding: 10px 10px;
  }
}
.md-page-wrap .service-navi li a img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.md-page-wrap .service-navi li a:hover {
  opacity: 1;
  background: #4ab29f;
}
.md-page-wrap .service-navi .d-1 {
  bottom: calc(-65 / var(--width) * 100vw);
  left: calc(59 / var(--width) * 100vw);
  z-index: 0;
  animation-duration: 4s;
}
.md-page-wrap .service-navi .d-2 {
  bottom: calc(-102 / var(--width) * 100vw);
  left: calc(102 / var(--width) * 100vw);
  animation-duration: 3s;
  z-index: 1;
}
.md-page-wrap .service-content {
  max-width: 1000px;
  margin: 0 auto 190px auto;
  position: relative;
  background: #fff;
  border-radius: 10px;
  padding-top: 50px;
  padding-bottom: 78px;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .service-content {
    padding-bottom: 50px;
    margin: 0 auto 120px auto;
  }
}
.md-page-wrap .service-content h2 {
  font-size: 3rem;
  font-weight: 700;
  text-align: center;
  line-height: 1.8;
  color: #1d1d1c;
  position: relative;
  margin-bottom: 50px;
  z-index: 0;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .service-content h2 {
    font-size: 2.4rem;
    margin-bottom: 20px;
  }
}
.md-page-wrap .service-content h2 span {
  position: relative;
  z-index: 1;
  display: block;
}
.md-page-wrap .service-content h2 small {
  display: block;
  font-size: 2.4rem;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .service-content h2 small {
    font-size: 2rem;
  }
}
.md-page-wrap .service-content h2::before, .md-page-wrap .service-content h2::after {
  content: "";
  position: absolute;
}
.md-page-wrap .service-content h2::before {
  width: 276px;
  height: 276px;
  border-radius: 50%;
  background: #fff;
  top: -137px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 0;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .service-content h2::before {
    width: 150px;
    height: 150px;
    top: -120px;
  }
}
.md-page-wrap .service-content h2::after {
  background-repeat: no-repeat;
  background-size: 100%;
  top: -90px;
  transform: translateX(-50%);
  z-index: 1;
  left: 50%;
}
.md-page-wrap .service-content h3 {
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: 6px;
}
.md-page-wrap .service-content .content-inner {
  display: flex;
  position: relative;
  z-index: 1;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .service-content .content-inner {
    display: block;
  }
}
.md-page-wrap .service-content .content-inner p {
  font-size: 1.8rem;
  line-height: 2.6;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .service-content .content-inner p {
    font-size: 1.6rem;
  }
}
.md-page-wrap .service-content .btn-facility-list {
  text-align: center;
  padding-top: 80px;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .service-content .btn-facility-list {
    padding-top: 40px;
    margin: 0 20px;
  }
}
.md-page-wrap .service-content .btn-facility-list a {
  display: inline-block;
  font-size: 2.3rem;
  min-width: 422px;
  font-weight: 800;
  padding: 34px 40px;
  border-radius: 45px;
  color: #fff;
  background: #89c8ff;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .service-content .btn-facility-list a {
    font-size: 1.8rem;
    padding: 30px 20px;
    min-width: 100%;
  }
}
.md-page-wrap .service-content .illust {
  position: absolute;
  background-repeat: no-repeat;
  background-size: 100%;
}
.md-page-wrap .service-content .illust.i-1 {
  width: 87px;
  height: 134px;
  background-image: url("../img/service/i-1.png");
  bottom: 73px;
  left: 89px;
}
.md-page-wrap .service-content .illust.i-2 {
  width: 91px;
  height: 115px;
  background-image: url("../img/service/i-2.png");
  bottom: 65px;
  right: 57px;
}
.md-page-wrap .service-content .illust.i-3 {
  width: 105px;
  height: 92px;
  background-image: url("../img/service/i-3.png");
  bottom: 68px;
  left: 96px;
}
.md-page-wrap .service-content .illust.i-4 {
  width: 99px;
  height: 135px;
  background-image: url("../img/service/i-4.png");
  bottom: 60px;
  right: 80px;
}
.md-page-wrap .service-content .img-col-1 {
  padding: 60px 0;
  text-align: center;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .service-content .img-col-1 {
    display: block;
    padding: 30px 0 10px 0;
  }
  .md-page-wrap .service-content .img-col-1 img {
    width: 100%;
    height: auto;
    margin-bottom: 20px;
  }
}
.md-page-wrap .service-content .img-col-1 img {
  max-width: 100%;
  height: auto;
}
.md-page-wrap .service-content .img-col-2 {
  display: flex;
  justify-content: space-between;
  padding: 60px 0;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .service-content .img-col-2 {
    display: block;
    padding: 30px 0 10px 0;
  }
  .md-page-wrap .service-content .img-col-2 img {
    width: 100%;
    height: auto;
    margin-bottom: 20px;
  }
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .service-content .img img {
    width: 100%;
    height: auto;
  }
}
.md-page-wrap .service-content .comming-soon {
  position: relative;
  z-index: 1;
  text-align: center;
}
.md-page-wrap .service-content .comming-soon p {
  font-size: 3.7rem;
  color: #808080;
}
.md-page-wrap .service-content.day-service h2::after {
  width: 78px;
  height: 74px;
  background-image: url("../img/service/icon-ttl-day-service.png");
}
.md-page-wrap .service-content.day-service .img {
  margin-top: -78px;
  margin-left: -130px;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .service-content.day-service .img {
    margin: 0 0 30px 0;
  }
}
.md-page-wrap .service-content.day-service .txt {
  padding-left: 32px;
  padding-right: 80px;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .service-content.day-service .txt {
    padding-left: 30px;
    padding-right: 30px;
  }
}
.md-page-wrap .service-content.day-service .d-3 {
  top: calc(454 / var(--width) * 100vw);
  right: calc(-31 / var(--width) * 100vw);
  z-index: 1;
  animation-duration: 2s;
}
.md-page-wrap .service-content.day-service .d-4 {
  top: calc(480 / var(--width) * 100vw);
  right: calc(-84 / var(--width) * 100vw);
  z-index: 0;
}
.md-page-wrap .service-content.development-support .content-inner {
  flex-direction: row-reverse;
}
.md-page-wrap .service-content.development-support h2::after {
  width: 82px;
  height: 74px;
  background-image: url("../img/service/icon-ttl-child-dev.png");
}
.md-page-wrap .service-content.development-support .img {
  margin-top: -51px;
  margin-right: -86px;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .service-content.development-support .img {
    margin: 0;
  }
}
.md-page-wrap .service-content.development-support .txt {
  padding-left: 72px;
  padding-right: 49px;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .service-content.development-support .txt {
    padding-left: 30px;
    padding-right: 30px;
  }
}
.md-page-wrap .service-content.development-support .btn-facility-list a {
  background: #ff919e;
}
.md-page-wrap .service-content.development-support .d-5 {
  top: calc(-92 / var(--width) * 100vw);
  left: calc(-88 / var(--width) * 100vw);
  z-index: 1;
  animation-duration: 3s;
}
.md-page-wrap .service-content.development-support .d-6 {
  top: calc(-54 / var(--width) * 100vw);
  left: calc(-50 / var(--width) * 100vw);
  z-index: 0;
  animation-duration: 5s;
}
.md-page-wrap .service-content.development-support .d-7 {
  bottom: calc(-38 / var(--width) * 100vw);
  right: calc(4 / var(--width) * 100vw);
  z-index: 1;
  animation-duration: 2s;
}
.md-page-wrap .service-content.development-support .d-8 {
  bottom: calc(-122 / var(--width) * 100vw);
  right: calc(-56 / var(--width) * 100vw);
  z-index: 0;
  animation-duration: 4s;
}
.md-page-wrap .service-content.consultation .content-inner {
  display: block;
  padding: 0 72px;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .service-content.consultation .content-inner {
    padding: 0 30px;
  }
}
.md-page-wrap .service-content.consultation h2::after {
  width: 94px;
  height: 69px;
  background-image: url("../img/service/icon-ttl-consultation.png");
}
.md-page-wrap .service-content.consultation .btn-facility-list a {
  background: #c43830;
}
.md-page-wrap .service-content.consultation .d-3 {
  top: auto;
  bottom: calc(193 / var(--width) * 100vw);
  right: calc(-19 / var(--width) * 100vw);
  z-index: 1;
  animation-duration: 2s;
}
.md-page-wrap .service-content.consultation .d-4 {
  top: auto;
  bottom: calc(120 / var(--width) * 100vw);
  right: calc(-87 / var(--width) * 100vw);
  z-index: 0;
}
.md-page-wrap .service-content.community-based .content-inner {
  display: block;
  padding: 0 70px;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .service-content.community-based .content-inner {
    padding: 0 30px;
  }
}
.md-page-wrap .service-content.community-based h2::after {
  width: 91px;
  height: 72px;
  background-image: url("../img/service/icon-ttl-commbase.png");
}
.md-page-wrap .service-content.community-based .btn-facility-list a {
  background: #ce9a6c;
}
.md-page-wrap .service-content.community-based .d-5 {
  top: calc(-34 / var(--width) * 100vw);
  left: calc(-86 / var(--width) * 100vw);
  z-index: 1;
  animation-duration: 3s;
}
.md-page-wrap .service-content.community-based .d-6 {
  top: calc(22 / var(--width) * 100vw);
  left: calc(-51 / var(--width) * 100vw);
  z-index: 0;
  animation-duration: 5s;
}
.md-page-wrap .service-content.community-based .d-7 {
  bottom: calc(25 / var(--width) * 100vw);
  right: calc(4 / var(--width) * 100vw);
  z-index: 1;
  animation-duration: 2s;
}
.md-page-wrap .service-content.community-based .d-8 {
  bottom: calc(-60 / var(--width) * 100vw);
  right: calc(-56 / var(--width) * 100vw);
  z-index: 0;
  animation-duration: 4s;
}
.md-page-wrap .service-content.group-home .content-inner {
  display: block;
  padding: 0 70px;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .service-content.group-home .content-inner {
    padding: 0 30px;
  }
}
.md-page-wrap .service-content.group-home h2::after {
  width: 108px;
  height: 106px;
  top: -116px;
  background-image: url("../img/service/icon-ttl-group-home.png");
}
.md-page-wrap .service-content.group-home .btn-facility-list a {
  background: #d7b746;
}
.md-page-wrap .service-content.life-care .content-inner {
  display: block;
  padding: 0 70px;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .service-content.life-care .content-inner {
    padding: 0 30px;
  }
}
.md-page-wrap .service-content.life-care h2::after {
  width: 108px;
  height: 106px;
  top: -116px;
  background-image: url("../img/service/icon-ttl-life-care.png");
}
.md-page-wrap .service-content.life-care .btn-facility-list a {
  background: #6db27d;
}
.md-page-wrap .service-content.visiting-nursery-schools .content-inner {
  display: block;
  padding: 0 70px;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .service-content.visiting-nursery-schools .content-inner {
    padding: 0 30px;
  }
}
.md-page-wrap .service-content.visiting-nursery-schools h2::after {
  width: 108px;
  height: 106px;
  top: -116px;
  background-image: url("../img/service/icon-ttl-visiting-nursery-schools.png");
}
.md-page-wrap .service-content.visiting-nursery-schools .btn-facility-list a {
  background: #e98be6;
}
.md-page-wrap .service-content.visiting-nursery-schools .btn-facility-list--stack {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}
.md-page-wrap .service-content.visiting-nursery-schools .btn-facility-list--stack a {
  box-sizing: border-box;
  width: 100%;
  max-width: 422px;
  min-width: 0;
  text-align: center;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .service-content.visiting-nursery-schools .btn-facility-list--stack a {
    max-width: none;
  }
}
.md-page-wrap .service-content.ninja9 {
  margin-bottom: 0;
}
.md-page-wrap .service-content.ninja9 h2::after {
  width: 85px;
  height: 88px;
  top: -113px;
  background-image: url("../img/service/icon-ttl-ninja9.png");
}
.md-page-wrap .service-content.ninja9 .img {
  margin-top: -30px;
  margin-left: -48px;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .service-content.ninja9 .img {
    margin: 0;
    margin-bottom: 30px;
  }
}
.md-page-wrap .service-content.ninja9 dl {
  padding-left: 58px;
  padding-right: 80px;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .service-content.ninja9 dl {
    padding: 0 30px;
  }
}
.md-page-wrap .service-content.ninja9 dt,
.md-page-wrap .service-content.ninja9 dd {
  font-size: 2rem;
  line-height: 1.6;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .service-content.ninja9 dt,
  .md-page-wrap .service-content.ninja9 dd {
    font-size: 1.6rem;
  }
}
.md-page-wrap .service-content.ninja9 dt {
  color: #1d1d1c;
}
.md-page-wrap .service-content.ninja9 dt h3 {
  font-weight: 400;
}
.md-page-wrap .service-content.ninja9 dd {
  margin-bottom: 14px;
}
.md-page-wrap .service-content.ninja9 dd a {
  color: #207df1;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .service-content.ninja9 dd a {
    word-break: break-all;
  }
}
.md-page-wrap .service-content.ninja9 .d-1 {
  width: 127px;
  height: 116px;
  background-image: url("../img/cmn/deco-fv-1.png");
  top: calc(-64 / var(--width) * 100vw);
  left: calc(-100 / var(--width) * 100vw);
  z-index: 0;
  animation-duration: 6s;
}
.md-page-wrap .service-content.ninja9 .d-2 {
  width: 67px;
  height: 62px;
  background-image: url("../img/cmn/deco-fv-2.png");
  top: calc(22 / var(--width) * 100vw);
  left: calc(-20 / var(--width) * 100vw);
  animation-duration: 3s;
  z-index: 1;
}
.md-page-wrap .service-content.ninja9 .d-4 {
  top: auto;
  bottom: calc(-57 / var(--width) * 100vw);
  right: calc(-95 / var(--width) * 100vw);
  z-index: 0;
}
.md-page-wrap .service-content.long-term-residence .content-inner {
  display: block;
  padding: 0 70px;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .service-content.long-term-residence .content-inner {
    padding: 0 30px;
  }
}
.md-page-wrap .service-content.long-term-residence h2::after {
  width: 123px;
  height: 109px;
  top: -110px;
  background-image: url("../img/service/icon-ttl-b.png");
}
.md-page-wrap .service-content.long-term-residence .btn-facility-list a {
  background: #75AA2C;
}
.md-page-wrap .service-content.short-term-residence .content-inner {
  display: block;
  padding: 0 70px;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .service-content.short-term-residence .content-inner {
    padding: 0 30px;
  }
}
.md-page-wrap .service-content.short-term-residence h2::after {
  width: 120px;
  height: 86px;
  background-image: url("../img/service/icon-ttl-short.png");
}
.md-page-wrap .service-content.short-term-residence .btn-facility-list a {
  background: #767FC6;
}
.md-page-wrap .service-content-img {
  margin-top: 30px;
  margin-right: 30px;
  margin-left: 30px;
  text-align: center;
}
.md-page-wrap .service-content-img img {
  max-width: 100%;
  height: auto;
}
.md-page-wrap .service-content-img + p {
  margin-top: 20px;
}
.md-page-wrap.service {
  background: #e8fafd;
}
.md-page-wrap.service .page-ttl {
  width: 401px;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap.service .page-ttl {
    width: 300px;
  }
}
.md-page-wrap.service .md-first-view {
  background-image: url("../img/service/fv-service.jpg");
}
.md-page-wrap .about-content {
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
}
.md-page-wrap .about-content .d-1 {
  width: 67px;
  height: 62px;
  background-image: url("../img/about/deco-1.png");
  top: 135px;
  left: calc(191 / var(--width) * 100vw);
  z-index: 1;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .about-content .d-1 {
    width: 33px;
    height: 31px;
    top: 40px;
    left: calc(0 / var(--width) * 100vw);
  }
}
.md-page-wrap .about-content .d-2 {
  width: 127px;
  height: 120px;
  background-image: url("../img/about/deco-2.png");
  top: 310px;
  right: calc(160 / var(--width) * 100vw);
  left: auto;
  z-index: 1;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .about-content .d-2 {
    width: 63px;
    height: 60px;
    top: 140px;
    right: calc(0 / var(--width) * 100vw);
  }
}
.md-page-wrap .about-content .d-3 {
  width: 97px;
  height: 89px;
  background-image: url("../img/about/deco-3.png");
  top: 497px;
  left: calc(62 / var(--width) * 100vw);
  z-index: 1;
}
.md-page-wrap .about-content .d-4 {
  width: 65px;
  height: 59px;
  background-image: url("../img/about/deco-4.png");
  top: 660px;
  right: calc(162 / var(--width) * 100vw);
  left: auto;
  z-index: 1;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .about-content .d-4 {
    width: 32px;
    height: 30px;
    top: auto;
    bottom: 15px;
    right: calc(62 / var(--width) * 100vw);
  }
}
.md-page-wrap .about-content .d-5 {
  width: 68px;
  height: 63px;
  background-image: url("../img/about/deco-5.png");
  top: 193px;
  left: calc(23 / var(--width) * 100vw);
  z-index: 1;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .about-content .d-5 {
    width: 34px;
    height: 32px;
    top: 50px;
    left: calc(23 / var(--width) * 100vw);
  }
}
.md-page-wrap .about-content .img {
  position: absolute;
  background-repeat: no-repeat;
  background-size: 100%;
}
.md-page-wrap .about-content .img.i-1 {
  width: 166px;
  height: 152px;
  background-image: url("../img/about/img-philosophy-1.png");
  top: 69px;
  left: calc(223 / var(--width) * 100vw);
  z-index: 0;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .about-content .img.i-1 {
    width: 83px;
    height: 76px;
    top: 10px;
    left: calc(10 / var(--width) * 100vw);
  }
}
.md-page-wrap .about-content .img.i-2 {
  width: 205px;
  height: 194px;
  background-image: url("../img/about/img-philosophy-2.png");
  top: 510px;
  right: calc(20 / var(--width) * 100vw);
  left: auto;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .about-content .img.i-2 {
    width: 102px;
    height: 100px;
    top: auto;
    bottom: 20px;
    right: calc(0 / var(--width) * 100vw);
  }
}
.md-page-wrap .about-content .img.i-3 {
  width: 216px;
  height: 203px;
  background-image: url("../img/about/img-guideline-1.png");
  top: 44px;
  left: calc(-122 / var(--width) * 100vw);
  z-index: 1;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .about-content .img.i-3 {
    width: 108px;
    height: 102px;
    top: -30px;
    left: calc(-22 / var(--width) * 100vw);
  }
}
.md-page-wrap .about-content .img.i-4 {
  width: 202px;
  height: 189px;
  background-image: url("../img/about/img-guideline-2.png");
  bottom: -124px;
  right: calc(-104 / var(--width) * 100vw);
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .about-content .img.i-4 {
    width: 101px;
    height: 99px;
    bottom: -30px;
    right: calc(30 / var(--width) * 100vw);
  }
}
.md-page-wrap .about-content .illust {
  position: absolute;
  background-repeat: no-repeat;
  top: 50%;
  transform: translateY(-50%);
}
.md-page-wrap .about-content .illust.i-1 {
  width: 179px;
  height: 135px;
  background-image: url("../img/about/illust-1.png");
  left: -210px;
  z-index: 1;
}
.md-page-wrap .about-content .illust.i-2 {
  width: 199px;
  height: 145px;
  background-image: url("../img/about/illust-2.png");
  right: -217px;
  left: auto;
  z-index: 1;
}
.md-page-wrap .about-content.philosophy {
  text-align: center;
  background: #fff;
  padding-top: 144px;
  padding-bottom: 76px;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .about-content.philosophy {
    padding-top: 55px;
    padding-bottom: 146px;
  }
}
.md-page-wrap .about-content.philosophy h2 {
  margin-bottom: 68px;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .about-content.philosophy h2 {
    margin-bottom: 30px;
  }
}
.md-page-wrap .about-content.philosophy h3 {
  color: #79c4e8;
  font-weight: 800;
  font-size: 2.8rem;
  margin-bottom: 70px;
  line-height: 1.3;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .about-content.philosophy h3 {
    margin-bottom: 30px;
    font-size: 2.4rem;
  }
}
.md-page-wrap .about-content.philosophy p {
  font-size: 2rem;
  line-height: 2.6;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .about-content.philosophy p {
    font-size: 1.6rem;
    margin-right: 30px;
    margin-left: 30px;
  }
  .md-page-wrap .about-content.philosophy p br {
    display: none;
  }
}
.md-page-wrap .about-content.guideline {
  background: #effdff;
  padding-top: 109px;
  padding-bottom: 124px;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .about-content.guideline {
    padding-top: 10px;
    padding-bottom: 60px;
  }
}
.md-page-wrap .about-content.guideline .guideline-ttl {
  text-align: center;
}
.md-page-wrap .about-content.guideline h2 {
  margin-bottom: 98px;
  position: relative;
  display: inline-block;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .about-content.guideline h2 {
    margin-bottom: 50px;
  }
}
.md-page-wrap .about-content.guideline ol {
  padding-left: calc(173 / var(--width) * 100vw);
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .about-content.guideline ol {
    padding-left: 30px;
  }
}
.md-page-wrap .about-content.guideline li {
  display: flex;
  align-items: center;
  background-repeat: no-repeat;
  background-position: 0 50%;
  padding: 9px 0;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .about-content.guideline li {
    display: block;
    background-position: 0 0;
    margin-bottom: 40px;
  }
}
.md-page-wrap .about-content.guideline li h3 {
  font-size: 2.8rem;
  font-weight: 800;
  color: #79c4e8;
  padding-left: 85px;
  width: 260px;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .about-content.guideline li h3 {
    padding-left: 65px;
    margin-bottom: 20px;
  }
}
.md-page-wrap .about-content.guideline li p {
  font-weight: 700;
  font-size: 2rem;
  color: #1d1d1c;
}
.md-page-wrap .about-content.guideline li:nth-of-type(1) {
  background-image: url("../img/about/num-1.png");
}
.md-page-wrap .about-content.guideline li:nth-of-type(2) {
  background-image: url("../img/about/num-2.png");
}
.md-page-wrap .about-content.guideline li:nth-of-type(3) {
  background-image: url("../img/about/num-3.png");
}
.md-page-wrap .about-content.guideline li:nth-of-type(4) {
  background-image: url("../img/about/num-4.png");
}
.md-page-wrap .about-content.guideline li:nth-of-type(5) {
  background-image: url("../img/about/num-5.png");
}
.md-page-wrap .about-content.guideline li:nth-of-type(6) {
  background-image: url("../img/about/num-6.png");
}
.md-page-wrap .about-content.guideline .content-inner {
  position: relative;
  background: #fff;
  border-radius: 10px;
  max-width: 1000px;
  margin: 0 auto;
  padding-top: 95px;
  padding-bottom: 148px;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .about-content.guideline .content-inner {
    padding-top: 50px;
    padding-bottom: 48px;
  }
}
.md-page-wrap .about-content.company {
  padding-top: 138px;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .about-content.company {
    padding-top: 40px;
  }
}
.md-page-wrap .about-content.company h2 {
  font-size: 3rem;
  font-weight: 700;
  text-align: center;
  margin-bottom: 110px;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .about-content.company h2 {
    margin-bottom: 40px;
  }
}
.md-page-wrap .about-content.company .table {
  max-width: 718px;
  margin: 0 auto 60px auto;
  display: flex;
  flex-wrap: wrap;
  border-bottom: 1px solid #cacaca;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .about-content.company .table {
    display: block;
  }
}
.md-page-wrap .about-content.company .table dt,
.md-page-wrap .about-content.company .table dd {
  padding: 14px 30px;
  box-sizing: border-box;
  font-size: 1.4rem;
  border-top: 1px solid #cacaca;
}
.md-page-wrap .about-content.company .table dt {
  font-weight: 700;
  width: 165px;
  background: #fef6e4;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .about-content.company .table dt {
    width: 100%;
  }
}
.md-page-wrap .about-content.company .table dd {
  width: 553px;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .about-content.company .table dd {
    width: 100%;
  }
}
.md-page-wrap .about-content.company .pdf-link {
  padding-top: 123px;
  padding-bottom: 100px;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .about-content.company .pdf-link {
    padding-top: 40px;
  }
}
.md-page-wrap .about-content.company .pdf-link ul {
  display: flex;
  justify-content: center;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .about-content.company .pdf-link ul {
    display: block;
  }
}
.md-page-wrap .about-content.company .pdf-link li {
  margin: 0 80px;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .about-content.company .pdf-link li {
    margin-bottom: 30px;
  }
}
.md-page-wrap .about-content.company .pdf-link li a {
  padding-top: 20px;
  padding-bottom: 10px;
  display: block;
  background-repeat: no-repeat;
  background-position: left center;
  background-image: url("../img/about/icon-pdf.png");
  padding-left: 50px;
  border-bottom: 1px solid #adadad;
  font-size: 2rem;
}
.md-page-wrap .about-content.recruit {
  padding-top: 140px;
  padding-bottom: 56px;
  max-width: 1000px;
  margin: 0 auto;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .about-content.recruit {
    padding-top: 50px;
  }
}
.md-page-wrap .about-content.recruit h2 {
  font-size: 4.3rem;
  font-weight: 700;
  text-align: center;
  color: #ff919e;
  margin-bottom: 60px;
  line-height: 1.5;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .about-content.recruit h2 {
    font-size: 3rem;
    margin-bottom: 30px;
  }
}
.md-page-wrap .about-content.recruit h3 {
  text-align: center;
  color: #79c4e8;
  font-size: 2.8rem;
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: 80px;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .about-content.recruit h3 {
    font-size: 2.4rem;
    margin-bottom: 40px;
  }
}
.md-page-wrap .about-content.recruit p {
  line-height: 2;
  font-size: 1.4rem;
  padding-left: 68px;
  padding-right: 69px;
  margin-bottom: 86px;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .about-content.recruit p {
    padding-left: 30px;
    padding-right: 30px;
  }
}
.md-page-wrap .about-content.volunteer {
  padding-top: 160px;
  background: #effdff;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .about-content.volunteer {
    padding-top: 50px;
  }
}
.md-page-wrap .about-content.volunteer h2 {
  font-size: 4.2rem;
  font-weight: 700;
  text-align: center;
  color: #a4c857;
  margin-bottom: 60px;
  line-height: 1.5;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .about-content.volunteer h2 {
    font-size: 3rem;
    margin-bottom: 30px;
  }
}
.md-page-wrap .about-content.volunteer .lead {
  text-align: center;
  font-weight: 700;
  margin-bottom: 80px;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .about-content.volunteer .lead {
    margin-right: 20px;
    margin-left: 20px;
    margin-bottom: 40px;
  }
}
.md-page-wrap .about-content.volunteer .lead h3 {
  text-align: center;
  color: #8d8d8d;
  font-size: 2.8rem;
  font-weight: 700;
  line-height: 1.5;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .about-content.volunteer .lead h3 {
    font-size: 2.4rem;
  }
}
.md-page-wrap .about-content.volunteer .lead p {
  line-height: 2;
  font-size: 2.1rem;
  color: #8d8d8d;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .about-content.volunteer .lead p {
    font-size: 2rem;
  }
}
.md-page-wrap .about-content.volunteer .essentials {
  max-width: 707px;
  margin: 0 auto;
  padding: 62px 54px 22px 54px;
  background: #fff;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .about-content.volunteer .essentials {
    padding: 32px 30px 22px 30px;
  }
}
.md-page-wrap .about-content.volunteer .essentials h3 {
  font-size: 2.7rem;
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: 40px;
}
.md-page-wrap .about-content.volunteer .essentials h4 {
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 2;
}
.md-page-wrap .about-content.volunteer .essentials p {
  font-size: 1.8rem;
  line-height: 2;
  margin-bottom: 40px;
}
.md-page-wrap .about-content.group a, .md-page-wrap .about-content.cooperating a {
  color: #3460ee;
  font-size: 1.8rem;
  display: inline-block;
  border-bottom: 1px solid #3460ee;
  line-height: 1.8;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .about-content.group a, .md-page-wrap .about-content.cooperating a {
    font-size: 1.6rem;
  }
}
.md-page-wrap .about-content.group a::after, .md-page-wrap .about-content.cooperating a::after {
  content: " >";
}
.md-page-wrap .about-content.group a:hover, .md-page-wrap .about-content.cooperating a:hover {
  border-bottom: 1px solid transparent;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .about-content.group a:hover, .md-page-wrap .about-content.cooperating a:hover {
    border-bottom: 1px solid #3460ee;
  }
}
.md-page-wrap .about-content.group {
  padding-top: 138px;
  margin-bottom: 156px;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .about-content.group {
    padding-top: 40px;
    margin-bottom: 76px;
  }
}
.md-page-wrap .about-content.group h2 {
  font-size: 3rem;
  font-weight: 700;
  text-align: center;
  margin-bottom: 50px;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .about-content.group h2 {
    margin-bottom: 40px;
  }
}
.md-page-wrap .about-content.group ul {
  text-align: center;
}
.md-page-wrap .about-content.cooperating {
  padding-top: 138px;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .about-content.cooperating {
    padding-top: 40px;
  }
}
.md-page-wrap .about-content.cooperating h2 {
  font-size: 3rem;
  font-weight: 700;
  text-align: center;
  margin-bottom: 100px;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .about-content.cooperating h2 {
    margin-bottom: 40px;
  }
}
.md-page-wrap .about-content.cooperating .cooperating-group {
  max-width: 900px;
  margin: 0 auto 60px;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .about-content.cooperating .cooperating-group {
    margin-bottom: 40px;
    padding-left: 20px;
    padding-right: 20px;
  }
}
.md-page-wrap .about-content.cooperating .cooperating-group:last-child {
  margin-bottom: 0;
}
.md-page-wrap .about-content.cooperating h3 {
  font-size: 2rem;
  font-weight: 700;
  text-align: center;
  margin-bottom: 40px;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .about-content.cooperating h3 {
    font-size: 1.8rem;
    margin-bottom: 24px;
  }
}
.md-page-wrap .about-content.cooperating ul {
  display: flex;
  flex-wrap: wrap;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .about-content.cooperating ul {
    display: block;
  }
}
.md-page-wrap .about-content.cooperating li {
  width: 50%;
  margin-bottom: 5em;
  font-size: 1.8rem;
  line-height: 1.8;
  padding-left: 70px;
  box-sizing: border-box;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .about-content.cooperating li {
    width: 100%;
    margin-bottom: 2em;
    font-size: 1.6rem;
    padding-left: 0;
  }
}
.md-page-wrap .about-content.cooperating li a {
  margin-left: 0;
}
.md-page-wrap.about-us .page-ttl {
  width: 950px;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap.about-us .page-ttl {
    width: 280px;
  }
}
.md-page-wrap .mov {
  position: relative;
  background: #000;
  mix-blend-mode: multiply;
}
.md-page-wrap .mov::before {
  content: "";
  display: block;
  padding-top: 56.25%;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .mov::before {
    padding-top: 100vh;
  }
}
.md-page-wrap .mov video {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  opacity: 0.7;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap .mov video {
    height: 100%;
    width: auto;
  }
}
.md-page-wrap.recruitment {
  font-family: "Noto Sans JP", sans-serif;
}
.md-page-wrap.recruitment .page-ttl {
  width: 575px;
  top: auto;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap.recruitment .page-ttl {
    width: 320px;
  }
}
.md-page-wrap.recruitment .md-first-view {
  background-image: url("../img/recruitment/fv-recruitment.jpg");
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap.recruitment .md-first-view {
    height: 270px;
    background-size: cover;
  }
}
.md-page-wrap.recruitment .btn-recruit {
  text-align: center;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap.recruitment .btn-recruit {
    padding: 0 20px;
  }
}
.md-page-wrap.recruitment .btn-recruit a {
  display: inline-block;
  width: 786px;
  height: 120px;
  line-height: 120px;
  background: #f6c224;
  font-size: 3.3rem;
  font-weight: 700;
  color: #fff;
  background-image: url("../img/cmn/arr-right.png");
  background-repeat: no-repeat;
  background-position: 96% 50%;
  border-radius: 10px;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap.recruitment .btn-recruit a {
    background-size: 22px;
    height: auto;
    width: 100%;
    font-size: 2.4rem;
    line-height: 1.4;
    padding-top: 20px;
    padding-bottom: 20px;
  }
}
.md-page-wrap.recruitment .btn-volunteer {
  text-align: center;
  padding-top: 85px;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap.recruitment .btn-volunteer {
    padding: 0 20px;
  }
}
.md-page-wrap.recruitment .btn-volunteer a {
  display: inline-block;
  width: 786px;
  height: 120px;
  line-height: 120px;
  background: #a4c857;
  font-size: 3.3rem;
  font-weight: 700;
  color: #fff;
  background-image: url("../img/cmn/arr-right.png");
  background-repeat: no-repeat;
  background-position: 96% 50%;
  border-radius: 10px;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap.recruitment .btn-volunteer a {
    background-size: 22px;
    height: auto;
    width: 100%;
    font-size: 2.4rem;
    line-height: 1.4;
    padding-top: 20px;
    padding-bottom: 20px;
  }
}
.md-page-wrap.contact {
  background: #effafb;
  padding-top: 124px;
  font-family: "Noto Sans JP", sans-serif;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap.contact {
    padding-top: 70px;
  }
}
.md-page-wrap.contact .page-ttl {
  position: static;
  text-align: center;
  font-size: 3rem;
  letter-spacing: 0.02em;
  transform: translate(0, 0);
  width: 100%;
  margin-bottom: 75px;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap.contact .page-ttl {
    font-size: 3rem;
    margin-bottom: 30px;
  }
}
.md-page-wrap.contact p {
  font-size: 1.6rem;
}
.md-page-wrap.contact .contact-lead {
  max-width: 840px;
  padding-right: 20px;
  padding-left: 20px;
  margin: 0 auto 82px auto;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap.contact .contact-lead {
    margin: 0 auto 42px auto;
  }
}
.md-page-wrap.contact .tel-bnr {
  max-width: 604px;
  margin: 0 auto 98px auto;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap.contact .tel-bnr {
    padding-right: 20px;
    padding-left: 20px;
    margin: 0 auto 50px auto;
  }
}
.md-page-wrap.contact .tel-bnr a {
  display: block;
}
.md-page-wrap.contact .tel-bnr a img {
  width: 100%;
  height: auto;
}
.md-page-wrap.contact .contact-form-wrap {
  background: #fff;
  padding-top: 120px;
  padding-bottom: 200px;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap.contact .contact-form-wrap {
    padding-top: 50px;
    padding-bottom: 100px;
  }
}
.md-page-wrap.contact .contact-form-wrap h2 {
  font-size: 3rem;
  text-align: center;
  margin-bottom: 107px;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap.contact .contact-form-wrap h2 {
    font-size: 2.4rem;
    margin-bottom: 40px;
  }
}
.md-page-wrap.contact .form-body {
  max-width: 704px;
  margin: 0 auto;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap.contact .form-body {
    padding-right: 20px;
    padding-left: 20px;
  }
}
.md-page-wrap.thanks {
  background: #feeef4;
  padding-top: 124px;
  font-family: "Noto Sans JP", sans-serif;
}
.md-page-wrap.thanks .page-ttl {
  position: static;
  text-align: center;
  font-size: 3rem;
  letter-spacing: 0.02em;
  transform: translate(0, 0);
  width: 100%;
  margin-bottom: 75px;
  color: #ff919e;
  font-weight: 700;
  line-height: 1.6;
}
.md-page-wrap.thanks .page-ttl span {
  display: inline-block;
  position: relative;
}
.md-page-wrap.thanks .page-ttl .illust {
  position: absolute;
  pointer-events: none;
  background-repeat: no-repeat;
  background-size: 100%;
  top: 50%;
  transform: translateY(-50%);
}
.md-page-wrap.thanks .page-ttl .illust.i-1 {
  width: 179px;
  height: 135px;
  background-image: url("../img/contact/illust-1.png");
  left: -223px;
}
.md-page-wrap.thanks .page-ttl .illust.i-2 {
  width: 199px;
  height: 145px;
  background-image: url("../img/contact/illust-2.png");
  right: -225px;
}
.md-page-wrap.thanks p {
  font-size: 1.8rem;
  text-align: center;
}
.md-page-wrap.thanks .contact-lead {
  max-width: 840px;
  padding-right: 20px;
  padding-left: 20px;
  margin: 0 auto 82px auto;
}
.md-page-wrap.thanks .tel-bnr {
  max-width: 604px;
  margin: 0 auto 98px auto;
}
.md-page-wrap.thanks .tel-bnr a {
  display: block;
}
.md-page-wrap.thanks .tel-bnr a img {
  width: 100%;
  height: auto;
}
.md-page-wrap.thanks .contact-form-wrap {
  background: #fff;
  padding-top: 120px;
  padding-bottom: 200px;
}
.md-page-wrap.thanks .contact-form-wrap h2 {
  font-size: 3rem;
  text-align: center;
  margin-bottom: 107px;
}
.md-page-wrap.thanks .form-body {
  max-width: 704px;
  margin: 0 auto;
}
.category {
  background-image: url("../img/cmn/bg-top-news.png");
  background-repeat: repeat;
}
.category .md-page-content {
  padding-top: 80px;
  padding-bottom: 120px;
}
@media only screen and (max-width: 1024px) {
  .category .md-page-content {
    position: relative;
    z-index: 2;
    padding-top: 40px;
    padding-bottom: 60px;
  }
}
.category .list-ttl {
  text-align: center;
  color: #ef806f;
  font-size: 4.8rem;
  margin-bottom: 70px;
}
@media only screen and (max-width: 1024px) {
  .category .list-ttl {
    font-size: 3rem;
    margin-bottom: 40px;
  }
}
.category .category-intro {
  max-width: 860px;
  margin: 0 auto 64px;
}
@media only screen and (max-width: 1024px) {
  .category .category-intro {
    margin-bottom: 40px;
  }
}
.category .category-intro .category-intro__ttl {
  text-align: center;
  color: #ef806f;
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: 28px;
}
@media only screen and (max-width: 1024px) {
  .category .category-intro .category-intro__ttl {
    font-size: 2.2rem;
    margin-bottom: 20px;
  }
}
.category .category-intro .category-intro__body p {
  font-size: 1.6rem;
  line-height: 1.9;
  margin-bottom: 1em;
}
.category .category-intro .category-intro__body p:last-child {
  margin-bottom: 0;
}
.category .category-visiting-block {
  max-width: 860px;
  margin: 24px auto 0;
  padding: 40px 36px;
  background: #fff;
  border: 1px solid #f0c4bc;
}
@media only screen and (max-width: 1024px) {
  .category .category-visiting-block {
    margin-top: 8px;
    padding: 28px 20px;
  }
}
.category .category-visiting-block .category-visiting-block__ttl {
  text-align: center;
  color: #ef806f;
  font-size: 2.6rem;
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: 24px;
}
@media only screen and (max-width: 1024px) {
  .category .category-visiting-block .category-visiting-block__ttl {
    font-size: 2rem;
    margin-bottom: 16px;
  }
}
.category .category-visiting-block .category-visiting-block__body p {
  font-size: 1.6rem;
  line-height: 1.9;
  margin-bottom: 1em;
}
.category .category-visiting-block .category-visiting-block__body p:last-child {
  margin-bottom: 0;
}
.category .category-visiting-block .category-visiting-block__cta {
  margin-top: 28px;
  text-align: center;
}
.category .category-visiting-block .category-visiting-block__cta .category-visiting-block__btn {
  display: inline-block;
  box-sizing: border-box;
  min-width: 360px;
  max-width: 100%;
  padding: 18px 28px;
  border-radius: 45px;
  background: #e98be6;
  color: #fff;
  font-size: 1.8rem;
  font-weight: 800;
  text-decoration: none;
  transition: opacity 0.2s;
}
.category .category-visiting-block .category-visiting-block__cta .category-visiting-block__btn:hover {
  opacity: 0.8;
}
@media only screen and (max-width: 1024px) {
  .category .category-visiting-block .category-visiting-block__cta .category-visiting-block__btn {
    display: block;
    min-width: 0;
    font-size: 1.6rem;
    padding: 16px 20px;
  }
}
.category .category-visiting-block .category-visiting-block__cta .category-visiting-block__link {
  margin-top: 16px;
  font-size: 1.5rem;
  line-height: 1.6;
}
.category .category-visiting-block .category-visiting-block__cta .category-visiting-block__link a {
  color: #ef806f;
  text-decoration: underline;
}
.category .md-first-view {
  height: 455px;
}
.category .md-first-view:not(:has(h1.page-ttl)) {
  height: auto;
}
@media only screen and (max-width: 1024px) {
  .category .md-first-view {
    height: 270px;
    margin-bottom: 140px;
  }
}
.category .md-first-view:not(:has(h1.page-ttl)) {
  height: auto;
}
@media only screen and (max-width: 1024px) {
  .category .page-ttl {
    top: auto;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    transform: translateY(50%);
  }
}

.category-after-school-day-service .md-first-view {
  background-image: url("../img/facility/fv-fac-dayservice.jpg");
}
.category-after-school-day-service .page-ttl {
  width: 385px;
  top: 212px;
  left: calc(185 / var(--width) * 100vw);
  transform: translate(0, 0);
}
@media only screen and (max-width: 1024px) {
  .category-after-school-day-service .page-ttl {
    width: 320px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
}

.category-child-development-support .md-first-view {
  background-image: url("../img/facility/fv-fac-dev.jpg");
}
.category-child-development-support .page-ttl {
  width: 326px;
  top: 222px;
  left: calc(243 / var(--width) * 100vw);
  transform: translate(0, 0);
}
@media only screen and (max-width: 1024px) {
  .category-child-development-support .page-ttl {
    width: 320px;
    top: auto;
    bottom: 0;
    left: 50%;
    transform: translate(-50%, 60%);
  }
}

.category-consultation-support .md-first-view {
  background-image: url("../img/facility/fv-fac-consultation.jpg");
}
.category-consultation-support .page-ttl {
  width: 443px;
  top: 215px;
  left: calc(185 / var(--width) * 100vw);
  transform: translate(0, 0);
}
@media only screen and (max-width: 1024px) {
  .category-consultation-support .page-ttl {
    width: 320px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
}

.category-community-based .md-first-view {
  background-image: url("../img/facility/fv-fac-dayservice.jpg");
}
.category-community-based .page-ttl {
  width: 343px;
  top: 134px;
  left: calc(760 / var(--width) * 100vw);
  transform: translate(0, 0);
}
@media only screen and (max-width: 1024px) {
  .category-community-based .page-ttl {
    width: 320px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
}

.category-group-home .md-first-view {
  background-image: url("../img/facility/fv-fac-group-home.jpg");
}
@media only screen and (max-width: 1024px) {
  .category-group-home .md-first-view {
    background-image: url("../img/facility/fv-fac-group-home-sp.jpg");
  }
}
.category-group-home .page-ttl {
  width: 343px;
  top: 219px;
  left: calc(794 / var(--width) * 100vw);
  transform: translate(0, 0);
}
@media only screen and (max-width: 1024px) {
  .category-group-home .page-ttl {
    width: 320px;
    top: auto;
    bottom: 0;
    left: 50%;
    transform: translate(-50%, 60%);
  }
}

.category-support-for-visiting .md-first-view {
  background-image: url("../img/facility/fv-fac-support-for-visiting.jpg");
}
@media only screen and (max-width: 1024px) {
  .category-support-for-visiting .md-first-view {
    background-image: url("../img/facility/fv-fac-support-for-visiting-sp.jpg");
  }
}
.category-support-for-visiting .page-ttl {
  width: 343px;
  top: 219px;
  left: calc(794 / var(--width) * 100vw);
  transform: translate(0, 0);
  z-index: 110;
}
@media only screen and (max-width: 1024px) {
  .category-support-for-visiting .page-ttl {
    width: 320px;
    top: auto;
    bottom: 0;
    left: 50%;
    transform: translate(-50%, 60%);
  }
}

.page-template-page-visiting-support .md-first-view,
.single-facility-hoikusyo .md-first-view {
  background-image: url("../img/facility/fv-fac-support-for-visiting.jpg");
  width: 100%;
}
@media only screen and (max-width: 1024px) {
  .page-template-page-visiting-support .md-first-view,
  .single-facility-hoikusyo .md-first-view {
    background-image: url("../img/facility/fv-fac-support-for-visiting-sp.jpg");
    background-size: cover;
    background-position: center 20%;
    background-color: #fff;
    height: 280px;
    margin-bottom: 130px;
    padding-bottom: 0;
    overflow: visible;
  }
  .page-template-page-visiting-support .md-first-view::after,
  .single-facility-hoikusyo .md-first-view::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 48px;
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0), #fff);
    pointer-events: none;
    z-index: 1;
  }
}
.page-template-page-visiting-support .page-ttl,
.single-facility-hoikusyo .page-ttl {
  width: 343px;
  top: 219px;
  left: calc(794 / var(--width) * 100vw);
  transform: translate(0, 0);
  z-index: 110;
}
@media only screen and (max-width: 1024px) {
  .page-template-page-visiting-support .page-ttl,
  .single-facility-hoikusyo .page-ttl {
    width: 86%;
    max-width: 320px;
    top: 100%;
    bottom: auto;
    left: 50%;
    transform: translate(-50%, 12px);
    z-index: 120;
  }
}

.md-page-wrap.visiting-support .visiting-support-page {
  max-width: 900px;
  margin: 0 auto;
  padding: 48px 40px 80px;
  font-size: 1.6rem;
  line-height: 1.9;
  color: #333;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap.visiting-support .visiting-support-page {
    padding: 100px 20px 60px;
  }
}
.md-page-wrap.visiting-support .visiting-support-page p {
  margin-bottom: 1.2em;
}
.md-page-wrap.visiting-support .visiting-support-hero {
  margin-bottom: 56px;
}
.md-page-wrap.visiting-support .visiting-support-hero .page-title-sub {
  margin-bottom: 28px;
  font-size: 2.4rem;
  font-weight: 700;
  text-align: center;
  color: #6b3a68;
  line-height: 1.5;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap.visiting-support .visiting-support-hero .page-title-sub {
    font-size: 2rem;
    text-align: left;
  }
}
.md-page-wrap.visiting-support .visiting-support-hero .visiting-support-lead-heading {
  margin-bottom: 1em;
  font-size: 2rem;
  font-weight: 700;
  color: #6b3a68;
  line-height: 1.5;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap.visiting-support .visiting-support-hero .visiting-support-lead-heading {
    font-size: 1.8rem;
  }
}
.md-page-wrap.visiting-support .visiting-support-section {
  margin-bottom: 56px;
  padding-top: 8px;
  border-top: 1px solid #f0d4ee;
}
.md-page-wrap.visiting-support .visiting-support-section h2 {
  margin: 40px 0 1em;
  font-size: 2.2rem;
  color: #6b3a68;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap.visiting-support .visiting-support-section h2 {
    margin-top: 32px;
    font-size: 1.9rem;
  }
}
.md-page-wrap.visiting-support .visiting-support-concerns {
  margin: 0 0 1.2em;
  padding: 20px 24px;
  list-style: none;
  background: #fceefb;
  border: 1px solid #f0d4ee;
}
.md-page-wrap.visiting-support .visiting-support-concerns li {
  margin: 0;
  padding: 6px 0;
  font-weight: 700;
  color: #6b3a68;
}
.md-page-wrap.visiting-support .visiting-support-note {
  font-size: 1.4rem;
  color: #666;
}
.md-page-wrap.visiting-support .visiting-support-features {
  display: grid;
  gap: 20px;
}
.md-page-wrap.visiting-support .visiting-support-feature {
  padding: 28px 24px;
  background: #fff;
  border-left: 4px solid #e98be6;
  border: 1px solid #f0d4ee;
  border-left: 4px solid #e98be6;
}
.md-page-wrap.visiting-support .visiting-support-feature h3 {
  margin-bottom: 0.5em;
  font-size: 1.9rem;
  color: #6b3a68;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap.visiting-support .visiting-support-feature h3 {
    font-size: 1.7rem;
  }
}
.md-page-wrap.visiting-support .visiting-support-feature p {
  margin-bottom: 0;
}
.md-page-wrap.visiting-support .visiting-support-flow {
  margin: 0;
  padding: 0;
  list-style: none;
  counter-reset: visiting-step;
  display: grid;
  gap: 12px;
}
.md-page-wrap.visiting-support .visiting-support-flow li {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 20px 20px 20px 72px;
  position: relative;
  background: #fff;
  border: 1px solid #f0d4ee;
  counter-increment: visiting-step;
}
.md-page-wrap.visiting-support .visiting-support-flow li::before {
  content: counter(visiting-step);
  position: absolute;
  left: 16px;
  top: 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: #e98be6;
  color: #fff;
  font-size: 1.6rem;
  font-weight: 700;
}
.md-page-wrap.visiting-support .visiting-support-flow li strong {
  display: block;
  font-size: 1.8rem;
  color: #6b3a68;
}
@media only screen and (max-width: 1024px) {
  .md-page-wrap.visiting-support .visiting-support-flow li strong {
    font-size: 1.6rem;
  }
}
.md-page-wrap.visiting-support .visiting-support-flow li p {
  margin: 0;
  font-size: 1.5rem;
  line-height: 1.7;
}
.md-page-wrap.visiting-support .visiting-support-cta {
  margin-top: 48px;
  padding: 32px 28px;
  text-align: center;
  background: #fceefb;
  border: 1px solid #f0d4ee;
}
.md-page-wrap.visiting-support .visiting-support-cta .visiting-support-cta__lead {
  margin-bottom: 24px;
  font-size: 1.8rem;
  font-weight: 700;
  color: #6b3a68;
}
.md-page-wrap.visiting-support .visiting-support-cta .visiting-support-cta__btn {
  display: block;
  box-sizing: border-box;
  width: 100%;
  max-width: 360px;
  margin: 0 auto 12px;
  padding: 16px 24px;
  background: #e98be6;
  border: 2px solid #e98be6;
  color: #fff !important;
  font-size: 1.8rem;
  font-weight: 700;
  text-decoration: none;
  text-align: center;
  transition: opacity 0.2s;
}
.md-page-wrap.visiting-support .visiting-support-cta .visiting-support-cta__btn:last-child {
  margin-bottom: 0;
}
.md-page-wrap.visiting-support .visiting-support-cta .visiting-support-cta__btn:hover {
  opacity: 0.85;
}
.md-page-wrap.visiting-support .visiting-support-cta .visiting-support-cta__btn--sub {
  background: #fff;
  color: #6b3a68 !important;
  border-color: #e98be6;
}
.md-page-wrap.visiting-support .back-to-top {
  padding-bottom: 48px;
}

.category-life-care .md-first-view {
  background-image: url("../img/facility/fv-fac-life-care.jpg");
}
@media only screen and (max-width: 1024px) {
  .category-life-care .md-first-view {
    background-image: url("../img/facility/fv-fac-life-care-sp.jpg");
  }
}
.category-life-care .page-ttl {
  width: 343px;
  top: 219px;
  left: calc(794 / var(--width) * 100vw);
  transform: translate(0, 0);
  z-index: 110;
}
@media only screen and (max-width: 1024px) {
  .category-life-care .page-ttl {
    width: 320px;
    top: auto;
    bottom: 0;
    left: 50%;
    transform: translate(-50%, 60%);
  }
}

.category-short-term-residence .page-ttl {
  width: 340px;
  top: 50%;
  left: calc(110 / var(--width) * 100vw);
  transform: translate(0, 0);
  z-index: 110;
}
.category-short-term-residence .md-first-view {
  background-image: url("../img/facility/fv-fac-short-term-residence.jpg");
}

.post-type-archive-staff .md-first-view {
  background-image: url("../img/facility/fv-fac-dayservice.jpg");
}
.post-type-archive-staff .page-ttl {
  width: 343px;
  top: 134px;
  left: calc(760 / var(--width) * 100vw);
  transform: translate(0, 0);
}
@media only screen and (max-width: 1024px) {
  .post-type-archive-staff .page-ttl {
    width: 320px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
}

.anchor {
  padding-top: 200px;
  margin-top: -200px;
}
@media only screen and (max-width: 1024px) {
  .anchor {
    padding-top: 100px;
    margin-top: -100px;
  }
}

/*
 * Version: 1.1.5
 */
.md-page-content {
  position: relative;
  padding-top: 286px;
}
@media only screen and (max-width: 1100px) {
  .md-page-content {
    padding-top: 130px;
    padding-right: 20px;
    padding-left: 20px;
  }
}
.md-page-content .inner {
  max-width: 1000px;
  margin: 0 auto;
}
.md-page-content .page-ttl {
  letter-spacing: -0.02em;
  font-size: 3rem;
  text-align: center;
  margin-bottom: 116px;
  font-weight: 700;
}
@media only screen and (max-width: 1024px) {
  .md-page-content .page-ttl {
    font-size: 2.6rem;
    margin-bottom: 40px;
  }
}
.md-page-content .post-list {
  max-width: 1028px;
  padding-right: 20px;
  padding-bottom: 95px;
  padding-left: 20px;
}
@media only screen and (max-width: 1024px) {
  .md-page-content .post-list ul {
    margin-left: 0;
    justify-content: space-between;
  }
}
.md-page-content .post-list li {
  margin-bottom: 38px;
}
@media only screen and (max-width: 1024px) {
  .md-page-content .post-list li {
    margin-left: 0;
  }
}
.md-page-content .post-list li a {
  display: flex;
}
@media only screen and (max-width: 1024px) {
  .md-page-content .post-list li a {
    display: block;
  }
}
.md-page-content .post-list .thumb {
  width: 220px;
  position: relative;
}
@media only screen and (max-width: 1024px) {
  .md-page-content .post-list .thumb {
    width: 100%;
  }
}
.md-page-content .post-list .thumb img {
  width: 100%;
  height: auto;
}
.md-page-content .post-list .post-desc {
  width: calc(100% - 220px);
  padding-left: 33px;
}
@media only screen and (max-width: 1024px) {
  .md-page-content .post-list .post-desc {
    width: 100%;
    padding-top: 20px;
    padding-left: 0;
  }
}
.md-page-content .post-list .date {
  color: #231815;
  font-size: 1.8rem;
}
.md-page-content .post-list .ttl {
  font-size: 2.6rem;
  color: #231815;
  line-height: 1.7;
  margin-bottom: 10px;
}
.md-page-content .post-list .post-dody {
  font-size: 1.4rem;
  color: #231815;
}

.ajax-loading-btn {
  text-align: center;
  padding-bottom: 95px;
}
.ajax-loading-btn .btn {
  transition-property: opacity, visibility, z-index;
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1);
  cursor: pointer;
  display: inline-block;
  padding: 22px 0;
  font-size: 1.8rem;
  letter-spacing: -0.02em;
}
.ajax-loading-btn .btn span {
  display: inline-block;
  background-image: url("../img/arr-btn-next.png");
  background-repeat: no-repeat;
  background-position: 100% 50%;
}
.ajax-loading-btn .btn:hover {
  opacity: 0.6;
}

.btn-list {
  display: flex;
  justify-content: center;
}
.btn-list .back-to-top {
  padding: 0;
  width: 50%;
}
.btn-list .back-to-top a {
  font-size: 2rem;
}
.btn-list .ajax-loading-btn {
  padding: 0;
  width: 50%;
}
.btn-list .ajax-loading-btn .btn {
  padding: 0;
}
.btn-list .ajax-loading-btn span {
  font-size: 2rem;
}

.archive .back-to-top {
  padding-top: 0;
  padding-bottom: 143px;
}

.category-list ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media only screen and (max-width: 1024px) {
  .category-list ul {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
}
.category-list li {
  box-sizing: border-box;
  width: 47.6%;
  max-width: 476px;
  margin-bottom: 40px;
  background: #fff;
}
@media only screen and (max-width: 1024px) {
  .category-list li {
    width: 100%;
    max-width: 476px;
  }
}
.category-list li a {
  display: block;
  transition-property: opacity, visibility, z-index;
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1);
}
.category-list li a:hover {
  opacity: 0.6;
}
@media only screen and (max-width: 1024px) {
  .category-list li a:hover {
    opacity: 1;
  }
}
.category-list .thumb {
  position: relative;
  overflow: hidden;
}
.category-list .thumb::before {
  content: "";
  display: block;
  padding-top: 66.5966%;
}
.category-list .thumb img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: auto;
}
.category-list .post-desc {
  position: relative;
  padding: 38px 30px 94px 30px;
}
.category-list .post-desc .ttl {
  font-size: 2.6rem;
  font-weight: 700;
  line-height: 1.6;
}
.category-list .post-desc .address {
  font-size: 1.8rem;
  font-weight: 700;
  margin-bottom: 10px;
}
.category-list .post-desc .post-body {
  font-size: 1.6rem;
}
.category-list .post-desc .detail {
  position: absolute;
  bottom: 30px;
  right: 30px;
  font-size: 2rem;
  padding-right: 34px;
  background-image: url("../img/cmn/icon-circle-arrow-right.png");
  background-repeat: no-repeat;
  background-position: right center;
  line-height: 1.8;
}

.consultation-support .category-list ul {
  display: block;
}
.consultation-support .category-list li {
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  background: #fff;
}
.consultation-support .category-list li a {
  display: flex;
  justify-content: space-between;
}
@media only screen and (max-width: 1024px) {
  .consultation-support .category-list li a {
    display: block;
  }
}
.consultation-support .category-list .thumb {
  width: 50%;
}
@media only screen and (max-width: 1024px) {
  .consultation-support .category-list .thumb {
    width: 100%;
  }
}
.consultation-support .category-list .thumb img {
  width: 100%;
  height: auto;
}
.consultation-support .category-list .post-desc {
  width: 50%;
  position: relative;
  padding: 38px 30px 94px 30px;
}
@media only screen and (max-width: 1024px) {
  .consultation-support .category-list .post-desc {
    width: 100%;
  }
}
.consultation-support .category-list .post-desc .ttl {
  font-size: 2.6rem;
  font-weight: 700;
  line-height: 1.6;
}
.consultation-support .category-list .post-desc .address {
  font-size: 1.8rem;
  font-weight: 700;
  margin-bottom: 10px;
}
.consultation-support .category-list .post-desc .post-body {
  font-size: 1.6rem;
}
.consultation-support .category-list .post-desc .detail {
  position: absolute;
  bottom: 30px;
  right: 30px;
  font-size: 2rem;
  padding-right: 34px;
  background-image: url("../img/cmn/icon-circle-arrow-right.png");
  background-repeat: no-repeat;
  background-position: right center;
  line-height: 1.8;
}

.staff-list {
  padding: 40px;
}
.staff-list .list-position {
  padding-top: 200px;
  margin-top: -200px;
  font-weight: 700;
  font-size: 3rem;
  margin-bottom: 1em;
  text-align: center;
}
@media only screen and (max-width: 1024px) {
  .staff-list .list-position {
    padding-top: 70px;
    margin-top: -70px;
  }
}
.staff-list .list-lede {
  font-size: 2rem;
  margin-bottom: 2em;
}
.staff-list ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media only screen and (max-width: 1024px) {
  .staff-list ul {
    display: block;
  }
}
.staff-list li {
  box-sizing: border-box;
  width: 47.6%;
  max-width: 476px;
  margin-bottom: 40px;
  background: #fff;
}
@media only screen and (max-width: 1024px) {
  .staff-list li {
    width: 100%;
  }
}
.staff-list .thumb {
  position: relative;
  padding-top: 100%;
  overflow: hidden;
}
.staff-list .thumb img {
  width: 100%;
  height: auto;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.staff-list .post-desc {
  position: relative;
  padding: 38px 30px 30px 30px;
}
.staff-list .post-desc .staff-dept {
  font-size: 2.6rem;
  font-weight: 700;
  line-height: 1.6;
  color: #ef806f;
  margin-bottom: 0.4em;
}
.staff-list .post-desc .staff-name {
  font-size: 2.2rem;
  font-weight: 700;
  margin-bottom: 10px;
}
.staff-list .post-desc .staff-position {
  font-size: 1.6rem;
  font-weight: 700;
  margin-bottom: 10px;
}
.staff-list .post-desc .staff-profile {
  font-size: 1.6rem;
}
.staff-list.manager {
  background: #f5e2e4;
  margin-bottom: 100px;
}
.staff-list.pro {
  background: #def7fb;
}
.staff-list.pro .staff-dept {
  color: #7ac8d3;
}

/*
 * Version: 1.1.5
 */
.single {
  background-repeat: repeat;
}
.single a {
  font-size: 1.6rem;
}
.single .wp-block-file a {
  font-size: 1.6rem;
}
.single .wp-block-file .wp-block-file__button {
  padding: 1em 2em;
  display: inline-block;
}
.single .md-page-content.after-school-day-service {
  padding-top: 0;
  background-image: url("../img/facility/bg-dayservice.png");
}
.single .md-page-content.child-development-support {
  background-image: url("../img/facility/bg-dev.png");
}
.single .md-page-content.community-based {
  background-image: url("../img/facility/bg-combase.png");
}
.single .md-page-content.consultation-support {
  background-image: url("../img/facility/bg-consul.png");
}
.single .md-page-content.group-home {
  background-image: url("../img/facility/bg-grouphome.png");
}
.single .eye-catch {
  text-align: center;
  margin-bottom: 78px;
}
@media only screen and (max-width: 1024px) {
  .single .eye-catch {
    margin-bottom: 40px;
  }
}
.single .eye-catch img {
  max-width: 100%;
  height: auto;
}
.single .date {
  font-size: 1.6rem;
  color: #000;
  margin-bottom: 30px;
}
.single .ttl {
  margin: 0 auto 30px auto;
  font-size: 4.2rem;
  letter-spacing: 0.1em;
  line-height: 1.7;
  text-align: center;
}
@media only screen and (max-width: 1024px) {
  .single .ttl {
    font-size: 3.3rem;
  }
}
.single .post-body .wp-block-image {
  margin: 70px 0;
}
@media only screen and (max-width: 1024px) {
  .single .post-body .wp-block-image {
    margin: 34px 0;
  }
}
.single .post-body .wp-block-image img {
  max-width: 100%;
  height: auto;
}
.single .post-body h2, .single .post-body h3, .single .post-body h4, .single .post-body h5, .single .post-body h6 {
  font-weight: 700;
  line-height: 1.6;
}
.single .post-body h2 {
  font-size: 2.6rem;
}
.single .post-body h3 {
  font-size: 2.4rem;
}
.single .post-body h4 {
  font-size: 2.2rem;
}
.single .post-body h5 {
  font-size: 2rem;
}
.single .post-body h6 {
  font-size: 1.8rem;
}
.single .post-body p {
  font-size: 1.8rem;
}
.single .md-post-link {
  position: relative;
  max-width: 1000px;
  margin-top: 120px;
  margin-right: auto;
  margin-left: auto;
  padding-top: 160px;
}
@media only screen and (max-width: 1024px) {
  .single .md-post-link {
    padding-top: 60px;
    padding-bottom: 90px;
    margin-top: 60px;
    margin-right: 20px;
    margin-left: 20px;
  }
}
.single .md-post-link a {
  display: block;
}
.single .md-post-link .post-pagination__top,
.single .md-post-link .post-pagination__prev,
.single .md-post-link .post-pagination__next {
  display: block;
  transition-property: opacity, visibility, z-index;
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1);
  letter-spacing: 0.04em;
  position: absolute;
  top: 0;
  font-size: 2rem;
  text-align: center;
}
@media only screen and (max-width: 1024px) {
  .single .md-post-link .post-pagination__top,
  .single .md-post-link .post-pagination__prev,
  .single .md-post-link .post-pagination__next {
    font-size: 1.6rem;
    position: static;
    margin: 0 auto 20px auto;
  }
}
.single .md-post-link .post-pagination__top span,
.single .md-post-link .post-pagination__prev span,
.single .md-post-link .post-pagination__next span {
  display: inline-block;
  background-repeat: no-repeat;
  padding: 22px 0;
}
.single .md-post-link .post-pagination__top:hover,
.single .md-post-link .post-pagination__prev:hover,
.single .md-post-link .post-pagination__next:hover {
  opacity: 0.6;
}
.single .md-post-link .post-pagination__top {
  left: 50%;
  transform: translateX(-50%);
}
@media only screen and (max-width: 1024px) {
  .single .md-post-link .post-pagination__top {
    transform: translateX(0);
  }
}
.single .md-post-link .post-pagination__prev {
  left: 0;
}
.single .md-post-link .post-pagination__next {
  right: 0;
}
.single.single-facility .md-page-content {
  padding-top: 0;
}
.single.single-facility .inner {
  padding-top: 230px;
  background: #fff;
  padding-bottom: 200px;
  padding-right: 80px;
  padding-left: 80px;
}
@media only screen and (max-width: 1024px) {
  .single.single-facility .inner {
    padding-top: 120px;
    padding-bottom: 100px;
    padding-right: 20px;
    padding-left: 20px;
  }
}
.single.single-facility h1 {
  font-size: 3.4rem;
  font-weight: 700;
  line-height: 1.7;
  text-align: center;
}
@media only screen and (max-width: 1024px) {
  .single.single-facility h1 {
    font-size: 2.4rem;
    text-align: left;
  }
}
.single.single-facility h2 {
  font-size: 2.4rem;
  line-height: 1.7;
  margin-bottom: 1em;
}
@media only screen and (max-width: 1024px) {
  .single.single-facility h2 {
    font-size: 2.2rem;
  }
}
.single.single-facility h3 {
  font-size: 2.4rem;
  line-height: 1.7;
  margin-bottom: 0.6em;
}
@media only screen and (max-width: 1024px) {
  .single.single-facility h3 {
    font-size: 2rem;
  }
}
.single.single-facility h4 {
  font-size: 2rem;
  line-height: 1.7;
  margin-bottom: 0.6em;
}
@media only screen and (max-width: 1024px) {
  .single.single-facility h4 {
    font-size: 1.8rem;
  }
}
.single.single-facility p {
  font-size: 1.8rem;
  margin-bottom: 2em;
}
@media only screen and (max-width: 1024px) {
  .single.single-facility p {
    font-size: 1.6rem;
  }
}
.single.single-facility p.lede {
  font-size: 2.4rem;
  font-weight: 700;
}
.single.single-facility .page-title {
  margin-bottom: 60px;
  font-size: 3.4rem;
}
@media only screen and (max-width: 1024px) {
  .single.single-facility .page-title {
    font-size: 2.4rem;
  }
}
.single.single-facility .page-title span {
  display: block;
  font-size: 2.4rem;
}
.single.single-facility .page-h3-title {
  text-align: center;
}
.single.single-facility .page-h4-title {
  font-size: 1.8rem;
}
.single.single-facility .img-main {
  text-align: center;
  margin-bottom: 60px;
}
.single.single-facility .img-main img {
  max-width: 100%;
  height: auto;
}
.single.single-facility .img-col-1 {
  text-align: center;
  margin-bottom: 60px;
}
.single.single-facility .img-col-1 img {
  max-width: 100%;
  height: auto;
}
.single.single-facility .img-col-2-wrap {
  display: flex;
  justify-content: space-between;
  margin-bottom: 60px;
}
@media only screen and (max-width: 1024px) {
  .single.single-facility .img-col-2-wrap {
    display: block;
  }
}
.single.single-facility .img-col-2-wrap .img-col {
  width: 46.7948717949%;
}
@media only screen and (max-width: 1024px) {
  .single.single-facility .img-col-2-wrap .img-col {
    width: 100%;
    margin-bottom: 30px;
  }
}
.single.single-facility .img-col-2-wrap .img-col img {
  max-width: 100%;
  height: auto;
}
.single.single-facility .img-col-3-wrap {
  display: flex;
  justify-content: space-between;
  margin-bottom: 60px;
}
@media only screen and (max-width: 1024px) {
  .single.single-facility .img-col-3-wrap {
    display: block;
  }
}
.single.single-facility .img-col-3-wrap .img-col {
  width: 32%;
}
@media only screen and (max-width: 1024px) {
  .single.single-facility .img-col-3-wrap .img-col {
    width: 100%;
    margin-bottom: 30px;
  }
}
.single.single-facility .img-col-3-wrap .img-col img {
  max-width: 100%;
  height: auto;
}
.single.single-facility .img-col-2-caption-title {
  font-size: 1.8rem;
  padding-top: 1em;
}
.single.single-facility .img-col-3-caption-title {
  font-size: 1.8rem;
  padding-top: 1em;
}
.single.single-facility .body-iframe-title {
  margin-bottom: 1em;
}
.single.single-facility .body-iframe-wrap {
  margin-bottom: 120px;
  position: relative;
}
@media only screen and (max-width: 1024px) {
  .single.single-facility .body-iframe-wrap {
    margin-bottom: 60px;
  }
}
.single.single-facility .body-iframe-wrap::before {
  content: "";
  padding-top: 56.25%;
  display: block;
}
.single.single-facility .body-iframe-wrap iframe {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.single.single-facility .transportation-title {
  text-align: center;
  margin-bottom: 2em;
}
.single.single-facility .transportation {
  display: flex;
  justify-content: space-between;
  flex-direction: row-reverse;
  margin-bottom: 60px;
}
@media only screen and (max-width: 1024px) {
  .single.single-facility .transportation {
    display: block;
  }
}
.single.single-facility .transportation-image {
  width: 33.3333333333%;
}
@media only screen and (max-width: 1024px) {
  .single.single-facility .transportation-image {
    width: 100%;
    text-align: center;
    margin-bottom: 30px;
  }
}
.single.single-facility .transportation-image img {
  max-width: 100%;
  height: auto;
}
.single.single-facility .transportation-text {
  width: 60.7692307692%;
}
@media only screen and (max-width: 1024px) {
  .single.single-facility .transportation-text {
    width: 100%;
  }
}
.single.single-facility .wp-block-columns .wp-block-image {
  margin: 0;
}
.single.single-facility .wp-block-image.size-full {
  text-align: center;
}
.single.single-facility .wp-block-image img {
  max-width: 100%;
  height: auto;
}
.single .wp-block-separator {
  border-top: 1px solid #1d1d1c;
  margin: 120px 0;
}

.life-care-page .life-care-hero {
  margin-bottom: 72px;
}
.life-care-page .life-care-hero .page-title {
  margin-bottom: 8px;
}
.life-care-page .life-care-hero .page-title-sub {
  margin-bottom: 28px;
  font-size: 2.4rem;
  font-weight: 700;
  text-align: center;
  color: #2f5f3d;
}
@media only screen and (max-width: 1024px) {
  .life-care-page .life-care-hero .page-title-sub {
    font-size: 2rem;
    text-align: left;
  }
}
.life-care-page .life-care-hero .lede {
  margin-bottom: 1.2em;
  color: #2f5f3d;
}
.life-care-page .life-care-hero > p:not(.lede):not(.life-care-highlight):not(.page-title-sub),
.life-care-page .life-care-hero .wp-block-group__inner-container > p:not(.lede):not(.life-care-highlight):not(.page-title-sub) {
  margin-bottom: 36px;
}
.life-care-page > .page-title,
.life-care-page .wp-block-group__inner-container > .page-title {
  margin-bottom: 8px;
}
.life-care-page > .page-title-sub,
.life-care-page .wp-block-group__inner-container > .page-title-sub {
  margin-bottom: 28px;
  font-size: 2.4rem;
  font-weight: 700;
  text-align: center;
  color: #2f5f3d;
}
@media only screen and (max-width: 1024px) {
  .life-care-page > .page-title-sub,
  .life-care-page .wp-block-group__inner-container > .page-title-sub {
    font-size: 2rem;
    text-align: left;
  }
}
.life-care-page > .lede,
.life-care-page .wp-block-group__inner-container > .lede {
  margin-bottom: 1.2em;
  color: #2f5f3d;
}
.life-care-page > h2,
.life-care-page .wp-block-group__inner-container > h2 {
  margin-top: 72px;
  margin-bottom: 1em;
  color: #2f5f3d;
}
@media only screen and (max-width: 1024px) {
  .life-care-page > h2,
  .life-care-page .wp-block-group__inner-container > h2 {
    margin-top: 48px;
  }
}
.life-care-page .life-care-highlights,
.life-care-page .life-care-features,
.life-care-page .life-care-service-list,
.life-care-page .life-care-flow,
.life-care-page .life-care-cta,
.life-care-page .life-care-faq,
.life-care-page .life-care-gallery,
.life-care-page .life-care-section {
  margin-top: 0;
  margin-bottom: 48px;
}
@media only screen and (max-width: 1024px) {
  .life-care-page .life-care-highlights,
  .life-care-page .life-care-features,
  .life-care-page .life-care-service-list,
  .life-care-page .life-care-flow,
  .life-care-page .life-care-cta,
  .life-care-page .life-care-faq,
  .life-care-page .life-care-gallery,
  .life-care-page .life-care-section {
    margin-bottom: 36px;
  }
}
.life-care-page .life-care-highlights {
  margin: 36px 0 48px;
}
@media only screen and (max-width: 1024px) {
  .life-care-page .life-care-highlights {
    margin: 28px 0 36px;
  }
}
.life-care-page .life-care-highlights > .wp-block-group__inner-container {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}
@media only screen and (max-width: 1024px) {
  .life-care-page .life-care-highlights > .wp-block-group__inner-container {
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
  }
}
.life-care-page .life-care-highlights p,
.life-care-page .life-care-highlights .life-care-highlight {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-height: 140px;
  margin: 0;
  padding: 20px 12px;
  text-align: center;
  background: #e8f4eb;
  border: 1px solid #d7e3da;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  color: #2f5f3d;
}
@media only screen and (max-width: 1024px) {
  .life-care-page .life-care-highlights p,
  .life-care-page .life-care-highlights .life-care-highlight {
    font-size: 1.4rem;
  }
}
.life-care-page .life-care-highlights p::before,
.life-care-page .life-care-highlights .life-care-highlight::before {
  content: "";
  display: block;
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background-color: #fff;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 28px 28px;
}
.life-care-page .life-care-highlights p:nth-of-type(1)::before,
.life-care-page .life-care-highlights .life-care-highlight:nth-of-type(1)::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Cpath fill='%236db27d' d='M24 6c-5.5 0-10 4.5-10 10 0 7.5 10 18 10 18s10-10.5 10-18c0-5.5-4.5-10-10-10zm0 13.5a3.5 3.5 0 110-7 3.5 3.5 0 010 7zM10 38c0-4.4 6.3-7 14-7s14 2.6 14 7v2H10v-2z'/%3E%3C/svg%3E");
}
.life-care-page .life-care-highlights p:nth-of-type(2)::before,
.life-care-page .life-care-highlights .life-care-highlight:nth-of-type(2)::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Cpath fill='%236db27d' d='M7 18h26l4 8h4v10h-4a5 5 0 11-10 0H17a5 5 0 11-10 0H5V22l2-4zm4 18a2 2 0 100-4 2 2 0 000 4zm18 0a2 2 0 100-4 2 2 0 000 4zm-1.2-16l-2.3-5H10.8l-1.5 5h18.5z'/%3E%3C/svg%3E");
}
.life-care-page .life-care-highlights p:nth-of-type(3)::before,
.life-care-page .life-care-highlights .life-care-highlight:nth-of-type(3)::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Cpath fill='%236db27d' d='M10 18c0-6.6 5.4-10 14-10s14 3.4 14 10v2H10v-2zm2 6h24v14a2 2 0 01-2 2H14a2 2 0 01-2-2V24zm6 4v4h4v-4h-4zm8 0v4h4v-4h-4z'/%3E%3C/svg%3E");
}
.life-care-page .life-care-highlights p:nth-of-type(4)::before,
.life-care-page .life-care-highlights .life-care-highlight:nth-of-type(4)::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Cpath fill='%236db27d' d='M12 10h24v4H12v-4zm-2 8h28v4c-2.5 1.2-4 3.6-4 6.5V36a4 4 0 01-4 4H18a4 4 0 01-4-4v-7.5c0-2.9-1.5-5.3-4-6.5v-4z'/%3E%3C/svg%3E");
}
.life-care-page .life-care-section {
  padding-top: 8px;
  border-top: 1px solid #d7e3da;
}
.life-care-page .life-care-section > h2,
.life-care-page .life-care-section .wp-block-group__inner-container > h2 {
  margin-top: 40px;
  margin-bottom: 1em;
  color: #2f5f3d;
}
.life-care-page .life-care-features > .wp-block-group__inner-container {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
}
@media only screen and (max-width: 1024px) {
  .life-care-page .life-care-features > .wp-block-group__inner-container {
    gap: 16px;
  }
}
.life-care-page .life-care-feature {
  padding: 28px 24px;
  background: #f7fbf8;
  border-left: 4px solid #6db27d;
}
.life-care-page .life-care-feature h3 {
  margin-bottom: 0.5em;
  font-size: 2rem;
  color: #2f5f3d;
}
@media only screen and (max-width: 1024px) {
  .life-care-page .life-care-feature h3 {
    font-size: 1.8rem;
  }
}
.life-care-page .life-care-feature p {
  margin-bottom: 0;
  font-size: 1.6rem;
  line-height: 1.8;
}
.life-care-page .life-care-feature p.life-care-feature__emphasis {
  margin-top: 1em;
  font-weight: 700;
  color: #2f5f3d;
}
.life-care-page .life-care-staff {
  padding: 32px 28px;
  background: #e8f4eb;
  border: 1px solid #d7e3da;
}
.life-care-page .life-care-staff h2 {
  margin-top: 0;
  text-align: center;
}
.life-care-page .life-care-staff .life-care-staff__roles {
  margin-bottom: 16px;
  text-align: center;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.8;
  color: #2f5f3d;
}
.life-care-page .life-care-staff p:not(.life-care-staff__roles) {
  margin-bottom: 20px;
  font-size: 1.6rem;
  line-height: 1.8;
  text-align: center;
}
.life-care-page .life-care-staff .life-care-cta__btn,
.life-care-page .life-care-staff a.life-care-cta__btn {
  display: inline-block;
  margin: 0;
  padding: 16px 36px;
  background: #6db27d;
  color: #fff !important;
  font-size: 1.8rem;
  font-weight: 700;
  text-decoration: none;
  transition: opacity 0.2s;
}
.life-care-page .life-care-staff .life-care-cta__btn:hover,
.life-care-page .life-care-staff a.life-care-cta__btn:hover {
  opacity: 0.75;
}
.life-care-page .life-care-activities > .wp-block-group__inner-container {
  display: grid;
  gap: 16px;
}
.life-care-page .life-care-activities .life-care-feature {
  margin: 0;
}
.life-care-page .life-care-gallery .img-col-1 {
  margin-bottom: 30px;
}
.life-care-page .life-care-service-list {
  border-top: 1px solid #d7e3da;
}
.life-care-page .life-care-service-list p {
  margin: 0;
  padding: 16px 20px;
  border-bottom: 1px solid #d7e3da;
  font-size: 1.8rem;
  line-height: 1.7;
  background: #e8f4eb;
  color: #333;
}
@media only screen and (max-width: 1024px) {
  .life-care-page .life-care-service-list p {
    padding: 14px 16px;
    font-size: 1.6rem;
  }
}
.life-care-page .life-care-service-list p:nth-child(even) {
  background: #f7fbf8;
}
.life-care-page .life-care-service-list p.life-care-note {
  margin-top: 16px;
  padding-left: 0;
  padding-right: 0;
  border-bottom: none;
  background: transparent;
  color: #555;
  font-size: 1.6rem;
}
.life-care-page .life-care-flow {
  margin: 0 0 40px;
}
.life-care-page .life-care-flow > .wp-block-group__inner-container {
  display: grid;
  gap: 12px;
  counter-reset: life-care-step;
}
.life-care-page .life-care-flow p {
  display: flex;
  align-items: center;
  gap: 16px;
  margin: 0;
  padding: 16px 20px;
  background: #fff;
  border: 1px solid #d7e3da;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.5;
  counter-increment: life-care-step;
}
@media only screen and (max-width: 1024px) {
  .life-care-page .life-care-flow p {
    font-size: 1.6rem;
  }
}
.life-care-page .life-care-flow p::before {
  content: counter(life-care-step);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: #6db27d;
  color: #fff;
  font-size: 1.6rem;
}
.life-care-page .life-care-cta {
  padding: 32px 28px;
  text-align: center;
  background: #e8f4eb;
  border: 1px solid #d7e3da;
}
.life-care-page .life-care-cta > .wp-block-group__inner-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.life-care-page .life-care-cta p {
  margin: 0;
}
.life-care-page .life-care-cta .life-care-cta__lead {
  margin-bottom: 24px;
  font-size: 1.8rem;
  font-weight: 700;
  color: #2f5f3d;
}
@media only screen and (max-width: 1024px) {
  .life-care-page .life-care-cta .life-care-cta__lead {
    font-size: 1.6rem;
  }
}
.life-care-page .life-care-cta .life-care-cta__btn,
.life-care-page .life-care-cta a.life-care-cta__btn {
  display: inline-block;
  margin: 0;
  padding: 16px 36px;
  background: #6db27d;
  color: #fff !important;
  font-size: 1.8rem;
  font-weight: 700;
  text-decoration: none;
  transition: opacity 0.2s;
}
.life-care-page .life-care-cta .life-care-cta__btn:hover,
.life-care-page .life-care-cta a.life-care-cta__btn:hover {
  opacity: 0.75;
}
.life-care-page .life-care-cta .life-care-cta__tel,
.life-care-page .life-care-cta a.life-care-cta__tel {
  display: inline-block;
  margin: 30px 0 0;
  font-size: 1.8rem;
  font-weight: 700;
  color: #2f5f3d !important;
  text-decoration: underline;
}
.life-care-page .life-care-faq > .wp-block-group__inner-container {
  display: grid;
  gap: 12px;
}
.life-care-page .life-care-faq__item {
  border: 1px solid #d7e3da;
  background: #fff;
  padding: 0;
}
.life-care-page .life-care-faq__item h4 {
  position: relative;
  margin: 0;
  padding: 18px 48px 18px 20px;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.6;
  color: #2f5f3d;
  background: #fff;
}
@media only screen and (max-width: 1024px) {
  .life-care-page .life-care-faq__item h4 {
    font-size: 1.6rem;
  }
}
.life-care-page .life-care-faq__item h4::after {
  content: "";
  position: absolute;
  right: 22px;
  top: 50%;
  width: 10px;
  height: 10px;
  border-right: 2px solid #6db27d;
  border-bottom: 2px solid #6db27d;
  transform: translateY(-60%) rotate(45deg);
}
.life-care-page .life-care-faq__item p {
  margin: 0;
  padding: 0 20px 20px;
  font-size: 1.6rem;
  line-height: 1.8;
  color: #333;
}

.single.single-facility .facility-bottom-cta {
  margin: 48px 0 0;
  padding: 32px 28px;
  text-align: center;
  background: #e8f4eb;
  border: 1px solid #d7e3da;
}
.single.single-facility .facility-bottom-cta p {
  margin: 0;
}
.single.single-facility .facility-bottom-cta .life-care-cta__btn,
.single.single-facility .facility-bottom-cta a.life-care-cta__btn {
  display: inline-block;
  margin: 0;
  padding: 16px 36px;
  background: #6db27d;
  color: #fff !important;
  font-size: 1.8rem;
  font-weight: 700;
  text-decoration: none;
  transition: opacity 0.2s;
}
.single.single-facility .facility-bottom-cta .life-care-cta__btn:hover,
.single.single-facility .facility-bottom-cta a.life-care-cta__btn:hover {
  opacity: 0.75;
}

.facility-info {
  border-top: 1px solid #adadad;
  margin-top: 120px;
  padding-top: 80px;
}
.facility-info h2 {
  font-size: 3rem;
  font-weight: 700;
  text-align: center;
  margin-bottom: 50px;
}
.facility-info .fac-img {
  max-width: 444px;
  margin: 0 auto 56px auto;
  text-align: center;
}
.facility-info .fac-img img {
  max-width: 100%;
  height: auto;
}
.facility-info .facility-content {
  display: flex;
  justify-content: space-between;
}
@media only screen and (max-width: 1024px) {
  .facility-info .facility-content {
    display: block;
  }
}
.facility-info .table {
  width: calc(100% - 360px);
}
@media only screen and (max-width: 1024px) {
  .facility-info .table {
    width: 100%;
    margin-bottom: 30px;
  }
}
.facility-info .table dl {
  display: flex;
  flex-wrap: wrap;
}
.facility-info .table dt,
.facility-info .table dd {
  font-size: 2rem;
  padding: 3px 0;
  line-height: 1.6;
}
@media only screen and (max-width: 1024px) {
  .facility-info .table dt,
  .facility-info .table dd {
    font-size: 1.6rem;
  }
}
.facility-info .table dt {
  width: 180px;
}
@media only screen and (max-width: 1024px) {
  .facility-info .table dt {
    width: 100%;
    font-weight: 700;
  }
}
.facility-info .table dd {
  width: 280px;
}
@media only screen and (max-width: 1024px) {
  .facility-info .table dd {
    width: 100%;
    margin-bottom: 1em;
  }
}
.facility-info .gmap {
  width: 340px;
  position: relative;
}
@media only screen and (max-width: 1024px) {
  .facility-info .gmap {
    width: 100%;
  }
}
.facility-info .gmap::before {
  content: "";
  display: block;
  padding-top: 100%;
}
.facility-info .gmap iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
/*
 * Version: 1.1.5
 */
.md-top-section .section-ttl {
  font-size: 4.4rem;
  font-weight: 700;
  text-align: center;
  margin-bottom: 50px;
}
@media only screen and (max-width: 1024px) {
  .md-top-section .section-ttl {
    font-size: 3rem;
  }
}
.md-top-section.news {
  background-image: url("../img/cmn/bg-top-news.png");
  background-repeat: repeat;
  padding-top: 45px;
  padding-bottom: 45px;
  position: relative;
  z-index: 0;
}
@media only screen and (max-width: 1024px) {
  .md-top-section.news {
    padding: 23px 0;
  }
}
.md-top-section.news .illust {
  width: 91px;
  height: 115px;
  background-image: url("../img/top/illust-top-news.png");
  background-repeat: no-repeat;
  background-size: 100%;
  position: absolute;
  bottom: 32px;
  right: calc(151 / var(--width) * 100vw);
}
@media only screen and (max-width: 1024px) {
  .md-top-section.news .illust {
    width: 45px;
    height: 58px;
    bottom: 5px;
    right: calc(35 / var(--width) * 100vw);
  }
}
.md-top-section.news .section-ttl {
  color: #ff919e;
  font-size: 2.2rem;
  font-weight: 800;
  text-align: center;
}
@media only screen and (max-width: 1024px) {
  .md-top-section.news .section-ttl {
    font-size: 2rem;
  }
}
.md-top-section.news .section-content {
  background: #fff;
  padding-top: calc(49 / var(--width) * 100vw);
  padding-right: calc(362 / var(--width) * 100vw);
  padding-bottom: calc(42 / var(--width) * 100vw);
  padding-left: calc(362 / var(--width) * 100vw);
}
@media only screen and (max-width: 1024px) {
  .md-top-section.news .section-content {
    padding: 0;
    padding-top: 28px;
    padding-right: 24px;
    padding-left: 24px;
    padding-bottom: 28px;
  }
}
.md-top-section.news .news-list {
  max-width: 1000px;
}
@media only screen and (max-width: 1024px) {
  .md-top-section.news .news-list ul {
    display: block;
  }
}
.md-top-section.news .news-list li {
  display: flex;
}
@media only screen and (max-width: 1024px) {
  .md-top-section.news .news-list li {
    display: block;
    margin-bottom: 10px;
  }
}
.md-top-section.news .news-list li a {
  display: block;
  font-size: 1.8rem;
  text-decoration: underline;
}
@media only screen and (max-width: 1024px) {
  .md-top-section.news .news-list li a {
    display: block;
  }
}
.md-top-section.news .news-list li a:hover {
  text-decoration: none;
}
.md-top-section.news .news-list .date {
  color: #333;
  margin-right: 27px;
  font-size: 1.8rem;
}
@media only screen and (max-width: 1024px) {
  .md-top-section.news .news-list .date {
    font-size: 1.2rem;
  }
}
.md-top-section.news .news-list .ttl {
  font-size: 1.6rem;
  color: #666;
  letter-spacing: 0.1em;
  line-height: 28px;
}
@media only screen and (max-width: 1024px) {
  .md-top-section.news .news-list .ttl {
    font-size: 1.4rem;
  }
}
.md-top-section.news .link {
  padding-top: 38px;
}
@media only screen and (max-width: 1024px) {
  .md-top-section.news .link {
    position: static;
    margin: 0 auto;
    padding-top: 20px;
    text-align: center;
  }
}
.md-top-section.news .link a {
  font-weight: 800;
  text-align: center;
  display: block;
  padding-bottom: 24px;
  font-size: 1.3rem;
}
@media only screen and (max-width: 1024px) {
  .md-top-section.news .link a {
    padding-bottom: 0;
  }
}
.md-top-section.service {
  padding-top: 94px;
  padding-bottom: 135px;
  position: relative;
  background: #effdff;
}
@media only screen and (max-width: 1024px) {
  .md-top-section.service {
    padding-top: 30px;
    padding-bottom: 80px;
    z-index: 1;
  }
}
.md-top-section.service::before {
  content: "";
  z-index: 0;
  background: #fff;
  width: 100%;
  height: calc(473 / var(--width) * 100vw);
  position: absolute;
  bottom: 0;
  left: 0;
}
@media only screen and (max-width: 1024px) {
  .md-top-section.service::before {
    display: none;
  }
}
.md-top-section.service .section-ttl {
  position: relative;
  z-index: 1;
  margin-bottom: 42px;
}
@media only screen and (max-width: 1024px) {
  .md-top-section.service .section-ttl {
    width: 256px;
    margin: 0 auto 28px auto;
  }
  .md-top-section.service .section-ttl img {
    width: 100%;
    height: auto;
  }
}
.md-top-section.service .service-lead-txt {
  font-size: 1.8rem;
  font-weight: 700;
  text-align: center;
  margin-bottom: 50px;
}
@media only screen and (max-width: 1024px) {
  .md-top-section.service .service-lead-txt {
    font-size: 1.1rem;
  }
}
.md-top-section.service .section-content {
  position: relative;
  z-index: 1;
  max-width: 1000px;
  margin: 0 auto;
  background: #fff;
  border: 6px solid #fef194;
  border-radius: 20px;
  padding-top: 53px;
  padding-bottom: 113px;
}
@media only screen and (max-width: 1024px) {
  .md-top-section.service .section-content {
    margin: 0 18px;
  }
}
.md-top-section.service .staff-img {
  position: absolute;
  background-repeat: no-repeat;
  pointer-events: none;
  background-size: 100%;
  z-index: 11;
}
.md-top-section.service .staff-img.s-1 {
  width: 248px;
  height: 206px;
  background-image: url("../img/top/staff-img-1.png");
  top: calc(-28 / var(--width) * 100vw);
  left: calc(-107 / var(--width) * 100vw);
}
@media only screen and (max-width: 1024px) {
  .md-top-section.service .staff-img.s-1 {
    width: 90px;
    height: 75px;
    top: calc(-56 / var(--width) * 100vw);
    left: calc(-7 / var(--width) * 100vw);
  }
}
.md-top-section.service .staff-img.s-2 {
  width: 250px;
  height: 220px;
  background-image: url("../img/top/staff-img-2.png");
  top: calc(535 / var(--width) * 100vw);
  right: calc(-147 / var(--width) * 100vw);
}
@media only screen and (max-width: 1024px) {
  .md-top-section.service .staff-img.s-2 {
    width: 98px;
    height: 90px;
    top: auto;
    bottom: -13px;
    right: calc(-30 / var(--width) * 100vw);
  }
}
.md-top-section.service .staff-img.s-3 {
  width: 121px;
  height: 158px;
  background-image: url("../img/top/staff-img-3.png");
  top: calc(850 / var(--width) * 100vw);
  left: calc(-75 / var(--width) * 100vw);
}
@media only screen and (max-width: 1024px) {
  .md-top-section.service .staff-img.s-3 {
    width: 60px;
    height: 80px;
    top: auto;
    left: auto;
    bottom: 7px;
    right: calc(-30 / var(--width) * 100vw);
  }
}
.md-top-section.service .staff-img.s-4 {
  width: 287px;
  height: 182px;
  background-image: url("../img/top/staff-img-4.png");
  bottom: calc(-60 / var(--width) * 100vw);
  left: calc(-133 / var(--width) * 100vw);
}
@media only screen and (max-width: 1024px) {
  .md-top-section.service .staff-img.s-4 {
    width: 168px;
    height: 107px;
    bottom: -40px;
    right: calc(-7 / var(--width) * 100vw);
    left: auto;
  }
}
.md-top-section.service .service-list ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  position: relative;
  z-index: 10;
}
@media only screen and (max-width: 1024px) {
  .md-top-section.service .service-list ul {
    display: block;
  }
}
.md-top-section.service .service-list li {
  width: calc(484 / var(--width) * 100vw);
  margin-bottom: 46px;
  max-width: 484px;
  padding: 0 calc(30 / var(--width) * 100vw);
}
@media only screen and (max-width: 1024px) {
  .md-top-section.service .service-list li {
    max-width: 100%;
    padding: 0 20px;
    margin-bottom: 14px;
  }
}
.md-top-section.service .service-list li a {
  max-width: 420px;
  display: block;
  position: relative;
  margin: 0 auto;
}
@media only screen and (max-width: 1024px) {
  .md-top-section.service .service-list li:nth-of-type(1) .label {
    width: 124px;
  }
}
@media only screen and (max-width: 1024px) {
  .md-top-section.service .service-list li:nth-of-type(2) .label {
    width: 149px;
  }
}
@media only screen and (max-width: 1024px) {
  .md-top-section.service .service-list li:nth-of-type(3) .label {
    width: 132px;
  }
}
@media only screen and (max-width: 1024px) {
  .md-top-section.service .service-list li:nth-of-type(4) .label {
    width: 178px;
  }
}
@media only screen and (max-width: 1024px) {
  .md-top-section.service .service-list li:nth-of-type(5) .label {
    width: 126px;
  }
}
@media only screen and (max-width: 1024px) {
  .md-top-section.service .service-list li:nth-of-type(6) .label {
    width: 162px;
  }
}
.md-top-section.service .service-list .label {
  position: absolute;
  top: -13px;
  left: -50px;
}
@media only screen and (max-width: 1024px) {
  .md-top-section.service .service-list .label {
    top: -6px;
    left: -25px;
  }
  .md-top-section.service .service-list .label img {
    width: 100%;
    height: auto;
  }
}
.md-top-section.service .service-list .img img {
  width: 100%;
  height: auto;
}
.md-top-section.service .service-list .name {
  font-size: 2rem;
  font-weight: 700;
  text-align: center;
  color: #444;
  background-image: url("../img/cmn/icon-circle-arrow-right.png");
  background-repeat: no-repeat;
  background-position: 56px 50%;
  padding: 24px 0;
}
@media only screen and (max-width: 1024px) {
  .md-top-section.service .service-list .name {
    background-size: 18px;
    font-size: 1.4rem;
    background-position: calc(20 / var(--width) * 100vw) 50%;
  }
}
.md-top-section.service .message {
  font-size: 1.8rem;
  font-weight: 700;
  text-align: center;
}
@media only screen and (max-width: 1024px) {
  .md-top-section.service .message {
    font-size: 1.3rem;
  }
}

/*
 * Version: 1.1.5
 */
.form-body {
  /* input */
  /* inputにフォーカスが当たっている時 */
}
.form-body button,
.form-body input[type=submit] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding: 0;
  border: none;
  outline: none;
  background: transparent;
}
.form-body input,
.form-body button,
.form-body textarea,
.form-body select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  font-family: inherit;
  border-radius: 0;
  box-sizing: border-box;
  font-size: 1.6rem;
  color: inherit;
}
.form-body label {
  cursor: pointer;
}
.form-body form {
  box-sizing: border-box;
  width: 100%;
}
.form-body input,
.form-body textarea {
  width: 100%;
  padding: 4px;
  font-size: 1.8rem;
  box-sizing: border-box;
  background-color: #f2f1f1;
  /* inputの枠線を消す */
  border: transparent;
  transition: border 0.2s ease-out;
  /* 文字色を親から継承 */
  color: inherit;
  padding: 2px 8px;
  /* 任意の高さ */
  /*inputのフォーカス時の枠線を消す*/
  outline: 0;
}
.form-body input::placeholder,
.form-body textarea::placeholder {
  color: #9d9d9d;
}
.form-body textarea {
  height: 10em;
}
.form-body .submit {
  text-align: center;
  padding-top: 80px;
}
.form-body dl {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media only screen and (max-width: 1024px) {
  .form-body dl {
    display: block;
  }
}
.form-body dl dt, .form-body dl dd {
  padding: 12px 0;
  font-size: 1.5rem;
}
@media only screen and (max-width: 1024px) {
  .form-body dl dt, .form-body dl dd {
    padding: 0;
  }
}
.form-body dl dt {
  width: 155px;
  line-height: 1.6;
}
@media only screen and (max-width: 1024px) {
  .form-body dl dt {
    width: 100%;
    font-weight: 700;
    margin-bottom: 10px;
  }
}
.form-body dl dd {
  width: calc(100% - 155px);
}
@media only screen and (max-width: 1024px) {
  .form-body dl dd {
    width: 100%;
    margin-bottom: 30px;
    line-height: 1.8;
  }
}
.form-body dl dd.flex {
  display: flex;
}
.form-body dl dd.flex .col {
  width: 50%;
}
.form-body dl dd.flex .col input {
  width: 77%;
}
@media only screen and (max-width: 1024px) {
  .form-body dl dd.flex .col input {
    width: 70%;
  }
}
.form-body .wpcf7-spinner {
  display: block;
}

.contact-form-wrap p.notes {
  padding-top: 87px;
  text-align: center;
  font-size: 1.6rem;
}
@media screen and (max-width: 1024px) {
  .contact-form-wrap p.notes {
    padding-top: 40px;
    padding-left: 20px;
    padding-right: 20px;
  }
}

.back-to-top-page {
  text-align: center;
  padding-top: 108px;
  padding-bottom: 143px;
}
.back-to-top-page a {
  display: inline-block;
  width: 295px;
  padding: 32px 0;
  font-size: 1.8rem;
  font-weight: 700;
  background: #ff919e;
  border-radius: 42px;
  color: #fff;
}
@media screen and (max-width: 1024px) {
  .back-to-top-page a {
    width: 100%;
  }
}

.contact-content-thanks {
  text-align: center;
}
.contact-content-thanks p {
  font-size: 1.8rem;
  letter-spacing: 0.045em;
}

.contact-thanks {
  font-size: 12.3rem;
  font-weight: 300;
  color: #c0c0c0;
  margin-bottom: 60px;
}

.btn-submit {
  text-align: center;
  padding-top: 100px;
}
@media screen and (max-width: 1024px) {
  .btn-submit {
    padding-top: 50px;
  }
}
.btn-submit input[type=submit] {
  transition-property: opacity, visibility, z-index;
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1);
  cursor: pointer;
  width: 300px;
  height: 90px;
  background: #ff919e;
  color: #fff;
  font-size: 3rem;
  border-radius: 45px;
}
@media screen and (max-width: 1024px) {
  .btn-submit input[type=submit] {
    font-size: 2.2rem;
    height: 50px;
  }
}
.btn-submit input[type=submit]:hover {
  opacity: 0.6;
}
@media screen and (max-width: 1024px) {
  .btn-submit input[type=submit]:hover {
    opacity: 1;
  }
}

/*
 * Version: 1.1.5
 */
.page .section-ttl {
  font-size: 3.2rem;
  font-weight: 700;
  text-align: center;
}
@media only screen and (max-width: 1024px) {
  .page .section-ttl {
    font-size: 2.4rem;
  }
}

.md-message {
  margin-bottom: 122px;
}
@media only screen and (max-width: 1024px) {
  .md-message {
    margin-bottom: 40px;
  }
}
.md-message .section-ttl {
  margin-bottom: 54px;
}
@media only screen and (max-width: 1024px) {
  .md-message .section-ttl {
    margin-bottom: 26px;
  }
}
.md-message .message-content {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  max-width: 1000px;
  margin: 0 auto;
}
@media only screen and (max-width: 1024px) {
  .md-message .message-content {
    display: block;
    padding-right: 20px;
    padding-left: 20px;
  }
}
.md-message .logo {
  width: 31.2%;
  margin-right: 8.5%;
  order: 2;
}
@media only screen and (max-width: 1024px) {
  .md-message .logo {
    width: 156px;
    margin: 0 auto 30px auto;
  }
}
.md-message .logo img {
  width: 100%;
  height: auto;
}
.md-message .txt {
  width: 52%;
  order: 1;
}
@media only screen and (max-width: 1024px) {
  .md-message .txt {
    width: 100%;
  }
}
.md-message .txt p.main {
  font-size: 1.8rem;
  line-height: 2.4;
  margin-bottom: 2em;
}
.md-message .txt p.signature {
  font-size: 2rem;
  text-align: right;
}

.md-company-info {
  background: #f5f6f7;
  padding-top: 130px;
  padding-bottom: 194px;
}
@media only screen and (max-width: 1024px) {
  .md-company-info {
    padding-top: 50px;
    padding-bottom: 50px;
    width: 100vw;
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
  }
}
.md-company-info .section-ttl {
  margin-bottom: 110px;
}
@media only screen and (max-width: 1024px) {
  .md-company-info .section-ttl {
    margin-bottom: 50px;
  }
}
.md-company-info .info-table {
  display: flex;
  flex-wrap: wrap;
  max-width: 720px;
  margin: 0 auto;
  border-top: 1px solid #cacaca;
}
@media only screen and (max-width: 1024px) {
  .md-company-info .info-table {
    display: block;
  }
}
.md-company-info .info-table dt,
.md-company-info .info-table dd {
  padding: 15px 20px;
  font-size: 1.4rem;
  border-bottom: 1px solid #cacaca;
  line-height: 3;
}
@media only screen and (max-width: 1024px) {
  .md-company-info .info-table dt,
  .md-company-info .info-table dd {
    padding: 7px 20px;
  }
}
.md-company-info .info-table dt {
  background: #eff0f1;
  font-weight: 700;
  width: 23.0555555556%;
}
@media only screen and (max-width: 1024px) {
  .md-company-info .info-table dt {
    width: 100%;
  }
}
.md-company-info .info-table dd {
  background: #fff;
  width: 76.9444444444%;
}
@media only screen and (max-width: 1024px) {
  .md-company-info .info-table dd {
    width: 100%;
  }
}

.md-location {
  padding-top: 111px;
  padding-bottom: 80px;
}
@media only screen and (max-width: 1024px) {
  .md-location {
    padding-top: 50px;
    padding-bottom: 40px;
  }
}
.md-location .section-ttl {
  margin-bottom: 100px;
}
@media only screen and (max-width: 1024px) {
  .md-location .section-ttl {
    margin-bottom: 50px;
  }
}
.md-location p.address {
  text-align: center;
  font-size: 1.8rem;
  margin-bottom: 2.6em;
}
@media only screen and (max-width: 1024px) {
  .md-location p.address {
    margin-bottom: 2em;
  }
}
.md-location .gmap {
  position: relative;
  max-width: 760px;
  margin: 0 auto;
}
.md-location .gmap::before {
  position: relative;
  content: "";
  display: block;
  padding-top: 65.7894%;
  z-index: 0;
}
.md-location .gmap iframe {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1;
}

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