@charset "UTF-8";
/*! normalize.css v7.0.0 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in
 *    IE on Windows Phone and in iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

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

/**
 * Add the correct display in IE 9-.
 */
article,
aside,
footer,
header,
nav,
section {
  display: block; }

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

/* Grouping content
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in IE.
 */
figcaption,
figure,
main {
  /* 1 */
  display: block; }

/**
 * Add the correct margin in IE 8.
 */
figure {
  margin: 1em 40px; }

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

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

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

/**
 * 1. Remove the bottom border in Chrome 57- and Firefox 39-.
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  /* 2 */ }

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */
b,
strong {
  font-weight: inherit; }

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

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

/**
 * Add the correct font style in Android 4.3-.
 */
dfn {
  font-style: italic; }

/**
 * Add the correct background and color in IE 9-.
 */
mark {
  background-color: #ff0;
  color: #000; }

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

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

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

/* Embedded content
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
audio,
video {
  display: inline-block; }

/**
 * Add the correct display in iOS 4-7.
 */
audio:not([controls]) {
  display: none;
  height: 0; }

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

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

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers (opinionated).
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: sans-serif;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */ }

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

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

/**
 * 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,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  /* 2 */ }

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0; }

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText; }

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em; }

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */ }

/**
 * 1. Add the correct display in IE 9-.
 * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */ }

/**
 * Remove the default vertical scrollbar in IE.
 */
textarea {
  overflow: auto; }

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

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

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

/**
 * Remove the inner padding 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 {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */ }

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 */
details,
menu {
  display: block; }

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item; }

/* Scripting
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
canvas {
  display: inline-block; }

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

/* Hidden
   ========================================================================== */
/**
 * Add the correct display in IE 10-.
 */
[hidden] {
  display: none; }

.a-txt-black {
  color: #111 !important; }

.a-txt-black-ml {
  color: rgba(17, 17, 17, 0.7) !important; }

.a-txt-white {
  color: #FFF !important; }

.a-txt-white-md {
  color: #FFF !important; }

.a-txt-main {
  color: #2FAA6F !important; }

.a-txt-main2 {
  color: #D9EEFF !important; }

.a-txt-main3 {
  color: rgba(64, 197, 152, 0.2) !important; }

.a-txt-sub {
  color: #00C878 !important; }

.a-txt-gray-d {
  color: #2e2e2e !important; }

.a-txt-gray-md {
  color: #999 !important; }

.a-txt-gray {
  color: #DDD !important; }

.a-txt-gray-ml {
  color: #F0F0F0 !important; }

.a-txt-gray-l {
  color: #F5F5F5 !important; }

.a-bg-main {
  background-color: #2FAA6F !important; }

.a-bg-main2 {
  background-color: #D9EEFF !important; }

.a-bg-main3 {
  background-color: rgba(64, 197, 152, 0.2) !important; }

.a-bg-sub {
  background-color: #00C878 !important; }

.a-bg-sub2 {
  background-color: #2fffac !important; }

.a-bg-gray-d {
  background-color: #2e2e2e !important; }

.a-bg-gray-md {
  background-color: #999 !important; }

.a-bg-gray {
  background-color: #DDD !important; }

.a-bg-gray-ml {
  background-color: #F0F0F0 !important; }

.a-bg-gray-l {
  background-color: #F5F5F5 !important; }

.a-bg-white {
  background-color: #FFF !important; }

.a-bg-white-md {
  background-color: rgba(255, 255, 255, 0.7) !important; }

.a-bg-pattern {
  background-image: url("../a-images/bg-pattern.svg");
  background-attachment: fixed;
  background-size: 40px; }

@font-face {
  font-family: 'tmpla';
  src: url("../a-fonts/tmpla.eot?k9ee7z");
  src: url("../a-fonts/tmpla.eot?k9ee7z#iefix") format("embedded-opentype"), url("../a-fonts/tmpla.ttf?k9ee7z") format("truetype"), url("../a-fonts/tmpla.woff?k9ee7z") format("woff"), url("../a-fonts/tmpla.svg?k9ee7z#tmpla") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: block; }
[class^="a-i-"], [class*=" a-i-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'tmpla' !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.a-i-home:before {
  content: "\e900"; }

.a-i-light02:before {
  content: "\e901"; }

.a-i-user01:before {
  content: "\e902"; }

.a-i-bookmark:before {
  content: "\e903"; }

.a-i-close:before {
  content: "\e904"; }

.a-i-menu01:before {
  content: "\e905"; }

.a-i-menu02:before {
  content: "\e906"; }

.a-i-right:before {
  content: "\e907"; }

.a-i-youtube-maru:before {
  content: "\e908"; }

.a-i-refresh:before {
  content: "\e909"; }

.a-i-youtube:before {
  content: "\e90a"; }

.a-i-time:before {
  content: "\e90b"; }

.a-i-tag:before {
  content: "\e90c"; }

.a-i-folder:before {
  content: "\e90d"; }

.a-i-light01:before {
  content: "\e90e"; }

.a-i-send:before {
  content: "\e90f"; }

.a-i-twitter:before {
  content: "\e910"; }

.a-i-twitter_maru:before {
  content: "\e911"; }

.a-i-crown:before {
  content: "\e912"; }

.a-i-search:before {
  content: "\e913"; }

.a-i-info01:before {
  content: "\e914"; }

.a-i-eye:before {
  content: "\e915"; }

.a-i-quote02:before {
  content: "\e916"; }

.a-i-quote01:before {
  content: "\e917"; }

.a-i-shita:before {
  content: "\e918"; }

.a-i-pinterest:before {
  content: "\e919"; }

.a-i-share:before {
  content: "\e91a"; }

.a-i-left:before {
  content: "\e91b"; }

.a-i-ue:before {
  content: "\e91c"; }

.a-i-check04:before {
  content: "\e91d"; }

.a-i-check03:before {
  content: "\e91e"; }

.a-i-check02:before {
  content: "\e91f"; }

.a-i-check01:before {
  content: "\e920"; }

.a-i-write:before {
  content: "\e921"; }

.a-i-fb:before {
  content: "\e922"; }

.a-i-fb_maru:before {
  content: "\e923"; }

.a-i-fav:before {
  content: "\e924"; }

.a-i-insta:before {
  content: "\e925"; }

.a-i-insta_maru:before {
  content: "\e926"; }

.a-i-line:before {
  content: "\e927"; }

.a-i-line_maru:before {
  content: "\e928"; }

.a-i-building:before {
  content: "\e929"; }

.a-i-school:before {
  content: "\e92a"; }

.a-i-pinterest_maru:before {
  content: "\e92b"; }

.a-i-user05:before {
  content: "\e92c"; }

.a-i-user04:before {
  content: "\e92d"; }

.a-i-user03:before {
  content: "\e92e"; }

.a-i-user02:before {
  content: "\e92f"; }

.a-i-location:before {
  content: "\e930"; }

.a-i-info02:before {
  content: "\e931"; }

.a-i-info03:before {
  content: "\e932"; }

.a-i-megaphone:before {
  content: "\e933"; }

.a-i-smartphone:before {
  content: "\e934"; }

.a-i-link:before {
  content: "\e935"; }

.a-i-kuromaru:before {
  content: "\e936"; }

.a-i-shiromaru:before {
  content: "\e937"; }

.a-i-calendar01:before {
  content: "\e938"; }

.a-i-calendar02:before {
  content: "\e939"; }

.a-i-ha:before {
  content: "\e93a"; }

.a-i-hospital:before {
  content: "\e93b"; }

.a-i-info04:before {
  content: "\e93c"; }

.a-i-imp:before {
  content: "\e93d"; }

.a-i-woman:before {
  content: "\e93e"; }

.a-i-man:before {
  content: "\e93f"; }

.a-i-kabuse:before {
  content: "\e940"; }

.a-i-tongue:before {
  content: "\e941"; }

.a-i-pain:before {
  content: "\e942"; }

.a-i-whitening:before {
  content: "\e943"; }

.a-i-maternity:before {
  content: "\e944"; }

.a-i-decay:before {
  content: "\e945"; }

.a-i-denture:before {
  content: "\e946"; }

.a-i-ortho01:before {
  content: "\e947"; }

.a-i-ortho02:before {
  content: "\e948"; }

.a-i-ext:before {
  content: "\e949"; }

.a-i-root:before {
  content: "\e94a"; }

.a-i-perio:before {
  content: "\e94b"; }

.a-i-kids:before {
  content: "\e94c"; }

.a-i-prevention:before {
  content: "\e94d"; }

.a-i-medical:before {
  content: "\e94e"; }

.a-i-index:before {
  content: "\e94f"; }

.a-i-mail:before {
  content: "\e950"; }

.a-i-file01:before {
  content: "\e951"; }

.a-i-file02:before {
  content: "\e952"; }

.a-i-time02:before {
  content: "\e953"; }

.a-i-time03:before {
  content: "\e954"; }

.a-i-angel-down-circle-thin:before {
  content: "\e955"; }

.a-i-angel-down-thin:before {
  content: "\e956"; }

.a-i-angel-left-circle-thin:before {
  content: "\e957"; }

.a-i-angel-left-thin:before {
  content: "\e958"; }

.a-i-angel-right-circle-thin:before {
  content: "\e959"; }

.a-i-angel-right-thin:before {
  content: "\e95a"; }

.a-i-angel-up-circle-thin:before {
  content: "\e95b"; }

.a-i-angel-up-thin:before {
  content: "\e95c"; }

.a-i-arrow-down-circle-thin:before {
  content: "\e95d"; }

.a-i-arrow-down-thin:before {
  content: "\e95e"; }

.a-i-arrow-left-circle-thin:before {
  content: "\e95f"; }

.a-i-arrow-left-thin:before {
  content: "\e960"; }

.a-i-arrow-right-circle-thin:before {
  content: "\e961"; }

.a-i-arrow-right-thin:before {
  content: "\e962"; }

.a-i-arrow-up-circle-thin:before {
  content: "\e963"; }

.a-i-arrow-up-thin:before {
  content: "\e964"; }

.a-i-info05:before {
  content: "\e965"; }

.a-i-info06:before {
  content: "\e966"; }

.a-i-user06:before {
  content: "\e967"; }

.a-i-user07:before {
  content: "\e968"; }

.a-i-user08:before {
  content: "\e969"; }

.a-i-warning:before {
  content: "\e96a"; }

.a-i-angel-right-circle:before {
  content: "\e96b"; }

.a-i-check-maru:before {
  content: "\e96c"; }

.a-i-megaphone02:before {
  content: "\e96d"; }

.a-i-bag:before {
  content: "\e97b"; }

.a-i-info_maru:before {
  content: "\e97c"; }

.a-i-yen:before {
  content: "\e97d"; }

.a-i-yen_maru:before {
  content: "\e97e"; }

.a-i-help01:before {
  content: "\e97f"; }

.a-i-help02:before {
  content: "\e980"; }

.a-i-sleep:before {
  content: "\e981"; }

.a-i-japan:before {
  content: "\e982"; }

.a-i-drop:before {
  content: "\e983"; }

@media (min-width: 1200px) {
  .a-none-pc {
    display: none !important; } }

@media screen and (min-width: 560px) and (max-width: 1200px) {
  .a-none-tab {
    display: none !important; } }

@media (max-width: 560px) {
  .a-none-sp {
    display: none !important; } }

.a-main {
  box-sizing: border-box;
  width: 100%; }

.a-sec00 {
  padding: 0; }

@media (min-width: 1200px) {
  .a-sec10 {
    padding: 72px 0 0; } }
@media screen and (min-width: 560px) and (max-width: 1200px) {
  .a-sec10 {
    padding: 72px 0 0; } }
@media (max-width: 560px) {
  .a-sec10 {
    padding: 36px 0 0; } }

@media (min-width: 1200px) {
  .a-sec11 {
    padding: 72px 0; } }
@media screen and (min-width: 560px) and (max-width: 1200px) {
  .a-sec11 {
    padding: 72px 0; } }
@media (max-width: 560px) {
  .a-sec11 {
    padding: 36px 0; } }

@media (min-width: 1200px) {
  .a-sec01 {
    padding: 0 0 72px; } }
@media screen and (min-width: 560px) and (max-width: 1200px) {
  .a-sec01 {
    padding: 0 0 72px; } }
@media (max-width: 560px) {
  .a-sec01 {
    padding: 0 0 36px; } }

@media (min-width: 1200px) {
  .a-sec10-half {
    padding: 24px 0 0; } }
@media screen and (min-width: 560px) and (max-width: 1200px) {
  .a-sec10-half {
    padding: 28.8px 0 0; } }
@media (max-width: 560px) {
  .a-sec10-half {
    padding: 18px 0 0; } }

@media (min-width: 1200px) {
  .a-sec11-half {
    padding: 24px 0; } }
@media screen and (min-width: 560px) and (max-width: 1200px) {
  .a-sec11-half {
    padding: 28.8px 0; } }
@media (max-width: 560px) {
  .a-sec11-half {
    padding: 18px 0; } }

@media (min-width: 1200px) {
  .a-sec01-half {
    padding: 0 0 24px; } }
@media screen and (min-width: 560px) and (max-width: 1200px) {
  .a-sec01-half {
    padding: 0 0 28.8px; } }
@media (max-width: 560px) {
  .a-sec01-half {
    padding: 0 0 18px; } }

.a-page-wrap {
  margin-left: auto;
  margin-right: auto;
  max-width: 1200px;
  width: 90%; }

.a-page-wrap-m {
  margin-left: auto;
  margin-right: auto;
  max-width: 960px;
  width: 90%; }

.a-page-wrap-s {
  margin-left: auto;
  margin-right: auto;
  max-width: 720px;
  width: 90%; }

.a-clm {
  box-sizing: border-box; }
  @media (min-width: 1200px) {
    .a-clm {
      padding-left: 28px;
      padding-right: 28px; } }
  @media screen and (min-width: 560px) and (max-width: 1200px) {
    .a-clm {
      padding-left: 2vw;
      padding-right: 2vw; } }
  @media (max-width: 560px) {
    .a-clm {
      padding-left: 2vw;
      padding-right: 2vw; } }
  .a-clm img {
    display: block;
    max-width: 100%;
    margin-bottom: 24px; }
    @media (max-width: 560px) {
      .a-clm img {
        margin-bottom: 16px; } }
    .a-clm img:last-child {
      margin-bottom: 0; }

.a-clms {
  display: flex;
  flex-wrap: wrap; }
  .a-clms.a-reverse {
    flex-direction: row-reverse; }
    @media (max-width: 560px) {
      .a-clms.a-reverse {
        flex-direction: column-reverse; } }
  .a-clms .a-clm, .a-clms .a-clm2, .a-clms .a-clm3, .a-clms .a-clm4 {
    box-sizing: border-box;
    border: 1px solid transparent; }
    @media (min-width: 1200px) {
      .a-clms .a-clm, .a-clms .a-clm2, .a-clms .a-clm3, .a-clms .a-clm4 {
        padding: 28px; } }
    @media screen and (min-width: 560px) and (max-width: 1200px) {
      .a-clms .a-clm, .a-clms .a-clm2, .a-clms .a-clm3, .a-clms .a-clm4 {
        padding: 2vw; } }
    @media (max-width: 560px) {
      .a-clms .a-clm, .a-clms .a-clm2, .a-clms .a-clm3, .a-clms .a-clm4 {
        padding: 2vw; } }
    .a-clms .a-clm img, .a-clms .a-clm2 img, .a-clms .a-clm3 img, .a-clms .a-clm4 img {
      display: block;
      max-width: 100%;
      margin-bottom: 24px; }
      @media (max-width: 560px) {
        .a-clms .a-clm img, .a-clms .a-clm2 img, .a-clms .a-clm3 img, .a-clms .a-clm4 img {
          margin-bottom: 16px; } }
      .a-clms .a-clm img:last-child, .a-clms .a-clm2 img:last-child, .a-clms .a-clm3 img:last-child, .a-clms .a-clm4 img:last-child {
        margin-bottom: 0; }
    @media (min-width: 1200px) {
      .a-clms .a-clm .a-clm, .a-clms .a-clm .a-clm2, .a-clms .a-clm .a-clm3, .a-clms .a-clm .a-clm4, .a-clms .a-clm2 .a-clm, .a-clms .a-clm2 .a-clm2, .a-clms .a-clm2 .a-clm3, .a-clms .a-clm2 .a-clm4, .a-clms .a-clm3 .a-clm, .a-clms .a-clm3 .a-clm2, .a-clms .a-clm3 .a-clm3, .a-clms .a-clm3 .a-clm4, .a-clms .a-clm4 .a-clm, .a-clms .a-clm4 .a-clm2, .a-clms .a-clm4 .a-clm3, .a-clms .a-clm4 .a-clm4 {
        padding: 0 10px; } }
    @media screen and (min-width: 560px) and (max-width: 1200px) {
      .a-clms .a-clm .a-clm, .a-clms .a-clm .a-clm2, .a-clms .a-clm .a-clm3, .a-clms .a-clm .a-clm4, .a-clms .a-clm2 .a-clm, .a-clms .a-clm2 .a-clm2, .a-clms .a-clm2 .a-clm3, .a-clms .a-clm2 .a-clm4, .a-clms .a-clm3 .a-clm, .a-clms .a-clm3 .a-clm2, .a-clms .a-clm3 .a-clm3, .a-clms .a-clm3 .a-clm4, .a-clms .a-clm4 .a-clm, .a-clms .a-clm4 .a-clm2, .a-clms .a-clm4 .a-clm3, .a-clms .a-clm4 .a-clm4 {
        padding: 0 1vw; } }
    @media (max-width: 560px) {
      .a-clms .a-clm .a-clm, .a-clms .a-clm .a-clm2, .a-clms .a-clm .a-clm3, .a-clms .a-clm .a-clm4, .a-clms .a-clm2 .a-clm, .a-clms .a-clm2 .a-clm2, .a-clms .a-clm2 .a-clm3, .a-clms .a-clm2 .a-clm4, .a-clms .a-clm3 .a-clm, .a-clms .a-clm3 .a-clm2, .a-clms .a-clm3 .a-clm3, .a-clms .a-clm3 .a-clm4, .a-clms .a-clm4 .a-clm, .a-clms .a-clm4 .a-clm2, .a-clms .a-clm4 .a-clm3, .a-clms .a-clm4 .a-clm4 {
        padding: 0 1vw; } }
    .a-clms .a-clm .a-clm:first-child, .a-clms .a-clm .a-clm2:first-child, .a-clms .a-clm .a-clm3:first-child, .a-clms .a-clm .a-clm4:first-child, .a-clms .a-clm2 .a-clm:first-child, .a-clms .a-clm2 .a-clm2:first-child, .a-clms .a-clm2 .a-clm3:first-child, .a-clms .a-clm2 .a-clm4:first-child, .a-clms .a-clm3 .a-clm:first-child, .a-clms .a-clm3 .a-clm2:first-child, .a-clms .a-clm3 .a-clm3:first-child, .a-clms .a-clm3 .a-clm4:first-child, .a-clms .a-clm4 .a-clm:first-child, .a-clms .a-clm4 .a-clm2:first-child, .a-clms .a-clm4 .a-clm3:first-child, .a-clms .a-clm4 .a-clm4:first-child {
      padding-left: 0; }
    .a-clms .a-clm .a-clm:last-child, .a-clms .a-clm .a-clm2:last-child, .a-clms .a-clm .a-clm3:last-child, .a-clms .a-clm .a-clm4:last-child, .a-clms .a-clm2 .a-clm:last-child, .a-clms .a-clm2 .a-clm2:last-child, .a-clms .a-clm2 .a-clm3:last-child, .a-clms .a-clm2 .a-clm4:last-child, .a-clms .a-clm3 .a-clm:last-child, .a-clms .a-clm3 .a-clm2:last-child, .a-clms .a-clm3 .a-clm3:last-child, .a-clms .a-clm3 .a-clm4:last-child, .a-clms .a-clm4 .a-clm:last-child, .a-clms .a-clm4 .a-clm2:last-child, .a-clms .a-clm4 .a-clm3:last-child, .a-clms .a-clm4 .a-clm4:last-child {
      padding-right: 0; }
    .a-clms .a-clm .a-clm2, .a-clms .a-clm2 .a-clm2, .a-clms .a-clm3 .a-clm2, .a-clms .a-clm4 .a-clm2 {
      width: 50% !important; }
      .a-clms .a-clm .a-clm2 + .a-clm, .a-clms .a-clm2 .a-clm2 + .a-clm, .a-clms .a-clm3 .a-clm2 + .a-clm, .a-clms .a-clm4 .a-clm2 + .a-clm {
        width: 50%; }
    .a-clms .a-clm .a-clm3, .a-clms .a-clm2 .a-clm3, .a-clms .a-clm3 .a-clm3, .a-clms .a-clm4 .a-clm3 {
      width: 33% !important; }
      .a-clms .a-clm .a-clm3 + .a-clm, .a-clms .a-clm2 .a-clm3 + .a-clm, .a-clms .a-clm3 .a-clm3 + .a-clm, .a-clms .a-clm4 .a-clm3 + .a-clm {
        width: 66%; }
    .a-clms .a-clm .a-clm4, .a-clms .a-clm2 .a-clm4, .a-clms .a-clm3 .a-clm4, .a-clms .a-clm4 .a-clm4 {
      width: 25% !important; }
      .a-clms .a-clm .a-clm4 + .a-clm, .a-clms .a-clm2 .a-clm4 + .a-clm, .a-clms .a-clm3 .a-clm4 + .a-clm, .a-clms .a-clm4 .a-clm4 + .a-clm {
        width: 75%; }
  .a-clms a.a-clm, .a-clms a.a-clm2, .a-clms a.a-clm3, .a-clms a.a-clm4 {
    color: #111; }
    .a-clms a.a-clm:hover, .a-clms a.a-clm2:hover, .a-clms a.a-clm3:hover, .a-clms a.a-clm4:hover {
      opacity: 1 !important;
      border: 1px solid #DDD; }
  .a-clms .a-clm2 {
    width: 50%; }
    @media (max-width: 560px) {
      .a-clms .a-clm2 {
        width: 100%; } }
    .a-clms .a-clm2 + .a-clm {
      width: 50%; }
      @media (max-width: 560px) {
        .a-clms .a-clm2 + .a-clm {
          width: 100%; } }
  .a-clms .a-clm3 {
    width: 33.33%; }
    @media (max-width: 560px) {
      .a-clms .a-clm3 {
        width: 100%; } }
    .a-clms .a-clm3 + .a-clm {
      width: 66.66%; }
      @media (max-width: 560px) {
        .a-clms .a-clm3 + .a-clm {
          width: 100%; } }
  .a-clms .a-clm4 {
    width: 25%; }
    @media (max-width: 560px) {
      .a-clms .a-clm4 {
        width: 100%; } }
    .a-clms .a-clm4 + .a-clm {
      width: 75%; }
      @media (max-width: 560px) {
        .a-clms .a-clm4 + .a-clm {
          width: 100%; } }

@media (min-width: 1200px) {
  .a-padding {
    padding: 28px; } }
@media screen and (min-width: 560px) and (max-width: 1200px) {
  .a-padding {
    padding: 2vw; } }
@media (max-width: 560px) {
  .a-padding {
    padding: 2vw; } }
@media (min-width: 1200px) {
  .a-padding.a-clm {
    padding: 56px; } }
@media screen and (min-width: 560px) and (max-width: 1200px) {
  .a-padding.a-clm {
    padding: 4vw; } }
@media (max-width: 560px) {
  .a-padding.a-clm {
    padding: 4vw; } }
@media (min-width: 1200px) {
  .a-padding > .a-clm:first-child {
    padding: 28px; } }
@media screen and (min-width: 560px) and (max-width: 1200px) {
  .a-padding > .a-clm:first-child {
    padding: 2vw; } }
@media (max-width: 560px) {
  .a-padding > .a-clm:first-child {
    padding: 2vw; } }

.a-dangumi2 {
  columns: 2;
  column-gap: 56px;
  column-fill: auto !important; }
  .a-dangumi2.a-gap-half {
    column-gap: 28px; }
  @media (max-width: 560px) {
    .a-dangumi2 {
      columns: 1;
      column-gap: 0 !important; }
      .a-dangumi2 .a-inline-block {
        width: 100%; } }

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

.a-sec00-l {
  padding: 0; }

@media (min-width: 1200px) {
  .a-sec10-l {
    padding: 100px 0 0; } }
@media screen and (min-width: 560px) and (max-width: 1200px) {
  .a-sec10-l {
    padding: 72px 0 0; } }
@media (max-width: 560px) {
  .a-sec10-l {
    padding: 50px 0 0; } }

@media (min-width: 1200px) {
  .a-sec11-l {
    padding: 100px 0; } }
@media screen and (min-width: 560px) and (max-width: 1200px) {
  .a-sec11-l {
    padding: 72px 0; } }
@media (max-width: 560px) {
  .a-sec11-l {
    padding: 50px 0; } }

@media (min-width: 1200px) {
  .a-sec01-l {
    padding: 0 0 100px; } }
@media screen and (min-width: 560px) and (max-width: 1200px) {
  .a-sec01-l {
    padding: 0 0 72px; } }
@media (max-width: 560px) {
  .a-sec01-l {
    padding: 0 0 50px; } }

@media (min-width: 1200px) {
  .a-sec10-m {
    padding: 50px 0 0; } }
@media screen and (min-width: 560px) and (max-width: 1200px) {
  .a-sec10-m {
    padding: 36px 0 0; } }
@media (max-width: 560px) {
  .a-sec10-m {
    padding: 25px 0 0; } }

@media (min-width: 1200px) {
  .a-sec11-m {
    padding: 50px 0; } }
@media screen and (min-width: 560px) and (max-width: 1200px) {
  .a-sec11-m {
    padding: 36px 0; } }
@media (max-width: 560px) {
  .a-sec11-m {
    padding: 25px 0; } }

@media (min-width: 1200px) {
  .a-sec01-m {
    padding: 0 0 50px; } }
@media screen and (min-width: 560px) and (max-width: 1200px) {
  .a-sec01-m {
    padding: 0 0 36px; } }
@media (max-width: 560px) {
  .a-sec01-m {
    padding: 0 0 25px; } }

@media (min-width: 1200px) {
  .a-sec10-s {
    padding: 33.3333333333px 0 0; } }
@media screen and (min-width: 560px) and (max-width: 1200px) {
  .a-sec10-s {
    padding: 24px 0 0; } }
@media (max-width: 560px) {
  .a-sec10-s {
    padding: 16.6666666667px 0 0; } }

@media (min-width: 1200px) {
  .a-sec11-s {
    padding: 33.3333333333px 0; } }
@media screen and (min-width: 560px) and (max-width: 1200px) {
  .a-sec11-s {
    padding: 24px 0; } }
@media (max-width: 560px) {
  .a-sec11-s {
    padding: 16.6666666667px 0; } }

@media (min-width: 1200px) {
  .a-sec01-s {
    padding: 0 0 33.3333333333px; } }
@media screen and (min-width: 560px) and (max-width: 1200px) {
  .a-sec01-s {
    padding: 0 0 24px; } }
@media (max-width: 560px) {
  .a-sec01-s {
    padding: 0 0 16.6666666667px; } }

.a-pad-s {
  padding: 24px; }
  @media (max-width: 560px) {
    .a-pad-s {
      padding: 16px; } }

.a-pad-m {
  padding: 40px; }
  @media (max-width: 560px) {
    .a-pad-m {
      padding: 24px; } }

.a-pad-l {
  padding: 100px; }
  @media (max-width: 560px) {
    .a-pad-l {
      padding: 32px; } }

body {
  color: #111;
  font-family: sans-serif;
  font-weight: 300;
  font-style: normal;
  letter-spacing: .08em;
  font-size: 16.5px; }
  @media (max-width: 560px) {
    body {
      font-size: 15.5px;
      letter-spacing: .04em; } }
  body h1, body h2, body h3, body h4, body h5, body h6, body li {
    line-height: 1.6; }
  body p {
    line-height: 2; }
  body h1, body h2, body h3, body h4, body h5, body h6 {
    color: #111;
    font-family: source-han-sans-japanese, sans-serif;
    font-weight: 500; }
  body a {
    text-decoration: none;
    color: #2FAA6F;
    transition: .2s ease-out; }
    body a:hover {
      opacity: .7;
      transition: .2s ease-out; }

.a-page p {
  margin: 0; }
.a-page p.a-btn {
  margin-top: 24px; }
  @media (max-width: 560px) {
    .a-page p.a-btn {
      margin-top: 16px; } }

.a-h-hojo {
  display: block; }

h2.a-h-index {
  font-family: "futura-pt", sans-serif;
  text-align: center;
  font-size: 56px;
  margin: 0 0 48px;
  line-height: 1.4; }
  @media (max-width: 560px) {
    h2.a-h-index {
      font-size: 32px;
      margin: 0 0 24px;
      line-height: 1.3; } }
  h2.a-h-index .a-h-hojo {
    font-family: source-han-sans-japanese, sans-serif;
    font-weight: 500;
    font-size: 16px;
    color: #2FAA6F; }
    @media (max-width: 560px) {
      h2.a-h-index .a-h-hojo {
        font-size: 14px;
        margin: 0; } }

h2.a-h-index-m {
  font-weight: bold; }
  @media screen and (min-width: 560px) and (max-width: 1200px) {
    h2.a-h-index-m {
      margin-top: 0;
      text-align: center !important; } }
  @media (max-width: 560px) {
    h2.a-h-index-m {
      margin-top: 16px;
      text-align: center !important; } }

h2.a-h-index-s {
  font-weight: bold;
  text-align: center;
  background: #FFF;
  line-height: 88px;
  margin: 40px 0;
  position: relative; }
  h2.a-h-index-s:first-child {
    margin-top: 0; }
  @media (max-width: 560px) {
    h2.a-h-index-s {
      line-height: 1.5;
      padding: 16px; } }
  h2.a-h-index-s:before, h2.a-h-index-s:after {
    content: '';
    display: block;
    position: absolute;
    top: 0; }
    @media (max-width: 560px) {
      h2.a-h-index-s:before, h2.a-h-index-s:after {
        display: none; } }
  h2.a-h-index-s:before {
    border-left: 24px solid;
    border-top: 44px solid transparent;
    border-bottom: 44px solid transparent;
    left: 0; }
  h2.a-h-index-s:before {
    border-right: 24px solid;
    border-top: 44px solid transparent;
    border-bottom: 44px solid transparent;
    right: 0; }

.a-bg-gray-l h2.a-h-index-s:before, .a-bg-gray-l h2.a-h-index-s:after {
  color: #F5F5F5; }

.a-bg-main3 h2.a-h-index-s:before, .a-bg-main3 h2.a-h-index-s:after {
  color: rgba(64, 197, 152, 0.2); }

h2.a-h-index-ss {
  font-weight: bold;
  margin-top: 0; }
  h2.a-h-index-ss .a-h-hojo {
    color: #2FAA6F;
    font-size: 16px;
    margin: 0 0 8px; }
    @media (max-width: 560px) {
      h2.a-h-index-ss .a-h-hojo {
        font-size: 14px;
        margin: 0; } }

h4.a-h-index {
  color: #2FAA6F;
  font-size: 16px;
  margin: 24px 0 0; }
  h4.a-h-index:before {
    content: "\e90e";
    font-family: 'tmpla' !important;
    letter-spacing: 8px; }

h2.a-h-page {
  text-align: center;
  font-size: 32px;
  font-weight: bold;
  margin: 0; }
  @media (max-width: 560px) {
    h2.a-h-page {
      font-size: 22px;
      margin: 0 0 22px; } }
  h2.a-h-page:last-child {
    margin: 0; }
  h2.a-h-page .a-hojo-txt {
    font-size: 16px;
    margin: 8px 0; }
    @media (max-width: 560px) {
      h2.a-h-page .a-hojo-txt {
        font-size: 13px;
        margin: 0; } }

h3.a-h-page {
  font-size: 18px;
  margin: 24px 0 8px; }
  @media (max-width: 560px) {
    h3.a-h-page {
      font-size: 16px;
      margin: 16px 0 4px; } }
  h3.a-h-page:first-child {
    margin-top: 0; }
  h3.a-h-page .a-h-hojo {
    font-size: 14px;
    margin: 4px 0 8px; }
    @media (max-width: 560px) {
      h3.a-h-page .a-h-hojo {
        font-size: 13px;
        margin: 0; } }
  h3.a-h-page.line {
    border-bottom: 3px solid #DDD;
    padding-bottom: 12px;
    margin-bottom: 24px; }
    @media (max-width: 560px) {
      h3.a-h-page.line {
        margin-bottom: 8px; } }
    h3.a-h-page.line.white {
      border-bottom: 3px solid #FFF; }

.a-bg-main3 h3.a-h-page.line, .a-bg-gray-l h3.a-h-page.line {
  border-bottom: 3px solid #FFF !important; }
.a-bg-main3 .a-bg-white h3.a-h-page.line, .a-bg-gray-l .a-bg-white h3.a-h-page.line {
  border-bottom: 3px solid #DDD !important; }

h3.a-h-footer {
  font-size: 16px;
  margin: 0 0 16px; }
  @media (max-width: 560px) {
    h3.a-h-footer {
      font-size: 15px;
      margin: 0 0 12px; } }

.a-hojo-txt {
  display: block; }

h1.a-page-h1 {
  font-size: 40px;
  line-height: 1.4;
  margin: 40px 0 0;
  color: #fff; }
  @media (max-width: 560px) {
    h1.a-page-h1 {
      font-size: 28px;
      margin: 32px 0 0; } }
  h1.a-page-h1 .a-hojo-txt {
    font-size: 14px;
    margin: 8px 0; }
    @media (max-width: 560px) {
      h1.a-page-h1 .a-hojo-txt {
        font-size: 13px;
        margin: 4px 0; } }

.a-h1belt {
  text-align: center;
  padding: 48px 0;
  background: #2FAA6F;
  background-image: url("../a-images/cla2/bg-pattern02.svg");
  background-attachment: fixed;
  background-size: 40px;
  font-weight: bold;
  color: #FFF; }
  @media (max-width: 560px) {
    .a-h1belt {
      padding: 32px 0; } }
  .a-h1belt h1.a-page-h1 {
    margin: 0; }

h2.a-page-h2 {
  text-align: center;
  font-size: 32px;
  font-weight: bold;
  margin: 0 0 32px; }
  @media (max-width: 560px) {
    h2.a-page-h2 {
      font-size: 22px;
      margin: 0 0 22px; } }
  h2.a-page-h2:last-child {
    margin: 0; }
  h2.a-page-h2 .a-hojo-txt {
    font-size: 16px;
    margin: 8px 0; }
    @media (max-width: 560px) {
      h2.a-page-h2 .a-hojo-txt {
        font-size: 13px;
        margin: 0; } }
  h2.a-page-h2 .a-midashi-num {
    color: #2FAA6F;
    font-size: 2.5em;
    font-family: "futura-pt", sans-serif;
    line-height: 1; }

h3.a-page-h3 {
  font-size: 18px;
  margin: 24px 0 8px; }
  @media (max-width: 560px) {
    h3.a-page-h3 {
      font-size: 18px;
      margin: 16px 0 4px; } }
  h3.a-page-h3:first-child {
    margin-top: 0; }
  h3.a-page-h3 .a-hojo-txt {
    font-size: 14px;
    margin: 4px 0 8px; }
    @media (max-width: 560px) {
      h3.a-page-h3 .a-hojo-txt {
        font-size: 13px;
        margin: 0; } }
  h3.a-page-h3.a-h3line {
    border-bottom: 3px solid #DDD;
    padding-bottom: 8px;
    margin-bottom: 16px; }
    @media (max-width: 560px) {
      h3.a-page-h3.a-h3line {
        margin-bottom: 8px; } }
    h3.a-page-h3.a-h3line.white {
      border-bottom: 3px solid #FFF; }
  h3.a-page-h3.a-h3before:before {
    content: '';
    display: inline-block;
    margin-right: 8px; }
  h3.a-page-h3 .a-midashi-num {
    color: #2FAA6F;
    font-size: 3em;
    font-family: "futura-pt", sans-serif;
    line-height: 1.2; }

.a-bg-main3 h3.a-page-h3.a-h3line, .a-bg-gray-l h3.a-page-h3.a-h3line {
  border-bottom: 3px solid #FFF !important; }
.a-bg-main3 .a-bg-white h3.a-page-h3.a-h3line, .a-bg-gray-l .a-bg-white h3.a-page-h3.a-h3line {
  border-bottom: 3px solid #DDD !important; }

h4.a-page-h4 {
  font-size: 16.5px;
  margin: 16px 0 4px; }
  @media (max-width: 560px) {
    h4.a-page-h4 {
      font-size: 15px;
      margin: 8px 0 4px; } }
  h4.a-page-h4:first-child {
    margin-top: 0; }
  h4.a-page-h4 i.a-i-man, h4.a-page-h4 i.a-i-woman {
    display: inline-block;
    width: 48px;
    text-align: center;
    letter-spacing: 0;
    line-height: 48px;
    border-radius: 50%;
    background: #F0F0F0;
    font-size: 28px;
    vertical-align: middle;
    margin-right: 4px; }
    h4.a-page-h4 i.a-i-man + .a-midashi-inner, h4.a-page-h4 i.a-i-woman + .a-midashi-inner {
      display: inline-block;
      width: calc(100% - 80px);
      vertical-align: middle; }

.a-maru-img {
  display: inline-block;
  vertical-align: middle;
  border-radius: 50%;
  overflow: hidden;
  width: 64px;
  height: 64px;
  margin-right: 8px; }
  .a-maru-img img {
    display: block;
    width: 100%; }
  .a-maru-img .a-bgimg {
    background-position: center top -8px;
    background-size: 240%; }
  .a-maru-img + .a-midashi-inner {
    display: inline-block;
    width: calc(100% - 80px);
    vertical-align: middle; }

h3.a-footer-h3 {
  font-size: 18px;
  margin: 24px 0 8px; }
  @media (max-width: 560px) {
    h3.a-footer-h3 {
      font-size: 18px;
      margin: 16px 0 4px; } }
  h3.a-footer-h3:first-child {
    margin-top: 0; }
  h3.a-footer-h3 i {
    display: inline-block;
    width: 28px;
    text-align: center;
    letter-spacing: 0;
    line-height: 28px;
    border-radius: 50%;
    background: #FFF;
    color: #2FAA6F;
    font-size: 14px;
    margin-right: 4px; }

h4.a-footer-h4 {
  font-size: 16.5px;
  margin: 16px 0 4px; }
  @media (max-width: 560px) {
    h4.a-footer-h4 {
      font-size: 15px;
      margin: 8px 0 4px; } }
  h4.a-footer-h4:first-child {
    margin-top: 0; }

h3.a-ham-h3 {
  font-size: 18px;
  margin: 24px 0 8px;
  padding: 0 16px; }
  @media (max-width: 560px) {
    h3.a-ham-h3 {
      font-size: 18px;
      margin: 24px 0 4px; } }
  h3.a-ham-h3:first-child {
    margin-top: 0; }
  h3.a-ham-h3 i {
    display: inline-block;
    width: 28px;
    text-align: center;
    letter-spacing: 0;
    line-height: 28px;
    border-radius: 50%;
    background: #2FAA6F;
    color: #FFF;
    font-size: 14px;
    transform: translateY(-2px);
    margin-right: 4px; }

h3.a-side-h3 {
  font-size: 18px;
  margin: 0 0 16px; }
  @media (max-width: 560px) {
    h3.a-side-h3 {
      font-size: 18px;
      margin: 0 0 8px; } }
  h3.a-side-h3 i {
    display: inline-block;
    width: 28px;
    text-align: center;
    letter-spacing: 0;
    line-height: 28px;
    border-radius: 50%;
    background: #2FAA6F;
    color: #FFF;
    font-size: 14px;
    transform: translateY(-2px);
    margin-right: 4px; }

.a-blog-h2 {
  font-size: 22px;
  line-height: 1.75 !important;
  padding: 12px 3%;
  background: #F0F0F0;
  border-left: 4px solid #2FAA6F;
  border-left: 4px solid var(--main);
  margin-top: 48px;
  margin-bottom: 0; }
  @media (max-width: 560px) {
    .a-blog-h2 {
      font-size: 18.5px;
      letter-spacing: 0;
      line-height: 1.6 !important;
      margin-top: 32px; } }

.a-blog-h3 {
  font-size: 20px;
  margin-top: 40px;
  margin-bottom: 0; }
  @media (max-width: 560px) {
    .a-blog-h3 {
      font-size: 17px;
      letter-spacing: 0;
      margin-top: 24px; } }
  .a-blog-h3 + p {
    margin-top: 16px !important; }
    @media (max-width: 560px) {
      .a-blog-h3 + p {
        margin-top: 8px !important; } }

.a-blog-h4 {
  font-size: 18px;
  letter-spacing: .04em;
  margin-top: 32px;
  margin-bottom: 0; }
  @media (max-width: 560px) {
    .a-blog-h4 {
      font-size: 15.5px;
      margin-top: 24px; } }
  .a-blog-h4 + p {
    margin-top: 16px !important; }
    @media (max-width: 560px) {
      .a-blog-h4 + p {
        margin-top: 8px !important; } }

.a-btn {
  text-align: left; }

.a-btn-center {
  text-align: center; }

.a-btn-right {
  text-align: right; }

.a-btn, .a-btn-center, .a-btn-right {
  margin: 24px 0 40px !important; }
  @media (max-width: 560px) {
    .a-btn, .a-btn-center, .a-btn-right {
      margin: 16px 0 24px !important; } }
  .a-btn:first-child, .a-btn-center:first-child, .a-btn-right:first-child {
    margin-top: 0 !important; }
  .a-btn:last-child, .a-btn-center:last-child, .a-btn-right:last-child {
    margin-bottom: 0 !important; }
  .a-btn a, .a-btn input[type="submit"], .a-btn-center a, .a-btn-center input[type="submit"], .a-btn-right a, .a-btn-right input[type="submit"] {
    font-family: source-han-sans-japanese, sans-serif;
    font-weight: 500;
    display: inline-block;
    font-weight: 500;
    letter-spacing: .04em;
    text-decoration: none;
    transition: .1s; }
    .a-btn a:hover, .a-btn input[type="submit"]:hover, .a-btn-center a:hover, .a-btn-center input[type="submit"]:hover, .a-btn-right a:hover, .a-btn-right input[type="submit"]:hover {
      transition: .1s;
      opacity: 1; }
    .a-btn a.ol, .a-btn input[type="submit"].ol, .a-btn-center a.ol, .a-btn-center input[type="submit"].ol, .a-btn-right a.ol, .a-btn-right input[type="submit"].ol {
      font-size: 15px;
      line-height: 56px;
      padding: 0 32px;
      border: 1px solid #2FAA6F;
      color: #2FAA6F; }
      @media (max-width: 560px) {
        .a-btn a.ol, .a-btn input[type="submit"].ol, .a-btn-center a.ol, .a-btn-center input[type="submit"].ol, .a-btn-right a.ol, .a-btn-right input[type="submit"].ol {
          padding: 0 24px; } }
      .a-btn a.ol:hover, .a-btn input[type="submit"].ol:hover, .a-btn-center a.ol:hover, .a-btn-center input[type="submit"].ol:hover, .a-btn-right a.ol:hover, .a-btn-right input[type="submit"].ol:hover {
        background: #2FAA6F;
        color: #FFF; }
      .a-btn a.ol:active, .a-btn input[type="submit"].ol:active, .a-btn-center a.ol:active, .a-btn-center input[type="submit"].ol:active, .a-btn-right a.ol:active, .a-btn-right input[type="submit"].ol:active {
        background: #69d6a2; }
      .a-btn a.ol.white, .a-btn input[type="submit"].ol.white, .a-btn-center a.ol.white, .a-btn-center input[type="submit"].ol.white, .a-btn-right a.ol.white, .a-btn-right input[type="submit"].ol.white {
        border: 1px solid #fff;
        color: #fff; }
        .a-btn a.ol.white:hover, .a-btn input[type="submit"].ol.white:hover, .a-btn-center a.ol.white:hover, .a-btn-center input[type="submit"].ol.white:hover, .a-btn-right a.ol.white:hover, .a-btn-right input[type="submit"].ol.white:hover {
          background: rgba(255, 255, 255, 0.1); }
        .a-btn a.ol.white:active, .a-btn input[type="submit"].ol.white:active, .a-btn-center a.ol.white:active, .a-btn-center input[type="submit"].ol.white:active, .a-btn-right a.ol.white:active, .a-btn-right input[type="submit"].ol.white:active {
          background: rgba(255, 255, 255, 0.2); }
    .a-btn a.ct, .a-btn input[type="submit"].ct, .a-btn-center a.ct, .a-btn-center input[type="submit"].ct, .a-btn-right a.ct, .a-btn-right input[type="submit"].ct {
      font-size: 15px;
      line-height: 56px;
      padding: 0 32px;
      background: #2FAA6F;
      border: 1px solid #2FAA6F;
      color: #fff; }
      @media (max-width: 560px) {
        .a-btn a.ct, .a-btn input[type="submit"].ct, .a-btn-center a.ct, .a-btn-center input[type="submit"].ct, .a-btn-right a.ct, .a-btn-right input[type="submit"].ct {
          padding: 0 24px; } }
      .a-btn a.ct:hover, .a-btn input[type="submit"].ct:hover, .a-btn-center a.ct:hover, .a-btn-center input[type="submit"].ct:hover, .a-btn-right a.ct:hover, .a-btn-right input[type="submit"].ct:hover {
        background: #FFF;
        color: #2FAA6F; }
      .a-btn a.ct:active, .a-btn input[type="submit"].ct:active, .a-btn-center a.ct:active, .a-btn-center input[type="submit"].ct:active, .a-btn-right a.ct:active, .a-btn-right input[type="submit"].ct:active {
        background: #69d6a2; }
      .a-btn a.ct.white, .a-btn input[type="submit"].ct.white, .a-btn-center a.ct.white, .a-btn-center input[type="submit"].ct.white, .a-btn-right a.ct.white, .a-btn-right input[type="submit"].ct.white {
        background: #fff;
        color: #2FAA6F; }
        .a-btn a.ct.white:hover, .a-btn input[type="submit"].ct.white:hover, .a-btn-center a.ct.white:hover, .a-btn-center input[type="submit"].ct.white:hover, .a-btn-right a.ct.white:hover, .a-btn-right input[type="submit"].ct.white:hover {
          background: rgba(255, 255, 255, 0.8); }
        .a-btn a.ct.white:active, .a-btn input[type="submit"].ct.white:active, .a-btn-center a.ct.white:active, .a-btn-center input[type="submit"].ct.white:active, .a-btn-right a.ct.white:active, .a-btn-right input[type="submit"].ct.white:active {
          background: rgba(255, 255, 255, 0.9); }
    .a-btn a.fa, .a-btn input[type="submit"].fa, .a-btn-center a.fa, .a-btn-center input[type="submit"].fa, .a-btn-right a.fa, .a-btn-right input[type="submit"].fa {
      border-radius: 28px;
      padding: 0 32px;
      line-height: 56px;
      background: #2FAA6F;
      color: #fff;
      box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.12), 0 1px 5px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -2px rgba(0, 0, 0, 0.2); }
      .a-btn a.fa:hover, .a-btn input[type="submit"].fa:hover, .a-btn-center a.fa:hover, .a-btn-center input[type="submit"].fa:hover, .a-btn-right a.fa:hover, .a-btn-right input[type="submit"].fa:hover {
        background: #41cb89;
        box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.12), 0 3px 10px 0 rgba(0, 0, 0, 0.12), 0 4px 7px -2px rgba(0, 0, 0, 0.2); }
      .a-btn a.fa:active, .a-btn input[type="submit"].fa:active, .a-btn-center a.fa:active, .a-btn-center input[type="submit"].fa:active, .a-btn-right a.fa:active, .a-btn-right input[type="submit"].fa:active {
        background: #69d6a2;
        outline: none; }
      .a-btn a.fa.white, .a-btn input[type="submit"].fa.white, .a-btn-center a.fa.white, .a-btn-center input[type="submit"].fa.white, .a-btn-right a.fa.white, .a-btn-right input[type="submit"].fa.white {
        background: #fff;
        color: #2FAA6F; }
        .a-btn a.fa.white:hover, .a-btn input[type="submit"].fa.white:hover, .a-btn-center a.fa.white:hover, .a-btn-center input[type="submit"].fa.white:hover, .a-btn-right a.fa.white:hover, .a-btn-right input[type="submit"].fa.white:hover {
          background: rgba(255, 255, 255, 0.8); }
        .a-btn a.fa.white:active, .a-btn input[type="submit"].fa.white:active, .a-btn-center a.fa.white:active, .a-btn-center input[type="submit"].fa.white:active, .a-btn-right a.fa.white:active, .a-btn-right input[type="submit"].fa.white:active {
          background: rgba(255, 255, 255, 0.9); }

.a-logo {
  display: flex;
  align-items: center;
  height: 48px;
  color: inherit;
  gap: 8px; }
  .a-logo img {
    display: block;
    height: 100%;
    margin-bottom: 0;
    margin-top: 0; }
  .a-logo h1 {
    margin: 0;
    white-space: nowrap;
    font-size: 17px; }
    .a-logo h1 span {
      display: block; }

@media (max-width: 560px) {
  header .a-logo {
    transform-origin: center left;
    transform: scale(0.8); } }

footer .a-logo {
  transform-origin: center center;
  transform: scale(1.2); }
  @media (max-width: 560px) {
    footer .a-logo {
      transform: scale(1); } }

.a-header {
  font-family: source-han-sans-japanese, sans-serif;
  font-weight: 500;
  background: #FFF;
  color: #2e2e2e;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  box-sizing: border-box;
  z-index: 10000;
  transition: .2s;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 0 0 32px; }
  .a-header.scroll, .a-header.kasou {
    box-shadow: 0px 4px 12px rgba(0, 0, 0, 0.1); }
  @media (min-width: 1200px) {
    .a-header {
      height: 100px; } }
  @media screen and (min-width: 560px) and (max-width: 1200px) {
    .a-header {
      height: 72px;
      padding: 0 32px; } }
  @media (max-width: 560px) {
    .a-header {
      height: 56px;
      padding: 0 3%; } }
  .a-header .a-nav {
    padding-right: 40px;
    width: 100%; }
    @media screen and (min-width: 560px) and (max-width: 1200px) {
      .a-header .a-nav {
        display: none; } }
    @media (max-width: 560px) {
      .a-header .a-nav {
        display: none; } }
    .a-header .a-nav > ul {
      list-style-type: none;
      margin: 0;
      padding: 0;
      display: flex;
      justify-content: flex-end;
      gap: 32px; }
      .a-header .a-nav > ul > li > a {
        font-size: 17px;
        color: #2e2e2e; }
        .a-header .a-nav > ul > li > a i {
          color: #2FAA6F;
          display: none;
          margin-right: 8px; }
        .a-header .a-nav > ul > li > a:hover {
          opacity: 1;
          color: #2FAA6F; }
          .a-header .a-nav > ul > li > a:hover i {
            transform: translateY(-4px);
            transition-duration: .2s;
            transition-timing-function: cubic-bezier(0.32, 1.65, 0.59, 1.65); }
      .a-header .a-nav > ul > li.a-menu-parent {
        position: relative; }
        .a-header .a-nav > ul > li.a-menu-parent:after {
          content: "\e918";
          font-family: 'tmpla' !important;
          display: inline-block;
          font-size: 12px;
          margin-left: 4px;
          color: #999;
          transition: .2s;
          transform: translateY(-2px); }
        .a-header .a-nav > ul > li.a-menu-parent:hover a {
          color: #2FAA6F; }
        .a-header .a-nav > ul > li.a-menu-parent:hover:before {
          position: absolute;
          content: '';
          top: 100%;
          left: 0;
          width: 100%;
          height: 50px; }
        .a-header .a-nav > ul > li.a-menu-parent:hover:after {
          transform: translateY(2px);
          transition: .2s;
          color: #2FAA6F; }
        .a-header .a-nav > ul > li.a-menu-parent:hover .a-menu-child {
          visibility: visible;
          opacity: 1;
          padding: 24px 0 56px;
          transition: .1s; }
        .a-header .a-nav > ul > li.a-menu-parent:hover i {
          transform: translateY(-4px);
          transition-duration: .2s;
          transition-timing-function: cubic-bezier(0.32, 1.65, 0.59, 1.65); }
        .a-header .a-nav > ul > li.a-menu-parent .a-menu-child {
          visibility: hidden;
          position: fixed;
          top: 100px;
          left: 0;
          width: 100vw;
          background: rgba(250, 250, 250, 0.98);
          opacity: 0;
          padding: 0;
          transition: .1s;
          box-shadow: 0 100vh 0 100vh rgba(0, 0, 0, 0.2); }
          .a-header .a-nav > ul > li.a-menu-parent .a-menu-child a {
            color: #111;
            font-weight: normal;
            box-sizing: border-box;
            padding: 16px 0;
            border-bottom: 1px solid #DDD;
            position: relative; }
            .a-header .a-nav > ul > li.a-menu-parent .a-menu-child a:hover {
              opacity: 1;
              color: #2FAA6F; }
              .a-header .a-nav > ul > li.a-menu-parent .a-menu-child a:hover:after {
                color: #2FAA6F;
                right: 14px;
                transition: .2s; }
            .a-header .a-nav > ul > li.a-menu-parent .a-menu-child a:after {
              content: "\e907";
              font-family: 'tmpla' !important;
              font-size: 12px;
              color: #999;
              transition: .2s;
              position: absolute;
              top: 50%;
              right: 16px;
              transform: translateY(-50%); }
            .a-header .a-nav > ul > li.a-menu-parent .a-menu-child a i {
              color: #2FAA6F;
              letter-spacing: 8px; }
  .a-header .a-cv {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    flex-direction: column;
    height: 100%;
    padding: 0 32px;
    text-align: center;
    gap: 12px; }
    @media screen and (min-width: 560px) and (max-width: 1200px) {
      .a-header .a-cv {
        display: none; } }
    @media (max-width: 560px) {
      .a-header .a-cv {
        display: none; } }
    .a-header .a-cv i {
      font-size: 1.6em; }

@media (min-width: 1200px) {
  .a-header-height {
    height: 100px; } }
@media screen and (min-width: 560px) and (max-width: 1200px) {
  .a-header-height {
    height: 72px; } }
@media (max-width: 560px) {
  .a-header-height {
    height: 56px; } }

@media (min-width: 1200px) {
  .a-ham {
    display: none; } }
.a-ham.a-ham-btn:before {
  content: '\e905';
  font-family: 'tmpla';
  font-size: 32px;
  display: block;
  text-align: center;
  width: 40px;
  line-heigth: 40px; }
.a-ham.a-ham-menu {
  display: block;
  height: 100vh;
  background: #F5F5F5;
  position: fixed;
  transition: .1s;
  width: 100%;
  top: 0;
  left: 0;
  z-index: 1000;
  overflow-y: scroll;
  visibility: hidden;
  opacity: 0; }
  @media (min-width: 1200px) {
    .a-ham.a-ham-menu {
      display: none; } }
  .a-ham.a-ham-menu p, .a-ham.a-ham-menu li, .a-ham.a-ham-menu a {
    color: rgba(17, 17, 17, 0.7) !important; }
  .a-ham.a-ham-menu:after {
    content: '';
    display: block;
    height: 224px; }
.a-ham.open.a-ham-btn:before {
  content: '\e904';
  font-size: 28px; }
.a-ham.open.a-ham-menu {
  transition: .5s;
  visibility: visible;
  opacity: 1; }
.a-ham ul.a-ham-list {
  list-style-type: none;
  padding: 0;
  margin: 12px 0 0; }
  .a-ham ul.a-ham-list > li.page_item {
    background: #FFF;
    border-bottom: 1px solid #DDD;
    padding-left: 16px; }
    .a-ham ul.a-ham-list > li.page_item:first-child {
      border-top: 1px solid #DDD; }
    .a-ham ul.a-ham-list > li.page_item > a {
      display: block;
      box-sizing: border-box;
      padding: 12px 48px 12px 0;
      position: relative; }
      .a-ham ul.a-ham-list > li.page_item > a:after {
        content: "\e907";
        font-family: 'tmpla' !important;
        position: absolute;
        right: 16px;
        top: 50%;
        transform: translateY(-50%);
        color: #999;
        font-size: smaller; }
      .a-ham ul.a-ham-list > li.page_item > a img, .a-ham ul.a-ham-list > li.page_item > a .a-bgimg {
        display: inline-block;
        vertical-align: middle;
        width: 64px; }
        .a-ham ul.a-ham-list > li.page_item > a img + span, .a-ham ul.a-ham-list > li.page_item > a .a-bgimg + span {
          display: inline-block;
          vertical-align: middle;
          width: calc(100% - 78px);
          padding-left: 12px;
          box-sizing: border-box; }
      .a-ham ul.a-ham-list > li.page_item > a .a-bgimg {
        padding-top: 64px; }
  .a-ham ul.a-ham-list li.page_item_has_children {
    border-top: 1px solid #DDD;
    margin-top: 24px;
    margin-bottom: 24px; }
    .a-ham ul.a-ham-list li.page_item_has_children:first-child {
      margin-top: 0; }
    .a-ham ul.a-ham-list li.page_item_has_children > a {
      border-bottom: 1px solid #DDD; }
    .a-ham ul.a-ham-list li.page_item_has_children ul.children {
      list-style-type: none;
      padding: 0;
      margin: 12px 0 0; }
      .a-ham ul.a-ham-list li.page_item_has_children ul.children li.page_item {
        display: inline-block;
        padding: 0;
        margin: 0 0 12px; }
        .a-ham ul.a-ham-list li.page_item_has_children ul.children li.page_item a {
          display: block;
          padding: 0 16px;
          font-size: 13.5px;
          border-right: 1px solid #DDD; }
        .a-ham ul.a-ham-list li.page_item_has_children ul.children li.page_item:last-child a {
          border-right: none !important; }
    .a-ham ul.a-ham-list li.page_item_has_children + li.page_item {
      border-top: 1px solid #DDD; }

@media (min-width: 1200px) {
  .a-side-space {
    width: 300px;
    flex-shrink: 0; } }

.a-side {
  background: #F0F0F0;
  box-sizing: border-box;
  border-top: 1px solid #DDD; }
  @media (min-width: 1200px) {
    .a-side {
      width: 300px;
      position: fixed;
      left: 0;
      top: 0;
      transition: .2s;
      border-right: 1px solid #DDD;
      height: calc(100vh + 36px);
      overflow-y: scroll;
      -webkit-overflow-scrolling: touch;
      scrollbar-width: none;
      -ms-overflow-style: none; }
      .a-side::-webkit-scrollbar {
        display: none; }
      .a-side:before {
        content: '';
        display: block;
        height: 100px; } }
  @media screen and (min-width: 560px) and (max-width: 1200px) {
    .a-side {
      display: none; } }
  @media (max-width: 560px) {
    .a-side {
      display: none; } }
  .a-side p, .a-side li, .a-side dd, .a-side a {
    color: #111; }
  .a-side .a-side-wrap {
    padding: 0 32px; }
  .a-side .a-side-sec {
    padding: 24px 0 0; }
    .a-side .a-side-sec:last-child {
      padding: 24px 0 48px; }
  .a-side ul.a-side-list {
    border-top: 1px solid #DDD;
    border-bottom: 1px solid #DDD;
    background: #FFF;
    list-style-type: none;
    padding: 0;
    margin: 0; }
    .a-side ul.a-side-list a {
      display: flex;
      align-items: center;
      width: 100%;
      box-sizing: border-box;
      font-weight: 500;
      padding: 6px 32px; }
      .a-side ul.a-side-list a:hover {
        opacity: 1;
        color: #2FAA6F; }
      .a-side ul.a-side-list a .a-side-img {
        width: 25%;
        margin-right: 5%;
        flex-shrink: 0; }
        .a-side ul.a-side-list a .a-side-img img {
          display: block;
          width: 100%;
          height: auto; }
      .a-side ul.a-side-list a .a-side-txt span {
        display: block;
        margin: 0; }
    .a-side ul.a-side-list li.page_item:before, .a-side ul.a-side-list li.page_item:after {
      content: '';
      display: block;
      width: calc(100% - 32px);
      margin-left: auto;
      padding: 6px 0; }
    .a-side ul.a-side-list li.page_item:after {
      border-bottom: 1px solid #DDD; }
    .a-side ul.a-side-list li.page_item:last-child:after {
      border-bottom: none; }
    .a-side ul.a-side-list ul.children {
      list-style-type: none;
      padding: 0;
      margin: 0; }
      .a-side ul.a-side-list ul.children li.page_item:before {
        display: none; }
      .a-side ul.a-side-list ul.children li.page_item:after {
        display: none; }
      .a-side ul.a-side-list ul.children li.page_item a {
        color: #999;
        font-weight: 300;
        padding-left: calc(32px + 1em); }

.a-footer .tel {
  gap: 16px; }
  @media (max-width: 560px) {
    .a-footer .tel {
      gap: 8px; } }
  .a-footer .tel i {
    display: block;
    width: 2em;
    line-height: 2em;
    text-align: center;
    border-radius: 50%;
    background: rgba(64, 197, 152, 0.2);
    color: #2FAA6F; }
  .a-footer .tel span:nth-child(1) {
    font-family: source-han-sans-japanese, sans-serif; }
  .a-footer .tel span:nth-child(2) {
    font-family: "futura-pt", sans-serif; }
.a-footer dl div {
  display: flex;
  gap: 1em;
  margin-top: 12px; }
  @media (max-width: 560px) {
    .a-footer dl div {
      margin-top: 8px; } }
  .a-footer dl div dd {
    margin: 0; }
.a-footer ul {
  margin: 0;
  padding: 0;
  list-style-type: none; }
  .a-footer ul li {
    margin-bottom: 8px; }
    .a-footer ul li a {
      color: inherit; }
.a-footer .copyright {
  display: block;
  line-height: 72px;
  background: #FFF;
  text-align: center;
  font-family: "futura-pt", sans-serif;
  font-weight: 500;
  color: #999; }

.a-blog {
  width: 90%;
  max-width: 800px;
  margin: 40px auto 96px;
  background: #FFF; }
  @media (max-width: 560px) {
    .a-blog {
      width: 100%;
      margin: 0; } }

.a-blog-eyecatch img, .a-blog-eyecatch video {
  display: block;
  width: 100%;
  height: auto; }
.a-blog-eyecatch .a-mediabox, .a-blog-eyecatch .a-iframe {
  margin-top: 0; }

.a-blog-wrap {
  padding-left: 56px;
  padding-right: 56px; }
  @media (max-width: 560px) {
    .a-blog-wrap {
      padding-left: 5%;
      padding-right: 5%; } }

.a-blog-head {
  padding-top: 56px;
  padding-bottom: 0; }
  @media (max-width: 560px) {
    .a-blog-head {
      padding-top: 40px; } }

.a-blog-head-ue {
  margin-bottom: 16px; }
  @media (max-width: 560px) {
    .a-blog-head-ue {
      margin-bottom: 8px;
      font-size: 14px !important; } }

.a-blog-head-shita {
  margin-top: 16px; }
  @media (max-width: 560px) {
    .a-blog-head-shita {
      margin-top: 8px; } }

.a-blog-head-ue span, .a-blog-head-ue a, .a-blog-head-ue time, .a-blog-head-shita span, .a-blog-head-shita a, .a-blog-head-shita time {
  display: inline-block; }

.a-blog-head h1 {
  line-height: 1.6;
  margin: 0;
  font-size: 32px; }
  @media (max-width: 560px) {
    .a-blog-head h1 {
      font-size: 22px; } }

.a-blog-body {
  padding-top: 40px;
  padding-bottom: 56px; }
  @media (max-width: 560px) {
    .a-blog-body {
      padding-top: 24px;
      padding-bottom: 40px; } }
  .a-blog-body .a-blog-fix {
    padding-bottom: 40px; }
    @media (max-width: 560px) {
      .a-blog-body .a-blog-fix {
        padding-bottom: 24px; } }
    .a-blog-body .a-blog-fix + .a-blog-edit {
      padding-top: 24px; }
      @media (max-width: 560px) {
        .a-blog-body .a-blog-fix + .a-blog-edit {
          padding-top: 16px; } }

.a-blog-edit > *:first-child, .a-blog-fix > *:first-child {
  margin-top: 0 !important; }
.a-blog-edit > *:last-child, .a-blog-fix > *:last-child {
  margin-bottom: 0 !important; }
.a-blog-edit h1, .a-blog-fix h1 {
  font-size: 24px; }
  @media (max-width: 560px) {
    .a-blog-edit h1, .a-blog-fix h1 {
      font-size: 20px; } }
.a-blog-edit p, .a-blog-fix p {
  margin-top: 24px;
  margin-bottom: 0; }
  @media (max-width: 560px) {
    .a-blog-edit p, .a-blog-fix p {
      margin-top: 16px; } }

#a-tags {
  margin-top: 32px;
  transform: translateX(-8px); }
  @media (max-width: 560px) {
    #a-tags {
      margin-top: 24px; } }
  #a-tags a {
    display: inline-block;
    font-size: 14px;
    padding: 8px 16px;
    border-radius: 4px;
    border: 1px solid #2FAA6F;
    border: 1px solid var(--main);
    margin: 0 0 8px 8px; }
    @media (max-width: 560px) {
      #a-tags a {
        font-size: 12px;
        padding: 6px 12px; } }

.a-blog-foot {
  padding-top: 0;
  padding-bottom: 56px; }
  @media (max-width: 560px) {
    .a-blog-foot {
      padding-bottom: 40px; } }

.a-share {
  border-top: 1px solid #DDD;
  padding-top: 8px; }
  .a-share .a-share-cap {
    margin: 0;
    color: #999; }
    .a-share .a-share-cap i {
      display: inline-block;
      letter-spacing: 0;
      font-size: 14px;
      margin-right: 8px; }
  .a-share .a2a_kit {
    height: auto;
    display: flex;
    flex-wrap: wrap; }
    .a-share .a2a_kit a {
      display: block;
      color: #FFF;
      font-weight: 500;
      text-align: center;
      line-height: 40px;
      border-radius: 4px;
      font-size: 14px;
      width: 23.5%;
      margin-right: 2%;
      margin-top: 16px; }
      @media (min-width: 1200px) {
        .a-share .a2a_kit a:nth-child(4n) {
          margin-right: 0; } }
      @media screen and (min-width: 560px) and (max-width: 1200px) {
        .a-share .a2a_kit a:nth-child(4n) {
          margin-right: 0; } }
      @media (max-width: 560px) {
        .a-share .a2a_kit a {
          width: 32%;
          margin-top: 8px; }
          .a-share .a2a_kit a:nth-child(3n) {
            margin-right: 0; } }
      .a-share .a2a_kit a:before {
        font-family: 'tmpla';
        display: inline-block;
        letter-spacing: 0;
        margin-right: 8px; }
    .a-share .a2a_kit .a2a_button_facebook {
      background: #1877f2; }
      .a-share .a2a_kit .a2a_button_facebook:before {
        content: '\e922'; }
      .a-share .a2a_kit .a2a_button_facebook:after {
        content: 'シェア'; }
    .a-share .a2a_kit .a2a_button_twitter {
      background: #1DA1F2; }
      .a-share .a2a_kit .a2a_button_twitter:before {
        content: '\e910'; }
      .a-share .a2a_kit .a2a_button_twitter:after {
        content: 'ツイート'; }
    .a-share .a2a_kit .a2a_button_pinterest {
      background: #bd081c; }
      .a-share .a2a_kit .a2a_button_pinterest:before {
        content: '\e919'; }
      .a-share .a2a_kit .a2a_button_pinterest:after {
        content: '保存'; }
    .a-share .a2a_kit .a2a_button_line {
      background: #00b900; }
      .a-share .a2a_kit .a2a_button_line:before {
        content: '\e927'; }
      .a-share .a2a_kit .a2a_button_line:after {
        content: '送る'; }
    .a-share .a2a_kit .a2a_button_hatena {
      background: #008fde; }
      .a-share .a2a_kit .a2a_button_hatena:before {
        content: 'B!';
        font-weight: bold;
        font-family: sans-serif; }
      .a-share .a2a_kit .a2a_button_hatena:after {
        content: 'はてブ'; }
    .a-share .a2a_kit .a2a_button_pocket {
      background: #ef4056; }
      .a-share .a2a_kit .a2a_button_pocket:before {
        content: '\e918';
        width: 12px;
        line-height: 12px;
        font-size: 6px;
        vertical-align: 3px;
        background: #FFF;
        color: #ef4056 !important;
        border-radius: 2px 2px 50% 50%; }
      .a-share .a2a_kit .a2a_button_pocket:after {
        content: 'Pocket'; }

.a-list_with_img {
  list-style-type: none;
  margin: 0;
  padding: 0; }
  .a-list_with_img li {
    padding: 3% 0;
    border-bottom: 1px solid #DDD; }
    .a-list_with_img li:first-child {
      padding-top: 0; }
    .a-list_with_img li:last-child {
      padding-bottom: 0;
      border-bottom: none; }
    .a-list_with_img li a {
      display: flex;
      align-items: center; }
      .a-list_with_img li a .a-list_img {
        width: 25%;
        margin-right: 5%;
        flex-shrink: 0; }
        .a-list_with_img li a .a-list_img img {
          display: block;
          width: 100%;
          height: auto;
          border: 1px solid #DDD;
          transition: .6s ease-out; }
      .a-list_with_img li a .a-list_txt {
        color: inherit !important;
        transition: .6s ease-out; }
        @media (max-width: 560px) {
          .a-list_with_img li a .a-list_txt {
            letter-spacing: !important; } }
        .a-list_with_img li a .a-list_txt .a-list_ttl {
          line-height: 1.6;
          margin: 0;
          color: #111;
          font-size: 16.5px; }
          @media (max-width: 560px) {
            .a-list_with_img li a .a-list_txt .a-list_ttl {
              font-size: 14px; } }
        .a-list_with_img li a .a-list_txt .a-list_ue {
          padding-bottom: 1.2%; }
        .a-list_with_img li a .a-list_txt .a-list_shita {
          padding-top: 1.2%; }
      .a-list_with_img li a:hover {
        opacity: 1 !important; }
        .a-list_with_img li a:hover .a-list_img img {
          transition: .6s ease-out;
          transform: scale(1.05); }
        .a-list_with_img li a:hover .a-list_txt {
          transition: .6s ease-out;
          opacity: .7; }

.a-pagination {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  letter-spacing: 0;
  font-weight: 500;
  margin-top: 56px; }
  @media (max-width: 560px) {
    .a-pagination {
      margin-top: 40px; } }
  .a-pagination span, .a-pagination a {
    display: block;
    box-sizing: border-box;
    color: #2FAA6F;
    border-radius: 50%;
    width: 48px;
    line-height: 48px;
    text-align: center;
    margin: 0 4px; }
    @media (max-width: 560px) {
      .a-pagination span, .a-pagination a {
        width: 10vw;
        line-height: 10vw; } }
    .a-pagination span.prev:before, .a-pagination a.prev:before {
      content: '\e91b';
      font-family: 'tmpla'; }
    .a-pagination span.next:before, .a-pagination a.next:before {
      content: '\e907';
      font-family: 'tmpla'; }
  .a-pagination.gray span, .a-pagination.gray a {
    background: #F0F0F0; }
  .a-pagination.white span, .a-pagination.white a {
    background: #FFF; }
  .a-pagination a:hover {
    opacity: 1;
    background: #DDD !important; }
  .a-pagination .current {
    color: #fff;
    background: #2FAA6F !important; }

.a-bnr {
  background: #FFF;
  width: 100%; }
  .a-bnr a {
    display: block;
    width: 100%;
    padding: 16px 5%;
    box-sizing: border-box;
    text-align: center; }
    @media (max-width: 560px) {
      .a-bnr a {
        font-size: 14px;
        padding: 12px 5%; } }

.a-pankuzu {
  padding: 24px 0 0; }
  @media (max-width: 560px) {
    .a-pankuzu {
      font-size: 14px !important;
      padding: 12px 0 0; } }

.a-divider {
  border-bottom: 1px solid #DDD; }

.a-divider-white {
  border-bottom: 1px solid rgba(255, 255, 255, 0.7); }

.a-bottom-nav {
  position: fixed;
  z-index: 10000;
  bottom: 0;
  left: 0;
  width: 100%;
  background: rgba(250, 250, 250, 0.98);
  display: flex;
  box-shadow: -5px 0 2px 0 rgba(0, 0, 0, 0.05), -5px 0 5px 0 rgba(0, 0, 0, 0.05), -5px 0 1px -2px rgba(0, 0, 0, 0.1); }
  @media (min-width: 1200px) {
    .a-bottom-nav {
      display: none; } }
  @media screen and (min-width: 560px) and (max-width: 1200px) {
    .a-bottom-nav {
      display: none; } }
  .a-bottom-nav a {
    display: block;
    width: 100%;
    text-align: center;
    padding: 12px 0 18px; }
    .a-bottom-nav a i {
      font-size: 22px; }
    .a-bottom-nav a span {
      display: block;
      font-size: 10px;
      margin-top: 4px; }

.a-ul, .a-ol, .a-check {
  margin-top: 24px;
  margin-bottom: 24px;
  list-style-position: inside;
  padding-left: 3%; }
  @media (max-width: 560px) {
    .a-ul, .a-ol, .a-check {
      margin-top: 16px;
      margin-bottom: 16px; } }
  .a-ul li, .a-ol li, .a-check li {
    margin-top: 12px;
    line-height: 1.6;
    padding-left: 1.5em; }
    @media (max-width: 560px) {
      .a-ul li, .a-ol li, .a-check li {
        margin-top: 8px; } }
    .a-ul li ul, .a-ul li ol, .a-ol li ul, .a-ol li ol, .a-check li ul, .a-check li ol {
      margin-top: 8px; }
      .a-ul li ul li, .a-ul li ol li, .a-ol li ul li, .a-ol li ol li, .a-check li ul li, .a-check li ol li {
        margin-top: 8px; }

.a-ul {
  list-style-type: none; }
  .a-ul li {
    text-indent: -1.5em; }
    .a-ul li:before {
      content: '';
      display: inline-block;
      width: .5em;
      height: .5em;
      border-radius: 50%;
      background: #2FAA6F;
      margin-right: 1em; }

.a-check {
  list-style-type: none; }
  .a-check li {
    text-indent: -1.7em; }
    .a-check li:before {
      content: "\e91d";
      font-family: 'tmpla';
      color: #2FAA6F;
      display: inline-block;
      width: 1em;
      height: 1em;
      border-radius: 0;
      background: transparent;
      text-indent: 0;
      margin-right: .7em; }
  .a-check.black li:before {
    color: #111; }

.a-ol li {
  text-indent: -21px; }
  @media (max-width: 560px) {
    .a-ol li {
      text-indent: -18px; } }

.a-kakomi .a-ul, .a-kakomi .a-ol, .a-kakomi .a-check, .a-table .a-ul, .a-table .a-ol, .a-table .a-check {
  padding-left: 1%; }

.a-table {
  border-top: 1px solid #DDD;
  border-left: 1px solid #DDD;
  line-height: 1.75;
  margin-top: 24px;
  margin-bottom: 0; }
  @media (max-width: 560px) {
    .a-table {
      margin-top: 16px; } }
  .a-table .a-tr {
    display: flex;
    border-bottom: 1px solid #DDD;
    border-right: 1px solid #DDD;
    padding: 3%;
    flex-wrap: nowrap; }
    @media (max-width: 560px) {
      .a-table .a-tr {
        flex-wrap: wrap; }
        .a-table .a-tr dt, .a-table .a-tr dd {
          width: 100% !important; } }
    .a-table .a-tr dt {
      font-weight: 500; }
    .a-table .a-tr dd *:first-child {
      margin-top: 0 !important; }
    @media (max-width: 560px) {
      .a-table .a-tr dd {
        margin: 8px 0 0; } }
  .a-table.separate {
    border-collapse: separate;
    border-spacing: 1px;
    border: none; }
    .a-table.separate th, .a-table.separate td {
      border: none; }

.a-table2 {
  width: 100%;
  margin-top: 24px;
  border-collapse: collapse;
  line-height: 1.6;
  border-top: 1px solid #DDD;
  border-left: 1px solid #DDD; }
  @media (max-width: 560px) {
    .a-table2 {
      margin-top: 16px; } }
  .a-table2 th, .a-table2 td {
    border-right: 1px solid #DDD;
    border-bottom: 1px solid #DDD;
    padding: 16px; }
  .a-table2 th {
    font-weight: 500; }
  .a-table2 .a-cellpad-s th, .a-table2 .a-cellpad-s td {
    padding: 8px; }
  .a-table2 .a-cellpad-l th, .a-table2 .a-cellpad-l td {
    padding: 24px; }
  .a-table2.separate {
    border-collapse: separate;
    border-spacing: 1px;
    border: none; }
    .a-table2.separate th, .a-table2.separate td {
      border: none; }

.a-kakomi, .a-jogesen {
  position: relative;
  margin-top: 24px; }
  @media (max-width: 560px) {
    .a-kakomi, .a-jogesen {
      margin-top: 16px; } }
  .a-kakomi .a-inner, .a-jogesen .a-inner {
    padding: 3%; }
    .a-kakomi .a-inner *:first-child, .a-jogesen .a-inner *:first-child {
      margin-top: 0; }
    .a-kakomi .a-inner *:last-child, .a-jogesen .a-inner *:last-child {
      margin-bottom: 0; }
  .a-kakomi ul, .a-kakomi ol, .a-jogesen ul, .a-jogesen ol {
    padding-left: 0 !important;
    padding-right: 0 !important;
    /*ul, ol {
        padding-left: 0% !important;
        padding-right: 0% !important;
    }*/ }

.a-kakomi .a-caption {
  margin-left: 3%;
  padding-left: .5em; }
.a-kakomi .a-inner {
  border: 1px solid #DDD; }

.a-jogesen .a-inner {
  border-top: 3px solid #DDD;
  border-bottom: 3px solid #DDD; }

.a-caption {
  color: #111 !important;
  background: #FFF;
  padding-right: .5em;
  display: inline-block;
  font-weight: 500; }
  .a-caption + .a-inner {
    margin-top: -1em; }
    @media (max-width: 560px) {
      .a-caption + .a-inner {
        margin-top: -0.8em; } }
  @media (max-width: 560px) {
    .a-caption {
      letter-spacing: 0; } }
  .a-caption:before {
    content: '';
    display: inline-block;
    width: 0;
    height: 0;
    border-top: 0.52em solid #2FAA6F;
    border-left: .3em solid transparent;
    border-right: .3em solid transparent;
    border-bottom: .08em solid transparent;
    margin-right: 0.5em; }

.a-bg-gray-ml .a-caption {
  background: #F0F0F0; }

.a-bg-gray-l .a-caption {
  background: #F5F5F5; }

.a-bg-gray .a-caption {
  background: #DDD; }

.a-bg-gray-md .a-caption {
  background: #999; }

.a-bg-gray-d .a-caption {
  background: #2e2e2e; }

.a-bg-main2 .a-caption {
  background: #D9EEFF; }

.a-bg-main .a-caption {
  background: #2FAA6F; }

.a-blog .a-caption {
  background: #FFF; }

.a-inyo {
  position: relative;
  padding-left: 8%; }
  .a-inyo > img, .a-inyo .a-mediabox {
    display: block;
    width: 90%;
    height: auto; }
  @media (max-width: 560px) {
    .a-inyo {
      padding-left: 10%; } }
  .a-inyo:before {
    content: "\e916";
    font-family: 'tmpla';
    color: #DDD;
    position: absolute;
    top: 0;
    left: 0;
    font-size: 24px; }
    @media (max-width: 560px) {
      .a-inyo:before {
        font-size: 20px; } }
  .a-inyo .a-inyomoto {
    text-align: right; }

.a-mediabox {
  margin-top: 24px; }
  @media (max-width: 560px) {
    .a-mediabox {
      margin-top: 16px; } }
  .a-mediabox img, .a-mediabox video, .a-mediabox iframe {
    margin: 0;
    display: block;
    width: 100%;
    height: auto; }
  .a-mediabox.full {
    display: flex;
    align-items: flex-start; }
  .a-mediabox.org div {
    display: inline-block; }
  .a-mediabox.org img {
    display: inline-block;
    width: auto; }
  .a-mediabox.org.center {
    text-align: center; }
  .a-mediabox.org.right {
    text-align: right; }
  .a-mediabox.full div:nth-child(n+2), .a-mediabox.org div:nth-child(n+2) {
    margin-left: 24px; }
    @media (max-width: 560px) {
      .a-mediabox.full div:nth-child(n+2), .a-mediabox.org div:nth-child(n+2) {
        margin-left: 8px; } }

.a-bgimg {
  width: 100%;
  height: 0;
  background-color: #DDD;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover; }
  .a-bgimg.asp2_1 {
    padding-top: 50%; }
  .a-bgimg.asp16_9 {
    padding-top: 56.25%; }
  .a-bgimg.asp3_2 {
    padding-top: 66.66%; }
  .a-bgimg.asp1_1 {
    padding-top: 100%; }

.a-iframe, .a-gmap {
  position: relative;
  width: 100%;
  padding-top: 50%;
  margin-top: 24px;
  overflow: hidden; }
  .a-iframe:first-child, .a-gmap:first-child {
    margin-top: 0; }
  @media (max-width: 560px) {
    .a-iframe, .a-gmap {
      margin-top: 16px; } }
  .a-iframe iframe, .a-gmap iframe {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 100% !important;
    height: 100% !important; }

.a-gmap.review-off iframe {
  width: 240% !important; }

.a-step {
  padding-left: 40px;
  margin-top: 24px; }
  @media (max-width: 560px) {
    .a-step {
      padding-left: 24px;
      margin-top: 16px; } }
  .a-step .a-step-inner {
    padding: 24px 0;
    position: relative;
    border-bottom: 1px solid #DDD; }
    @media (max-width: 560px) {
      .a-step .a-step-inner {
        padding: 16px 0; } }
    .a-step .a-step-inner:before, .a-step .a-step-inner:after {
      content: '';
      display: block;
      transform: translate(-40px, 24px); }
      @media (max-width: 560px) {
        .a-step .a-step-inner:before, .a-step .a-step-inner:after {
          transform: translate(-24px, 16px); } }
    .a-step .a-step-inner:before {
      width: 12px;
      height: 12px;
      box-sizing: border-box;
      border-radius: 50%;
      background: #2FAA6F;
      position: absolute;
      top: 8px;
      left: 0; }
      @media (max-width: 560px) {
        .a-step .a-step-inner:before {
          top: 4px; } }
    .a-step .a-step-inner:after {
      width: 1px;
      background: #2FAA6F;
      height: calc(100% - 12px - 6px);
      position: absolute;
      top: calc(8px + 12px);
      left: calc(12px / 2); }
      @media (max-width: 560px) {
        .a-step .a-step-inner:after {
          top: calc(4px + 12px); } }
    .a-step .a-step-inner:first-child {
      padding-top: 0; }
      .a-step .a-step-inner:first-child:before, .a-step .a-step-inner:first-child:after {
        transform: translate(-40px, 0); }
        @media (max-width: 560px) {
          .a-step .a-step-inner:first-child:before, .a-step .a-step-inner:first-child:after {
            transform: translate(-24px, 0); } }
      .a-step .a-step-inner:first-child:after {
        height: calc(100% - 12px - 6px + 24px); }
        @media (max-width: 560px) {
          .a-step .a-step-inner:first-child:after {
            height: calc(100% - 12px - 6px + 16px); } }
    .a-step .a-step-inner:last-child {
      padding-bottom: 0;
      border-bottom: none; }
      .a-step .a-step-inner:last-child:after {
        display: none; }
    .a-step .a-step-inner p {
      margin: 0; }

ul.a-txtlinks {
  list-style-type: none;
  padding: 0;
  margin: 12px 0 0; }
  ul.a-txtlinks li {
    display: inline-block;
    padding: 0;
    margin: 0 0 12px; }
    ul.a-txtlinks li a {
      display: block;
      padding: 0 16px;
      border-right: 1px solid #DDD; }
      @media (max-width: 560px) {
        ul.a-txtlinks li a {
          font-size: 13.5px; } }
    ul.a-txtlinks li:last-child a {
      border-right: none !important; }

.a-links {
  margin-top: 24px; }
  @media (max-width: 560px) {
    .a-links {
      margin-top: 16px;
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      align-items: flex-start; } }
  .a-links a {
    display: block;
    width: 100%;
    background: #FFF;
    margin-bottom: 24px; }
    @media (max-width: 560px) {
      .a-links a {
        width: calc(50% - 8px);
        margin-bottom: 16px; } }
    .a-links a img {
      display: block;
      width: 100%; }
    .a-links a:hover {
      opacity: 1; }
      .a-links a:hover img {
        opacity: .7;
        transition: .2s; }

@media (max-width: 560px) {
  .a-sp-scrollx {
    overflow-x: scroll;
    overflow-y: hidden; } }
@media (min-width: 1200px) {
  .a-sp-scrollx .a-sp-scrollx-width {
    width: 100% !important; } }
@media screen and (min-width: 560px) and (max-width: 1200px) {
  .a-sp-scrollx .a-sp-scrollx-width {
    width: 100% !important; } }
@media (max-width: 560px) {
  .a-sp-scrollx .a-sp-scrollx-width {
    display: inline-block;
    white-space: nowrap; }
    .a-sp-scrollx .a-sp-scrollx-width * {
      white-space: normal; } }

.a-border {
  border: 1px solid #DDD; }

.a-border-top {
  border-top: 3px solid #DDD; }
  .a-border-top.white {
    border-top: 3px solid #FFF; }

.a-border-btm {
  border-bottom: 3px solid #DDD; }
  .a-border-btm.white {
    border-bottom: 3px solid #FFF; }

.a-faq .a-faq-unit {
  margin-top: 32px; }
  @media (max-width: 560px) {
    .a-faq .a-faq-unit {
      margin-top: 24px; } }
  .a-faq .a-faq-unit dt, .a-faq .a-faq-unit dd {
    display: flex;
    align-items: center;
    width: 100% !important; }
    .a-faq .a-faq-unit dt:before, .a-faq .a-faq-unit dd:before {
      display: block;
      width: 40px;
      line-height: 40px;
      border-radius: 50%;
      text-align: center;
      font-weight: bold;
      font-size: 18px;
      letter-spacing: 0;
      flex-shrink: 0;
      margin-right: 16px; }
      @media (max-width: 560px) {
        .a-faq .a-faq-unit dt:before, .a-faq .a-faq-unit dd:before {
          margin-right: 12px; } }
  .a-faq .a-faq-unit dt {
    margin-bottom: 6px; }
    .a-faq .a-faq-unit dt:before {
      content: 'Q';
      background: #2FAA6F;
      color: #FFF;
      align-self: flex-start; }
  .a-faq .a-faq-unit dd {
    margin: 0; }
    .a-faq .a-faq-unit dd:before {
      content: 'A';
      background: #FFF;
      color: #2FAA6F;
      align-self: flex-start; }

.a-related-sp a {
  display: inline-block;
  font-size: 12px;
  line-height: 24px;
  padding: 0 8px;
  letter-spacing: 0;
  border-radius: 3px;
  border: 1px solid #2FAA6F;
  margin-top: 8px; }

.a-ta-left {
  text-align: left !important; }

.a-ta-center {
  text-align: center !important; }

.a-ta-right {
  text-align: right !important; }

strong, .a-txt-bold {
  font-weight: 500; }

.a-marker {
  background: linear-gradient(transparent 50%, rgba(64, 197, 152, 0.2) 50%); }

.a-txt-s {
  font-size: 14px; }
  @media (max-width: 560px) {
    .a-txt-s {
      font-size: 12px; } }

.a-txt-ss {
  font-size: 12px; }
  @media (max-width: 560px) {
    .a-txt-ss {
      font-size: 10px; } }

.a-txt-l {
  font-size: 20px; }

.a-txt-ll {
  font-size: 28px; }

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

@media (min-width: 1200px) {
  .a-mb8 {
    margin-bottom: 8px !important; } }
@media screen and (min-width: 560px) and (max-width: 1200px) {
  .a-mb8 {
    margin-bottom: 8px !important; } }
@media (max-width: 560px) {
  .a-mb8 {
    margin-bottom: 8px !important; } }

@media (min-width: 1200px) {
  .a-mb16 {
    margin-bottom: 16px !important; } }
@media screen and (min-width: 560px) and (max-width: 1200px) {
  .a-mb16 {
    margin-bottom: 16px !important; } }
@media (max-width: 560px) {
  .a-mb16 {
    margin-bottom: 16px !important; } }

@media (min-width: 1200px) {
  .a-mb24 {
    margin-bottom: 24px !important; } }
@media screen and (min-width: 560px) and (max-width: 1200px) {
  .a-mb24 {
    margin-bottom: 20px !important; } }
@media (max-width: 560px) {
  .a-mb24 {
    margin-bottom: 16px !important; } }

@media (min-width: 1200px) {
  .a-mb32 {
    margin-bottom: 32px !important; } }
@media screen and (min-width: 560px) and (max-width: 1200px) {
  .a-mb32 {
    margin-bottom: 24px !important; } }
@media (max-width: 560px) {
  .a-mb32 {
    margin-bottom: 20px !important; } }

@media (min-width: 1200px) {
  .a-mb40 {
    margin-bottom: 40px !important; } }
@media screen and (min-width: 560px) and (max-width: 1200px) {
  .a-mb40 {
    margin-bottom: 32px !important; } }
@media (max-width: 560px) {
  .a-mb40 {
    margin-bottom: 32px !important; } }

@media (min-width: 1200px) {
  .a-mb48 {
    margin-bottom: 48px !important; } }
@media screen and (min-width: 560px) and (max-width: 1200px) {
  .a-mb48 {
    margin-bottom: 40px !important; } }
@media (max-width: 560px) {
  .a-mb48 {
    margin-bottom: 32px !important; } }

@media (min-width: 1200px) {
  .a-mb56 {
    margin-bottom: 56px !important; } }
@media screen and (min-width: 560px) and (max-width: 1200px) {
  .a-mb56 {
    margin-bottom: 48px !important; } }
@media (max-width: 560px) {
  .a-mb56 {
    margin-bottom: 32px !important; } }

@media (min-width: 1200px) {
  .a-mb64 {
    margin-bottom: 64px !important; } }
@media screen and (min-width: 560px) and (max-width: 1200px) {
  .a-mb64 {
    margin-bottom: 48px !important; } }
@media (max-width: 560px) {
  .a-mb64 {
    margin-bottom: 32px !important; } }

@media (min-width: 1200px) {
  .a-mb72 {
    margin-bottom: 72px !important; } }
@media screen and (min-width: 560px) and (max-width: 1200px) {
  .a-mb72 {
    margin-bottom: 48px !important; } }
@media (max-width: 560px) {
  .a-mb72 {
    margin-bottom: 32px !important; } }

@media (min-width: 1200px) {
  .a-mb80 {
    margin-bottom: 80px !important; } }
@media screen and (min-width: 560px) and (max-width: 1200px) {
  .a-mb80 {
    margin-bottom: 56px !important; } }
@media (max-width: 560px) {
  .a-mb80 {
    margin-bottom: 40px !important; } }

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

@media (min-width: 1200px) {
  .a-mt8 {
    margin-top: 8px !important; } }
@media screen and (min-width: 560px) and (max-width: 1200px) {
  .a-mt8 {
    margin-top: 8px !important; } }
@media (max-width: 560px) {
  .a-mt8 {
    margin-top: 8px !important; } }

@media (min-width: 1200px) {
  .a-mt16 {
    margin-top: 16px !important; } }
@media screen and (min-width: 560px) and (max-width: 1200px) {
  .a-mt16 {
    margin-top: 16px !important; } }
@media (max-width: 560px) {
  .a-mt16 {
    margin-top: 16px !important; } }

@media (min-width: 1200px) {
  .a-mt24 {
    margin-top: 24px !important; } }
@media screen and (min-width: 560px) and (max-width: 1200px) {
  .a-mt24 {
    margin-top: 20px !important; } }
@media (max-width: 560px) {
  .a-mt24 {
    margin-top: 16px !important; } }

@media (min-width: 1200px) {
  .a-mt32 {
    margin-top: 32px !important; } }
@media screen and (min-width: 560px) and (max-width: 1200px) {
  .a-mt32 {
    margin-top: 24px !important; } }
@media (max-width: 560px) {
  .a-mt32 {
    margin-top: 20px !important; } }

@media (min-width: 1200px) {
  .a-mt40 {
    margin-top: 40px !important; } }
@media screen and (min-width: 560px) and (max-width: 1200px) {
  .a-mt40 {
    margin-top: 32px !important; } }
@media (max-width: 560px) {
  .a-mt40 {
    margin-top: 32px !important; } }

@media (min-width: 1200px) {
  .a-mt48 {
    margin-top: 48px !important; } }
@media screen and (min-width: 560px) and (max-width: 1200px) {
  .a-mt48 {
    margin-top: 40px !important; } }
@media (max-width: 560px) {
  .a-mt48 {
    margin-top: 32px !important; } }

@media (min-width: 1200px) {
  .a-mt56 {
    margin-top: 56px !important; } }
@media screen and (min-width: 560px) and (max-width: 1200px) {
  .a-mt56 {
    margin-top: 48px !important; } }
@media (max-width: 560px) {
  .a-mt56 {
    margin-top: 32px !important; } }

@media (min-width: 1200px) {
  .a-mt64 {
    margin-top: 64px !important; } }
@media screen and (min-width: 560px) and (max-width: 1200px) {
  .a-mt64 {
    margin-top: 48px !important; } }
@media (max-width: 560px) {
  .a-mt64 {
    margin-top: 32px !important; } }

@media (min-width: 1200px) {
  .a-mt72 {
    margin-top: 72px !important; } }
@media screen and (min-width: 560px) and (max-width: 1200px) {
  .a-mt72 {
    margin-top: 48px !important; } }
@media (max-width: 560px) {
  .a-mt72 {
    margin-top: 32px !important; } }

@media (min-width: 1200px) {
  .a-mt80 {
    margin-top: 80px !important; } }
@media screen and (min-width: 560px) and (max-width: 1200px) {
  .a-mt80 {
    margin-top: 56px !important; } }
@media (max-width: 560px) {
  .a-mt80 {
    margin-top: 40px !important; } }

.a-scrollx {
  position: relative;
  padding: 0 72px; }
  .a-scrollx .a-scrollx-wrap {
    overflow-x: hidden;
    overflow-y: visible;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    -ms-overflow-style: none; }
    .a-scrollx .a-scrollx-wrap::-webkit-scrollbar {
      display: none; }
    @media (max-width: 560px) {
      .a-scrollx .a-scrollx-wrap {
        overflow-x: scroll; } }
  .a-scrollx .a-scrollx-inner {
    display: inline-block; }
    @media (max-width: 560px) {
      .a-scrollx .a-scrollx-inner {
        padding-left: 5%; } }
  .a-scrollx .a-i-left, .a-scrollx .a-i-right {
    position: absolute;
    top: 50%;
    display: inline-block;
    width: 64px;
    line-height: 64px;
    margin-top: -32px;
    border-radius: 50%;
    text-align: center;
    background: rgba(255, 255, 255, 0.9);
    z-index: 100;
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.05), 0 1px 5px 0 rgba(0, 0, 0, 0.05), 0 3px 1px -2px rgba(0, 0, 0, 0.1);
    color: #999;
    cursor: pointer; }
    .a-scrollx .a-i-left:hover, .a-scrollx .a-i-right:hover {
      color: #111; }
    @media (max-width: 560px) {
      .a-scrollx .a-i-left, .a-scrollx .a-i-right {
        visibility: hidden; } }
  .a-scrollx .a-i-left {
    left: 32px; }
  .a-scrollx .a-i-right {
    right: 32px; }
  .a-scrollx .a-scrollx-leftgrad {
    width: 7%;
    left: 0;
    background: linear-gradient(to right, #fff, rgba(255, 255, 255, 0)); }
  .a-scrollx .a-scrollx-rightgrad {
    width: 7%;
    right: 0;
    background: linear-gradient(to left, #fff, rgba(255, 255, 255, 0)); }
  @media (max-width: 560px) {
    .a-scrollx {
      padding: 0; }
      .a-scrollx .a-scrollx-rightgrad, .a-scrollx .a-scrollx-leftgrad {
        height: 100%;
        position: absolute;
        bottom: 0;
        z-index: 100; }
      .a-scrollx .a-scrollx-leftgrad {
        width: 10%;
        left: 0;
        background: linear-gradient(to right, #fff 30%, rgba(255, 255, 255, 0)); }
      .a-scrollx .a-scrollx-rightgrad {
        width: 10%;
        right: 0;
        background: linear-gradient(to left, #fff 30%, rgba(255, 255, 255, 0)); } }
  .a-scrollx .a-scrollx-items {
    padding: 16px 0; }
    .a-scrollx .a-scrollx-items .a-scrollx-item {
      display: inline-block;
      vertical-align: top;
      width: 320px;
      margin-right: 24px;
      white-space: normal !important; }
      @media (max-width: 560px) {
        .a-scrollx .a-scrollx-items .a-scrollx-item {
          width: 75vw; } }

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

ul.a-flickList {
  padding: 0;
  position: relative; }
  @media (max-width: 560px) {
    ul.a-flickList {
      width: 100%;
      margin: 32px auto; } }
  ul.a-flickList li.slick-slide {
    padding: 0;
    margin: 0; }
    ul.a-flickList li.slick-slide img {
      padding: 0;
      margin: 0;
      display: block;
      width: 100%;
      height: auto; }
    ul.a-flickList li.slick-slide:before {
      display: none; }
  ul.a-flickList i {
    position: absolute;
    top: 50%;
    transform: translateY(-40px);
    z-index: 100;
    display: block;
    width: 56px;
    line-height: 56px;
    border-radius: 50%;
    text-align: center;
    background: rgba(255, 255, 255, 0.9);
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.05), 0 1px 5px 0 rgba(0, 0, 0, 0.05), 0 3px 1px -2px rgba(0, 0, 0, 0.1);
    color: #999; }
    ul.a-flickList i:hover {
      color: #111; }
    ul.a-flickList i.a-i-left {
      left: -28px; }
    ul.a-flickList i.a-i-right {
      right: -28px; }
  ul.a-flickList ul.slick-dots {
    padding: 0;
    margin: 0;
    list-style-type: none;
    height: 24px;
    display: flex;
    justify-content: center;
    align-items: flex-end; }
    ul.a-flickList ul.slick-dots li {
      padding: 0;
      margin: 0 4px; }
      ul.a-flickList ul.slick-dots li:before {
        display: none; }
      ul.a-flickList ul.slick-dots li button {
        text-indent: -9999px;
        padding: 0;
        margin: 0;
        display: block;
        width: 8px;
        height: 8px;
        border-radius: 50%;
        background: #DDD; }
      ul.a-flickList ul.slick-dots li.slick-active button {
        background: #2FAA6F; }
  ul.a-flickList button {
    background: none;
    border: none;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none; }

.a-card {
  display: block;
  background: #fff;
  border-radius: 6px;
  overflow: hidden;
  box-shadow: 0px 4px 12px rgba(0, 0, 0, 0.1); }
  .a-card .a-card-img {
    padding-top: 56.25%;
    background-size: cover;
    background-position: center center; }
    .a-card .a-card-img img {
      display: block;
      width: 100%;
      height: auto;
      margin: 0; }
  .a-card .a-card-txt {
    padding: 24px; }
    @media (max-width: 560px) {
      .a-card .a-card-txt {
        padding: 16px; } }
    .a-card .a-card-txt h3, .a-card .a-card-txt p {
      transition: .2s; }
  .a-card:hover {
    opacity: 1 !important;
    transform: translateY(-4px);
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.12), 0 3px 10px 0 rgba(0, 0, 0, 0.12), 0 4px 7px -2px rgba(0, 0, 0, 0.2); }
    .a-card:hover h3, .a-card:hover p {
      transition: .2s;
      color: #2FAA6F !important; }

.a-card-yoko {
  display: flex;
  align-items: center;
  box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px;
  background: #fff;
  overflow: hidden;
  border-radius: 6px; }
  .a-card-yoko h3, .a-card-yoko p {
    transition: .2s; }
  .a-card-yoko:hover {
    opacity: 1 !important;
    transform: translateY(-4px);
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.12), 0 3px 10px 0 rgba(0, 0, 0, 0.12), 0 4px 7px -2px rgba(0, 0, 0, 0.2); }
    .a-card-yoko:hover h3, .a-card-yoko:hover p {
      transition: .2s;
      color: #2FAA6F !important; }
  .a-card-yoko .a-card-img {
    flex-shrink: 0;
    width: 144px;
    height: 144px;
    background-size: cover;
    background-position: center center; }
    @media (max-width: 560px) {
      .a-card-yoko .a-card-img {
        width: 100px;
        height: 100px; } }
  .a-card-yoko .a-card-txt {
    padding: 24px; }
    .a-card-yoko .a-card-txt p {
      line-height: 1.6; }

.a-flex {
  display: flex;
  flex-wrap: nowrap; }
  .a-flex.a-fwrap {
    flex-wrap: wrap; }
  .a-flex.a-reverse {
    flex-direction: row-reverse; }
  @media (min-width: 1200px) {
    .a-flex.a-reverse-pc {
      flex-direction: row-reverse; } }
  @media screen and (min-width: 560px) and (max-width: 1200px) {
    .a-flex.a-reverse-tab {
      flex-direction: row-reverse; } }
  @media (max-width: 560px) {
    .a-flex.a-reverse-sp {
      flex-direction: row-reverse; } }
  .a-flex.a-yoko-start {
    justify-content: flex-start; }
  .a-flex.a-yoko-end {
    justify-content: flex-end; }
  .a-flex.a-yoko-center {
    justify-content: center; }
  .a-flex.a-between {
    justify-content: space-between; }
  .a-flex.a-around {
    justify-content: space-around; }
  @media (min-width: 1200px) {
    .a-flex.a-yoko-start-pc {
      justify-content: flex-start; }
    .a-flex.a-yoko-end-pc {
      justify-content: flex-end; }
    .a-flex.a-yoko-center-pc {
      justify-content: center; }
    .a-flex.a-between-pc {
      justify-content: space-between; }
    .a-flex.a-around-pc {
      justify-content: space-around; } }
  @media screen and (min-width: 560px) and (max-width: 1200px) {
    .a-flex.a-yoko-start-tab {
      justify-content: flex-start; }
    .a-flex.a-yoko-end-tab {
      justify-content: flex-end; }
    .a-flex.a-yoko-center-tab {
      justify-content: center; }
    .a-flex.a-between-tab {
      justify-content: space-between; }
    .a-flex.a-around-tab {
      justify-content: space-around; } }
  @media (max-width: 560px) {
    .a-flex.a-yoko-start-sp {
      justify-content: flex-start; }
    .a-flex.a-yoko-end-sp {
      justify-content: flex-end; }
    .a-flex.a-yoko-center-sp {
      justify-content: center; }
    .a-flex.a-between-sp {
      justify-content: space-between; }
    .a-flex.a-around-sp {
      justify-content: space-around; } }
  .a-flex.a-stretch {
    align-items: stretch; }
  .a-flex.a-tate-start {
    align-items: flex-start; }
  .a-flex.a-tate-end {
    align-items: flex-end; }
  .a-flex.a-tate-center {
    align-items: center; }
  @media (min-width: 1200px) {
    .a-flex.a-stretch-pc {
      align-items: stretch; }
    .a-flex.a-tate-start-pc {
      align-items: flex-start; }
    .a-flex.a-tate-end-pc {
      align-items: flex-end; }
    .a-flex.a-tate-center-pc {
      align-items: center; } }
  @media screen and (min-width: 560px) and (max-width: 1200px) {
    .a-flex.a-stretch-tab {
      align-items: stretch; }
    .a-flex.a-tate-start-tab {
      align-items: flex-start; }
    .a-flex.a-tate-end-tab {
      align-items: flex-end; }
    .a-flex.a-tate-center-tab {
      align-items: center; } }
  @media (max-width: 560px) {
    .a-flex.a-stretch-sp {
      align-items: stretch; }
    .a-flex.a-tate-start-sp {
      align-items: flex-start; }
    .a-flex.a-tate-end-sp {
      align-items: flex-end; }
    .a-flex.a-tate-center-sp {
      align-items: center; } }
  @media screen and (min-width: 560px) and (max-width: 1200px) {
    .a-flex.a-break-tab {
      flex-wrap: wrap; }
      .a-flex.a-break-tab > .a-fi, .a-flex.a-break-tab > .a-fi2, .a-flex.a-break-tab > .a-fi3, .a-flex.a-break-tab > .a-fi4 {
        width: 100% !important; } }
  @media (max-width: 560px) {
    .a-flex.a-break-sp {
      flex-wrap: wrap; }
      .a-flex.a-break-sp > .a-fi, .a-flex.a-break-sp > .a-fi2, .a-flex.a-break-sp > .a-fi3, .a-flex.a-break-sp > .a-fi4 {
        width: 100% !important; } }
  .a-flex.a-kinto > * {
    flex-grow: 1; }
  .a-flex.a-gap-ss {
    gap: 6px; }
    .a-flex.a-gap-ss > .a-fi2 {
      width: calc( ( 100% - 6px ) / 2 ); }
    .a-flex.a-gap-ss > .a-fi3 {
      width: calc( ( 100% - 6px * 2 ) / 3 ); }
    .a-flex.a-gap-ss > .a-fi4 {
      width: calc( ( 100% - 6px * 3 ) / 4 ); }
    @media (max-width: 560px) {
      .a-flex.a-gap-ss {
        gap: calc(6px / 2); }
        .a-flex.a-gap-ss > .a-fi2 {
          width: calc((100% - 6px / 2) / 2); }
        .a-flex.a-gap-ss > .a-fi3 {
          width: calc((100% - 6px / 2 * 2) / 3); }
        .a-flex.a-gap-ss > .a-fi4 {
          width: calc((100% - 6px / 2 * 3) / 4); } }
  .a-flex.a-gap-s {
    gap: 12px; }
    .a-flex.a-gap-s > .a-fi2 {
      width: calc( ( 100% - 12px ) / 2 ); }
    .a-flex.a-gap-s > .a-fi3 {
      width: calc( ( 100% - 12px * 2 ) / 3 ); }
    .a-flex.a-gap-s > .a-fi4 {
      width: calc( ( 100% - 12px * 3 ) / 4 ); }
  .a-flex.a-gap-m {
    gap: 32px; }
    .a-flex.a-gap-m > .a-fi2 {
      width: calc( ( 100% - 32px ) / 2 ); }
    .a-flex.a-gap-m > .a-fi3 {
      width: calc( ( 100% - 32px * 2 ) / 3 ); }
    .a-flex.a-gap-m > .a-fi4 {
      width: calc( ( 100% - 32px * 3 ) / 4 ); }
    @media (max-width: 560px) {
      .a-flex.a-gap-m {
        gap: calc(32px / 2); }
        .a-flex.a-gap-m > .a-fi2 {
          width: calc((100% - 32px / 2) / 2); }
        .a-flex.a-gap-m > .a-fi3 {
          width: calc((100% - 32px / 2 * 2) / 3); }
        .a-flex.a-gap-m > .a-fi4 {
          width: calc((100% - 32px / 2 * 3) / 4); } }
  .a-flex.a-gap-l {
    gap: 64px; }
    .a-flex.a-gap-l > .a-fi2 {
      width: calc( ( 100% - 64px ) / 2 ); }
    .a-flex.a-gap-l > .a-fi3 {
      width: calc( ( 100% - 64px * 2 ) / 3 ); }
    .a-flex.a-gap-l > .a-fi4 {
      width: calc( ( 100% - 64px * 3 ) / 4 ); }
    @media (max-width: 560px) {
      .a-flex.a-gap-l {
        gap: calc(64px / 3); }
        .a-flex.a-gap-l > .a-fi2 {
          width: calc((100% - 64px / 3) / 2); }
        .a-flex.a-gap-l > .a-fi3 {
          width: calc((100% - 64px / 3 * 2) / 3); }
        .a-flex.a-gap-l > .a-fi4 {
          width: calc((100% - 64px / 3 * 3) / 4); } }
  .a-flex > .a-fi {
    width: 100%; }
  .a-flex > .a-fi2 {
    width: 50%; }
  .a-flex > .a-fi3 {
    width: 33.33%; }
  .a-flex > .a-fi4 {
    width: 25%; }
  .a-flex > .a-fi2, .a-flex > .a-fi3, .a-flex > .a-fi4 {
    flex-shrink: 0; }
  .a-flex > .a-fi img, .a-flex > .a-fi2 img, .a-flex > .a-fi3 img, .a-flex > .a-fi4 img {
    max-width: 100%; }
  .a-flex > .a-fi.a-shrink0, .a-flex > .a-fi2.a-shrink0, .a-flex > .a-fi3.a-shrink0, .a-flex > .a-fi4.a-shrink0 {
    flex-shrink: 0; }
  .a-flex > .a-fi.a-self-start, .a-flex > .a-fi2.a-self-start, .a-flex > .a-fi3.a-self-start, .a-flex > .a-fi4.a-self-start {
    align-self: flex-start; }
  @media (min-width: 1200px) {
    .a-flex > .a-fi.a-self-start-pc, .a-flex > .a-fi2.a-self-start-pc, .a-flex > .a-fi3.a-self-start-pc, .a-flex > .a-fi4.a-self-start-pc {
      align-self: flex-start; } }
  @media screen and (min-width: 560px) and (max-width: 1200px) {
    .a-flex > .a-fi.a-self-start-tab, .a-flex > .a-fi2.a-self-start-tab, .a-flex > .a-fi3.a-self-start-tab, .a-flex > .a-fi4.a-self-start-tab {
      align-self: flex-start; } }
  @media (max-width: 560px) {
    .a-flex > .a-fi.a-self-start-sp, .a-flex > .a-fi2.a-self-start-sp, .a-flex > .a-fi3.a-self-start-sp, .a-flex > .a-fi4.a-self-start-sp {
      align-self: flex-start; } }
  .a-flex > .a-fi.a-self-end, .a-flex > .a-fi2.a-self-end, .a-flex > .a-fi3.a-self-end, .a-flex > .a-fi4.a-self-end {
    align-self: flex-end; }
  @media (min-width: 1200px) {
    .a-flex > .a-fi.a-self-end-pc, .a-flex > .a-fi2.a-self-end-pc, .a-flex > .a-fi3.a-self-end-pc, .a-flex > .a-fi4.a-self-end-pc {
      align-self: flex-end; } }
  @media screen and (min-width: 560px) and (max-width: 1200px) {
    .a-flex > .a-fi.a-self-end-tab, .a-flex > .a-fi2.a-self-end-tab, .a-flex > .a-fi3.a-self-end-tab, .a-flex > .a-fi4.a-self-end-tab {
      align-self: flex-end; } }
  @media (max-width: 560px) {
    .a-flex > .a-fi.a-self-end-sp, .a-flex > .a-fi2.a-self-end-sp, .a-flex > .a-fi3.a-self-end-sp, .a-flex > .a-fi4.a-self-end-sp {
      align-self: flex-end; } }
  .a-flex > .a-fi.a-self-center, .a-flex > .a-fi2.a-self-center, .a-flex > .a-fi3.a-self-center, .a-flex > .a-fi4.a-self-center {
    align-self: center; }
  @media (min-width: 1200px) {
    .a-flex > .a-fi.a-self-center-pc, .a-flex > .a-fi2.a-self-center-pc, .a-flex > .a-fi3.a-self-center-pc, .a-flex > .a-fi4.a-self-center-pc {
      align-self: center; } }
  @media screen and (min-width: 560px) and (max-width: 1200px) {
    .a-flex > .a-fi.a-self-center-tab, .a-flex > .a-fi2.a-self-center-tab, .a-flex > .a-fi3.a-self-center-tab, .a-flex > .a-fi4.a-self-center-tab {
      align-self: center; } }
  @media (max-width: 560px) {
    .a-flex > .a-fi.a-self-center-sp, .a-flex > .a-fi2.a-self-center-sp, .a-flex > .a-fi3.a-self-center-sp, .a-flex > .a-fi4.a-self-center-sp {
      align-self: center; } }
  .a-flex > .a-fi.a-self-stretch, .a-flex > .a-fi2.a-self-stretch, .a-flex > .a-fi3.a-self-stretch, .a-flex > .a-fi4.a-self-stretch {
    align-self: stretch; }
  @media (min-width: 1200px) {
    .a-flex > .a-fi.a-self-stretch-pc, .a-flex > .a-fi2.a-self-stretch-pc, .a-flex > .a-fi3.a-self-stretch-pc, .a-flex > .a-fi4.a-self-stretch-pc {
      align-self: stretch; } }
  @media screen and (min-width: 560px) and (max-width: 1200px) {
    .a-flex > .a-fi.a-self-stretch-tab, .a-flex > .a-fi2.a-self-stretch-tab, .a-flex > .a-fi3.a-self-stretch-tab, .a-flex > .a-fi4.a-self-stretch-tab {
      align-self: stretch; } }
  @media (max-width: 560px) {
    .a-flex > .a-fi.a-self-stretch-sp, .a-flex > .a-fi2.a-self-stretch-sp, .a-flex > .a-fi3.a-self-stretch-sp, .a-flex > .a-fi4.a-self-stretch-sp {
      align-self: stretch; } }

.a-grid, .a-grid2, .a-grid3, .a-grid4 {
  display: grid; }
  .a-grid.a-gap-s, .a-grid2.a-gap-s, .a-grid3.a-gap-s, .a-grid4.a-gap-s {
    gap: 8px; }
  .a-grid.a-gap-m, .a-grid2.a-gap-m, .a-grid3.a-gap-m, .a-grid4.a-gap-m {
    gap: 32px; }
  .a-grid.a-gap-l, .a-grid2.a-gap-l, .a-grid3.a-gap-l, .a-grid4.a-gap-l {
    gap: 64px; }
    @media (max-width: 560px) {
      .a-grid.a-gap-l, .a-grid2.a-gap-l, .a-grid3.a-gap-l, .a-grid4.a-gap-l {
        gap: calc(64px / 2); } }
  @media screen and (min-width: 560px) and (max-width: 1200px) {
    .a-grid.a-break-tab, .a-grid2.a-break-tab, .a-grid3.a-break-tab, .a-grid4.a-break-tab {
      grid-template-columns: 1fr !important; } }
  @media (max-width: 560px) {
    .a-grid.a-break-sp, .a-grid2.a-break-sp, .a-grid3.a-break-sp, .a-grid4.a-break-sp {
      grid-template-columns: 1fr !important; } }

.a-grid {
  grid-template-columns: repeat(1, 1fr); }

.a-grid2 {
  grid-template-columns: repeat(2, 50%); }
  .a-grid2.a-gap-s {
    grid-template-columns: repeat(2, calc( ( 100% - 8px ) / 2 )); }
  .a-grid2.a-gap-m {
    grid-template-columns: repeat(2, calc( ( 100% - 32px ) / 2 )); }
  .a-grid2.a-gap-l {
    grid-template-columns: repeat(2, calc( ( 100% - 64px ) / 2 )); }

.a-grid3 {
  grid-template-columns: repeat(3, 33.33%); }
  .a-grid3.a-gap-s {
    grid-template-columns: repeat(3, calc( ( 100% - 8px * 2 ) / 3 )); }
  .a-grid3.a-gap-m {
    grid-template-columns: repeat(3, calc( ( 100% - 32px * 2 ) / 3 )); }
  .a-grid3.a-gap-l {
    grid-template-columns: repeat(3, calc( ( 100% - 64px * 2 ) / 3 )); }

.a-grid4 {
  grid-template-columns: repeat(4, minmax(25%, 1fr)); }
  .a-grid4.a-gap-s {
    grid-template-columns: repeat(4, calc( ( 100% - 8px * 3 ) / 4 )); }
  .a-grid4.a-gap-m {
    grid-template-columns: repeat(4, calc( ( 100% - 32px * 3 ) / 4)); }
  .a-grid4.a-gap-l {
    grid-template-columns: repeat(4, calc( ( 100% - 64px * 3 ) / 4 )); }

#message .padding {
  padding: 0 64px;
  box-sizing: border-box; }
  @media (max-width: 560px) {
    #message .padding {
      padding: 0 5%; } }
  #message .padding.yellow {
    background: linear-gradient(transparent 400px, #fdfae2 400px, #fdfae2 calc(100% - 32px), transparent calc(100% - 32px)); }
    @media (max-width: 560px) {
      #message .padding.yellow {
        background: linear-gradient(transparent 20px, #fdfae2 20px, #fdfae2 calc(100% - 24px), transparent calc(100% - 24px)); } }
    #message .padding.yellow img + p {
      text-align: right; }
      @media screen and (min-width: 560px) and (max-width: 1200px) {
        #message .padding.yellow img + p {
          text-align: center; } }
      @media (max-width: 560px) {
        #message .padding.yellow img + p {
          text-align: center; } }
#message .readmore {
  background: #FFF;
  cursor: pointer;
  cursor: hand; }
  #message .readmore:hover {
    background: #2FAA6F; }
  #message .readmore:before {
    content: '＋ 続きを読む'; }
  #message .readmore.open:before {
    content: 'ー 閉じる'; }
#message .more {
  display: none; }
  #message .more.open {
    display: block; }

#feature {
  background-image: url("../a-images/cla2/bg-pattern.svg");
  background-attachment: fixed;
  background-size: 40px; }
  #feature h2.a-h-index {
    transform: translateY(-33%);
    margin-bottom: 24px; }
  #feature .padding {
    padding: 64px;
    position: relative; }
    @media (max-width: 560px) {
      #feature .padding {
        padding: 32px 5%; } }
    @media screen and (min-width: 560px) and (max-width: 1200px) {
      #feature .padding .a-btn {
        text-align: center !important; } }
    @media (max-width: 560px) {
      #feature .padding .a-btn {
        text-align: center !important; } }
    #feature .padding.a-bg-gray-l {
      position: relative; }
      #feature .padding.a-bg-gray-l:before {
        content: '';
        display: block;
        margin: 0 auto;
        border-left: 24px solid transparent;
        border-right: 24px solid transparent;
        border-bottom: 40px solid #F5F5F5;
        position: absolute;
        left: 50%;
        top: 0;
        transform: translate(-24px, -40px); }
        @media (max-width: 560px) {
          #feature .padding.a-bg-gray-l:before {
            display: none; } }
  #feature .num {
    position: absolute;
    top: 0;
    transform: translateY(-50%);
    font-family: "futura-pt", sans-serif;
    font-weight: 500;
    color: #2FAA6F;
    font-size: 144px;
    line-height: 1; }
    @media screen and (min-width: 560px) and (max-width: 1200px) {
      #feature .num {
        transform: translateY(-40px);
        font-size: 96px; } }
    @media (max-width: 560px) {
      #feature .num {
        transform: translateY(-32px);
        font-size: 72px; } }
    #feature .num.left {
      left: 64px; }
    #feature .num.right {
      right: 16px; }
    #feature .num.center {
      display: block;
      width: 100%;
      text-align: center;
      left: 2%; }
    @media screen and (min-width: 560px) and (max-width: 1200px) {
      #feature .num.left, #feature .num.right, #feature .num.center {
        display: block;
        width: 100%;
        text-align: center;
        left: 2%; } }
    @media (max-width: 560px) {
      #feature .num.left, #feature .num.right, #feature .num.center {
        display: block;
        width: 100%;
        text-align: center;
        left: 5%; } }

#patients {
  background: linear-gradient(transparent 320px, #D9EEFF 320px); }
  @media (max-width: 560px) {
    #patients {
      background: linear-gradient(transparent 240px, #D9EEFF 240px); } }
  #patients .padding {
    margin-top: 64px;
    padding: 0 64px 64px;
    box-sizing: border-box; }
    @media (max-width: 560px) {
      #patients .padding {
        padding: 0 5% 5%; } }
  @media (max-width: 560px) {
    #patients .sub {
      gap: 0 !important; } }
  #patients .sub .a-fi2 {
    border-bottom: 1px solid #DDD; }
    @media (max-width: 560px) {
      #patients .sub .a-fi2:first-child {
        border-bottom: none; } }
    #patients .sub .a-fi2 a.a-flex {
      color: #111;
      border-top: 1px solid #DDD;
      position: relative; }
      #patients .sub .a-fi2 a.a-flex:after {
        content: "\e907";
        font-family: 'tmpla' !important;
        color: #999;
        position: absolute;
        top: 50%;
        right: 16px;
        transform: translateY(-50%);
        transition: .2s; }
      #patients .sub .a-fi2 a.a-flex .a-bgimg {
        flex-shrink: 0;
        width: 100px;
        height: 100px;
        transition: .5s; }
      #patients .sub .a-fi2 a.a-flex:hover {
        opacity: 1 !important;
        color: #2FAA6F !important; }
        #patients .sub .a-fi2 a.a-flex:hover:after {
          color: #2FAA6F !important;
          right: 14px;
          transition: .2s; }
        #patients .sub .a-fi2 a.a-flex:hover .a-bgimg {
          transform: scale(1.05);
          transition: .5s; }

#team {
  background: linear-gradient(transparent 440px, #D9EEFF 440px); }
  @media (max-width: 560px) {
    #team {
      background: linear-gradient(transparent 300px, #D9EEFF 300px); } }
  #team .wrap {
    margin-left: auto;
    margin-right: auto;
    max-width: 1800px;
    width: 90%; }
  #team .fukidashi p {
    font-family: source-han-sans-japanese, sans-serif;
    font-weight: bold;
    color: #2FAA6F;
    background: #F5F5F5;
    padding: 16px;
    position: relative;
    margin-bottom: 32px;
    line-height: 1.4;
    text-align: center; }
    #team .fukidashi p:before {
      content: "\e91d";
      font-family: 'tmpla';
      letter-spacing: 8px; }
    #team .fukidashi p:after {
      content: '';
      display: block;
      margin: 0 auto;
      border-top: 16px solid #F5F5F5;
      border-left: 10px solid transparent;
      border-right: 10px solid transparent;
      position: absolute;
      left: 50%;
      bottom: 0;
      transform: translate(-10px, 16px); }

#payment .padding {
  padding: 64px; }
  @media (max-width: 560px) {
    #payment .padding {
      padding: 32px 0; } }
#payment h2.a-h-page:before {
  content: 'i';
  font-family: "futura-pt", sans-serif !important;
  display: block;
  background: #FFF;
  color: #2FAA6F;
  font-size: 1.5em;
  width: 1.25em;
  line-height: 1.25em;
  border-radius: 50%;
  margin: 0 auto 8px; }

.kv {
  position: relative;
  display: flex; }
  @media screen and (min-width: 560px) and (max-width: 1200px) {
    .kv {
      flex-direction: column-reverse; } }
  @media (max-width: 560px) {
    .kv {
      flex-direction: column-reverse; } }
  .kv .left {
    width: 30%;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    position: relative; }
    @media screen and (min-width: 560px) and (max-width: 1200px) {
      .kv .left {
        width: 100%;
        justify-content: center; } }
    @media (max-width: 560px) {
      .kv .left {
        width: 100%;
        justify-content: center; } }
    .kv .left .cl-name {
      position: absolute;
      top: 0;
      left: 0;
      display: block;
      width: calc(100% - 280px); }
      @media screen and (min-width: 560px) and (max-width: 1200px) {
        .kv .left .cl-name {
          display: none; } }
      @media (max-width: 560px) {
        .kv .left .cl-name {
          display: none; } }
    .kv .left .cl-name2 {
      position: absolute;
      top: 0;
      left: 0;
      display: block;
      width: 50%; }
      @media screen and (min-width: 560px) and (max-width: 1200px) {
        .kv .left .cl-name2 {
          display: none; } }
      @media (max-width: 560px) {
        .kv .left .cl-name2 {
          display: none; } }
    .kv .left .inner {
      z-index: 2;
      width: 360px;
      flex-shrink: 0;
      transform: translateX(40px); }
      @media screen and (min-width: 560px) and (max-width: 1200px) {
        .kv .left .inner {
          width: 100%;
          transform: translateX(0);
          text-align: center; } }
      @media (max-width: 560px) {
        .kv .left .inner {
          width: 100%;
          justify-content: center;
          transform: translateX(0);
          text-align: center; } }
      .kv .left .inner h1 span:nth-child(1) {
        color: #2FAA6F;
        font-size: 24px;
        display: block; }
        @media screen and (min-width: 560px) and (max-width: 1200px) {
          .kv .left .inner h1 span:nth-child(1) {
            margin: 0 auto;
            padding-top: 24px; } }
        @media (max-width: 560px) {
          .kv .left .inner h1 span:nth-child(1) {
            font-size: 16px;
            margin: 0 auto; } }
      .kv .left .inner h1 span:nth-child(n+2) {
        font-size: 48px;
        font-weight: 900;
        display: inline-block;
        line-height: 72px;
        border-bottom: 6px solid #2FAA6F;
        margin-top: 4px; }
        @media (max-width: 560px) {
          .kv .left .inner h1 span:nth-child(n+2) {
            font-size: 32px;
            line-height: 48px;
            border-bottom: 4px solid #2FAA6F; } }
      @media screen and (min-width: 560px) and (max-width: 1200px) {
        .kv .left .inner .a-btn {
          text-align: center; } }
      @media (max-width: 560px) {
        .kv .left .inner .a-btn {
          text-align: center; } }
    .kv .left .inner2 {
      z-index: 2;
      width: 400px;
      flex-shrink: 0;
      transform: translate(56px, 16px);
      padding: 40px 40px 0;
      background: #FFF;
      background: linear-gradient(#FFF calc(100% - 32px), transparent calc(100% - 32px));
      text-align: center; }
      @media screen and (min-width: 560px) and (max-width: 1200px) {
        .kv .left .inner2 {
          width: 100%;
          padding: 40px 0 0;
          transform: translate(0, 0); } }
      @media (max-width: 560px) {
        .kv .left .inner2 {
          width: 100%;
          padding: 24px 0 0;
          transform: translate(0, 0); } }
      .kv .left .inner2 p:first-child {
        color: #2FAA6F;
        font-family: "futura-pt", sans-serif;
        margin: 0; }
      .kv .left .inner2 h1 {
        margin: 8px 0 16px;
        font-size: 40px;
        line-height: 1.4;
        font-weight: 900; }
        @media (max-width: 560px) {
          .kv .left .inner2 h1 {
            font-size: 32px; } }
        .kv .left .inner2 h1 span {
          display: inline-block; }
      .kv .left .inner2 ul.a-check {
        padding: 0;
        margin: 16px 0 24px; }
        .kv .left .inner2 ul.a-check li {
          display: inline-block;
          color: #2FAA6F;
          background: rgba(64, 197, 152, 0.2);
          padding: 4px 24px 4px 40px;
          border-radius: 40px; }
          .kv .left .inner2 ul.a-check li:before {
            margin-right: 4px; }
      .kv .left .inner2 .a-btn .ol {
        background: #FFF; }
        .kv .left .inner2 .a-btn .ol:hover {
          background: #2FAA6F; }
  .kv .right {
    width: 70%; }
    @media screen and (min-width: 560px) and (max-width: 1200px) {
      .kv .right {
        width: 100%; } }
    @media (max-width: 560px) {
      .kv .right {
        width: 100%; } }
    .kv .right .img {
      padding-top: 48%;
      background-size: cover;
      background-position: center center; }
  .kv .news {
    position: absolute;
    z-index: 2;
    bottom: 0;
    right: 0;
    width: 50%;
    margin: 0 0 0 auto;
    transform: translateY(50%);
    background: #F5F5F5; }
    @media screen and (min-width: 560px) and (max-width: 1200px) {
      .kv .news {
        position: static;
        width: 100%;
        transform: translateY(0);
        background: rgba(64, 197, 152, 0.2); } }
    @media (max-width: 560px) {
      .kv .news {
        position: static;
        width: 100%;
        transform: translateY(0);
        background: rgba(64, 197, 152, 0.2); } }
    .kv .news:hover {
      opacity: 1; }
      .kv .news:hover p:last-child {
        transition: .2s;
        color: #2FAA6F !important; }
    .kv .news p {
      margin: 0; }
      .kv .news p:first-child {
        background: #2FAA6F;
        color: #FFF;
        padding: 16px 32px;
        font-family: "futura-pt", sans-serif;
        font-weight: 500; }
        @media screen and (min-width: 560px) and (max-width: 1200px) {
          .kv .news p:first-child {
            display: none; } }
        @media (max-width: 560px) {
          .kv .news p:first-child {
            display: none; } }
      .kv .news p:last-child {
        color: #111;
        padding: 16px 24px;
        transition: .2s; }
        @media screen and (min-width: 560px) and (max-width: 1200px) {
          .kv .news p:last-child {
            width: 100%;
            text-align: center;
            padding: 8px !important;
            color: #2FAA6F; }
            .kv .news p:last-child:before {
              content: "\e933";
              font-family: 'tmpla';
              letter-spacing: 8px; } }
        @media (max-width: 560px) {
          .kv .news p:last-child {
            font-size: 14px;
            width: 100%;
            text-align: center;
            padding: 8px !important;
            color: #2FAA6F; }
            .kv .news p:last-child:before {
              content: "\e933";
              font-family: 'tmpla';
              letter-spacing: 8px; } }

.a-bg-main-ue {
  background: linear-gradient(#2FAA6F 280px, transparent 280px) !important; }
  @media (max-width: 560px) {
    .a-bg-main-ue {
      background: linear-gradient(#2FAA6F 200px, transparent 200px) !important; } }

.staff-chips p {
  display: flex;
  margin: 0;
  padding: 1em 2.5em 1em 1.5em;
  gap: 2em; }
  @media (max-width: 560px) {
    .staff-chips p {
      padding: 1em 1.5em 1em 1em;
      gap: 1em; } }

.staff-fukidashi {
  width: 0;
  border-top: 16px solid transparent;
  border-left: 16px solid; }
  @media (max-width: 560px) {
    .staff-fukidashi {
      border-top: none;
      border-bottom: 17.3205px solid;
      border-left: 10px solid transparent;
      border-right: 10px solid transparent;
      margin-left: auto;
      margin-right: auto; } }

.access-fukidashi {
  width: 0;
  margin: 0 auto;
  border-left: 24px solid transparent;
  border-right: 24px solid transparent;
  border-bottom: 40px solid; }
  @media (max-width: 560px) {
    .access-fukidashi {
      border-left: 10px solid transparent;
      border-right: 10px solid transparent;
      border-bottom: 17.3205px solid; } }

#loading {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100vw;
  height: 100vh;
  background-color: #FFF;
  transition: all .2s;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99999;
  /* 中のローディングアニメ */ }
  #loading.loaded {
    opacity: 0;
    visibility: hidden; }
  #loading .loader {
    color: #DDD;
    font-size: 12px;
    margin: 100px auto;
    width: 1em;
    height: 1em;
    border-radius: 50%;
    position: relative;
    text-indent: -9999em;
    -webkit-animation: load4 1.3s infinite linear;
    animation: load4 1.3s infinite linear;
    -webkit-transform: translateZ(0);
    -ms-transform: translateZ(0);
    transform: translateZ(0); }
    @media (max-width: 560px) {
      #loading .loader {
        font-size: 6px; } }
@-webkit-keyframes load4 {
  0%,
    100% {
    box-shadow: 0 -3em 0 0.2em, 2em -2em 0 0em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 0; }
  12.5% {
    box-shadow: 0 -3em 0 0, 2em -2em 0 0.2em, 3em 0 0 0, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em; }
  25% {
    box-shadow: 0 -3em 0 -0.5em, 2em -2em 0 0, 3em 0 0 0.2em, 2em 2em 0 0, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em; }
  37.5% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 0, 2em 2em 0 0.2em, 0 3em 0 0em, -2em 2em 0 -1em, -3em 0em 0 -1em, -2em -2em 0 -1em; }
  50% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 0em, 0 3em 0 0.2em, -2em 2em 0 0, -3em 0em 0 -1em, -2em -2em 0 -1em; }
  62.5% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 0, -2em 2em 0 0.2em, -3em 0 0 0, -2em -2em 0 -1em; }
  75% {
    box-shadow: 0em -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0.2em, -2em -2em 0 0; }
  87.5% {
    box-shadow: 0em -3em 0 0, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0, -2em -2em 0 0.2em; } }
@keyframes load4 {
  0%,
    100% {
    box-shadow: 0 -3em 0 0.2em, 2em -2em 0 0em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 0; }
  12.5% {
    box-shadow: 0 -3em 0 0, 2em -2em 0 0.2em, 3em 0 0 0, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em; }
  25% {
    box-shadow: 0 -3em 0 -0.5em, 2em -2em 0 0, 3em 0 0 0.2em, 2em 2em 0 0, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em; }
  37.5% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 0, 2em 2em 0 0.2em, 0 3em 0 0em, -2em 2em 0 -1em, -3em 0em 0 -1em, -2em -2em 0 -1em; }
  50% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 0em, 0 3em 0 0.2em, -2em 2em 0 0, -3em 0em 0 -1em, -2em -2em 0 -1em; }
  62.5% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 0, -2em 2em 0 0.2em, -3em 0 0 0, -2em -2em 0 -1em; }
  75% {
    box-shadow: 0em -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0.2em, -2em -2em 0 0; }
  87.5% {
    box-shadow: 0em -3em 0 0, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0, -2em -2em 0 0.2em; } }
#loading-body {
  opacity: 0; }
  #loading-body.loaded {
    opacity: 1;
    transition: .2s; }

@media all and (-ms-high-contrast: none) {
  #loading {
    display: none; }

  #loading-body {
    opacity: 1 !important; } }
body.kasuga p, body.kasuga li, body.kasuga dd {
  color: rgba(17, 17, 17, 0.7); }
body.kasuga h1, body.kasuga h2, body.kasuga h3, body.kasuga h4, body.kasuga h5, body.kasuga h6 {
  font-family: dnp-shuei-mgothic-std;
  font-weight: 600; }
body.kasuga .a-page p, body.kasuga .a-page li, body.kasuga .a-page dd {
  color: rgba(17, 17, 17, 0.7); }
body.kasuga .a-header {
  font-family: dnp-shuei-mgothic-std, sans-serif;
  font-weight: 600;
  padding: 0 32px; }
  @media (max-width: 560px) {
    body.kasuga .a-header {
      padding: 0 3%; } }
  body.kasuga .a-header .a-nav {
    padding-right: 40px;
    width: 100%; }
    @media screen and (min-width: 560px) and (max-width: 1200px) {
      body.kasuga .a-header .a-nav {
        display: none; } }
    @media (max-width: 560px) {
      body.kasuga .a-header .a-nav {
        display: none; } }
    body.kasuga .a-header .a-nav > ul {
      list-style-type: none;
      margin: 0;
      padding: 0;
      display: flex;
      justify-content: flex-end;
      gap: 32px; }
      body.kasuga .a-header .a-nav > ul > li > a {
        font-size: 17px;
        color: #2e2e2e; }
        body.kasuga .a-header .a-nav > ul > li > a i {
          color: #F7E86A;
          display: inline-block;
          margin-right: 8px; }
        body.kasuga .a-header .a-nav > ul > li > a:hover {
          opacity: 1;
          color: inherit !important; }
          body.kasuga .a-header .a-nav > ul > li > a:hover i {
            transform: translateY(-4px);
            transition-duration: .2s;
            transition-timing-function: cubic-bezier(0.32, 1.65, 0.59, 1.65); }
      body.kasuga .a-header .a-nav > ul > li.a-menu-parent {
        position: relative; }
        body.kasuga .a-header .a-nav > ul > li.a-menu-parent:after {
          content: "\e918";
          font-family: 'tmpla' !important;
          display: inline-block;
          font-size: 12px;
          margin-left: 4px;
          color: #999;
          transition: .2s;
          transform: translateY(-2px); }
        body.kasuga .a-header .a-nav > ul > li.a-menu-parent:hover a {
          color: inherit !important; }
        body.kasuga .a-header .a-nav > ul > li.a-menu-parent:hover:before {
          position: absolute;
          content: '';
          top: 100%;
          left: 0;
          width: 100%;
          height: 50px; }
        body.kasuga .a-header .a-nav > ul > li.a-menu-parent:hover:after {
          transform: translateY(2px);
          transition: .2s;
          color: #999; }
        body.kasuga .a-header .a-nav > ul > li.a-menu-parent:hover .a-menu-child {
          visibility: visible;
          opacity: 1;
          padding: 24px 0 56px;
          transition: .1s; }
        body.kasuga .a-header .a-nav > ul > li.a-menu-parent:hover i {
          transform: translateY(-4px);
          transition-duration: .2s;
          transition-timing-function: cubic-bezier(0.32, 1.65, 0.59, 1.65); }
        body.kasuga .a-header .a-nav > ul > li.a-menu-parent .a-menu-child {
          visibility: hidden;
          position: fixed;
          top: 100px;
          left: 0;
          width: 100vw;
          background: rgba(250, 250, 250, 0.98);
          opacity: 0;
          padding: 0;
          transition: .1s;
          box-shadow: 0 100vh 0 100vh rgba(0, 0, 0, 0.2); }
          body.kasuga .a-header .a-nav > ul > li.a-menu-parent .a-menu-child a {
            color: #111;
            font-weight: normal;
            box-sizing: border-box;
            padding: 16px 0;
            border-bottom: 1px solid #DDD;
            position: relative; }
            body.kasuga .a-header .a-nav > ul > li.a-menu-parent .a-menu-child a:hover {
              opacity: 1;
              color: #2FAA6F !important; }
              body.kasuga .a-header .a-nav > ul > li.a-menu-parent .a-menu-child a:hover:after {
                color: #2FAA6F;
                right: 14px;
                transition: .2s; }
            body.kasuga .a-header .a-nav > ul > li.a-menu-parent .a-menu-child a:after {
              content: "\e907";
              font-family: 'tmpla' !important;
              font-size: 12px;
              color: #999;
              transition: .2s;
              position: absolute;
              top: 50%;
              right: 16px;
              transform: translateY(-50%); }
            body.kasuga .a-header .a-nav > ul > li.a-menu-parent .a-menu-child a i {
              color: #2FAA6F;
              letter-spacing: 8px; }
  body.kasuga .a-header .a-cv {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    flex-direction: row;
    height: 56px;
    padding: 0 32px;
    border-radius: 28px;
    text-align: center;
    gap: 12px; }
    @media screen and (min-width: 560px) and (max-width: 1200px) {
      body.kasuga .a-header .a-cv {
        display: none; } }
    @media (max-width: 560px) {
      body.kasuga .a-header .a-cv {
        display: none; } }
    body.kasuga .a-header .a-cv i {
      font-size: 1.6em;
      display: none; }
body.kasuga h3.a-ham-h3 i {
  background: #F7E86A;
  color: #111; }
body.kasuga .a-btn a, body.kasuga .a-btn input[type="submit"], body.kasuga .a-btn-center a, body.kasuga .a-btn-center input[type="submit"], body.kasuga .a-btn-right a, body.kasuga .a-btn-right input[type="submit"] {
  font-family: dnp-shuei-mgothic-std, sans-serif;
  font-weight: 600; }
  body.kasuga .a-btn a.ol, body.kasuga .a-btn input[type="submit"].ol, body.kasuga .a-btn-center a.ol, body.kasuga .a-btn-center input[type="submit"].ol, body.kasuga .a-btn-right a.ol, body.kasuga .a-btn-right input[type="submit"].ol {
    border-radius: 8px; }
  body.kasuga .a-btn a.ct, body.kasuga .a-btn input[type="submit"].ct, body.kasuga .a-btn-center a.ct, body.kasuga .a-btn-center input[type="submit"].ct, body.kasuga .a-btn-right a.ct, body.kasuga .a-btn-right input[type="submit"].ct {
    border-radius: 8px; }
body.kasuga .kv {
  position: relative;
  display: flex; }
  @media screen and (min-width: 560px) and (max-width: 1200px) {
    body.kasuga .kv {
      flex-direction: column-reverse; } }
  @media (max-width: 560px) {
    body.kasuga .kv {
      flex-direction: column-reverse; } }
  body.kasuga .kv .cl-name {
    font-family: dnp-shuei-mgothic-std;
    font-weight: 300;
    position: absolute;
    left: 32px;
    top: 0;
    z-index: 100;
    writing-mode: vertical-rl;
    margin: 0;
    height: 100%;
    text-align: center; }
  body.kasuga .kv .left {
    width: 460px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    position: relative; }
    @media screen and (min-width: 560px) and (max-width: 1200px) {
      body.kasuga .kv .left {
        width: 100%;
        justify-content: center; } }
    @media (max-width: 560px) {
      body.kasuga .kv .left {
        width: 100%;
        justify-content: center; } }
    body.kasuga .kv .left .cl-name2 {
      display: none; }
    body.kasuga .kv .left .inner {
      z-index: 2;
      width: 360px;
      flex-shrink: 0;
      transform: translate(64px, 0);
      padding: 24px 56px 32px;
      border-radius: 56px;
      background: #FFF;
      text-align: center; }
      @media screen and (min-width: 560px) and (max-width: 1200px) {
        body.kasuga .kv .left .inner {
          width: 75%;
          padding: 0;
          border-radius: 40px;
          transform: translate(0, -40px);
          text-align: center; } }
      @media (max-width: 560px) {
        body.kasuga .kv .left .inner {
          width: 80%;
          padding: 0;
          border-radius: 24px;
          justify-content: center;
          transform: translate(0, -24px);
          text-align: center; } }
      body.kasuga .kv .left .inner h1 span:nth-child(1) {
        color: #2FAA6F;
        font-size: 24px;
        display: block; }
        @media screen and (min-width: 560px) and (max-width: 1200px) {
          body.kasuga .kv .left .inner h1 span:nth-child(1) {
            margin: 0 auto;
            padding-top: 24px; } }
        @media (max-width: 560px) {
          body.kasuga .kv .left .inner h1 span:nth-child(1) {
            font-size: 16px;
            margin: 0 auto; } }
      body.kasuga .kv .left .inner h1 span:nth-child(n+2) {
        font-size: 48px;
        font-weight: 900;
        display: inline-block;
        line-height: 72px;
        border-bottom: 6px solid #F7E86A;
        margin-top: 4px; }
        @media (max-width: 560px) {
          body.kasuga .kv .left .inner h1 span:nth-child(n+2) {
            font-size: 32px;
            line-height: 48px;
            border-bottom: 4px solid #F7E86A; } }
      body.kasuga .kv .left .inner .a-btn {
        text-align: center; }
        @media (min-width: 1200px) {
          body.kasuga .kv .left .inner .a-btn {
            position: absolute;
            bottom: -64px;
            left: 50%;
            transform: translateX(-50%); } }
        @media screen and (min-width: 560px) and (max-width: 1200px) {
          body.kasuga .kv .left .inner .a-btn {
            margin-bottom: 0 !important; } }
        @media (max-width: 560px) {
          body.kasuga .kv .left .inner .a-btn {
            margin-bottom: 0 !important; } }
  body.kasuga .kv .right {
    width: calc(100% - 460px);
    border-radius: 56px 0 0 56px; }
    @media screen and (min-width: 560px) and (max-width: 1200px) {
      body.kasuga .kv .right {
        width: 100%;
        border-radius: 0; } }
    @media (max-width: 560px) {
      body.kasuga .kv .right {
        width: 100%;
        border-radius: 0; } }
    body.kasuga .kv .right .img {
      padding-top: 48%;
      background-size: cover;
      background-position: center center; }
  body.kasuga .kv .news {
    position: absolute;
    z-index: 2;
    bottom: 0;
    right: 0;
    width: 50%;
    margin: 0 0 0 auto;
    transform: translateY(50%);
    background: #F5F5F5; }
    @media screen and (min-width: 560px) and (max-width: 1200px) {
      body.kasuga .kv .news {
        position: static;
        width: 100%;
        transform: translateY(0);
        background: rgba(64, 197, 152, 0.2); } }
    @media (max-width: 560px) {
      body.kasuga .kv .news {
        position: static;
        width: 100%;
        transform: translateY(0);
        background: rgba(64, 197, 152, 0.2); } }
    body.kasuga .kv .news:hover {
      opacity: 1; }
      body.kasuga .kv .news:hover p:last-child {
        transition: .2s;
        color: #2FAA6F !important; }
    body.kasuga .kv .news p {
      margin: 0; }
      body.kasuga .kv .news p:first-child {
        background: #F7E86A;
        color: #111;
        padding: 0;
        font-family: dnp-shuei-mgothic-std;
        font-weight: 300;
        text-align: center;
        font-size: 10px;
        letter-spacing: 0;
        line-height: 1.3;
        width: 80px;
        height: 80px;
        border-radius: 50%;
        position: absolute;
        left: -24px;
        top: 50%;
        transform: translateY(-50%); }
        body.kasuga .kv .news p:first-child:before {
          content: "\e933";
          font-family: 'tmpla';
          display: block;
          font-size: 28px;
          margin-top: 12px; }
        @media screen and (min-width: 560px) and (max-width: 1200px) {
          body.kasuga .kv .news p:first-child {
            display: none; } }
        @media (max-width: 560px) {
          body.kasuga .kv .news p:first-child {
            display: none; } }
      body.kasuga .kv .news p:last-child {
        color: #111;
        padding: 16px 24px 16px 80px;
        transition: .2s; }
        @media screen and (min-width: 560px) and (max-width: 1200px) {
          body.kasuga .kv .news p:last-child {
            width: 100%;
            text-align: center;
            padding: 8px !important;
            color: #2FAA6F; }
            body.kasuga .kv .news p:last-child:before {
              content: "\e933";
              font-family: 'tmpla';
              letter-spacing: 8px; } }
        @media (max-width: 560px) {
          body.kasuga .kv .news p:last-child {
            font-size: 14px;
            width: 100%;
            text-align: center;
            padding: 8px !important;
            color: #2FAA6F; }
            body.kasuga .kv .news p:last-child:before {
              content: "\e933";
              font-family: 'tmpla';
              letter-spacing: 8px; } }
body.kasuga .a-main img {
  border-radius: 24px; }
body.kasuga #pickup .a-border-top {
  border-top: 4px dotted #F7E86A; }
body.kasuga #pickup .a-border-btm {
  border-bottom: 4px dotted #F7E86A; }
body.kasuga #pickup h2.a-h-index-m {
  font-size: 20px; }
  body.kasuga #pickup h2.a-h-index-m .a-h-hojo {
    font-size: 12px;
    color: #2FAA6F; }
    @media (max-width: 560px) {
      body.kasuga #pickup h2.a-h-index-m .a-h-hojo {
        font-size: 14px;
        margin: 0; } }
  @media screen and (min-width: 560px) and (max-width: 1200px) {
    body.kasuga #pickup h2.a-h-index-m {
      margin-top: 0;
      text-align: center !important; } }
  @media (max-width: 560px) {
    body.kasuga #pickup h2.a-h-index-m {
      font-size: 18px;
      margin-top: 16px;
      text-align: center !important; } }
@media screen and (min-width: 560px) and (max-width: 1200px) {
  body.kasuga #pickup .a-btn {
    text-align: center !important; } }
@media (max-width: 560px) {
  body.kasuga #pickup .a-btn {
    text-align: center !important; } }
body.kasuga h2.a-h-index {
  font-family: dnp-shuei-mgothic-std;
  font-weight: 600;
  text-align: center;
  font-size: 16px;
  margin: 0 0 48px;
  line-height: 1.4;
  display: flex;
  flex-direction: column;
  gap: 8px;
  color: #2FAA6F; }
  @media (max-width: 560px) {
    body.kasuga h2.a-h-index {
      font-size: 14px;
      margin: 0 0 24px;
      line-height: 1.3; } }
  body.kasuga h2.a-h-index .a-h-hojo {
    font-family: dnp-shuei-mgothic-std;
    font-weight: 600;
    font-size: 32px;
    color: #111; }
    @media (max-width: 560px) {
      body.kasuga h2.a-h-index .a-h-hojo {
        font-size: 22px;
        margin: 0; } }
body.kasuga h2.a-h-index-m {
  font-weight: bold;
  margin-top: 0; }
  @media screen and (min-width: 560px) and (max-width: 1200px) {
    body.kasuga h2.a-h-index-m {
      margin-top: 0;
      text-align: center !important; } }
  @media (max-width: 560px) {
    body.kasuga h2.a-h-index-m {
      margin-top: 16px;
      font-size: 20px;
      text-align: center !important; } }
body.kasuga #message {
  background: linear-gradient(transparent 520px, #fdfae2 520px); }
  @media (max-width: 560px) {
    body.kasuga #message {
      background: linear-gradient(transparent 240px, #fdfae2 240px); } }
  body.kasuga #message .readmore {
    background: transparent; }
    body.kasuga #message .readmore:hover {
      background: #2FAA6F; }
  body.kasuga #message .more {
    display: none;
    margin-top: 40px;
    border-radius: 56px; }
    body.kasuga #message .more.open {
      display: block; }
    @media (max-width: 560px) {
      body.kasuga #message .more {
        border-radius: 24px; } }
body.kasuga #feature {
  background-image: url("../a-images/cla2/bg-pattern.svg");
  background-attachment: fixed;
  background-size: 40px; }
  body.kasuga #feature h2.a-h-index {
    transform: translateY(0);
    margin-bottom: 24px; }
  body.kasuga #feature .padding {
    padding: 64px;
    position: relative; }
    body.kasuga #feature .padding:first-child {
      border-top-left-radius: 56px;
      border-top-right-radius: 56px; }
    body.kasuga #feature .padding:last-child {
      border-bottom-left-radius: 56px;
      border-bottom-right-radius: 56px; }
    @media (max-width: 560px) {
      body.kasuga #feature .padding {
        padding: 32px 5%; } }
    @media screen and (min-width: 560px) and (max-width: 1200px) {
      body.kasuga #feature .padding .a-btn {
        text-align: center !important; } }
    @media (max-width: 560px) {
      body.kasuga #feature .padding .a-btn {
        text-align: center !important; } }
    body.kasuga #feature .padding.a-bg-gray-l {
      position: relative; }
      body.kasuga #feature .padding.a-bg-gray-l:before {
        content: '';
        display: block;
        margin: 0 auto;
        border-left: 24px solid transparent;
        border-right: 24px solid transparent;
        border-bottom: 40px solid #F5F5F5;
        position: absolute;
        left: 50%;
        top: 0;
        transform: translate(-24px, -40px); }
        @media (max-width: 560px) {
          body.kasuga #feature .padding.a-bg-gray-l:before {
            display: none; } }
  body.kasuga #feature .num {
    position: absolute;
    top: 0;
    transform: translateY(-50%);
    font-family: dnp-shuei-mgothic-std;
    font-weight: 600;
    color: #2FAA6F;
    font-size: 100px;
    line-height: 1; }
    @media screen and (min-width: 560px) and (max-width: 1200px) {
      body.kasuga #feature .num {
        transform: translateY(-24px);
        font-size: 80px; } }
    @media (max-width: 560px) {
      body.kasuga #feature .num {
        transform: translateY(-16px);
        font-size: 56px; } }
    body.kasuga #feature .num.left {
      left: 64px; }
    body.kasuga #feature .num.right {
      right: 16px; }
    body.kasuga #feature .num.center {
      display: block;
      width: 100%;
      text-align: center;
      left: 2%; }
    @media screen and (min-width: 560px) and (max-width: 1200px) {
      body.kasuga #feature .num.left, body.kasuga #feature .num.right, body.kasuga #feature .num.center {
        display: block;
        width: 100%;
        text-align: center;
        left: 2%; } }
    @media (max-width: 560px) {
      body.kasuga #feature .num.left, body.kasuga #feature .num.right, body.kasuga #feature .num.center {
        display: block;
        width: 100%;
        text-align: center;
        left: 5%; } }
body.kasuga .a-marker {
  background: linear-gradient(transparent 50%, #F7E86A 50%); }
body.kasuga h2.a-h-index-s {
  font-weight: bold;
  text-align: center;
  background: #FFF;
  line-height: 80px;
  margin: 40px 0;
  position: relative;
  border-radius: 16px; }
  body.kasuga h2.a-h-index-s:first-child {
    margin-top: 0; }
  @media (max-width: 560px) {
    body.kasuga h2.a-h-index-s {
      font-size: 18px;
      line-height: 1.5;
      padding: 16px; } }
  body.kasuga h2.a-h-index-s:before, body.kasuga h2.a-h-index-s:after {
    display: none; }
body.kasuga #team {
  background: linear-gradient(transparent 440px, #D9EEFF 440px); }
  @media (max-width: 560px) {
    body.kasuga #team {
      background: linear-gradient(transparent 300px, #D9EEFF 300px); } }
  body.kasuga #team .wrap {
    margin-left: auto;
    margin-right: auto;
    max-width: 1800px;
    width: 90%; }
  body.kasuga #team .fukidashi p {
    font-family: dnp-shuei-mgothic-std;
    font-weight: 600;
    color: #2FAA6F;
    background: #F5F5F5;
    padding: 16px;
    position: relative;
    margin-bottom: 32px;
    line-height: 1.4;
    text-align: center;
    border-radius: 8px; }
    body.kasuga #team .fukidashi p:before {
      content: "\e91d";
      font-family: 'tmpla';
      letter-spacing: 8px; }
    body.kasuga #team .fukidashi p:after {
      content: '';
      display: block;
      margin: 0 auto;
      border-top: 16px solid #F5F5F5;
      border-left: 10px solid transparent;
      border-right: 10px solid transparent;
      position: absolute;
      left: 50%;
      bottom: 0;
      transform: translate(-10px, 16px); }
body.kasuga .a-card, body.kasuga .a-card-yoko {
  border-radius: 24px; }
body.kasuga h4.a-h-index {
  color: #2FAA6F;
  font-size: 16px;
  margin: 24px 0 0; }
  body.kasuga h4.a-h-index:before {
    content: "\e90e";
    font-family: 'tmpla' !important;
    letter-spacing: 8px; }
body.kasuga .a-footer .tel {
  gap: 16px; }
  @media (max-width: 560px) {
    body.kasuga .a-footer .tel {
      gap: 8px; } }
  body.kasuga .a-footer .tel i {
    display: block;
    width: 2em;
    line-height: 2em;
    text-align: center;
    border-radius: 50%;
    background: #F7E86A;
    color: #111; }
  body.kasuga .a-footer .tel span:nth-child(1) {
    font-family: dnp-shuei-mgothic-std;
    font-weight: 600; }
  body.kasuga .a-footer .tel span:nth-child(2) {
    font-family: dnp-shuei-mgothic-std;
    font-weight: 600; }
body.kasuga .a-footer dl div {
  display: flex;
  gap: 1em;
  margin-top: 12px; }
  @media (max-width: 560px) {
    body.kasuga .a-footer dl div {
      margin-top: 8px; } }
  body.kasuga .a-footer dl div dd {
    margin: 0; }
body.kasuga .a-footer ul {
  margin: 0;
  padding: 0;
  list-style-type: none; }
  body.kasuga .a-footer ul li {
    margin-bottom: 8px; }
    body.kasuga .a-footer ul li a {
      color: inherit; }
body.kasuga .a-footer .copyright {
  display: block;
  line-height: 72px;
  background: #FFF;
  text-align: center;
  font-family: dnp-shuei-mgothic-std;
  font-weight: 600;
  color: #999; }
body.kasuga h1.a-page-h1 {
  font-size: 40px;
  line-height: 1.4;
  margin: 40px 0 0;
  color: #111;
  font-weight: 300; }
  @media (max-width: 560px) {
    body.kasuga h1.a-page-h1 {
      font-size: 28px;
      margin: 32px 0 0; } }
  body.kasuga h1.a-page-h1 .a-hojo-txt {
    font-size: 14px;
    margin: 8px 0; }
    @media (max-width: 560px) {
      body.kasuga h1.a-page-h1 .a-hojo-txt {
        font-size: 13px;
        margin: 4px 0; } }
body.kasuga .a-h1belt {
  text-align: center;
  padding: 48px 0;
  background: none;
  background-image: url(../a-images/kasuga/h1belt.jpg);
  background-position: center center;
  background-size: cover; }
  @media (max-width: 560px) {
    body.kasuga .a-h1belt {
      padding: 32px 0; } }
  body.kasuga .a-h1belt h1.a-page-h1 {
    margin: 0;
    color: #FFF; }
body.kasuga .a-padding {
  border-radius: 24px; }
body.kasuga h3.a-side-h3 i {
  background: #F7E86A;
  color: #111; }
body.kasuga .a-kakomi .a-inner {
  border-radius: 16px; }
body.kasuga .a-iframe, body.kasuga .a-gmap {
  border-radius: 24px; }
body.kasuga .a-pad-s {
  border-radius: 8px; }
body.kasuga .a-pad-m {
  border-radius: 24px; }
body.kasuga .a-pad-l {
  border-radius: 56px; }
body.kasuga .a-pad-s.a-border-top, body.kasuga .a-pad-m.a-border-top, body.kasuga .a-pad-l.a-border-top, body.kasuga .a-padding.a-border-top {
  border-top-left-radius: 0;
  border-top-right-radius: 0; }
body.kasuga .a-pad-s.a-border-btm, body.kasuga .a-pad-m.a-border-btm, body.kasuga .a-pad-l.a-border-btm, body.kasuga .a-padding.a-border-btm {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0; }
body.kasuga .staff-chips p {
  border-radius: 8px; }
body.kasuga .staff-fukidashi + .a-pad-s {
  border-top-left-radius: 0 !important; }
body.kasuga .a-clm, body.kasuga .a-clm2, body.kasuga .a-clm3, body.kasuga .a-clm4 {
  border-radius: 24px; }
body.kasuga .a-table {
  border-radius: 16px; }
  body.kasuga .a-table .a-tr:nth-of-type(1) {
    border-top-right-radius: 16px; }
  body.kasuga .a-table .a-tr:last-child {
    border-bottom-left-radius: 16px;
    border-bottom-right-radius: 16px; }
