@charset "UTF-8";
/*----------------------------------------------------------------------------------------------------------
writing-mode mixin
    Usage:
        $orientation    v (vertical)
                        h (horizontal)
		$direction      rl (right to left)
						lr (left to right)
----------------------------------------------------------------------------------------------------------*/
/*----------------------------------------------------------------------------------------------------------
writing-mode mixin
    Usage:
        $orientation    v (vertical)
                        h (horizontal)
		$direction      rl (right to left)
						lr (left to right)
----------------------------------------------------------------------------------------------------------*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline; }

html {
  line-height: 1; }

ol, ul {
  list-style: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle; }

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

a img {
  border: none; }

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block; }

/*!
 * Hamburgers
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */
.hamburger {
  padding: 0px 0px;
  display: inline-block;
  cursor: pointer;
  transition-property: opacity, filter;
  transition-duration: 0.15s;
  transition-timing-function: linear;
  font: inherit;
  color: inherit;
  text-transform: none;
  background-color: transparent;
  border: 0;
  margin: 0;
  overflow: visible; }
  .hamburger:hover {
    opacity: 1; }

.hamburger-box {
  width: 30px;
  height: 13px;
  display: inline-block;
  position: relative; }

.hamburger-inner {
  display: block;
  top: 50%;
  margin-top: -0.5px; }
  .hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
    width: 30px;
    height: 1px;
    background-color: #000;
    border-radius: 0px;
    position: absolute;
    transition-property: transform;
    transition-duration: 0.15s;
    transition-timing-function: ease; }
  .hamburger-inner::before, .hamburger-inner::after {
    content: "";
    display: block; }
  .hamburger-inner::before {
    top: -6px; }
  .hamburger-inner::after {
    bottom: -6px; }

/*
   * 3DX
   */
.hamburger--3dx .hamburger-box {
  perspective: 60px; }

.hamburger--3dx .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }
  .hamburger--3dx .hamburger-inner::before, .hamburger--3dx .hamburger-inner::after {
    transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }

.hamburger--3dx.is-active .hamburger-inner {
  background-color: transparent;
  transform: rotateY(180deg); }
  .hamburger--3dx.is-active .hamburger-inner::before {
    transform: translate3d(0, 6px, 0) rotate(45deg); }
  .hamburger--3dx.is-active .hamburger-inner::after {
    transform: translate3d(0, -6px, 0) rotate(-45deg); }

/*
   * 3DX Reverse
   */
.hamburger--3dx-r .hamburger-box {
  perspective: 60px; }

.hamburger--3dx-r .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }
  .hamburger--3dx-r .hamburger-inner::before, .hamburger--3dx-r .hamburger-inner::after {
    transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }

.hamburger--3dx-r.is-active .hamburger-inner {
  background-color: transparent;
  transform: rotateY(-180deg); }
  .hamburger--3dx-r.is-active .hamburger-inner::before {
    transform: translate3d(0, 6px, 0) rotate(45deg); }
  .hamburger--3dx-r.is-active .hamburger-inner::after {
    transform: translate3d(0, -6px, 0) rotate(-45deg); }

/*
   * 3DY
   */
.hamburger--3dy .hamburger-box {
  perspective: 60px; }

.hamburger--3dy .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }
  .hamburger--3dy .hamburger-inner::before, .hamburger--3dy .hamburger-inner::after {
    transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }

.hamburger--3dy.is-active .hamburger-inner {
  background-color: transparent;
  transform: rotateX(-180deg); }
  .hamburger--3dy.is-active .hamburger-inner::before {
    transform: translate3d(0, 6px, 0) rotate(45deg); }
  .hamburger--3dy.is-active .hamburger-inner::after {
    transform: translate3d(0, -6px, 0) rotate(-45deg); }

/*
   * 3DY Reverse
   */
.hamburger--3dy-r .hamburger-box {
  perspective: 60px; }

.hamburger--3dy-r .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }
  .hamburger--3dy-r .hamburger-inner::before, .hamburger--3dy-r .hamburger-inner::after {
    transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }

.hamburger--3dy-r.is-active .hamburger-inner {
  background-color: transparent;
  transform: rotateX(180deg); }
  .hamburger--3dy-r.is-active .hamburger-inner::before {
    transform: translate3d(0, 6px, 0) rotate(45deg); }
  .hamburger--3dy-r.is-active .hamburger-inner::after {
    transform: translate3d(0, -6px, 0) rotate(-45deg); }

/*
   * Arrow
   */
.hamburger--arrow.is-active .hamburger-inner::before {
  transform: translate3d(-6px, 0, 0) rotate(-45deg) scale(0.7, 1); }

.hamburger--arrow.is-active .hamburger-inner::after {
  transform: translate3d(-6px, 0, 0) rotate(45deg) scale(0.7, 1); }

/*
   * Arrow Right
   */
.hamburger--arrow-r.is-active .hamburger-inner::before {
  transform: translate3d(6px, 0, 0) rotate(45deg) scale(0.7, 1); }

.hamburger--arrow-r.is-active .hamburger-inner::after {
  transform: translate3d(6px, 0, 0) rotate(-45deg) scale(0.7, 1); }

/*
   * Arrow Alt
   */
.hamburger--arrowalt .hamburger-inner::before {
  transition: top 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1); }

.hamburger--arrowalt .hamburger-inner::after {
  transition: bottom 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1); }

.hamburger--arrowalt.is-active .hamburger-inner::before {
  top: 0;
  transform: translate3d(-6px, -7.5px, 0) rotate(-45deg) scale(0.7, 1);
  transition: top 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22); }

.hamburger--arrowalt.is-active .hamburger-inner::after {
  bottom: 0;
  transform: translate3d(-6px, 7.5px, 0) rotate(45deg) scale(0.7, 1);
  transition: bottom 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22); }

/*
   * Arrow Alt Right
   */
.hamburger--arrowalt-r .hamburger-inner::before {
  transition: top 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1); }

.hamburger--arrowalt-r .hamburger-inner::after {
  transition: bottom 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1); }

.hamburger--arrowalt-r.is-active .hamburger-inner::before {
  top: 0;
  transform: translate3d(6px, -7.5px, 0) rotate(45deg) scale(0.7, 1);
  transition: top 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22); }

.hamburger--arrowalt-r.is-active .hamburger-inner::after {
  bottom: 0;
  transform: translate3d(6px, 7.5px, 0) rotate(-45deg) scale(0.7, 1);
  transition: bottom 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22); }

/*
   * Boring
   */
.hamburger--boring .hamburger-inner, .hamburger--boring .hamburger-inner::before, .hamburger--boring .hamburger-inner::after {
  transition-property: none; }

.hamburger--boring.is-active .hamburger-inner {
  transform: rotate(45deg); }
  .hamburger--boring.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0; }
  .hamburger--boring.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(-90deg); }

/*
   * Collapse
   */
.hamburger--collapse .hamburger-inner {
  top: auto;
  bottom: 0;
  transition-duration: 0.13s;
  transition-delay: 0.13s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--collapse .hamburger-inner::after {
    top: -12px;
    transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0.1s linear; }
  .hamburger--collapse .hamburger-inner::before {
    transition: top 0.12s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--collapse.is-active .hamburger-inner {
  transform: translate3d(0, -6px, 0) rotate(-45deg);
  transition-delay: 0.22s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--collapse.is-active .hamburger-inner::after {
    top: 0;
    opacity: 0;
    transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0.1s 0.22s linear; }
  .hamburger--collapse.is-active .hamburger-inner::before {
    top: 0;
    transform: rotate(-90deg);
    transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
   * Collapse Reverse
   */
.hamburger--collapse-r .hamburger-inner {
  top: auto;
  bottom: 0;
  transition-duration: 0.13s;
  transition-delay: 0.13s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--collapse-r .hamburger-inner::after {
    top: -12px;
    transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0.1s linear; }
  .hamburger--collapse-r .hamburger-inner::before {
    transition: top 0.12s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--collapse-r.is-active .hamburger-inner {
  transform: translate3d(0, -6px, 0) rotate(45deg);
  transition-delay: 0.22s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--collapse-r.is-active .hamburger-inner::after {
    top: 0;
    opacity: 0;
    transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0.1s 0.22s linear; }
  .hamburger--collapse-r.is-active .hamburger-inner::before {
    top: 0;
    transform: rotate(90deg);
    transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
   * Elastic
   */
.hamburger--elastic .hamburger-inner {
  top: 0.5px;
  transition-duration: 0.275s;
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55); }
  .hamburger--elastic .hamburger-inner::before {
    top: 6px;
    transition: opacity 0.125s 0.275s ease; }
  .hamburger--elastic .hamburger-inner::after {
    top: 12px;
    transition: transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55); }

.hamburger--elastic.is-active .hamburger-inner {
  transform: translate3d(0, 6px, 0) rotate(135deg);
  transition-delay: 0.075s; }
  .hamburger--elastic.is-active .hamburger-inner::before {
    transition-delay: 0s;
    opacity: 0; }
  .hamburger--elastic.is-active .hamburger-inner::after {
    transform: translate3d(0, -12px, 0) rotate(-270deg);
    transition-delay: 0.075s; }

/*
   * Elastic Reverse
   */
.hamburger--elastic-r .hamburger-inner {
  top: 0.5px;
  transition-duration: 0.275s;
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55); }
  .hamburger--elastic-r .hamburger-inner::before {
    top: 6px;
    transition: opacity 0.125s 0.275s ease; }
  .hamburger--elastic-r .hamburger-inner::after {
    top: 12px;
    transition: transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55); }

.hamburger--elastic-r.is-active .hamburger-inner {
  transform: translate3d(0, 6px, 0) rotate(-135deg);
  transition-delay: 0.075s; }
  .hamburger--elastic-r.is-active .hamburger-inner::before {
    transition-delay: 0s;
    opacity: 0; }
  .hamburger--elastic-r.is-active .hamburger-inner::after {
    transform: translate3d(0, -12px, 0) rotate(270deg);
    transition-delay: 0.075s; }

/*
   * Emphatic
   */
.hamburger--emphatic {
  overflow: hidden; }
  .hamburger--emphatic .hamburger-inner {
    transition: background-color 0.125s 0.175s ease-in; }
    .hamburger--emphatic .hamburger-inner::before {
      left: 0;
      transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, left 0.125s 0.175s ease-in; }
    .hamburger--emphatic .hamburger-inner::after {
      top: 6px;
      right: 0;
      transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, right 0.125s 0.175s ease-in; }
  .hamburger--emphatic.is-active .hamburger-inner {
    transition-delay: 0s;
    transition-timing-function: ease-out;
    background-color: transparent; }
    .hamburger--emphatic.is-active .hamburger-inner::before {
      left: -60px;
      top: -60px;
      transform: translate3d(60px, 60px, 0) rotate(45deg);
      transition: left 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1); }
    .hamburger--emphatic.is-active .hamburger-inner::after {
      right: -60px;
      top: -60px;
      transform: translate3d(-60px, 60px, 0) rotate(-45deg);
      transition: right 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1); }

/*
   * Emphatic Reverse
   */
.hamburger--emphatic-r {
  overflow: hidden; }
  .hamburger--emphatic-r .hamburger-inner {
    transition: background-color 0.125s 0.175s ease-in; }
    .hamburger--emphatic-r .hamburger-inner::before {
      left: 0;
      transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, left 0.125s 0.175s ease-in; }
    .hamburger--emphatic-r .hamburger-inner::after {
      top: 6px;
      right: 0;
      transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, right 0.125s 0.175s ease-in; }
  .hamburger--emphatic-r.is-active .hamburger-inner {
    transition-delay: 0s;
    transition-timing-function: ease-out;
    background-color: transparent; }
    .hamburger--emphatic-r.is-active .hamburger-inner::before {
      left: -60px;
      top: 60px;
      transform: translate3d(60px, -60px, 0) rotate(-45deg);
      transition: left 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1); }
    .hamburger--emphatic-r.is-active .hamburger-inner::after {
      right: -60px;
      top: 60px;
      transform: translate3d(-60px, -60px, 0) rotate(45deg);
      transition: right 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1); }

/*
   * Slider
   */
.hamburger--slider .hamburger-inner {
  top: 0.5px; }
  .hamburger--slider .hamburger-inner::before {
    top: 6px;
    transition-property: transform, opacity;
    transition-timing-function: ease;
    transition-duration: 0.15s; }
  .hamburger--slider .hamburger-inner::after {
    top: 12px; }

.hamburger--slider.is-active .hamburger-inner {
  transform: translate3d(0, 6px, 0) rotate(45deg); }
  .hamburger--slider.is-active .hamburger-inner::before {
    transform: rotate(-45deg) translate3d(-4.28571px, -5px, 0);
    opacity: 0; }
  .hamburger--slider.is-active .hamburger-inner::after {
    transform: translate3d(0, -12px, 0) rotate(-90deg); }

/*
   * Slider Reverse
   */
.hamburger--slider-r .hamburger-inner {
  top: 0.5px; }
  .hamburger--slider-r .hamburger-inner::before {
    top: 6px;
    transition-property: transform, opacity;
    transition-timing-function: ease;
    transition-duration: 0.15s; }
  .hamburger--slider-r .hamburger-inner::after {
    top: 12px; }

.hamburger--slider-r.is-active .hamburger-inner {
  transform: translate3d(0, 6px, 0) rotate(-45deg); }
  .hamburger--slider-r.is-active .hamburger-inner::before {
    transform: rotate(45deg) translate3d(4.28571px, -5px, 0);
    opacity: 0; }
  .hamburger--slider-r.is-active .hamburger-inner::after {
    transform: translate3d(0, -12px, 0) rotate(90deg); }

/*
   * Spring
   */
.hamburger--spring .hamburger-inner {
  top: 0.5px;
  transition: background-color 0s 0.13s linear; }
  .hamburger--spring .hamburger-inner::before {
    top: 6px;
    transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--spring .hamburger-inner::after {
    top: 12px;
    transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--spring.is-active .hamburger-inner {
  transition-delay: 0.22s;
  background-color: transparent; }
  .hamburger--spring.is-active .hamburger-inner::before {
    top: 0;
    transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
    transform: translate3d(0, 6px, 0) rotate(45deg); }
  .hamburger--spring.is-active .hamburger-inner::after {
    top: 0;
    transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
    transform: translate3d(0, 6px, 0) rotate(-45deg); }

/*
   * Spring Reverse
   */
.hamburger--spring-r .hamburger-inner {
  top: auto;
  bottom: 0;
  transition-duration: 0.13s;
  transition-delay: 0s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--spring-r .hamburger-inner::after {
    top: -12px;
    transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0s linear; }
  .hamburger--spring-r .hamburger-inner::before {
    transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--spring-r.is-active .hamburger-inner {
  transform: translate3d(0, -6px, 0) rotate(-45deg);
  transition-delay: 0.22s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--spring-r.is-active .hamburger-inner::after {
    top: 0;
    opacity: 0;
    transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0s 0.22s linear; }
  .hamburger--spring-r.is-active .hamburger-inner::before {
    top: 0;
    transform: rotate(90deg);
    transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
   * Stand
   */
.hamburger--stand .hamburger-inner {
  transition: transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19), background-color 0s 0.075s linear; }
  .hamburger--stand .hamburger-inner::before {
    transition: top 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--stand .hamburger-inner::after {
    transition: bottom 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--stand.is-active .hamburger-inner {
  transform: rotate(90deg);
  background-color: transparent;
  transition: transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s 0.15s linear; }
  .hamburger--stand.is-active .hamburger-inner::before {
    top: 0;
    transform: rotate(-45deg);
    transition: top 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--stand.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(45deg);
    transition: bottom 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
   * Stand Reverse
   */
.hamburger--stand-r .hamburger-inner {
  transition: transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19), background-color 0s 0.075s linear; }
  .hamburger--stand-r .hamburger-inner::before {
    transition: top 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--stand-r .hamburger-inner::after {
    transition: bottom 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--stand-r.is-active .hamburger-inner {
  transform: rotate(-90deg);
  background-color: transparent;
  transition: transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s 0.15s linear; }
  .hamburger--stand-r.is-active .hamburger-inner::before {
    top: 0;
    transform: rotate(-45deg);
    transition: top 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--stand-r.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(45deg);
    transition: bottom 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
   * Spin
   */
.hamburger--spin .hamburger-inner {
  transition-duration: 0.22s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--spin .hamburger-inner::before {
    transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in; }
  .hamburger--spin .hamburger-inner::after {
    transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--spin.is-active .hamburger-inner {
  transform: rotate(225deg);
  transition-delay: 0.12s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--spin.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0;
    transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out; }
  .hamburger--spin.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(-90deg);
    transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
   * Spin Reverse
   */
.hamburger--spin-r .hamburger-inner {
  transition-duration: 0.22s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--spin-r .hamburger-inner::before {
    transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in; }
  .hamburger--spin-r .hamburger-inner::after {
    transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--spin-r.is-active .hamburger-inner {
  transform: rotate(-225deg);
  transition-delay: 0.12s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--spin-r.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0;
    transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out; }
  .hamburger--spin-r.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(90deg);
    transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
   * Squeeze
   */
.hamburger--squeeze .hamburger-inner {
  transition-duration: 0.075s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--squeeze .hamburger-inner::before {
    transition: top 0.075s 0.12s ease, opacity 0.075s ease; }
  .hamburger--squeeze .hamburger-inner::after {
    transition: bottom 0.075s 0.12s ease, transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--squeeze.is-active .hamburger-inner {
  transform: rotate(45deg);
  transition-delay: 0.12s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--squeeze.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0;
    transition: top 0.075s ease, opacity 0.075s 0.12s ease; }
  .hamburger--squeeze.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(-90deg);
    transition: bottom 0.075s ease, transform 0.075s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
   * Vortex
   */
.hamburger--vortex .hamburger-inner {
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1); }
  .hamburger--vortex .hamburger-inner::before, .hamburger--vortex .hamburger-inner::after {
    transition-duration: 0s;
    transition-delay: 0.1s;
    transition-timing-function: linear; }
  .hamburger--vortex .hamburger-inner::before {
    transition-property: top, opacity; }
  .hamburger--vortex .hamburger-inner::after {
    transition-property: bottom, transform; }

.hamburger--vortex.is-active .hamburger-inner {
  transform: rotate(765deg);
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1); }
  .hamburger--vortex.is-active .hamburger-inner::before, .hamburger--vortex.is-active .hamburger-inner::after {
    transition-delay: 0s; }
  .hamburger--vortex.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0; }
  .hamburger--vortex.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(90deg); }

/*
   * Vortex Reverse
   */
.hamburger--vortex-r .hamburger-inner {
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1); }
  .hamburger--vortex-r .hamburger-inner::before, .hamburger--vortex-r .hamburger-inner::after {
    transition-duration: 0s;
    transition-delay: 0.1s;
    transition-timing-function: linear; }
  .hamburger--vortex-r .hamburger-inner::before {
    transition-property: top, opacity; }
  .hamburger--vortex-r .hamburger-inner::after {
    transition-property: bottom, transform; }

.hamburger--vortex-r.is-active .hamburger-inner {
  transform: rotate(-765deg);
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1); }
  .hamburger--vortex-r.is-active .hamburger-inner::before, .hamburger--vortex-r.is-active .hamburger-inner::after {
    transition-delay: 0s; }
  .hamburger--vortex-r.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0; }
  .hamburger--vortex-r.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(-90deg); }

/* argument */
/* site style */
/* [ opacity ]
-------------------------------------------------*/
/* [ display style ]
-------------------------------------------------*/
/* [ background-image ]
-------------------------------------------------*/
/* [ writing-mode ]
-------------------------------------------------*/
/* [ illustrator & photoshop letter spacing ]
-------------------------------------------------*/
/* [ easy breakpoint ]
-------------------------------------------------*/
/* [ easy transform ]
-------------------------------------------------*/
/* [ writing-mode ]
-------------------------------------------------*/
#contact {
  /* dislay */
  /* contact */ }
  #contact .errMsg {
    margin-left: 1em;
    padding-bottom: 1px;
    display: block;
    line-height: 1.4;
    text-indent: -.9em; }
  #contact .formError {
    padding-bottom: 13px;
    display: block; }
  #contact .fixed {
    padding-bottom: 0px; }
  #contact .formError .formErrorClose {
    border: solid #252525 2px;
    display: block;
    width: 16px;
    height: 16px;
    position: absolute;
    top: -4px;
    right: -4px;
    color: #efefef;
    background: #333;
    font-weight: bold;
    text-align: center;
    line-height: middle;
    cursor: pointer;
    z-index: 2;
    -webkit-border-radius: 9px 9px 9px 9px;
    -moz-border-radius: 9px 9px 9px 9px;
    -ms-border-radius: 9px 9px 9px 9px;
    -o-border-radius: 9px 9px 9px 9px;
    border-radius: 9px 9px 9px 9px;
    -webkit-box-shadow: 1px -1px 3px #888;
    -moz-box-shadow: 1px -1px 3px #888;
    -ms-box-shadow: 1px -1px 3px #888;
    -o-box-shadow: 1px -1px 3px #888;
    box-shadow: 1px -1px 3px #888; }
  #contact .formError .formErrorClose:hover {
    background: #666; }
  #contact .fixed .formErrorClose {
    display: none; }
  #contact .formError .formErrorContent {
    padding: 6px 10px;
    width: 180px;
    position: relative;
    color: #fff;
    background: #252525;
    font-family: "Lucida Sans Unicode", "Lucida Grande", Arial, Helvetica, "ヒラギノ丸ゴ Pro W4", HiraMaruPro-W4, "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, Osaka, sans-serif;
    font-size: 11px;
    margin: 0 0;
    z-index: 1;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    -o-border-radius: 3px;
    border-radius: 3px;
    -webkit-box-shadow: 0px 0px 6px #888;
    -moz-box-shadow: 0px 0px 6px #888;
    -ms-box-shadow: 0px 0px 6px #888;
    -o-box-shadow: 0px 0px 6px #888;
    box-shadow: 0px 0px 6px #888; }
  #contact .fixed .formErrorContent {
    margin-top: .5em;
    background: #f60;
    margin: 0 0 30px 0;
    -webkit-border-radius: none;
    -moz-border-radius: none;
    -ms-border-radius: none;
    -o-border-radius: none;
    border-radius: none;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    -ms-box-shadow: none;
    -o-box-shadow: none;
    box-shadow: none; }
  #contact .fadeOut {
    opacity: .2;
    filter: alpha(opacity=20); }
  #contact .formError .formErrorArrow {
    width: 15px;
    height: 15px;
    position: absolute;
    bottom: 0;
    left: 20px;
    margin: 0 0 30px 0;
    z-index: 0; }
  #contact .fixed .formErrorArrow {
    display: none; }
  #contact .formError .formErrorArrowBottom {
    margin: -6px;
    top: 0; }
  #contact .fixed .formErrorArrowBottom {
    display: none; }
  #contact .formError .formErrorArrow div {
    margin: 0 auto;
    display: block;
    height: 1px;
    background: #252525;
    line-height: 0px;
    font-size: 0px;
    -webkit-box-shadow: 0px 2px 3px #888;
    -moz-box-shadow: 0px 2px 3px #888;
    -ms-box-shadow: 0px 2px 3px #888;
    -o-box-shadow: 0px 2px 3px #888;
    box-shadow: 0px 2px 3px #888; }
  #contact .formError .formErrorArrowBottom div {
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    -ms-box-shadow: none;
    -o-box-shadow: none;
    box-shadow: none; }
  #contact .formError .formErrorArrow .line10 {
    width: 19px; }
  #contact .formError .formErrorArrow .line9 {
    width: 17px; }
  #contact .formError .formErrorArrow .line8 {
    width: 15px; }
  #contact .formError .formErrorArrow .line7 {
    width: 13px; }
  #contact .formError .formErrorArrow .line6 {
    width: 11px; }
  #contact .formError .formErrorArrow .line5 {
    width: 9px; }
  #contact .formError .formErrorArrow .line4 {
    width: 7px; }
  #contact .formError .formErrorArrow .line3 {
    width: 5px; }
  #contact .formError .formErrorArrow .line2 {
    width: 3px; }
  #contact .formError .formErrorArrow .line1 {
    width: 1px; }
  #contact .hid_url {
    display: none; }
  #contact form p.test {
    position: relative;
    color: #C1C0BC; }
  #contact form p.test label {
    position: absolute;
    top: 3px;
    left: 10px;
    font-weight: normal; }
  #contact form p.test br {
    display: none; }
  #contact .formBlock {
    max-width: 890px;
    margin: auto; }
  #contact .txtContact {
    text-align: left;
    font-size: 16px;
    margin: 70px auto 50px; }
  #contact .txtContact01 {
    font-size: 14px;
    margin-bottom: 50px; }
  #contact .tableContact em,
  #contact .txtContact em {
    color: #fb2a2a;
    font-style: normal; }
  #contact .tableContact {
    border-top: #8f8f8f solid 1px;
    border-bottom: #8f8f8f solid 1px;
    width: 100%;
    margin: 30px 0 50px;
    font-size: 15px;
    text-align: left; }
    #contact .tableContact td,
    #contact .tableContact th {
      border-bottom: #8f8f8f solid 1px;
      padding: 20px;
      vertical-align: top; }
    #contact .tableContact th {
      background: #ededed;
      width: 210px;
      font-weight: normal; }
    #contact .tableContact td {
      position: relative; }
    #contact .tableContact input[type="text"],
    #contact .tableContact input[type="email"],
    #contact .tableContact input[type="number"],
    #contact .tableContact input[type="url"] {
      width: 300px;
      height: 23px;
      color: #1a1a1a; }
    #contact .tableContact input[type="text"],
    #contact .tableContact textarea {
      border: #8f8f8f solid 1px; }
    #contact .tableContact .size01 input[type="text"] {
      width: 160px; }
    #contact .tableContact .size02 input[type="text"],
    #contact .tableContact textarea {
      width: 100%; }
    #contact .tableContact textarea {
      height: 150px; }
  #contact .stepImg {
    margin: 30px 0; }
    #contact .stepImg img {
      display: block;
      width: 100%; }
  #contact .stepImg {
    margin: 30px 0; }
  #contact .tabForm {
    margin: 50px auto 0; }
  #contact .tabForm ul {
    font-size: 0;
    letter-spacing: 0;
    margin: 0;
    border-bottom: 2px solid #000; }
  #contact .tabForm ul li {
    display: inline-block;
    width: 50%;
    padding: 0; }
  #contact .tabForm ul li input {
    position: absolute;
    opacity: 0; }
  #contact .tabForm ul li label {
    display: block;
    line-height: 60px;
    text-align: center;
    font-size: 20px; }
  #contact .tabForm ul li input:checked ~ label {
    background: #000;
    color: #fff; }
  #contact .tabForm ul li label:hover {
    opacity: 1;
    background: #555;
    color: #fff; }
  #contact .tableContact input[type="text"],
  #contact .tableContact input[type="url"],
  #contact .tableContact input[type="email"],
  #contact .tableContact textarea {
    padding: 10px;
    height: auto;
    border: 1px solid #aaa; }
  #contact .tableContact select {
    -webkit-appearance: none;
    border: 1px solid #aaa;
    padding: 10px; }
  #contact .tableContact .pRadio {
    display: inline-block;
    vertical-align: middle; }
  #contact .tableContact .pRadio input {
    position: absolute;
    opacity: 0; }
  #contact .tableContact .pRadio label {
    display: inline-block;
    margin: 0 5px 0 0;
    border: 1px solid #aaa;
    padding: 10px 20px; }
  #contact .tableContact .pRadio input:checked ~ label {
    background: #555;
    border-color: #555;
    color: #fff; }
  #contact button {
    height: 60px;
    margin: 20px auto;
    padding: 0 100px;
    background: #eee; }

@media only screen and (max-width: 767px) {
  .pc {
    display: none !important; } }

@media only screen and (min-width: 768px) {
  .sp {
    display: none !important; } }

html {
  font-size: 62.5%;
  font-family: "游ゴシック体", "游ゴシック", "YuGothic", "Yu Gothic", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  color: #101010; }

* {
  font-size: 14px;
  font-size: 1.4rem;
  box-sizing: border-box; }

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

a {
  color: inherit;
  text-decoration: none; }

.inner {
  max-width: 1000px;
  width: calc(100% - 40px);
  margin: 0 auto; }
  @media only screen and (max-width: 767px) {
    .inner {
      width: calc(100% - 50px); } }
  .inner--large {
    max-width: 1080px; }
  .inner--medium {
    max-width: 1040px; }
  .inner--small {
    max-width: 880px; }

.flex-row {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between; }

.footer {
  background: #42BCC6;
  padding: 100px 0 0;
  overflow: hidden; }
  @media only screen and (max-width: 767px) {
    .footer {
      padding: 0; } }
  .footer .footer-box {
    display: flex;
    align-items: flex-start;
    justify-content: space-between; }
    @media only screen and (min-width: 768px) {
      .footer .footer-box {
        padding-left: 120px; } }
  @media only screen and (min-width: 768px) and (max-width: 1279px) {
    .footer .footer-box {
      padding-left: calc((100% - 1040px)/2); } }
  @media only screen and (min-width: 768px) and (max-width: 1090px) {
    .footer .footer-box {
      padding-left: 25px; } }
    @media only screen and (max-width: 767px) {
      .footer .footer-box {
        flex-wrap: wrap; } }
  @media only screen and (min-width: 768px) {
    .footer .footer-logo {
      display: flex;
      align-items: center;
      justify-content: space-between;
      width: 322px; } }
  @media only screen and (max-width: 767px) {
    .footer .footer-logo {
      display: block;
      width: 165px;
      margin: auto; } }
  .footer .footer-logo span {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 26px;
    letter-spacing: 0;
    font-weight: 500;
    font-family: "Noto Sans JP", sans-serif;
    color: white; }
    @media only screen and (max-width: 767px) {
      .footer .footer-logo span {
        margin-top: 5px;
        display: block;
        text-align: center; } }
  .footer .inner {
    width: 1090px;
    max-width: 100%;
    padding: 0 25px;
    margin: auto; }
  .footer .footer-flex {
    display: flex;
    flex-wrap: wrap; }
  @media only screen and (min-width: 768px) {
    .footer .footer-info {
      width: 340px; } }
  @media only screen and (max-width: 767px) {
    .footer .footer-info {
      width: 100%;
      order: 2;
      padding: 50px 25px 0; } }
  @media only screen and (min-width: 768px) {
    .footer .footer-map {
      width: calc(100% - 420px);
      height: 383px;
      border-radius: 10px 0 0 10px;
      overflow: hidden; } }
  @media only screen and (max-width: 767px) {
    .footer .footer-map {
      width: 100%;
      height: 180px;
      order: 1; } }
  .footer .footer-map iframe {
    width: 100%;
    height: 100%; }
  .footer .footer-address {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 24px;
    letter-spacing: 0;
    font-weight: 500;
    color: white;
    margin-top: 40px;
    font-family: "Noto Sans JP", sans-serif; }
    @media only screen and (max-width: 767px) {
      .footer .footer-address {
        margin-top: 16px;
        text-align: center;
        font-size: 12px;
        font-size: 1.2rem;
        line-height: 20px; } }
  .footer .footer-residents {
    display: block;
    background: white;
    margin-top: 36px;
    border: 1px solid white;
    border-radius: 4px;
    overflow: hidden;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 27px;
    letter-spacing: .04em;
    font-weight: 500;
    font-family: "Noto Sans JP", sans-serif;
    padding: 18px;
    padding-left: 85px;
    position: relative;
    box-shadow: 0px 3px 6px rgba(22, 151, 162, 0.16);
    transition: background .3s, color .3s; }
    @media only screen and (max-width: 767px) {
      .footer .footer-residents {
        margin-top: 39px;
        padding: 17px;
        padding-left: 80px;
        font-size: 16px;
        font-size: 1.6rem;
        line-height: 24px;
        letter-spacing: .12em; } }
    .footer .footer-residents span {
      position: relative;
      z-index: 1; }
    .footer .footer-residents .ico {
      position: absolute;
      z-index: 1;
      top: 0;
      bottom: 0;
      left: 0;
      width: 65px;
      background: #42BCC6;
      background-position: center;
      background-repeat: no-repeat;
      background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='19.734' height='21.816' viewBox='0 0 19.734 21.816'%3E%3Cg id='Icon_feather-home' data-name='Icon feather-home' transform='translate(0.5 0.5)'%3E%3Cpath id='Path_13048' data-name='Path 13048' d='M4.5,10.286,13.867,3l9.367,7.286V21.734a2.082,2.082,0,0,1-2.082,2.082H6.582A2.082,2.082,0,0,1,4.5,21.734Z' transform='translate(-4.5 -3)' fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='1'/%3E%3Cpath id='Path_13049' data-name='Path 13049' d='M13.5,28.408V18h6.245V28.408' transform='translate(-7.255 -7.592)' fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='1'/%3E%3C/g%3E%3C/svg%3E%0A"); }
      @media only screen and (max-width: 767px) {
        .footer .footer-residents .ico {
          width: 58px;
          background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='13.457' height='14.842' viewBox='0 0 13.457 14.842'%3E%3Cg id='Icon_feather-home' data-name='Icon feather-home' transform='translate(-4 -2.5)'%3E%3Cpath id='Path_13048' data-name='Path 13048' d='M4.5,7.844,10.729,3l6.229,4.844v7.613a1.384,1.384,0,0,1-1.384,1.384H5.884A1.384,1.384,0,0,1,4.5,15.457Z' fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='1'/%3E%3Cpath id='Path_13049' data-name='Path 13049' d='M13.5,24.921V18h4.152v6.921' transform='translate(-4.848 -8.079)' fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='1'/%3E%3C/g%3E%3C/svg%3E%0A"); } }
    .footer .footer-residents:before {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      z-index: 0;
      background: #42BCC6;
      width: 100%;
      height: 100%;
      transition: transform 0.5s cubic-bezier(0.8, 0, 0.2, 1) 0s;
      transform: scale(0, 1);
      transform-origin: left top; }
    .footer .footer-residents:after {
      content: '';
      width: 17px;
      height: 14px;
      position: absolute;
      z-index: 1;
      top: 0;
      bottom: 0;
      right: 21px;
      margin: auto;
      background-position: center;
      background-repeat: no-repeat;
      background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='16.095' height='13.096' viewBox='0 0 16.095 13.096'%3E%3Cdefs%3E%3CclipPath id='clip-path'%3E%3Crect width='16.095' height='13.096' fill='none'/%3E%3C/clipPath%3E%3C/defs%3E%3Cg id='icn_外部' clip-path='url(%23clip-path)'%3E%3Cg id='icn_外部-2' data-name='icn_外部' transform='translate(-0.096)'%3E%3Cpath id='長方形_1' data-name='長方形 1' d='M0,10V0H1.444V8.572H13V10Z' transform='translate(0.096 3.096)' fill='%23767676'/%3E%3Cpath id='_' data-name='□' d='M1.619,1.619V8.1h9.714V1.619H1.619M0,0H12.952V9.714H0Z' transform='translate(3.238)' fill='%23767676'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A"); }
      @media only screen and (max-width: 767px) {
        .footer .footer-residents:after {
          position: relative;
          right: 0;
          display: inline-block;
          width: 11px;
          height: 9px;
          margin-left: 10px;
          background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='10' height='8' viewBox='0 0 10 8'%3E%3Cdefs%3E%3CclipPath id='clip-path'%3E%3Crect width='10' height='8' fill='none'/%3E%3C/clipPath%3E%3C/defs%3E%3Cg id='icn_外部' clip-path='url(%23clip-path)'%3E%3Cg id='icn_外部-2' data-name='icn_外部'%3E%3Cpath id='長方形_1' data-name='長方形 1' d='M0,6V0H.889V5.143H8V6Z' transform='translate(0 2)' fill='%23767676'/%3E%3Cg id='_' data-name='□' transform='translate(2)' fill='none' stroke='%23767676' stroke-linejoin='round' stroke-width='1'%3E%3Crect width='8' height='6' stroke='none'/%3E%3Crect x='0.5' y='0.5' width='7' height='5' fill='none'/%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A"); } }
    @media only screen and (min-width: 1024px) {
      .footer .footer-residents:hover {
        color: white; }
        .footer .footer-residents:hover:before {
          transform: scale(1, 1); }
        .footer .footer-residents:hover:after {
          filter: brightness(0) invert(1); } }
  .footer .footer-youtube {
    margin-top: 25px;
    display: block;
    border-radius: 5px;
    overflow: hidden;
    isolation: isolate; }
    @media only screen and (min-width: 768px) {
      .footer .footer-youtube {
        transition: .3s opacity; }
        .footer .footer-youtube:hover {
          opacity: 0.7; } }
    @media only screen and (max-width: 767px) {
      .footer .footer-youtube {
        margin-top: 15px; } }
  .footer .footer-nav {
    width: calc(100% - 220px);
    padding-right: 20px;
    display: flex;
    flex-wrap: wrap;
    margin-top: 78px; }
    @media only screen and (max-width: 767px) {
      .footer .footer-nav {
        width: 100%;
        padding: 0;
        order: 3;
        margin-top: 40px; } }
    .footer .footer-nav .nav {
      width: 26%;
      font-size: 15px;
      font-size: 1.5rem;
      line-height: 24px;
      letter-spacing: .12em;
      font-weight: 500;
      font-family: "Noto Sans JP", sans-serif;
      color: white;
      padding-left: 24px;
      margin-bottom: 6px;
      position: relative; }
      @media only screen and (min-width: 768px) {
        .footer .footer-nav .nav:nth-child(4n+1) {
          width: 21.3%; }
        .footer .footer-nav .nav:nth-child(4n+2) {
          width: 27.4%; }
        .footer .footer-nav .nav:nth-child(4n+3) {
          width: 25.4%; }
        .footer .footer-nav .nav:nth-child(4n) {
          width: 25.9%; } }
      @media only screen and (max-width: 767px) {
        .footer .footer-nav .nav {
          width: 51%;
          padding-left: 26px;
          margin-bottom: 8px; }
          .footer .footer-nav .nav:nth-child(2n) {
            width: 49%; }
          .footer .footer-nav .nav--mt01sp {
            margin-top: -24px; } }
      .footer .footer-nav .nav:before {
        content: "";
        width: 14px;
        height: 14px;
        position: absolute;
        left: 0;
        top: 5px;
        border: 1px solid #C8D6DE;
        border-radius: 10px;
        background-position: center;
        background-repeat: no-repeat;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='14' height='14' viewBox='0 0 14 14'%3E%3Cdefs%3E%3Cstyle%3E.a%7Bclip-path:url(%23a);%7D.b%7Bfill:%23fff;%7D%3C/style%3E%3CclipPath id='a'%3E%3Crect width='14' height='14'/%3E%3C/clipPath%3E%3C/defs%3E%3Cg class='a'%3E%3Cg transform='translate(5.667 4.333)'%3E%3Cpath class='b' d='M1495.994,5406.987l4,2.661-4,2.672Z' transform='translate(-1495.994 -5406.987)'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
        transition: background .3s, border .3s; }
        @media only screen and (max-width: 767px) {
          .footer .footer-nav .nav:before {
            width: 16px;
            height: 16px;
            top: 3px; } }
      @media only screen and (min-width: 124px) {
        .footer .footer-nav .nav:hover:before {
          border-color: white;
          background-color: white;
          background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='14' height='14' viewBox='0 0 14 14'%3E%3Cdefs%3E%3Cstyle%3E.a%7Bclip-path:url(%23a);%7D.b%7Bfill:%2342BCC6;%7D%3C/style%3E%3CclipPath id='a'%3E%3Crect width='14' height='14'/%3E%3C/clipPath%3E%3C/defs%3E%3Cg class='a'%3E%3Cg transform='translate(5.667 4.333)'%3E%3Cpath class='b' d='M1495.994,5406.987l4,2.661-4,2.672Z' transform='translate(-1495.994 -5406.987)'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E"); } }
  .footer .footer-accel {
    width: 220px;
    height: 100%;
    margin-top: 59px; }
    @media only screen and (max-width: 767px) {
      .footer .footer-accel {
        margin-top: 30px;
        width: 100%;
        order: 5; }
        .footer .footer-accel img {
          width: 100%; } }
  .footer .footer-des {
    margin-top: 48px;
    width: 100%;
    font-size: 10px;
    font-size: 1rem;
    line-height: 22px;
    letter-spacing: 0;
    color: white; }
    @media only screen and (max-width: 767px) {
      .footer .footer-des {
        order: 4;
        line-height: 20px;
        margin-top: 29px;
        margin-bottom: 7px; } }
  .footer .footer-copyright {
    margin-top: 50px;
    padding: 22px 0;
    background: #1893AA; }
    @media only screen and (max-width: 767px) {
      .footer .footer-copyright {
        margin-top: 29px;
        padding: 26px 0 12px; } }
    .footer .footer-copyright .footer-flex {
      justify-content: space-between; }
    .footer .footer-copyright .footer-nav2 {
      display: flex;
      flex-wrap: wrap; }
      .footer .footer-copyright .footer-nav2 .nav {
        font-family: "Raleway", sans-serif;
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 16px;
        letter-spacing: .08em;
        font-weight: 500;
        color: white;
        margin-right: 30px;
        padding-left: 24px;
        position: relative;
        transition: opacity .3s; }
        @media only screen and (max-width: 767px) {
          .footer .footer-copyright .footer-nav2 .nav {
            width: 100%;
            margin-right: 11px;
            margin-bottom: 10px;
            font-size: 12px;
            font-size: 1.2rem; }
            .footer .footer-copyright .footer-nav2 .nav:last-child {
              margin-right: 0; } }
        .footer .footer-copyright .footer-nav2 .nav:before {
          content: "";
          width: 16px;
          height: 16px;
          position: absolute;
          left: 0;
          top: calc(50% - 10px);
          border: 1px solid #C8D6DE;
          border-radius: 10px;
          background-position: center;
          background-repeat: no-repeat;
          background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5.333' viewBox='0 0 4 5.333'%3E%3Cpath id='arw' d='M1495.994,5406.987l4,2.661-4,2.672Z' transform='translate(-1495.994 -5406.987)' fill='%23fff'/%3E%3C/svg%3E%0A");
          transition: background .3s, border .3s; }
          @media only screen and (max-width: 767px) {
            .footer .footer-copyright .footer-nav2 .nav:before {
              width: 14px;
              height: 14px; } }
        @media only screen and (max-width: 767px) {
          .footer .footer-copyright .footer-nav2 .nav--pdf {
            width: auto; } }
        .footer .footer-copyright .footer-nav2 .nav--pdf:before {
          border: 0;
          border-radius: 0;
          background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='14' height='14' viewBox='0 0 14 14'%3E%3Cdefs%3E%3CclipPath id='clip-path'%3E%3Crect id='mask' width='14' height='14' transform='translate(0 -0.338)' fill='%23fff'/%3E%3C/clipPath%3E%3C/defs%3E%3Cg id='icn' transform='translate(0 0.338)' clip-path='url(%23clip-path)'%3E%3Cpath id='Path_12679' data-name='Path 12679' d='M92.857,0V0h-6.6a.721.721,0,0,0-.719.719v3.2h.959V.959H91.9V4.014h3.055V12.7H86.493V9.737h-.959v3.205a.721.721,0,0,0,.719.719h8.94a.721.721,0,0,0,.719-.719V3.055l0,0Zm0,3.053v-1.7l1.7,1.7Z' transform='translate(-83.484)' fill='%23fff'/%3E%3Cpath id='Path_12680' data-name='Path 12680' d='M145.723,256.465h-.28v1.368h.286c.388,0,.61-.249.61-.684s-.219-.684-.617-.684' transform='translate(-141.957 -250.318)' fill='%23fff'/%3E%3Cpath id='Path_12681' data-name='Path 12681' d='M7.611,193.732H.24a.24.24,0,0,0-.24.24v3.9a.24.24,0,0,0,.24.24H7.611a.24.24,0,0,0,.24-.24v-3.9a.24.24,0,0,0-.24-.24M1.8,196.274H1.458v.835H.923v-2.391h.885a.73.73,0,0,1,.76.775.717.717,0,0,1-.769.781m2.85.528a1.1,1.1,0,0,1-.819.323H2.885v-2.41h.94a1.111,1.111,0,0,1,1.141,1.2,1.241,1.241,0,0,1-.316.882m2.277-1.62h-1v.559h.865v.455H5.929v.916h-.6v-2.4h1.6Z' transform='translate(0 -189.089)' fill='%23fff'/%3E%3Cpath id='Path_12682' data-name='Path 12682' d='M60.686,254.906h-.239v.595h.242c.191,0,.344-.074.344-.3s-.153-.3-.346-.3' transform='translate(-58.998 -248.796)' fill='%23fff'/%3E%3C/g%3E%3C/svg%3E%0A"); }
          @media only screen and (max-width: 767px) {
            .footer .footer-copyright .footer-nav2 .nav--pdf:before {
              width: 16px;
              height: 16px; } }
        @media only screen and (min-width: 1024px) {
          .footer .footer-copyright .footer-nav2 .nav:hover {
            opacity: 0.7; } }
  .footer .copyright {
    font-family: "Raleway", sans-serif;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 14px;
    letter-spacing: .08em;
    font-weight: 500;
    color: white; }
    @media only screen and (max-width: 767px) {
      .footer .copyright {
        order: 6;
        width: 100%;
        margin-top: 31px;
        text-align: center; } }

#to-top {
  background-color: white;
  border: 1px solid #42BCC6;
  border-radius: 50%;
  opacity: 0;
  pointer-events: none;
  position: fixed;
  bottom: 30px;
  right: 30px;
  transition: all 0.3s;
  height: 70px;
  width: 70px;
  z-index: 100; }
  @media only screen and (min-width: 768px) {
    #to-top {
      cursor: pointer;
      -webkit-transition: 0.3s;
      -moz-transition: 0.3s;
      -o-transition: 0.3s;
      transition: 0.3s; }
      #to-top:hover {
        opacity: .7; } }
  @media only screen and (max-width: 767px) {
    #to-top {
      bottom: 40px;
      right: 20px;
      height: 60px;
      width: 60px; }
      #to-top.has-banner {
        bottom: 135px; } }
  #to-top:before {
    content: "";
    margin: 0 auto;
    position: absolute;
    left: 0;
    right: 0;
    top: 15px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 5px 6px 5px;
    border-color: transparent transparent #42BCC6 transparent; }
    @media only screen and (max-width: 767px) {
      #to-top:before {
        top: 13px;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 0 4px 6px 4px;
        border-color: transparent transparent #42BCC6 transparent; } }
  #to-top span {
    color: #42BCC6;
    font-size: 20px;
    font-size: 2rem;
    letter-spacing: 0.05em;
    font-family: "Raleway", sans-serif;
    font-weight: bold;
    margin: 0 auto;
    position: absolute;
    left: 0;
    right: 0;
    top: 30px;
    text-align: center; }
    @media only screen and (max-width: 767px) {
      #to-top span {
        font-size: 16px;
        font-size: 1.6rem;
        top: 28px; } }
  #to-top.active {
    opacity: 1;
    pointer-events: auto; }

.contact-footer {
  padding: 122px 0 120px; }
  @media only screen and (max-width: 767px) {
    .contact-footer {
      padding: 57px 0 51px; } }
  .contact-footer .contact-footer-info {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-right: 15px; }
    @media only screen and (max-width: 767px) {
      .contact-footer .contact-footer-info {
        display: block; } }
  .contact-footer .contact-footer-title__en {
    display: block;
    font-family: "Raleway", sans-serif;
    font-size: 50px;
    font-size: 5rem;
    line-height: 59px;
    letter-spacing: .1em;
    font-weight: bold; }
    @media only screen and (max-width: 767px) {
      .contact-footer .contact-footer-title__en {
        text-align: center;
        font-size: 36px;
        font-size: 3.6rem;
        line-height: 42px; } }
    .contact-footer .contact-footer-title__en span {
      color: #42BCC6; }
  .contact-footer .contact-footer-title__ja {
    margin-top: 9px;
    display: block;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 26px;
    letter-spacing: .12em;
    font-weight: bold; }
    @media only screen and (max-width: 767px) {
      .contact-footer .contact-footer-title__ja {
        text-align: center;
        margin-top: 7px;
        font-size: 16px;
        font-size: 1.6rem;
        line-height: 24px; } }
  .contact-footer .contact-footer-phone {
    display: flex;
    align-items: center; }
    @media only screen and (max-width: 767px) {
      .contact-footer .contact-footer-phone {
        display: block;
        margin-top: 30px;
        text-align: center; } }
    .contact-footer .contact-footer-phone__num {
      margin-right: 26px;
      font-family: "Lato", sans-serif;
      font-size: 48px;
      font-size: 4.8rem;
      line-height: 57px;
      letter-spacing: .04em;
      font-weight: bold;
      color: #42BCC6;
      padding-left: 37px;
      background-position: center left;
      background-repeat: no-repeat;
      background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='37.001' viewBox='0 0 22 37.001'%3E%3Cpath id='icn_tel' d='M1816.29,8911.949c-2.74.983-4.3,5.57-4.28,9.588a34.316,34.316,0,0,0,2.234,11.749,36.44,36.44,0,0,0,6.226,10.319c2.695,3.06,6.967,5.556,9.707,4.575a12.461,12.461,0,0,0,3.832-2.533s-.69-1.8-.841-2.2l-2.313-6.03c-.172-.45-1.9-.45-2.844-.175a8.154,8.154,0,0,0-2.7,1.811c-.874.263-1.422-.31-2.637-1.2-1.493-1.1-2.831-3.808-3.838-6.216-.859-2.458-1.668-5.353-1.278-7.129.318-1.442.347-2.225,1.189-2.575a8.469,8.469,0,0,0,3.263-.326c.9-.386,2.215-1.473,2.043-1.925l-2.313-6.034c-.151-.392-.841-2.19-.841-2.19A12.754,12.754,0,0,0,1816.29,8911.949Z' transform='translate(-1812.01 -8911.396)' fill='%2342bcc6'/%3E%3C/svg%3E%0A"); }
      @media only screen and (max-width: 767px) {
        .contact-footer .contact-footer-phone__num {
          display: table;
          margin: auto;
          padding-left: 24px;
          font-size: 36px;
          font-size: 3.6rem;
          line-height: 44px;
          background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14.92' height='25.091' viewBox='0 0 14.92 25.091'%3E%3Cpath id='icn_tel' d='M1814.913,8911.771c-1.859.666-2.914,3.777-2.9,6.5a23.263,23.263,0,0,0,1.515,7.967,24.713,24.713,0,0,0,4.222,7c1.827,2.074,4.725,3.766,6.583,3.1a8.5,8.5,0,0,0,2.6-1.717s-.468-1.221-.571-1.49l-1.569-4.088c-.116-.307-1.29-.307-1.929-.119a5.539,5.539,0,0,0-1.829,1.227c-.593.18-.965-.209-1.788-.814-1.013-.746-1.92-2.582-2.6-4.215-.583-1.668-1.131-3.631-.867-4.834.216-.979.236-1.51.807-1.746a5.757,5.757,0,0,0,2.213-.223c.612-.262,1.5-1,1.386-1.3l-1.569-4.092c-.1-.266-.57-1.486-.57-1.486A8.675,8.675,0,0,0,1814.913,8911.771Z' transform='translate(-1812.01 -8911.397)' fill='%2342bcc6'/%3E%3C/svg%3E%0A"); } }
    .contact-footer .contact-footer-phone__time {
      font-family: "Noto Sans JP", sans-serif;
      font-size: 15px;
      font-size: 1.5rem;
      line-height: 21px;
      letter-spacing: .05em;
      font-weight: 500; }
      @media only screen and (max-width: 767px) {
        .contact-footer .contact-footer-phone__time {
          margin-top: 4px; } }
      .contact-footer .contact-footer-phone__time .lato {
        font-family: "Lato", sans-serif;
        font-weight: bold; }
  .contact-footer .contact-footer-list {
    margin-top: 80px; }
    @media only screen and (max-width: 767px) {
      .contact-footer .contact-footer-list {
        margin-top: 40px; } }
    .contact-footer .contact-footer-list .contact {
      background: #F8F8F8;
      border-radius: 5px;
      padding: 40px;
      padding-left: 100px;
      display: flex; }
      @media only screen and (max-width: 767px) {
        .contact-footer .contact-footer-list .contact {
          display: block;
          padding: 34px 30px 30px; } }
      .contact-footer .contact-footer-list .contact + .contact {
        margin-top: 20px; }
        @media only screen and (max-width: 767px) {
          .contact-footer .contact-footer-list .contact + .contact {
            margin-top: 10px; } }
      .contact-footer .contact-footer-list .contact .contact-title {
        width: 320px;
        display: flex;
        align-items: center; }
        @media only screen and (max-width: 767px) {
          .contact-footer .contact-footer-list .contact .contact-title {
            display: block;
            width: 100%; } }
        .contact-footer .contact-footer-list .contact .contact-title .contact-title-hd__ja {
          display: block;
          font-family: "Noto Sans JP", sans-serif;
          font-size: 20px;
          font-size: 2rem;
          line-height: 30px;
          font-weight: 500; }
          @media only screen and (max-width: 767px) {
            .contact-footer .contact-footer-list .contact .contact-title .contact-title-hd__ja {
              font-size: 18px;
              font-size: 1.8rem;
              line-height: 26px; } }
        .contact-footer .contact-footer-list .contact .contact-title .contact-title-hd__en {
          display: block;
          margin-top: 16px;
          font-family: "Raleway", sans-serif;
          font-size: 14px;
          font-size: 1.4rem;
          line-height: 16px;
          letter-spacing: .1em;
          font-weight: bold;
          color: #42BCC6; }
          @media only screen and (max-width: 767px) {
            .contact-footer .contact-footer-list .contact .contact-title .contact-title-hd__en {
              margin-top: 9px;
              font-size: 12px;
              font-size: 1.2rem;
              line-height: 14px; } }
      .contact-footer .contact-footer-list .contact .contact-cnt {
        width: calc(100% - 320px);
        border-left: 1px solid #C8D6DE;
        padding: 5px 0 9px 80px; }
        @media only screen and (max-width: 767px) {
          .contact-footer .contact-footer-list .contact .contact-cnt {
            border: 0;
            width: 100%;
            border-top: 1px solid #C8D6DE;
            margin-top: 18px;
            padding: 15px 0 0; } }
      .contact-footer .contact-footer-list .contact .contact-des {
        font-size: 15px;
        font-size: 1.5rem;
        line-height: 28px;
        font-weight: 500; }
      .contact-footer .contact-footer-list .contact .btn {
        margin-top: 20px; }
        @media only screen and (max-width: 767px) {
          .contact-footer .contact-footer-list .contact .btn {
            margin-top: 23px; }
            .contact-footer .contact-footer-list .contact .btn span {
              font-size: 14px;
              font-size: 1.4rem;
              padding: 13px 0; }
              .contact-footer .contact-footer-list .contact .btn span:before {
                width: 18px;
                height: 18px;
                right: 15px;
                margin-top: -9px; }
            .contact-footer .contact-footer-list .contact .btn.btn-03 span:after {
              right: 21px;
              border-width: 4px 0 4px 5px;
              margin-top: -4px; }
            .contact-footer .contact-footer-list .contact .btn.btn-03--blank span {
              padding-right: 25px; }
              .contact-footer .contact-footer-list .contact .btn.btn-03--blank span:after {
                width: 9px;
                height: 7px;
                right: 20px;
                margin-top: -4px;
                background-size: 8px auto;
                background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='8' height='6.001' viewBox='0 0 8 6.001'%3E%3Cdefs%3E%3CclipPath id='clip-path'%3E%3Crect width='8' height='6.001' fill='none'/%3E%3C/clipPath%3E%3C/defs%3E%3Cg id='icn_外部' clip-path='url(%23clip-path)'%3E%3Cg id='icn_外部-2' data-name='icn_外部'%3E%3Cpath id='長方形_1' data-name='長方形 1' d='M0,4.5H0V0H.8V3.7H6.4v.8Z' transform='translate(0 1.5)' fill='%2342bcc6'/%3E%3Cg id='_' data-name='□' transform='translate(1.6)' fill='none' stroke='%2342bcc6' stroke-linejoin='round' stroke-width='1'%3E%3Crect width='6.4' height='4.5' stroke='none'/%3E%3Crect x='0.5' y='0.5' width='5.4' height='3.5' fill='none'/%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A"); } }

.contact-footer-banner {
  width: 100%; }

.header {
  position: fixed;
  z-index: 1000;
  left: 0;
  right: 0;
  top: 20px;
  transition: background 0.3s, padding 0.3s, top 0.3s;
  padding: 30px 150px; }
  @media only screen and (max-width: 767px) {
    .header {
      top: 0;
      padding: 10px;
      height: 80px;
      background: transparent; } }
  .header .header-logo {
    position: absolute;
    left: 0;
    top: 0;
    width: 150px;
    background: white;
    border-radius: 0 0 40px 0;
    padding: 20px 30px 25px;
    transition: opacity 0.3s, width 0.3s, padding 0.3s; }
    .header .header-logo img {
      width: 100%; }
    @media only screen and (min-width: 1024px) {
      .header .header-logo:hover {
        opacity: 0.7; } }
    @media only screen and (max-width: 767px) {
      .header .header-logo {
        width: 85px;
        border-radius: 0 0 30px 0;
        padding: 15px 19px; } }
  .header .header-nav {
    width: 100%;
    display: flex;
    justify-content: flex-end; }
  .header .hamberger {
    position: absolute;
    z-index: 9999;
    width: 60px;
    height: 100px;
    top: 0;
    right: 50px;
    transition: height 0.3s, opacity 0.3s, right 0.3s;
    cursor: pointer; }
    @media only screen and (max-width: 767px) {
      .header .hamberger {
        width: 40px;
        right: 25px;
        height: 80px;
        top: 16px;
        right: 42px; } }
    .header .hamberger .hamberger-ico {
      position: absolute;
      top: calc(50% - 18px);
      width: 100%;
      height: 10px; }
      .header .hamberger .hamberger-ico:before, .header .hamberger .hamberger-ico:after {
        content: "";
        position: absolute;
        top: calc(50% - 3px);
        right: 0;
        width: 100%;
        height: 2px;
        background: white;
        transition: background 0.3s, top 0.3s, transform 0.3s; }
      .header .hamberger .hamberger-ico:after {
        top: calc(50% + 5px); }
    .header .hamberger:before, .header .hamberger:after {
      content: "MENU";
      position: absolute;
      left: 0;
      right: 0;
      top: calc(50% + 3px);
      font-family: "Raleway", sans-serif;
      text-align: center;
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 16px;
      letter-spacing: 0.16em;
      font-weight: 600;
      color: white;
      transition: color 0.3s, opacity 0.3s; }
      @media only screen and (max-width: 767px) {
        .header .hamberger:before, .header .hamberger:after {
          font-size: 12px;
          font-size: 1.2rem; } }
    .header .hamberger:after {
      content: "CLOSE";
      opacity: 0; }
      @media only screen and (max-width: 767px) {
        .header .hamberger:after {
          width: 46px;
          left: -3px; } }
    @media only screen and (min-width: 1024px) {
      .header .hamberger:hover {
        opacity: 0.7; } }
    .header .hamberger.is-active:before {
      opacity: 0; }
    .header .hamberger.is-active:after {
      opacity: 1; }
    .header .hamberger.is-active .hamberger-ico:before, .header .hamberger.is-active .hamberger-ico:after {
      top: calc(50% - 1px);
      transform: rotate(10deg); }
    .header .hamberger.is-active .hamberger-ico:after {
      transform: rotate(-10deg); }
  .header.fixed, .header.is-active {
    background: white; }
    @media only screen and (min-width: 768px) {
      .header.fixed, .header.is-active {
        top: 0;
        padding: 25px 140px; }
        .header.fixed .header-logo, .header.is-active .header-logo {
          width: 120px;
          padding: 10px 30px; }
        .header.fixed .header-nav .nav-btn, .header.is-active .header-nav .nav-btn {
          padding-top: 9px;
          padding-bottom: 9px;
          border: 1px solid #42bcc6; }
        .header.fixed .hamberger, .header.is-active .hamberger {
          height: 100%;
          right: 40px; }
          .header.fixed .hamberger .hamberger-ico:before, .header.fixed .hamberger .hamberger-ico:after, .header.is-active .hamberger .hamberger-ico:before, .header.is-active .hamberger .hamberger-ico:after {
            background: #101010; }
          .header.fixed .hamberger:before, .header.fixed .hamberger:after, .header.is-active .hamberger:before, .header.is-active .hamberger:after {
            color: #101010; } }
    @media only screen and (max-width: 767px) {
      .header.fixed .header-logo, .header.is-active .header-logo {
        padding: 16px 17px 15px 26px; }
      .header.fixed .hamberger, .header.is-active .hamberger {
        top: 0;
        right: 25px; }
        .header.fixed .hamberger .hamberger-ico:before, .header.fixed .hamberger .hamberger-ico:after, .header.is-active .hamberger .hamberger-ico:before, .header.is-active .hamberger .hamberger-ico:after {
          background: #101010; }
        .header.fixed .hamberger:before, .header.fixed .hamberger:after, .header.is-active .hamberger:before, .header.is-active .hamberger:after {
          color: #101010; } }
  .header.is-active {
    background: transparent; }
    .header.is-active .header-logo,
    .header.is-active .header-nav {
      opacity: 0;
      visibility: hidden; }

.nav-btn {
  border-radius: 4px;
  background: #fff;
  display: block;
  min-width: 160px;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 20px;
  letter-spacing: 0.04em;
  font-weight: 500;
  font-family: "Noto Sans JP", sans-serif;
  margin-right: 10px;
  padding: 9px 15px;
  padding-left: 51px;
  position: relative;
  isolation: isolate;
  border: 1px solid white;
  transition: opacity 0.3s; }
  @media only screen and (max-width: 767px) {
    .nav-btn {
      font-size: 16px;
      font-size: 1.6rem;
      letter-spacing: 0.12em;
      margin: 0;
      padding: 19px 15px;
      padding-left: 78px; } }
  .nav-btn:last-child {
    margin-right: 0; }
  .nav-btn span {
    position: relative;
    z-index: 1; }
  .nav-btn:before {
    content: "";
    position: absolute;
    top: -1px;
    bottom: -1px;
    left: 0;
    right: 100%;
    background: #42bcc6;
    transition: right 0.3s;
    border-radius: 4px; }
  .nav-btn .ico {
    position: absolute;
    top: -1px;
    left: -1px;
    bottom: -1px;
    width: 40px;
    background: #42bcc6;
    background-position: center;
    background-repeat: no-repeat;
    border-radius: 4px 0 0 4px; }
    @media only screen and (max-width: 767px) {
      .nav-btn .ico {
        width: 60px; } }
  .nav-btn--contact .ico {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='15.008' height='13.006' viewBox='0 0 15.008 13.006'%3E%3Cpath id='icn_mail' d='M2193.967,1085.839a2.4,2.4,0,0,0-.43-1.005,1.938,1.938,0,0,0-.142-.173,1.983,1.983,0,0,0-1.472-.674H2181.08a1.987,1.987,0,0,0-1.472.674,2.024,2.024,0,0,0-.141.173,2.376,2.376,0,0,0-.428,1.005,2.433,2.433,0,0,0-.041.447v8.409a2.491,2.491,0,0,0,.172.912,2.278,2.278,0,0,0,.438.712c.047.051.093.1.144.145a1.965,1.965,0,0,0,1.328.528h10.844a1.954,1.954,0,0,0,1.328-.53,1.916,1.916,0,0,0,.143-.144,2.325,2.325,0,0,0,.44-.712v0a2.482,2.482,0,0,0,.17-.911v-8.409A2.617,2.617,0,0,0,2193.967,1085.839Zm-13.605-.347a.961.961,0,0,1,.719-.329h10.844a.957.957,0,0,1,.718.329,1.022,1.022,0,0,1,.091.118l-5.684,5.469a.775.775,0,0,1-1.1,0l-5.681-5.471A.812.812,0,0,1,2180.362,1085.493Zm-.3,9.2v-7.87l4.113,3.961-4.111,3.957A.341.341,0,0,1,2180.063,1094.695Zm11.861,1.122H2181.08a.932.932,0,0,1-.5-.147l4.337-4.174.4.389a1.676,1.676,0,0,0,2.368,0l.405-.389,4.335,4.174A.934.934,0,0,1,2191.924,1095.817Zm1.017-1.122a.383.383,0,0,1,0,.049l-4.111-3.955,4.113-3.962Z' transform='translate(-2178.999 -1083.988)' fill='%23fff'/%3E%3C/svg%3E%0A"); }
  .nav-btn--home .ico {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='13.457' height='14.841' viewBox='0 0 13.457 14.841'%3E%3Cg id='Icon_feather-home' data-name='Icon feather-home' transform='translate(-4 -2.5)'%3E%3Cpath id='Path_13048' data-name='Path 13048' d='M4.5,7.844,10.729,3l6.229,4.844v7.613a1.384,1.384,0,0,1-1.384,1.384H5.884A1.384,1.384,0,0,1,4.5,15.457Z' fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='1'/%3E%3Cpath id='Path_13049' data-name='Path 13049' d='M13.5,24.921V18h4.152v6.921' transform='translate(-4.848 -8.079)' fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='1'/%3E%3C/g%3E%3C/svg%3E%0A"); }
  .nav-btn--blank:after {
    content: "";
    display: inline-block;
    vertical-align: top;
    position: relative;
    z-index: 1;
    width: 11px;
    height: 9px;
    margin-top: 4px;
    margin-left: 10px;
    background-position: center;
    background-repeat: no-repeat;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='10' height='8' viewBox='0 0 10 8'%3E%3Cdefs%3E%3CclipPath id='clip-path'%3E%3Crect width='10' height='8' fill='none'/%3E%3C/clipPath%3E%3C/defs%3E%3Cg id='icn_外部' clip-path='url(%23clip-path)'%3E%3Cg id='icn_外部-2' data-name='icn_外部'%3E%3Cpath id='長方形_1' data-name='長方形 1' d='M0,6V0H.889V5.143H8V6Z' transform='translate(0 2)' fill='%23767676'/%3E%3Cg id='_' data-name='□' transform='translate(2)' fill='none' stroke='%23767676' stroke-linejoin='round' stroke-width='1'%3E%3Crect width='8' height='6' stroke='none'/%3E%3Crect x='0.5' y='0.5' width='7' height='5' fill='none'/%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A"); }
  .nav-btn--calculator .ico {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='11.127' height='14.682' viewBox='0 0 11.127 14.682'%3E%3Cdefs%3E%3CclipPath id='clip-path'%3E%3Crect id='Rectangle_3707' data-name='Rectangle 3707' width='11.127' height='14.682' fill='%23fff'/%3E%3C/clipPath%3E%3C/defs%3E%3Cg id='icn' clip-path='url(%23clip-path)'%3E%3Cpath id='Path_14069' data-name='Path 14069' d='M9.113,2.377A1.021,1.021,0,1,0,10.5,1.426V.368a.368.368,0,0,0-.737,0V1.426a1.018,1.018,0,0,0-.652.951' transform='translate(-7.251 0)' fill='%23fff'/%3E%3Cpath id='Path_14070' data-name='Path 14070' d='M22.233,2.377a1.021,1.021,0,1,0,1.389-.951V.368a.368.368,0,0,0-.737,0V1.426a1.018,1.018,0,0,0-.652.951' transform='translate(-17.69 0)' fill='%23fff'/%3E%3Cpath id='Path_14071' data-name='Path 14071' d='M35.352,2.377a1.021,1.021,0,1,0,1.389-.951V.368a.368.368,0,0,0-.737,0V1.426a1.018,1.018,0,0,0-.652.951' transform='translate(-28.129 0)' fill='%23fff'/%3E%3Cpath id='Path_14072' data-name='Path 14072' d='M31.007,2.245h1.126V1.56c0-.021,0-.041.006-.062H31c0,.021.006.041.006.062Z' transform='translate(-24.667 -1.192)' fill='%23fff'/%3E%3Cpath id='Path_14073' data-name='Path 14073' d='M17.888,2.245h1.126V1.56c0-.021,0-.041.006-.062H17.882c0,.021.006.041.006.062Z' transform='translate(-14.228 -1.192)' fill='%23fff'/%3E%3Cpath id='Path_14074' data-name='Path 14074' d='M9.287,1.5H9.015c0,.021.006.041.006.062v.684h.266A1.094,1.094,0,0,1,10.38,3.338v10.7a1.094,1.094,0,0,1-1.093,1.093H1.84A1.094,1.094,0,0,1,.747,14.034V3.338A1.094,1.094,0,0,1,1.84,2.245h.266V1.56c0-.021,0-.041.006-.062H1.84A1.842,1.842,0,0,0,0,3.338v10.7a1.842,1.842,0,0,0,1.84,1.84H9.287a1.842,1.842,0,0,0,1.84-1.84V3.338A1.842,1.842,0,0,0,9.287,1.5' transform='translate(0 -1.192)' fill='%23fff'/%3E%3Crect id='Rectangle_3704' data-name='Rectangle 3704' width='8.025' height='0.747' transform='translate(1.551 5.255)' fill='%23fff'/%3E%3Crect id='Rectangle_3705' data-name='Rectangle 3705' width='8.025' height='0.747' transform='translate(1.551 7.971)' fill='%23fff'/%3E%3Crect id='Rectangle_3706' data-name='Rectangle 3706' width='8.025' height='0.747' transform='translate(1.551 10.687)' fill='%23fff'/%3E%3C/g%3E%3C/svg%3E%0A"); }
    @media only screen and (max-width: 767px) {
      .nav-btn--calculator .ico {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='16' height='20' viewBox='0 0 16 20'%3E%3Cdefs%3E%3Cstyle%3E.a%7Bfill:%23fff;%7D.b%7Bclip-path:url(%23a);%7D.c%7Bclip-path:url(%23b);%7D%3C/style%3E%3CclipPath id='a'%3E%3Crect width='16' height='20'/%3E%3C/clipPath%3E%3CclipPath id='b'%3E%3Crect class='a' width='14.081' height='18.58'/%3E%3C/clipPath%3E%3C/defs%3E%3Cg class='b'%3E%3Cg class='c' transform='translate(0.96 0.71)'%3E%3Cpath class='a' d='M9.113,3.007a1.292,1.292,0,1,0,1.758-1.2V.466a.466.466,0,1,0-.932,0V1.8A1.288,1.288,0,0,0,9.113,3' transform='translate(-6.757)'/%3E%3Cpath class='a' d='M22.233,3.007a1.292,1.292,0,1,0,1.758-1.2V.466a.467.467,0,1,0-.933,0V1.8A1.288,1.288,0,0,0,22.233,3' transform='translate(-16.484)'/%3E%3Cpath class='a' d='M35.352,3.007A1.292,1.292,0,1,0,37.11,1.8V.466a.466.466,0,1,0-.932,0V1.8A1.288,1.288,0,0,0,35.352,3' transform='translate(-26.211)'/%3E%3Cpath class='a' d='M31.009,2.443h1.425V1.577c0-.027.006-.052.008-.079H31c0,.027.008.052.008.079Z' transform='translate(-22.985 -1.111)'/%3E%3Cpath class='a' d='M17.89,2.443h1.425V1.577c0-.027.006-.052.008-.079H17.882c0,.027.008.052.008.079Z' transform='translate(-13.258 -1.111)'/%3E%3Cpath class='a' d='M11.752,1.5h-.344c0,.026.008.052.008.079v.866h.336a1.385,1.385,0,0,1,1.383,1.384V17.362a1.385,1.385,0,0,1-1.383,1.383H2.328A1.385,1.385,0,0,1,.945,17.362V3.826A1.385,1.385,0,0,1,2.328,2.443h.337V1.577c0-.027.006-.052.008-.079H2.328A2.331,2.331,0,0,0,0,3.826V17.362A2.331,2.331,0,0,0,2.328,19.69h9.424a2.331,2.331,0,0,0,2.328-2.328V3.826A2.331,2.331,0,0,0,11.752,1.5' transform='translate(0 -1.111)'/%3E%3Crect class='a' width='10.155' height='0.945' transform='translate(1.963 6.651)'/%3E%3Crect class='a' width='10.155' height='0.945' transform='translate(1.963 10.087)'/%3E%3Crect class='a' width='10.155' height='0.945' transform='translate(1.963 13.524)'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
        background-position: 20px 21px; } }
  @media only screen and (min-width: 1024px) {
    .nav-btn:hover {
      color: white; }
      .nav-btn:hover:before {
        right: -1px; }
      .nav-btn:hover:after {
        filter: brightness(0) invert(1); } }

.header-nav-main {
  position: fixed;
  z-index: 999;
  top: 0;
  right: 0;
  bottom: 0;
  background: white;
  padding: 100px 80px 78px;
  padding-left: 190px;
  background-position: center left;
  background-repeat: no-repeat;
  background-size: 148px auto;
  background-image: url(../images/common/logo-nav.png);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 0;
  visibility: hidden;
  transition: width 0.3s; }

@media only screen and (min-width: 768px) and (max-width: 1200px) {
  .header-nav-main {
    padding-left: 80px;
    padding-right: 80px; } }
  @media only screen and (max-width: 767px) {
    .header-nav-main {
      background-position: center top;
      background-size: 375px auto;
      background-image: url(../images/common/logo-nav_sp.png);
      padding: 109px 26px 50px;
      display: block;
      height: 100%;
      overflow: auto; }
      .header-nav-main div {
        width: 100%; } }
  .header-nav-main .nav-main,
  .header-nav-main .nav-copyright {
    opacity: 0;
    transition: opacity 0.3s; }
  .header-nav-main.is-active {
    width: 100%;
    visibility: visible; }
    .header-nav-main.is-active .nav-main,
    .header-nav-main.is-active .nav-copyright {
      opacity: 1;
      transition-delay: 0.3s; }
  .header-nav-main .nav-main {
    width: 1035px;
    max-width: 100%;
    display: flex; }
    @media only screen and (max-width: 767px) {
      .header-nav-main .nav-main {
        width: 100%;
        display: block; } }
    .header-nav-main .nav-main + .nav-main {
      margin-top: 80px; }
      @media only screen and (max-width: 767px) {
        .header-nav-main .nav-main + .nav-main {
          margin-top: 49px; } }
    .header-nav-main .nav-main .nav-main-title {
      width: 250px;
      padding-right: 30px; }

@media only screen and (min-width: 768px) and (max-width: 1200px) {
  .header-nav-main .nav-main .nav-main-title {
    width: 220px; } }
      @media only screen and (max-width: 767px) {
        .header-nav-main .nav-main .nav-main-title {
          width: 100%;
          padding: 0;
          display: flex;
          align-items: center; } }
      .header-nav-main .nav-main .nav-main-title__en {
        font-family: "Raleway", sans-serif;
        font-size: 32px;
        font-size: 3.2rem;
        line-height: 37px;
        letter-spacing: 0.1em;
        font-weight: bold; }
        @media only screen and (max-width: 767px) {
          .header-nav-main .nav-main .nav-main-title__en {
            margin-right: 12px; } }
        .header-nav-main .nav-main .nav-main-title__en span {
          color: #42bcc6; }
      .header-nav-main .nav-main .nav-main-title__ja {
        margin-top: 4px;
        font-size: 12px;
        font-size: 1.2rem;
        line-height: 17px;
        letter-spacing: 0.12em;
        font-weight: bold; }
        @media only screen and (max-width: 767px) {
          .header-nav-main .nav-main .nav-main-title__ja {
            margin-top: 0; } }
    .header-nav-main .nav-main .nav-service-list,
    .header-nav-main .nav-main .nav-company-list {
      width: calc(100% - 250px); }

@media only screen and (min-width: 768px) and (max-width: 1200px) {
  .header-nav-main .nav-main .nav-service-list,
  .header-nav-main .nav-main .nav-company-list {
    width: calc(100% - 220px); } }
      @media only screen and (max-width: 767px) {
        .header-nav-main .nav-main .nav-service-list,
        .header-nav-main .nav-main .nav-company-list {
          width: 100%; } }
    .header-nav-main .nav-main .nav-service-list {
      display: flex;
      flex-wrap: wrap;
      margin-top: -19px; }
      @media only screen and (max-width: 767px) {
        .header-nav-main .nav-main .nav-service-list {
          margin-top: -1px; } }
      .header-nav-main .nav-main .nav-service-list .nav {
        width: calc(50% - 20px);
        margin-right: 40px;
        border-bottom: 1px solid #c8d6de;
        font-size: 0;
        line-height: 0;
        padding: 20px 0 17px; }
        @media only screen and (min-width: 768px) {
          .header-nav-main .nav-main .nav-service-list .nav {
            position: relative; }
            .header-nav-main .nav-main .nav-service-list .nav:before {
              content: "";
              width: 0;
              height: 1px;
              background-color: #42bcc6;
              position: absolute;
              bottom: -1px;
              left: 0;
              transition: 0.3s width; }
            .header-nav-main .nav-main .nav-service-list .nav:hover:before {
              width: 100%; } }
        @media only screen and (max-width: 767px) {
          .header-nav-main .nav-main .nav-service-list .nav {
            width: 100%;
            margin: 0;
            padding: 26px 0 15px; } }
        .header-nav-main .nav-main .nav-service-list .nav:nth-child(2n) {
          margin-right: 0; }
        .header-nav-main .nav-main .nav-service-list .nav__ja {
          display: inline-block;
          vertical-align: middle;
          font-size: 22px;
          font-size: 2.2rem;
          line-height: 32px;
          letter-spacing: 0.12em;
          font-weight: 500;
          font-family: "Noto Sans JP", sans-serif;
          margin-right: 18px; }
          @media only screen and (max-width: 767px) {
            .header-nav-main .nav-main .nav-service-list .nav__ja {
              font-size: 18px;
              font-size: 1.8rem;
              line-height: 26px;
              margin-right: 14px; } }
        .header-nav-main .nav-main .nav-service-list .nav__en {
          display: inline-block;
          vertical-align: middle;
          font-family: "Raleway", sans-serif;
          font-size: 12px;
          font-size: 1.2rem;
          line-height: 32px;
          letter-spacing: 0.1em;
          font-weight: bold;
          color: #42bcc6;
          position: relative;
          top: 1px; }
          @media only screen and (max-width: 767px) {
            .header-nav-main .nav-main .nav-service-list .nav__en {
              line-height: 26px; } }
    .header-nav-main .nav-main .nav-company-list {
      display: flex;
      flex-wrap: wrap; }
      @media only screen and (max-width: 767px) {
        .header-nav-main .nav-main .nav-company-list {
          margin-top: 23px; } }
      .header-nav-main .nav-main .nav-company-list .nav {
        width: 25%;
        font-size: 16px;
        font-size: 1.6rem;
        line-height: 24px;
        letter-spacing: 0.12em;
        font-weight: 500;
        font-family: "Noto Sans JP", sans-serif;
        padding-left: 24px;
        margin-bottom: 14px;
        position: relative;
        transition: 0.3s color; }
        @media only screen and (min-width: 768px) {
          .header-nav-main .nav-main .nav-company-list .nav:nth-child(4n - 2) {
            width: 30.7%; }
          .header-nav-main .nav-main .nav-company-list .nav:nth-child(4n - 1) {
            width: 22.7%; }
          .header-nav-main .nav-main .nav-company-list .nav:nth-child(4n) {
            width: 21.5%; } }
        @media only screen and (max-width: 767px) {
          .header-nav-main .nav-main .nav-company-list .nav {
            width: 50%;
            font-size: 15px;
            font-size: 1.5rem;
            line-height: 24px;
            padding-left: 25px;
            margin-bottom: 8px; } }
        .header-nav-main .nav-main .nav-company-list .nav:before {
          content: "";
          width: 16px;
          height: 16px;
          position: absolute;
          left: -2px;
          top: 4px;
          border: 1px solid #c8d6de;
          border-radius: 10px;
          background-position: center;
          background-repeat: no-repeat;
          background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='16' height='16' viewBox='0 0 16 16'%3E%3Cdefs%3E%3Cstyle%3E.a%7Bclip-path:url(%23a);%7D.b%7Bfill:none;%7D.c%7Bfill:%2342bcc6;%7D%3C/style%3E%3CclipPath id='a'%3E%3Crect width='16' height='16'/%3E%3C/clipPath%3E%3C/defs%3E%3Cg class='a'%3E%3Cg transform='translate(-1488 -5402)'%3E%3Ccircle class='b' cx='9' cy='9' r='9' transform='translate(1487 5401)'/%3E%3Cpath class='c' d='M1495.994,5406.987l4,2.661-4,2.672Z' transform='translate(-1.126 0.426)'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
          transition: 0.3s all; }
        @media only screen and (min-width: 768px) {
          .header-nav-main .nav-main .nav-company-list .nav:hover {
            color: #42bcc6; }
            .header-nav-main .nav-main .nav-company-list .nav:hover:before {
              border-color: #42bcc6;
              background-color: #42bcc6;
              background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='16' height='16' viewBox='0 0 16 16'%3E%3Cdefs%3E%3Cstyle%3E.a%7Bclip-path:url(%23a);%7D.b%7Bfill:none;%7D.c%7Bfill:%23ffffff;%7D%3C/style%3E%3CclipPath id='a'%3E%3Crect width='16' height='16'/%3E%3C/clipPath%3E%3C/defs%3E%3Cg class='a'%3E%3Cg transform='translate(-1488 -5402)'%3E%3Ccircle class='b' cx='9' cy='9' r='9' transform='translate(1487 5401)'/%3E%3Cpath class='c' d='M1495.994,5406.987l4,2.661-4,2.672Z' transform='translate(-1.126 0.426)'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E"); } }
  .header-nav-main .nav-copyright {
    margin-top: 86px;
    display: flex;
    justify-content: space-between;
    align-items: flex-end; }
    @media only screen and (max-width: 767px) {
      .header-nav-main .nav-copyright {
        margin-top: 31px;
        flex-wrap: wrap; } }
    .header-nav-main .nav-copyright .copyright {
      font-family: "Raleway", sans-serif;
      font-size: 12px;
      font-size: 1.2rem;
      line-height: 14px;
      letter-spacing: 0.08em;
      font-weight: 500; }
      @media only screen and (max-width: 767px) {
        .header-nav-main .nav-copyright .copyright {
          order: 2;
          width: 100%;
          margin-top: 31px; } }
    .header-nav-main .nav-copyright .nav-listbtn {
      display: flex; }
      @media only screen and (max-width: 767px) {
        .header-nav-main .nav-copyright .nav-listbtn {
          flex-wrap: wrap;
          order: 1; } }
      .header-nav-main .nav-copyright .nav-listbtn .nav-btn {
        padding-right: 11px;
        border: 1px solid #42bcc6; }
        @media only screen and (max-width: 767px) {
          .header-nav-main .nav-copyright .nav-listbtn .nav-btn {
            width: 100%;
            margin: 0; }
            .header-nav-main .nav-copyright .nav-listbtn .nav-btn + .nav-btn {
              margin-top: 10px; } }

.h1-main {
  background-color: white;
  font-size: 10px;
  font-size: 1rem;
  letter-spacing: 0;
  font-weight: 500;
  padding: 5px 8px;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  z-index: 999; }
  @media only screen and (max-width: 767px) {
    .h1-main {
      opacity: 0;
      position: absolute;
      pointer-events: none;
      width: auto; } }

@keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@keyframes fadeIn-up {
  0% {
    transform: translateY(10px);
    opacity: 0; }
  100% {
    transform: translateY(0);
    opacity: 1; } }

@keyframes fade-up {
  0% {
    transform: translateY(100%); }
  100% {
    transform: translateY(0); } }

@-webkit-keyframes move {
  100% {
    -webkit-mask-position: left center;
    mask-position: left center; } }

@keyframes move {
  100% {
    -webkit-mask-position: left center;
    mask-position: left center; } }

.fade-line {
  -webkit-animation-name: move;
  animation-name: move;
  -webkit-animation-duration: 1.4s;
  animation-duration: 1.4s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  opacity: 1 !important; }

.animation-area {
  -webkit-mask-image: linear-gradient(135deg, #000 0, #000 50%, transparent 50%, transparent 100%);
  mask-image: linear-gradient(135deg, #000 0, #000 50%, transparent 50%, transparent 100%);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: 300%;
  mask-size: 300%;
  -webkit-mask-position: right center;
  mask-position: right center; }

.fade-line-up {
  animation: .8s fadeIn-up ease;
  animation-fill-mode: forwards;
  -webkit-animation: .8s fadeIn-up ease;
  -webkit-animation-fill-mode: forwards;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both; }

.c-banner {
  z-index: 2000;
  position: fixed;
  right: 30px;
  bottom: 120px;
  background-color: gray;
  transition: opacity 0.3s;
  will-change: opacity; }
  @media only screen and (max-width: 767px) {
    .c-banner {
      right: auto;
      left: 50%;
      margin-left: -160px;
      bottom: 15px; } }
  .c-banner::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    mix-blend-mode: multiply;
    box-shadow: 0px 0px 20px 0px rgba(115, 115, 115, 0.7); }
  .c-banner .c-banner-link {
    display: block;
    position: relative;
    transition: 0.3s opacity;
    will-change: opacity;
    z-index: 20; }
    @media only screen and (min-width: 1024px) {
      .c-banner .c-banner-link:hover {
        opacity: 0.8; } }
  .c-banner__img {
    position: relative;
    display: block; }
  .c-banner__close {
    cursor: pointer;
    transition: 0.3s opacity;
    will-change: opacity;
    position: absolute;
    z-index: 21;
    right: -15px;
    top: -15px;
    width: 30px;
    height: 30px; }
    @media only screen and (min-width: 1024px) {
      .c-banner__close:hover {
        opacity: 0.8; } }
    .c-banner__close::after {
      content: "";
      position: absolute;
      top: 5px;
      right: 5px;
      left: 5px;
      bottom: 5px;
      border-radius: 50%;
      mix-blend-mode: multiply;
      box-shadow: 0px 0px 40px 0px rgba(115, 115, 115, 0.7); }
    .c-banner__close img {
      position: absolute;
      top: 50%;
      left: 50%;
      margin-top: -10px;
      margin-left: -10px; }

.breadcrumbs-box {
  padding: 16px 0; }
  @media only screen and (max-width: 767px) {
    .breadcrumbs-box {
      padding: 12px 0; } }

ul.breadcrumbs {
  margin: 0 auto 0;
  padding: 0 20px;
  position: relative; }
  @media only screen and (max-width: 767px) {
    ul.breadcrumbs {
      margin: 0 auto 0;
      margin-left: 0;
      padding: 0 21px; } }
  ul.breadcrumbs li {
    display: inline-block; }
    ul.breadcrumbs li:last-child {
      display: inline;
      line-height: 1.5; }
    ul.breadcrumbs li:not(:last-child) {
      padding-right: 32px;
      position: relative;
      /* IE11  */
      /* Edge(Chromium) */ }
      @media only screen and (max-width: 767px) {
        ul.breadcrumbs li:not(:last-child) {
          padding-right: 22px; } }
      ul.breadcrumbs li:not(:last-child)::before {
        content: "";
        border-top: 1px solid #1a2034;
        border-right: 1px solid #1a2034;
        position: absolute;
        width: 5px;
        height: 5px;
        top: 4px;
        right: 12px;
        transform: rotate(45deg); }
        @media only screen and (max-width: 767px) {
          ul.breadcrumbs li:not(:last-child)::before {
            width: 4px;
            height: 4px;
            top: 5px;
            right: 8px; } }
      ul.breadcrumbs li:not(:last-child) _:lang(x)::-ms-backdrop, ul.breadcrumbs li:not(:last-child):before {
        top: 2px; }
      ul.breadcrumbs li:not(:last-child) _:lang(x)::-ms-, ul.breadcrumbs li:not(:last-child) em {
        top: 4px; }
    ul.breadcrumbs li a, ul.breadcrumbs li span {
      font-size: 12px;
      font-weight: 500; }
      @media screen and (device-aspect-ratio: 40 / 71) {
        ul.breadcrumbs li a, ul.breadcrumbs li span {
          font-size: 11px; } }

.btn {
  display: block;
  position: relative; }
  .btn.btn-01 {
    border-radius: 15px;
    border: 2px solid #42bcc6;
    color: #42bcc6;
    font-size: 15px;
    font-size: 1.5rem;
    font-weight: bold;
    font-family: "Raleway", sans-serif;
    padding-top: 1px;
    letter-spacing: 0.1em;
    height: 30px;
    width: 150px;
    transition: all .3s;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center; }
    @media only screen and (max-width: 767px) {
      .btn.btn-01 {
        border-radius: 25px;
        font-size: 17px;
        font-size: 1.7rem;
        height: 35px;
        width: 130px; } }
    @media only screen and (min-width: 768px) {
      .btn.btn-01:hover {
        background-color: #42bcc6;
        color: white; } }
  .btn.btn-02 {
    border: 2px solid #42bcc6;
    color: #42bcc6;
    font-size: 18px;
    font-size: 1.8rem;
    letter-spacing: 0.1em;
    font-weight: bold;
    font-family: "Raleway", sans-serif;
    letter-spacing: 0.1em;
    height: 69px;
    width: 370px;
    transition: all .3s;
    border-radius: 5px;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center; }
    @media only screen and (min-width: 768px) {
      .btn.btn-02 {
        cursor: pointer;
        -webkit-transition: 0.3s;
        -moz-transition: 0.3s;
        -o-transition: 0.3s;
        transition: 0.3s; }
        .btn.btn-02:hover {
          opacity: .7; } }
    @media only screen and (max-width: 767px) {
      .btn.btn-02 {
        border: 1px solid #42bcc6;
        font-size: 17px;
        font-size: 1.7rem;
        height: 61px;
        width: 100%; } }
    .btn.btn-02 .arrow {
      background-color: #42bcc6;
      border-radius: 50%;
      display: block;
      margin: 30px auto 0;
      margin: 0 auto;
      position: absolute;
      right: 22px;
      top: 50%;
      transform: translateY(-50%);
      height: 22px;
      width: 22px; }
      @media only screen and (max-width: 767px) {
        .btn.btn-02 .arrow {
          height: 15px;
          width: 15px; } }
      .btn.btn-02 .arrow:before {
        content: "";
        margin: 0 auto;
        position: absolute;
        left: 2px;
        right: 0;
        top: 50%;
        transform: translateY(-50%);
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 5px 0 5px 7px;
        border-color: transparent transparent transparent #fff; }
        @media only screen and (max-width: 767px) {
          .btn.btn-02 .arrow:before {
            border-width: 3px 0 3px 4px;
            left: 0; } }
    .btn.btn-02.blue {
      color: #fff;
      background-color: #42bcc6; }
      .btn.btn-02.blue .arrow {
        background-color: white; }
        .btn.btn-02.blue .arrow:before {
          border-color: transparent transparent transparent #42bcc6; }
  .btn.btn-03 {
    width: 370px;
    max-width: 100%;
    display: block;
    margin: 0;
    position: relative;
    overflow: hidden;
    text-decoration: none;
    border: 1px solid #42BCC6;
    border-radius: 5px;
    background-color: #42BCC6;
    text-align: center;
    outline: none;
    transition: ease 0.2s; }
    .btn.btn-03:before {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      z-index: 2;
      background: #fff;
      width: 100%;
      height: 100%;
      transition: transform 0.5s cubic-bezier(0.8, 0, 0.2, 1) 0s;
      transform: scale(0, 1);
      transform-origin: right top; }
    .btn.btn-03 span {
      position: relative;
      z-index: 3;
      color: #fff;
      transition: color 0.2s;
      display: block;
      font-size: 18px;
      font-size: 1.8rem;
      font-family: "Noto Sans JP", sans-serif;
      font-weight: bold;
      line-height: 30px;
      padding: 19px 0; }
      @media only screen and (max-width: 767px) {
        .btn.btn-03 span {
          font-size: 16px;
          font-size: 1.6rem;
          line-height: 24px;
          letter-spacing: .04em;
          padding: 18px 0; } }
      .btn.btn-03 span:before, .btn.btn-03 span:after {
        content: "";
        position: absolute;
        top: 50%; }
      .btn.btn-03 span:before {
        z-index: 4;
        right: 24px;
        border-radius: 50%;
        width: 22px;
        height: 22px;
        background-color: #fff;
        margin-top: -11px;
        transition: background-color 0.2s; }
        @media only screen and (max-width: 767px) {
          .btn.btn-03 span:before {
            right: 19px; } }
      .btn.btn-03 span:after {
        right: 31px;
        z-index: 5;
        margin-top: -5px;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 5px 0 5px 6px;
        border-color: transparent transparent transparent #42BCC6;
        transition: border-color 0.2s; }
        @media only screen and (max-width: 767px) {
          .btn.btn-03 span:after {
            right: 26px; } }
    @media only screen and (min-width: 1024px) {
      .btn.btn-03:hover:before {
        transform-origin: left top;
        transform: scale(1, 1); }
      .btn.btn-03:hover span {
        color: #42BCC6; }
        .btn.btn-03:hover span:before {
          background-color: #42BCC6; }
        .btn.btn-03:hover span:after {
          border-color: transparent transparent transparent #fff; } }
    .btn.btn-03--blank span:after {
      right: 29px;
      width: 11px;
      height: 9px;
      border: 0;
      background-position: center;
      background-repeat: no-repeat;
      background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='10' height='8' viewBox='0 0 10 8'%3E%3Cdefs%3E%3CclipPath id='clip-path'%3E%3Crect width='10' height='8' fill='none'/%3E%3C/clipPath%3E%3C/defs%3E%3Cg id='icn_外部' clip-path='url(%23clip-path)'%3E%3Cg id='icn_外部-2' data-name='icn_外部'%3E%3Cpath id='長方形_1' data-name='長方形 1' d='M0,6V0H.889V5.143H8V6Z' transform='translate(0 2)' fill='%2342bcc6'/%3E%3Cg id='_' data-name='□' transform='translate(2)' fill='none' stroke='%2342bcc6' stroke-linejoin='round' stroke-width='1'%3E%3Crect width='8' height='6' stroke='none'/%3E%3Crect x='0.5' y='0.5' width='7' height='5' fill='none'/%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A"); }
      @media only screen and (max-width: 767px) {
        .btn.btn-03--blank span:after {
          right: 25px; } }
    @media only screen and (min-width: 1024px) {
      .btn.btn-03--blank:hover span:after {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='10' height='8' viewBox='0 0 10 8'%3E%3Cdefs%3E%3CclipPath id='clip-path'%3E%3Crect width='10' height='8' fill='none'/%3E%3C/clipPath%3E%3C/defs%3E%3Cg id='icn_外部' clip-path='url(%23clip-path)'%3E%3Cg id='icn_外部-2' data-name='icn_外部'%3E%3Cpath id='長方形_1' data-name='長方形 1' d='M0,6V0H.889V5.143H8V6Z' transform='translate(0 2)' fill='%23fff'/%3E%3Cg id='_' data-name='□' transform='translate(2)' fill='none' stroke='%23fff' stroke-linejoin='round' stroke-width='1'%3E%3Crect width='8' height='6' stroke='none'/%3E%3Crect x='0.5' y='0.5' width='7' height='5' fill='none'/%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A"); } }

.c-btn01 {
  display: block;
  width: 173px;
  position: relative;
  padding: 10px 0; }
  @media only screen and (max-width: 767px) {
    .c-btn01 {
      width: 100%;
      height: 60px;
      display: flex;
      align-items: center;
      justify-content: center;
      text-align: center;
      border-radius: 5px;
      background-color: #42bcc6;
      padding: 0; } }
  .c-btn01__txt {
    display: block;
    font-size: 22px;
    font-size: 2.2rem;
    line-height: 1.5;
    letter-spacing: .1em;
    font-weight: bold;
    font-family: "Raleway", sans-serif;
    transition: .3s color; }
    @media only screen and (max-width: 767px) {
      .c-btn01__txt {
        font-size: 18px;
        font-size: 1.8rem;
        letter-spacing: .04em;
        color: #fff; } }
  .c-btn01__arrow {
    width: 36px;
    height: 36px;
    border-radius: 100%;
    border: 1px solid #c8d6de;
    position: absolute;
    top: 50%;
    right: 2px;
    margin-top: -19px;
    transition: .3s border-color, .3s background-color; }
    @media only screen and (max-width: 767px) {
      .c-btn01__arrow {
        width: 22px;
        height: 22px;
        background-color: #fff;
        border-color: #fff;
        right: 20px;
        margin-top: -11px; } }
    .c-btn01__arrow:before {
      content: "";
      width: 0;
      height: 0;
      border-top: 6px solid transparent;
      border-bottom: 6px solid transparent;
      border-left: 9px solid #42bcc6;
      position: absolute;
      top: 0;
      bottom: 0;
      left: 2px;
      right: 0;
      margin: auto;
      transition: .3s border-color; }
      @media only screen and (max-width: 767px) {
        .c-btn01__arrow:before {
          border-top-width: 5px;
          border-bottom-width: 5px;
          border-left-width: 6px;
          border-left-color: #42bcc6; } }
  @media only screen and (min-width: 768px) {
    .c-btn01:hover .c-btn01__txt {
      color: #42bcc6; }
    .c-btn01:hover .c-btn01__arrow {
      border-color: #42bcc6;
      background-color: #42bcc6; }
      .c-btn01:hover .c-btn01__arrow:before {
        border-left-color: #fff; } }

.c-btn02 {
  display: block;
  width: 173px;
  position: relative;
  padding: 10px 0; }
  @media only screen and (max-width: 767px) {
    .c-btn02 {
      width: 165px; } }
  .c-btn02__txt {
    display: block;
    font-size: 22px;
    font-size: 2.2rem;
    line-height: 1.5;
    letter-spacing: .1em;
    font-weight: bold;
    font-family: "Raleway", sans-serif; }
  .c-btn02__arrow {
    width: 36px;
    height: 36px;
    border-radius: 100%;
    border: 1px solid #fff;
    position: absolute;
    top: 50%;
    right: 2px;
    margin-top: -19px;
    transition: .3s background-color; }
    @media only screen and (max-width: 767px) {
      .c-btn02__arrow {
        width: 30px;
        height: 30px;
        margin-top: -15px; } }
    .c-btn02__arrow:before {
      content: "";
      width: 0;
      height: 0;
      border-top: 6px solid transparent;
      border-bottom: 6px solid transparent;
      border-left: 9px solid #fff;
      position: absolute;
      top: 0;
      bottom: 0;
      left: 2px;
      right: 0;
      margin: auto;
      transition: .3s border-color; }
  @media only screen and (min-width: 768px) {
    .c-btn02:hover .c-btn02__arrow {
      background-color: #fff; }
      .c-btn02:hover .c-btn02__arrow:before {
        border-left-color: #42bcc6; } }

/*
* === RADIO ===
*/
.radio-row {
  -webkit-justify-content: flex-start;
  justify-content: flex-start; }
  .radio-row.duo .checkerradio {
    width: auto; }
    @media only screen and (min-width: 768px) {
      .radio-row.duo .checkerradio:nth-child(odd) {
        width: 290px; } }
  @media only screen and (min-width: 768px) and (min-device-width: 768px) and (max-device-width: 1024px) {
    .radio-row.duo .checkerradio:nth-child(odd) {
      width: 49%; } }
    @media only screen and (max-width: 767px) {
      .radio-row.duo .checkerradio {
        width: 50% !important; } }
  @media only screen and (min-width: 768px) {
    .radio-row.reg .checkerradio {
      margin-top: 12px; }
      .radio-row.reg .checkerradio:nth-child(odd) {
        width: 100%;
        max-width: 290px; } }
    @media only screen and (min-width: 768px) and (max-width: 970px) {
      .radio-row.reg .checkerradio:nth-child(odd) {
        max-width: none; } }
    @media only screen and (min-width: 768px) and (min-device-width: 768px) and (max-device-width: 1024px) {
      .radio-row.reg .checkerradio:nth-child(odd) {
        width: 55%; } }
  @media only screen and (min-width: 768px) {
      .radio-row.reg .checkerradio:nth-of-type(1), .radio-row.reg .checkerradio:nth-of-type(2) {
        margin-top: 0px; } }
  @media only screen and (max-width: 767px) {
    .radio-row.reg .checkerradio {
      margin-bottom: 10px; } }
  @media only screen and (max-width: 767px) {
    .radio-row.reg .checkerradio:last-of-type {
      margin-bottom: 0; } }

.checkerradio {
  display: inline-block;
  position: relative;
  height: 24px;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-align-items: center;
  align-items: center; }
  @media only screen and (max-width: 767px) {
    .checkerradio {
      height: auto; } }
  .checkerradio label {
    display: inline-block;
    font-size: 15px;
    font-size: 1.5rem;
    font-family: "游ゴシック体", "游ゴシック", "YuGothic", "Yu Gothic", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
    padding-left: 34px;
    white-space: nowrap;
    cursor: pointer; }
    @media all and (-ms-high-contrast: none) {
      .checkerradio label {
        padding-top: 6px; } }
    @media only screen and (max-width: 767px) {
      .checkerradio label {
        padding-left: 26px;
        line-height: 1.4;
        top: 2px; } }
  .checkerradio input[type=radio],
  .checkerradio input[type=checkbox] {
    background: transparent;
    outline: none;
    margin: auto;
    height: 100%;
    width: 100%;
    position: absolute;
    z-index: 1;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    -webkit-appearance: none;
    border-radius: 0;
    border: none; }
  .checkerradio input[type=radio]::-ms-check,
  .checkerradio input[type=checkbox]::-ms-check {
    display: none; }
  .checkerradio.check-style .check:checked ~ .effec:after {
    opacity: 1; }
  .checkerradio.check-style .effec {
    border: 1px solid #a7a7a8;
    border-radius: 2px;
    pointer-events: none;
    overflow: hidden;
    margin: 0 auto;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    height: 20px;
    width: 20px;
    z-index: 10;
    cursor: pointer; }
    @media only screen and (max-width: 767px) {
      .checkerradio.check-style .effec {
        transform: translateY(0%);
        top: 2px;
        height: 15px;
        width: 15px; } }
    .checkerradio.check-style .effec:after {
      background: transparent url(../images/common/check.png) center/16px 15px no-repeat;
      content: "";
      display: inline-block;
      opacity: 0;
      position: absolute;
      right: 1px;
      top: 1px;
      transition: all .3s;
      height: 15px;
      width: 16px;
      z-index: 2; }
      @media only screen and (max-width: 767px) {
        .checkerradio.check-style .effec:after {
          height: 12px;
          width: 13px; } }
  @media only screen and (max-width: 767px) {
    .checkerradio.check-style label {
      padding-left: 23px; } }
  @media only screen and (max-width: 767px) {
    .checkerradio.radio-style {
      width: 50%; } }
  .checkerradio.radio-style .check:checked ~ .effec:after {
    opacity: 1; }
  .checkerradio.radio-style .effec {
    border: 1px solid #b1b1b1;
    border-radius: 50%;
    pointer-events: none;
    overflow: hidden;
    margin: 0 auto;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    height: 20px;
    width: 20px;
    z-index: 10;
    cursor: pointer; }
    @media only screen and (max-width: 767px) {
      .checkerradio.radio-style .effec {
        top: 0px;
        transform: translateY(0%); } }
    .checkerradio.radio-style .effec:after {
      background-color: #42bcc6;
      border-radius: 50%;
      content: "";
      display: inline-block;
      opacity: 0;
      margin: 0 auto;
      position: absolute;
      left: 0;
      right: 0;
      top: 50%;
      transform: translateY(-50%);
      transition: all .3s;
      height: 10px;
      width: 10px;
      z-index: 2; }

@media only screen and (min-width: 768px) {
  .lst-radio {
    display: flex;
    justify-content: space-between; } }

@media only screen and (min-width: 768px) {
  .lst-radio__left {
    width: 50%; } }

@media only screen and (min-width: 768px) {
  .lst-radio__right {
    width: 47%; } }

@media only screen and (max-width: 767px) {
  .lst-radio__right {
    margin-top: 13px; } }

.lst-radio .checkerradio {
  height: auto;
  width: 100%; }
  .lst-radio .checkerradio label {
    line-height: 24px; }
    @media only screen and (max-width: 767px) {
      .lst-radio .checkerradio label {
        line-height: 22px;
        padding-left: 32px; } }
  .lst-radio .checkerradio.radio-style .effec {
    top: 2px;
    transform: translateY(0); }
    @media only screen and (max-width: 767px) {
      .lst-radio .checkerradio.radio-style .effec {
        top: 0; } }

.lst-radio .checkerradio + .checkerradio {
  margin-top: 11px; }
  @media only screen and (max-width: 767px) {
    .lst-radio .checkerradio + .checkerradio {
      margin-top: 13px; } }

.note-radio {
  margin-top: 15px;
  font-size: 11px;
  font-size: 1.1rem;
  line-height: 1.45; }
  @media only screen and (max-width: 767px) {
    .note-radio {
      font-size: 12px;
      font-size: 1.2rem;
      line-height: 1.333;
      position: relative;
      padding-left: 16px; }
      .note-radio span {
        position: absolute;
        top: 0;
        left: 0; } }

body.cms.single article.cms-article {
  position: relative;
  z-index: 2; }
  body.cms.single article.cms-article h2.article-title {
    font-size: 26px;
    font-size: 2.6rem;
    font-weight: bold;
    letter-spacing: 0.05em;
    margin-bottom: 40px;
    line-height: 1.69230;
    text-align: left; }
    @media only screen and (max-width: 767px) {
      body.cms.single article.cms-article h2.article-title {
        font-size: 18px;
        font-size: 1.8rem;
        text-align: justify;
        margin-bottom: 30px;
        line-height: 1.5; } }
  body.cms.single article.cms-article .upper {
    border-bottom: 2px solid #42bcc6;
    margin-bottom: 35px;
    padding-bottom: 20px;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    -webkit-align-items: center;
    align-items: center; }
    @media only screen and (max-width: 767px) {
      body.cms.single article.cms-article .upper {
        border-bottom: 1px solid #42bcc6;
        margin-bottom: 25px; } }
    body.cms.single article.cms-article .upper .date {
      font-size: 18px;
      font-size: 1.8rem;
      font-weight: 500;
      font-family: "Lato", sans-serif;
      margin-right: 30px; }
      @media only screen and (max-width: 767px) {
        body.cms.single article.cms-article .upper .date {
          font-size: 11px;
          font-size: 1.1rem;
          margin-right: 8px; } }
    body.cms.single article.cms-article .upper .category {
      background-color: #e6e6e6;
      font-size: 16px;
      font-size: 1.6rem;
      font-weight: bold;
      letter-spacing: 0.05em;
      height: 30px;
      min-width: 190px;
      padding: 0 5px;
      display: -webkit-flex;
      display: flex;
      -webkit-align-items: center;
      align-items: center;
      -webkit-justify-content: center;
      justify-content: center; }
      @media only screen and (max-width: 767px) {
        body.cms.single article.cms-article .upper .category {
          font-size: 11px;
          font-size: 1.1rem;
          height: 15px;
          min-width: 110px; } }
  body.cms.single article.cms-article .main_image {
    margin-bottom: 45px;
    width: 100%; }
    @media only screen and (max-width: 767px) {
      body.cms.single article.cms-article .main_image {
        margin-bottom: 20px; } }
  body.cms.single article.cms-article .cms-article-content {
    /* IE11  */ }
    body.cms.single article.cms-article .cms-article-content .margin-holder {
      height: 1px; }
    body.cms.single article.cms-article .cms-article-content .wp-caption {
      max-width: 100%; }
    body.cms.single article.cms-article .cms-article-content img {
      margin-bottom: 48px;
      max-width: 100%; }
      @media only screen and (max-width: 767px) {
        body.cms.single article.cms-article .cms-article-content img {
          margin-bottom: 27px; } }
    body.cms.single article.cms-article .cms-article-content iframe {
      margin-bottom: 20px;
      height: 382px;
      max-height: 382px;
      width: 100%; }
      @media only screen and (max-width: 1090px) {
        body.cms.single article.cms-article .cms-article-content iframe {
          height: 315px; } }
      @media only screen and (max-width: 767px) {
        body.cms.single article.cms-article .cms-article-content iframe {
          max-width: 100%;
          height: auto; } }
    body.cms.single article.cms-article .cms-article-content h3 {
      background-color: #42bcc6;
      font-size: 24px;
      font-size: 2.4rem;
      font-family: "Noto Sans JP", sans-serif;
      color: white;
      font-weight: 500;
      letter-spacing: 0.1em;
      line-height: 1.785;
      margin-top: 19px;
      margin-bottom: 20px;
      padding: 4px 20px;
      position: relative;
      text-align: left; }
      @media only screen and (max-width: 767px) {
        body.cms.single article.cms-article .cms-article-content h3 {
          font-size: 17px;
          font-size: 1.7rem;
          line-height: 1.5882;
          margin-top: 0;
          margin-bottom: 18px;
          padding: 9px 15px; } }
    body.cms.single article.cms-article .cms-article-content h4 {
      font-size: 22px;
      font-size: 2.2rem;
      font-family: "Noto Sans JP", sans-serif;
      font-weight: 500;
      line-height: 1.5;
      margin-top: 28px;
      padding-left: 39px;
      padding-bottom: 12px;
      position: relative;
      margin-bottom: 12px;
      text-align: left;
      background-image: url("../images/news/bdr.png");
      background-position: bottom;
      background-size: 2px;
      background-repeat: repeat-x; }
      @media only screen and (max-width: 767px) {
        body.cms.single article.cms-article .cms-article-content h4 {
          background-size: 1px;
          font-size: 16px;
          font-size: 1.6rem;
          line-height: 1.44;
          padding-bottom: 20px;
          padding-left: 20px;
          margin-top: 18px; } }
      body.cms.single article.cms-article .cms-article-content h4:before {
        background-color: #42bcc6;
        content: "";
        margin: 0 auto;
        position: absolute;
        left: 10px;
        top: 5px;
        height: 10px;
        width: 10px; }
        @media only screen and (max-width: 767px) {
          body.cms.single article.cms-article .cms-article-content h4:before {
            left: 6px;
            height: 6px;
            width: 6px; } }
      body.cms.single article.cms-article .cms-article-content h4:after {
        background-color: #42bcc6;
        content: "";
        margin: 0 auto;
        position: absolute;
        left: 0px;
        top: 15px;
        height: 10px;
        width: 10px; }
        @media only screen and (max-width: 767px) {
          body.cms.single article.cms-article .cms-article-content h4:after {
            top: 12px;
            height: 6px;
            width: 6px; } }
    body.cms.single article.cms-article .cms-article-content h5 {
      color: #42bcc6;
      font-size: 20px;
      font-size: 2rem;
      font-family: "Noto Sans JP", sans-serif;
      font-weight: 500;
      letter-spacing: 0.08em;
      line-height: 1.75;
      margin-bottom: 17px;
      padding-bottom: 10px;
      padding-left: 22px;
      position: relative;
      text-align: left; }
      @media only screen and (max-width: 767px) {
        body.cms.single article.cms-article .cms-article-content h5 {
          font-size: 16px;
          font-size: 1.6rem;
          margin-bottom: 15px;
          padding-left: 24px; } }
      body.cms.single article.cms-article .cms-article-content h5:before {
        border-right: 2px solid #f9cf00;
        border-bottom: 2px solid #f9cf00;
        content: "";
        margin: 0 auto;
        position: absolute;
        left: 0;
        top: 13px;
        transform: rotate(-45deg);
        height: 9px;
        width: 9px; }
        @media only screen and (max-width: 767px) {
          body.cms.single article.cms-article .cms-article-content h5:before {
            top: 8px;
            height: 7px;
            width: 7px; } }
    body.cms.single article.cms-article .cms-article-content p {
      font-size: 15px;
      font-size: 1.5rem;
      letter-spacing: 0.05em;
      padding-bottom: 70px;
      line-height: 2.1333;
      text-align: justify; }
      @media only screen and (max-width: 767px) {
        body.cms.single article.cms-article .cms-article-content p {
          padding-bottom: 30px;
          line-height: 2; } }
      body.cms.single article.cms-article .cms-article-content p b, body.cms.single article.cms-article .cms-article-content p strong {
        font-weight: bold; }
    body.cms.single article.cms-article .cms-article-content a {
      border-bottom: 1px solid #18acd7;
      color: #18acd7;
      padding-bottom: 1px; }
      @media only screen and (min-width: 768px) {
        body.cms.single article.cms-article .cms-article-content a {
          cursor: pointer;
          -webkit-transition: 0.3s;
          -moz-transition: 0.3s;
          -o-transition: 0.3s;
          transition: 0.3s; }
          body.cms.single article.cms-article .cms-article-content a:hover {
            opacity: .7; } }
      @media only screen and (max-width: 767px) {
        body.cms.single article.cms-article .cms-article-content a {
          padding-bottom: 2px; } }
    body.cms.single article.cms-article .cms-article-content _:lang(x)::-ms-backdrop, body.cms.single article.cms-article .cms-article-content a {
      border-bottom: none;
      text-decoration: underline; }
    body.cms.single article.cms-article .cms-article-content .box, body.cms.single article.cms-article .cms-article-content blockquote {
      background-color: #f8f8f8;
      border-radius: 5px;
      font-size: 15px;
      font-size: 1.5rem;
      line-height: 2.1333;
      margin-bottom: 59px;
      padding: 35px;
      text-align: left; }
      @media only screen and (max-width: 767px) {
        body.cms.single article.cms-article .cms-article-content .box, body.cms.single article.cms-article .cms-article-content blockquote {
          line-height: 2;
          margin-bottom: 15px;
          padding: 15px;
          text-align: justify; } }
      body.cms.single article.cms-article .cms-article-content .box p, body.cms.single article.cms-article .cms-article-content blockquote p {
        margin-top: 0;
        padding-top: 0; }
        body.cms.single article.cms-article .cms-article-content .box p:last-child, body.cms.single article.cms-article .cms-article-content blockquote p:last-child {
          padding: 0; }
    body.cms.single article.cms-article .cms-article-content span[style*="text-decoration: underline"] {
      background: url("../images/news/em.png") bottom left/auto 5px repeat-x;
      background-position: center bottom 1px;
      padding-bottom: 5px;
      text-decoration: none !important; }
      @media only screen and (max-width: 767px) {
        body.cms.single article.cms-article .cms-article-content span[style*="text-decoration: underline"] {
          background: url("../images/news/em.png") center left/auto 3px repeat-x;
          background-position: center bottom 0px;
          padding-bottom: 1px; } }
      @media all and (-ms-high-contrast: none) {
        body.cms.single article.cms-article .cms-article-content span[style*="text-decoration: underline"] {
          background-position: 0 11px; } }
    body.cms.single article.cms-article .cms-article-content em {
      font-style: italic; }
    body.cms.single article.cms-article .cms-article-content ol {
      list-style: decimal inside; }
    body.cms.single article.cms-article .cms-article-content ul {
      list-style: disc inside; }
    body.cms.single article.cms-article .cms-article-content table,
    body.cms.single article.cms-article .cms-article-content th,
    body.cms.single article.cms-article .cms-article-content td {
      border: none;
      box-sizing: border-box;
      margin: 0;
      padding: 0; }

.form section.form {
  padding-top: 98px;
  padding-bottom: 200px;
  position: relative;
  z-index: 1; }
  @media only screen and (max-width: 767px) {
    .form section.form {
      padding-top: 55px;
      padding-bottom: 125px; } }
  .form section.form .hd-hatas {
    max-width: 1280px;
    text-align: right;
    position: absolute;
    z-index: -1; }
    @media only screen and (min-width: 768px) {
      .form section.form .hd-hatas {
        top: 7px;
        left: 0;
        right: 0;
        margin: 0 auto; } }
    @media only screen and (max-width: 767px) {
      .form section.form .hd-hatas {
        max-width: 326px;
        top: 41px;
        right: 0; } }
  .form section.form .ttl-mail__en {
    display: block;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.5;
    letter-spacing: .1em;
    font-weight: bold;
    font-family: "Raleway", sans-serif;
    color: #42bcc6; }
    @media only screen and (max-width: 767px) {
      .form section.form .ttl-mail__en {
        font-size: 16px;
        font-size: 1.6rem; } }
  .form section.form .ttl-mail__ja {
    margin-top: 17px;
    display: block;
    font-size: 32px;
    font-size: 3.2rem;
    line-height: 1.625;
    letter-spacing: .12em;
    font-weight: 500;
    font-family: "Noto Sans JP", sans-serif; }
    @media only screen and (max-width: 767px) {
      .form section.form .ttl-mail__ja {
        margin-top: 9px;
        font-size: 24px;
        font-size: 2.4rem;
        line-height: 1.5; } }
  .form section.form ul.steps {
    margin-top: 80px;
    position: relative;
    height: 50px; }
    @media only screen and (max-width: 767px) {
      .form section.form ul.steps {
        margin: 30px auto 0;
        height: 40px; } }
    .form section.form ul.steps li {
      color: #767676;
      margin: 0 auto;
      position: absolute;
      top: 0;
      height: 50px;
      width: 33.6%; }
      @media only screen and (max-width: 767px) {
        .form section.form ul.steps li {
          width: 34.6%;
          height: 40px; } }
      .form section.form ul.steps li img {
        height: 100%;
        width: 100%; }
        @media only screen and (max-width: 767px) {
          .form section.form ul.steps li img {
            max-width: none; } }
      .form section.form ul.steps li.active {
        color: white; }
      .form section.form ul.steps li:nth-child(1) {
        left: 0; }
        .form section.form ul.steps li:nth-child(1) .txt {
          margin-left: -10px; }
      .form section.form ul.steps li:nth-child(2) {
        left: 0;
        right: 0; }
      .form section.form ul.steps li:nth-child(3) {
        right: 0; }
        .form section.form ul.steps li:nth-child(3) .txt {
          margin-right: -10px; }
      .form section.form ul.steps li .txt {
        display: inline-block;
        margin: 0 auto;
        position: absolute;
        left: 0;
        right: 0;
        top: 50%;
        transform: translateY(-50%);
        text-align: center; }
        @media all and (-ms-high-contrast: none) {
          .form section.form ul.steps li .txt {
            padding-top: 7px; } }
        .form section.form ul.steps li .txt .ja {
          font-size: 16px;
          font-size: 1.6rem;
          font-weight: bold;
          letter-spacing: 0.05em; }
          @media only screen and (max-width: 767px) {
            .form section.form ul.steps li .txt .ja {
              display: block;
              font-size: 15px;
              font-size: 1.5rem; } }
  .form section.form .ttl-tbl {
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 1.41;
    letter-spacing: 0;
    font-weight: 500;
    font-family: "Noto Sans JP", sans-serif;
    color: #42bcc6;
    position: relative;
    padding-left: 37px;
    margin-bottom: 31px; }
    @media only screen and (max-width: 767px) {
      .form section.form .ttl-tbl {
        font-size: 20px;
        font-size: 2rem;
        padding-left: 29px;
        margin-bottom: 24px; } }
    .form section.form .ttl-tbl:before, .form section.form .ttl-tbl:after {
      content: "";
      width: 10px;
      height: 10px;
      background-color: #42bcc6;
      position: absolute; }
      @media only screen and (max-width: 767px) {
        .form section.form .ttl-tbl:before, .form section.form .ttl-tbl:after {
          width: 8px;
          height: 8px; } }
    .form section.form .ttl-tbl:before {
      top: 7px;
      left: 11px; }
      @media only screen and (max-width: 767px) {
        .form section.form .ttl-tbl:before {
          left: 9px; } }
    .form section.form .ttl-tbl:after {
      top: 17px;
      left: 1px; }
      @media only screen and (max-width: 767px) {
        .form section.form .ttl-tbl:after {
          top: 15px; } }
  .form section.form .form-wrap {
    margin-top: 50px; }
    @media only screen and (max-width: 767px) {
      .form section.form .form-wrap {
        margin-top: 30px; } }
    .form section.form .form-wrap table {
      border-top: 1px solid #e6e6e6;
      margin-bottom: 60px;
      width: 100%; }
      @media all and (-ms-high-contrast: none) {
        .form section.form .form-wrap table {
          table-layout: fixed; } }
      @media only screen and (max-width: 767px) {
        .form section.form .form-wrap table {
          margin-bottom: 40px; } }
      .form section.form .form-wrap table tr {
        border-bottom: 1px solid #e6e6e6; }
        .form section.form .form-wrap table tr .info {
          font-size: 12px;
          font-size: 1.2rem;
          margin-top: 14px;
          padding-left: 16px;
          position: relative; }
          @media only screen and (max-width: 767px) {
            .form section.form .form-wrap table tr .info {
              font-size: 11px;
              font-size: 1.1rem;
              line-height: 1.5;
              margin-top: 6px;
              padding-left: 14px; } }
          .form section.form .form-wrap table tr .info .ast {
            margin: 0 auto;
            position: absolute;
            left: 0;
            top: 0%; }
        .form section.form .form-wrap table tr th {
          padding: 37px 41px;
          position: relative;
          vertical-align: text-top;
          width: 325px; }
          @media only screen and (max-width: 767px) {
            .form section.form .form-wrap table tr th {
              display: block;
              padding: 22px 0 18px;
              width: 100%; } }
          @media only screen and (min-width: 768px) {
            .form section.form .form-wrap table tr th.top {
              padding-top: 30px;
              padding-bottom: 30px;
              vertical-align: top; }
              .form section.form .form-wrap table tr th.top em {
                top: 32px; } }
          @media only screen and (min-width: 768px) {
            .form section.form .form-wrap table tr th.sml {
              padding-top: 30px;
              padding-bottom: 30px; } }
          @media only screen and (min-width: 768px) {
            .form section.form .form-wrap table tr th.center {
              vertical-align: middle; }
              .form section.form .form-wrap table tr th.center em {
                top: 50%;
                transform: translateY(-50%); } }
          .form section.form .form-wrap table tr th .th-txt {
            -webkit-justify-content: flex-start;
            justify-content: flex-start;
            -webkit-align-items: center;
            align-items: center; }
            @media only screen and (max-width: 767px) {
              .form section.form .form-wrap table tr th .th-txt {
                flex-direction: row-reverse;
                justify-content: flex-end; } }
          .form section.form .form-wrap table tr th .th-ttl {
            font-size: 16px;
            font-size: 1.6rem;
            font-weight: 500;
            letter-spacing: 0.05em;
            font-family: "Noto Sans JP", sans-serif; }
            @media all and (-ms-high-contrast: none) {
              .form section.form .form-wrap table tr th .th-ttl {
                padding-top: 3px; } }
          .form section.form .form-wrap table tr th em {
            color: white;
            display: inline-block;
            font-size: 12px;
            font-size: 1.2rem;
            font-weight: bold;
            font-family: "游ゴシック体", "游ゴシック", "YuGothic", "Yu Gothic", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
            letter-spacing: 0.05em;
            padding-top: 4px;
            position: absolute;
            right: 44px;
            top: 35px;
            transition: all .3s;
            text-align: center;
            height: 20px;
            width: 40px;
            border-radius: 2px; }
            @media all and (-ms-high-contrast: none) {
              .form section.form .form-wrap table tr th em {
                padding-top: 5px; } }
            @media only screen and (max-width: 767px) {
              .form section.form .form-wrap table tr th em {
                font-size: 13px;
                font-size: 1.3rem;
                padding-top: 3px;
                position: static;
                margin-right: 11px; } }
          .form section.form .form-wrap table tr th .req {
            background-color: #f0722f; }
          .form section.form .form-wrap table tr th .nreq {
            background-color: #a8a8a8; }
        .form section.form .form-wrap table tr td {
          padding: 20px 40px 20px 46px;
          width: calc(100% - 325px); }
          @media only screen and (max-width: 767px) {
            .form section.form .form-wrap table tr td {
              display: block;
              padding: 0 0 20px;
              width: 100%; } }
          @media only screen and (min-width: 768px) {
            .form section.form .form-wrap table tr td.big-gap {
              padding: 34px 40px 34px; } }
          @media only screen and (min-width: 768px) {
            .form section.form .form-wrap table tr td.top {
              padding-right: 0; } }
          .form section.form .form-wrap table tr td .flex-wrapper {
            width: 100%;
            display: -webkit-flex;
            display: flex;
            align-items: center; }
            @media only screen and (max-width: 767px) {
              .form section.form .form-wrap table tr td .flex-wrapper {
                -webkit-flex-wrap: wrap;
                flex-wrap: wrap; } }
            .form section.form .form-wrap table tr td .flex-wrapper > input {
              flex: 1 1 auto; }
              @media only screen and (min-width: 768px) {
                .form section.form .form-wrap table tr td .flex-wrapper > input {
                  margin-right: 30px; } }
            @media only screen and (min-width: 768px) {
              .form section.form .form-wrap table tr td .flex-wrapper > .select-box {
                flex: 0 0 138px; } }
            @media only screen and (max-width: 767px) {
              .form section.form .form-wrap table tr td .flex-wrapper > input, .form section.form .form-wrap table tr td .flex-wrapper .select-box {
                margin-bottom: 15px; }
                .form section.form .form-wrap table tr td .flex-wrapper > input:last-child, .form section.form .form-wrap table tr td .flex-wrapper .select-box:last-child {
                  margin-top: 0; } }
          .form section.form .form-wrap table tr td input[type=email],
          .form section.form .form-wrap table tr td input[type=text] {
            border: 1px solid #a8a8a8;
            border-radius: 5px;
            font-size: 15px;
            font-size: 1.5rem;
            font-family: "游ゴシック体", "游ゴシック", "YuGothic", "Yu Gothic", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
            letter-spacing: 0;
            line-height: 1;
            padding: 0 14px;
            height: 50px;
            width: 100%;
            -webkit-appearance: none; }
            @media all and (-ms-high-contrast: none) {
              .form section.form .form-wrap table tr td input[type=email],
              .form section.form .form-wrap table tr td input[type=text] {
                padding-top: 4px; } }
            @media only screen and (max-width: 767px) {
              .form section.form .form-wrap table tr td input[type=email],
              .form section.form .form-wrap table tr td input[type=text] {
                padding: 0 12px; } }
          .form section.form .form-wrap table tr td textarea {
            border: 1px solid #a8a8a8;
            border-radius: 5px;
            font-size: 15px;
            font-size: 1.5rem;
            font-weight: 400;
            font-family: "游ゴシック体", "游ゴシック", "YuGothic", "Yu Gothic", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
            line-height: 28px;
            padding: 16px 15px;
            height: 200px;
            width: 100%;
            -webkit-appearance: none;
            resize: none;
            width: 100%; }
            @media only screen and (max-width: 767px) {
              .form section.form .form-wrap table tr td textarea {
                line-height: 2;
                margin: 0;
                padding: 10px 12px;
                height: 240px; } }
          .form section.form .form-wrap table tr td input[type=email]::placeholder,
          .form section.form .form-wrap table tr td input[type=text]::placeholder,
          .form section.form .form-wrap table tr td textarea::placeholder {
            color: #A9A09A;
            font-size: 15px;
            font-size: 1.5rem;
            letter-spacing: 0.05em;
            font-family: "游ゴシック体", "游ゴシック", "YuGothic", "Yu Gothic", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
            position: relative; }
            @media only screen and (min-device-width: 768px) and (max-device-width: 1024px) {
              .form section.form .form-wrap table tr td input[type=email]::placeholder,
              .form section.form .form-wrap table tr td input[type=text]::placeholder,
              .form section.form .form-wrap table tr td textarea::placeholder {
                padding-top: 4px; } }
          .form section.form .form-wrap table tr td input[name="reg_zipcode"],
          .form section.form .form-wrap table tr td input[name="reg_phone"] {
            max-width: 200px; }
          .form section.form .form-wrap table tr td .select-box {
            background-color: white;
            border: 1px solid #a8a8a8;
            border-radius: 5px;
            position: relative;
            height: 40px;
            width: 140px; }
            @media only screen and (max-width: 767px) {
              .form section.form .form-wrap table tr td .select-box {
                width: 200px; } }
            .form section.form .form-wrap table tr td .select-box input {
              margin-top: 0; }
            .form section.form .form-wrap table tr td .select-box input[type=text]::placeholder {
              color: #000000;
              font-size: 15px;
              font-size: 1.5rem;
              font-family: "游ゴシック体", "游ゴシック", "YuGothic", "Yu Gothic", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif; }
            .form section.form .form-wrap table tr td .select-box select {
              background-color: transparent;
              color: #333333;
              font-size: 15px;
              font-size: 1.5rem;
              font-family: "游ゴシック体", "游ゴシック", "YuGothic", "Yu Gothic", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
              margin-top: 0;
              padding: 0 20px;
              height: 100%;
              width: 100%;
              border: none;
              outline: none;
              -webkit-appearance: none;
              text-transform: lowercase; }
              @media only screen and (max-width: 767px) {
                .form section.form .form-wrap table tr td .select-box select {
                  padding: 0 10px; } }
            .form section.form .form-wrap table tr td .select-box:before {
              background: #515151;
              background: -webkit-linear-gradient(bottom, #515151 0%, #6c6c6c 100%);
              background: -o-linear-gradient(bottom, #515151 0%, #6c6c6c 100%);
              background: linear-gradient(to top, #515151 0%, #6c6c6c 100%);
              content: "";
              position: absolute;
              right: 0px;
              top: 0%;
              height: 100%;
              width: 25px;
              pointer-events: none; }
              @media only screen and (max-width: 767px) {
                .form section.form .form-wrap table tr td .select-box:before {
                  width: 19px; } }
            .form section.form .form-wrap table tr td .select-box:after {
              background-image: url("../images/departure/arw.png");
              background-size: 10px 5px;
              content: "";
              margin: 0 auto;
              position: absolute;
              right: 7px;
              top: 48%;
              height: 5px;
              width: 10px;
              pointer-events: none; }
              @media only screen and (max-width: 767px) {
                .form section.form .form-wrap table tr td .select-box:after {
                  background-size: 8px 4px;
                  right: 5px;
                  height: 4px;
                  width: 8px; } }
          .form section.form .form-wrap table tr td .select-wrap {
            -webkit-align-items: center;
            align-items: center; }
            @media only screen and (min-width: 768px) {
              .form section.form .form-wrap table tr td .select-wrap {
                padding-right: 80px; } }
            .form section.form .form-wrap table tr td .select-wrap .select-box {
              width: calc((100% - 75px)/3); }
              @media only screen and (max-width: 767px) {
                .form section.form .form-wrap table tr td .select-wrap .select-box {
                  width: calc((100% - 33px)/3); } }
            .form section.form .form-wrap table tr td .select-wrap .sep {
              font-size: 16px;
              font-size: 1.6rem; }
              @media only screen and (max-width: 767px) {
                .form section.form .form-wrap table tr td .select-wrap .sep {
                  font-size: 10px;
                  font-size: 1rem;
                  position: relative; } }
          .form section.form .form-wrap table tr td .det {
            margin-top: 15px;
            font-size: 12px;
            font-size: 1.2rem;
            letter-spacing: 0.05em; }
            @media only screen and (max-width: 767px) {
              .form section.form .form-wrap table tr td .det {
                margin-top: 9px;
                font-size: 10px;
                font-size: 1rem; } }
      .form section.form .form-wrap table.table-special {
        border-top: none;
        margin-bottom: 0; }
        @media only screen and (min-width: 768px) {
          .form section.form .form-wrap table.table-special {
            min-height: 200px; } }
        .form section.form .form-wrap table.table-special th {
          background-color: #f8f8f8; }
          @media only screen and (min-width: 768px) {
            .form section.form .form-wrap table.table-special th {
              padding-left: 118px;
              width: 350px; }
              .form section.form .form-wrap table.table-special th .th-ttl {
                line-height: 1.6;
                font-size: 15px;
                font-size: 1.5rem; } }
          @media only screen and (max-width: 767px) {
            .form section.form .form-wrap table.table-special th {
              border: none;
              padding: 11px 15px; } }
        @media only screen and (max-width: 767px) {
          .form section.form .form-wrap table.table-special td {
            border: none;
            padding: 20px 15px; } }
        @media only screen and (max-width: 767px) {
          .form section.form .form-wrap table.table-special tr {
            border: none; } }
    .form section.form .form-wrap .table-wrap {
      position: relative; }
      .form section.form .form-wrap .table-wrap .table-ttl {
        background-color: #767676;
        border-bottom: 1px solid #e6e6e6;
        color: white;
        font-size: 18px;
        font-size: 1.8rem;
        font-weight: bold;
        padding-top: 70px;
        margin: 0 auto;
        position: absolute;
        left: 0;
        top: 0%;
        height: 100%;
        width: 80px;
        text-align: center;
        z-index: 2;
        display: -webkit-flex;
        display: flex;
        -webkit-align-items: center;
        align-items: center;
        -webkit-justify-content: flex-start;
        justify-content: flex-start; }
        @media only screen and (min-width: 768px) {
          .form section.form .form-wrap .table-wrap .table-ttl {
            writing-mode: vertical-rl;
            -webkit-writing-mode: vertical-rl; } }
        @media only screen and (max-width: 767px) {
          .form section.form .form-wrap .table-wrap .table-ttl {
            font-size: 16px;
            font-size: 1.6rem;
            padding-left: 15px;
            padding-top: 0;
            position: static;
            height: 49px;
            width: 100%; } }
  .form section.form .table-box {
    border-top: 1px solid #e6e6e6; }
  .form section.form .link-blank {
    margin: 19px 0 6px;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.867;
    color: #1b95e0; }
    @media only screen and (max-width: 767px) {
      .form section.form .link-blank {
        margin: 24px 0 8px;
        font-size: 14px;
        font-size: 1.4rem; } }
    .form section.form .link-blank a {
      display: inline-block;
      text-decoration: underline;
      text-underline-offset: 3px; }
      @media only screen and (min-width: 768px) {
        .form section.form .link-blank a {
          cursor: pointer;
          -webkit-transition: 0.3s;
          -moz-transition: 0.3s;
          -o-transition: 0.3s;
          transition: 0.3s; }
          .form section.form .link-blank a:hover {
            opacity: .7; } }
      .form section.form .link-blank a:after {
        content: "";
        display: inline-block;
        width: 12px;
        height: 10px;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10.5' height='8.5' viewBox='0 0 10.5 8.5'%3E%3Cdefs%3E%3Cstyle%3E.a%7Bfill:%231b95e0;stroke:rgba(0,0,0,0);%7D.b,.d%7Bfill:none;%7D.b%7Bstroke:%231b95e0;stroke-linejoin:round;%7D.c%7Bstroke:none;%7D%3C/style%3E%3C/defs%3E%3Cg transform='translate(0.5)'%3E%3Cpath class='a' d='M0,6V0H.889V5.143H8V6Z' transform='translate(0 2)'/%3E%3Cg class='b' transform='translate(2)'%3E%3Crect class='c' width='8' height='6'/%3E%3Crect class='d' x='0.5' y='0.5' width='7' height='5'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
        background-repeat: no-repeat;
        background-position: center;
        margin-left: 13px;
        position: relative;
        top: 3px; }
  .form section.form .align-center {
    text-align: center; }
  .form section.form .center-check-privacy {
    display: flex;
    justify-content: center; }
  .form section.form .btn {
    border-width: 1px;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: bold;
    margin: 0 auto;
    outline: none;
    -webkit-mask-image: -webkit-radial-gradient(white, black);
    overflow: hidden;
    position: relative; }
    @media only screen and (min-width: 768px) {
      .form section.form .btn {
        height: 71px; } }
    .form section.form .btn::before {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      z-index: 2;
      background: #fff;
      width: 100%;
      height: 100%;
      transition: transform 0.5s cubic-bezier(0.8, 0, 0.2, 1) 0s;
      transform: scale(0, 1);
      transform-origin: right top; }
    .form section.form .btn input[type=submit] {
      background-color: transparent;
      border: none;
      cursor: pointer;
      font-family: "Noto Sans JP", sans-serif;
      outline: none;
      position: absolute;
      top: 0;
      left: 0;
      height: 100%;
      width: 100%;
      z-index: 10; }
    .form section.form .btn .txt {
      font-family: "Noto Sans JP", sans-serif;
      font-size: 18px;
      font-size: 1.8rem;
      letter-spacing: .04em;
      position: relative;
      z-index: 3;
      transition: color .2s; }
      @media only screen and (max-width: 767px) {
        .form section.form .btn .txt {
          font-size: 16px;
          font-size: 1.6rem; } }
      @media all and (-ms-high-contrast: none) {
        .form section.form .btn .txt {
          padding-top: 4px; } }
    .form section.form .btn .arrow {
      z-index: 3;
      transition: background-color .2s; }
      .form section.form .btn .arrow:before {
        transition: border-color .2s; }
      @media only screen and (max-width: 767px) {
        .form section.form .btn .arrow {
          width: 22px;
          height: 22px;
          right: 19px; }
          .form section.form .btn .arrow:before {
            border-width: 5px 0 5px 7px;
            letter-spacing: 2px; } }
    @media only screen and (min-width: 768px) {
      .form section.form .btn:hover {
        opacity: 1; }
        .form section.form .btn:hover::before {
          transform-origin: left top;
          transform: scale(1, 1); }
        .form section.form .btn:hover .txt {
          color: #42bcc6; }
        .form section.form .btn:hover .arrow {
          background-color: #42bcc6; }
          .form section.form .btn:hover .arrow:before {
            border-left-color: #fff; } }
  .form section.form .btn-correct {
    border-bottom: 1px solid #42bcc6;
    color: #42bcc6;
    display: inline-block;
    font-size: 18px;
    font-size: 1.8rem;
    letter-spacing: 0.05em;
    margin: 0 auto 40px;
    padding: 40px 0 5px;
    text-align: center; }
    @media only screen and (min-width: 768px) {
      .form section.form .btn-correct {
        cursor: pointer;
        -webkit-transition: 0.3s;
        -moz-transition: 0.3s;
        -o-transition: 0.3s;
        transition: 0.3s; }
        .form section.form .btn-correct:hover {
          opacity: .7; } }
    @media only screen and (max-width: 767px) {
      .form section.form .btn-correct {
        font-size: 16px;
        font-size: 1.6rem;
        padding: 30px 0 3px; } }
  .form section.form .formError {
    z-index: 90 !important; }
  .form section.form .formError .formErrorContent, .form section.form .formError .formErrorArrow div {
    background: black !important; }
  .form section.form .display-none {
    opacity: 0 !important; }
  .form section.form .display-none {
    display: none !important; }

.form.confirm .steps {
  margin-top: 100px !important; }
  @media only screen and (max-width: 767px) {
    .form.confirm .steps {
      margin-bottom: 43px !important; } }

.form.confirm table th {
  line-height: 1.5; }

.form.confirm table td {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.5; }
  @media only screen and (min-width: 768px) {
    .form.confirm table td {
      padding: 33px 0; } }
  .form.confirm table td.long-txt {
    position: relative;
    padding-top: 5px !important;
    white-space: pre-line;
    /* Safari 7.1+ */ }
    @media only screen and (max-width: 767px) {
      .form.confirm table td.long-txt {
        padding-top: 0; }
        .form.confirm table td.long-txt span {
          display: block;
          position: relative; } }
    @media not all and (min-resolution: 0.001dpcm) {
      @supports (-webkit-appearance: none) {
        .form.confirm table td.long-txt {
          white-space: normal; } } }

.form.complete main .steps {
  margin-top: 0px !important;
  margin-bottom: 67px; }
  @media only screen and (max-width: 767px) {
    .form.complete main .steps {
      margin-bottom: 43px !important; } }

@media only screen and (max-width: 767px) {
  .form.complete main .ttl-01 .ja {
    line-height: 1.59; } }

.form.complete main p.reg-txt {
  margin: 48px auto 67px;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 2.13333;
  max-width: 884px;
  text-align: left; }
  @media only screen and (max-width: 767px) {
    .form.complete main p.reg-txt {
      line-height: 1.733;
      margin: 20px auto 36px;
      text-align: justify; } }
  .form.complete main p.reg-txt a {
    color: #18acd7;
    text-decoration: underline; }

.form .privacy-box {
  background-color: #f8f8f8;
  height: 146px;
  margin: 0 auto;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  flex-direction: column;
  text-align: center;
  padding-bottom: 7px; }
  @media only screen and (max-width: 767px) {
    .form .privacy-box {
      padding: 27px 29px 32px;
      height: auto;
      text-align: left; } }
  .form .privacy-box p {
    font-size: 18px;
    font-size: 1.8rem;
    letter-spacing: 0;
    line-height: 1.6;
    font-weight: 500;
    padding-left: 11px;
    margin-bottom: 23px; }
    @media only screen and (max-width: 767px) {
      .form .privacy-box p {
        line-height: 1.55;
        margin-bottom: 22px;
        padding-left: 0; } }
  .form .privacy-box a {
    display: block;
    font-size: 16px;
    font-size: 1.6rem;
    text-decoration: underline;
    text-align: center;
    color: #42bcc6;
    font-family: "Noto Sans JP", sans-serif; }
    @media only screen and (min-width: 768px) {
      .form .privacy-box a {
        cursor: pointer;
        -webkit-transition: 0.3s;
        -moz-transition: 0.3s;
        -o-transition: 0.3s;
        transition: 0.3s; }
        .form .privacy-box a:hover {
          opacity: .7; } }
    .form .privacy-box a img {
      margin-right: 11px;
      width: 16px; }

.form #privacyChk {
  margin: 60px auto 26px; }
  @media only screen and (min-width: 768px) {
    .form #privacyChk {
      width: 304px; } }
  @media only screen and (max-width: 767px) {
    .form #privacyChk {
      margin: 31px auto 24px; } }
  .form #privacyChk .effec {
    border: 1px solid #101010; }
    @media only screen and (max-width: 767px) {
      .form #privacyChk .effec {
        width: 20px;
        height: 20px; }
        .form #privacyChk .effec:after {
          width: 16px;
          height: 15px; } }
  .form #privacyChk label {
    font-size: 18px;
    font-size: 1.8rem;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500; }
    @media only screen and (max-width: 767px) {
      .form #privacyChk label {
        padding-left: 34px; } }

.pagination {
  margin: 0 auto;
  text-align: center;
  display: -webkit-flex;
  display: flex;
  width: auto; }

.wp-pagenavi {
  font-weight: 500;
  margin: 0 auto;
  position: relative;
  text-align: center;
  height: 30px;
  width: auto;
  z-index: 2;
  display: -webkit-flex;
  display: flex; }
  .wp-pagenavi a, .wp-pagenavi span {
    background-color: #fff;
    border: 2px solid #42bcc6;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: bold;
    font-family: "Lato", sans-serif;
    margin: 0 2px;
    padding-top: 11px;
    position: relative;
    text-align: center;
    transition: all 0.3s;
    height: 40px;
    width: 40px; }
    @media only screen and (min-width: 768px) {
      .wp-pagenavi a, .wp-pagenavi span {
        cursor: pointer;
        -webkit-transition: 0.3s;
        -moz-transition: 0.3s;
        -o-transition: 0.3s;
        transition: 0.3s; }
        .wp-pagenavi a:hover, .wp-pagenavi span:hover {
          opacity: .7; } }
    @media only screen and (max-width: 767px) {
      .wp-pagenavi a, .wp-pagenavi span {
        border: 1px solid #42bcc6;
        font-size: 15px;
        font-size: 1.5rem;
        padding-top: 4px;
        height: 25px;
        width: 25px; } }
    .wp-pagenavi a.current, .wp-pagenavi span.current {
      color: white;
      background: #42bcc6; }
      .wp-pagenavi a.current:hover, .wp-pagenavi span.current:hover {
        opacity: 1; }
  .wp-pagenavi .back, .wp-pagenavi .next, .wp-pagenavi .first, .wp-pagenavi .last {
    background-repeat: no-repeat;
    background-color: transparent;
    background-size: cover;
    border-radius: 0;
    border: none;
    display: inline-block;
    position: relative;
    top: 10px;
    height: 17px;
    width: 18px; }
    @media only screen and (max-width: 767px) {
      .wp-pagenavi .back, .wp-pagenavi .next, .wp-pagenavi .first, .wp-pagenavi .last {
        font-size: 15px;
        font-size: 1.5rem;
        top: 7px;
        height: 10px;
        width: 13px; } }
  .wp-pagenavi .first {
    background-image: url("../images/news/arl.png");
    margin-right: 24px;
    margin-left: 0;
    text-align: left; }
    @media only screen and (max-width: 767px) {
      .wp-pagenavi .first {
        background-image: url("../images/news/arl_sp.png");
        margin-right: 14px; } }
  .wp-pagenavi .last {
    background-image: url("../images/news/arr.png");
    margin-left: 24px;
    margin-right: 0;
    text-align: right; }
    @media only screen and (max-width: 767px) {
      .wp-pagenavi .last {
        background-image: url("../images/news/arr_sp.png");
        margin-left: 14px; } }
  .wp-pagenavi .dots, .wp-pagenavi .extend {
    display: none; }

.single-pagination {
  font-weight: normal;
  position: relative;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  margin: 60px auto 0;
  width: 100%;
  z-index: 2; }
  @media only screen and (max-width: 767px) {
    .single-pagination {
      margin: 50px auto 75px;
      width: calc(100% - 30px); } }
  .single-pagination .main {
    background-color: #42bcc6;
    color: white;
    cursor: pointer;
    display: inline-block;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: 600;
    letter-spacing: 0.05em;
    border-radius: 5px;
    height: 40px;
    width: 200px;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center; }
    @media only screen and (min-width: 768px) {
      .single-pagination .main {
        cursor: pointer;
        -webkit-transition: 0.3s;
        -moz-transition: 0.3s;
        -o-transition: 0.3s;
        transition: 0.3s; }
        .single-pagination .main:hover {
          opacity: .7; } }
    @media only screen and (max-width: 767px) {
      .single-pagination .main {
        font-size: 15px;
        font-size: 1.5rem;
        height: 25px;
        width: 170px; } }
  .single-pagination .back, .single-pagination .next, .single-pagination .first, .single-pagination .last {
    background-repeat: no-repeat;
    background-color: transparent;
    background-size: cover;
    border-radius: 0;
    border: none;
    display: inline-block;
    position: relative;
    top: 10px;
    height: 17px;
    width: 18px; }
    @media only screen and (max-width: 767px) {
      .single-pagination .back, .single-pagination .next, .single-pagination .first, .single-pagination .last {
        font-size: 15px;
        font-size: 1.5rem;
        top: 7px;
        height: 10px;
        width: 13px; } }
    .single-pagination .back.no-display, .single-pagination .next.no-display, .single-pagination .first.no-display, .single-pagination .last.no-display {
      opacity: 0;
      pointer-events: none; }
  .single-pagination .back {
    background-image: url("../images/news/arl.png");
    margin-right: 24px;
    margin-left: 0;
    text-align: left; }
    @media only screen and (max-width: 767px) {
      .single-pagination .back {
        background-image: url("../images/news/arl_sp.png");
        margin-right: 14px; } }
  .single-pagination .next {
    background-image: url("../images/news/arr.png");
    margin-left: 24px;
    margin-right: 0;
    text-align: right; }
    @media only screen and (max-width: 767px) {
      .single-pagination .next {
        background-image: url("../images/news/arr_sp.png");
        margin-left: 14px; } }

.side-cms-bar .side-title {
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
  height: 66px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  white-space: nowrap; }
  @media only screen and (max-width: 767px) {
    .side-cms-bar .side-title {
      font-size: 17px;
      font-size: 1.7rem;
      height: 47px;
      -webkit-justify-content: flex-start;
      justify-content: flex-start; } }
  .side-cms-bar .side-title:before {
    background-color: #42bcc6;
    content: "";
    margin: 0 auto;
    position: absolute;
    left: 0;
    right: 0;
    top: 0%;
    height: 2px;
    width: 100%; }
  .side-cms-bar .side-title:after {
    background-color: #42bcc6;
    content: "";
    margin: 0 auto;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0%;
    height: 2px;
    width: 100%; }
  .side-cms-bar .side-title .arrow {
    margin-right: 14px;
    position: relative;
    height: 20px;
    width: 20px; }
    @media only screen and (max-width: 767px) {
      .side-cms-bar .side-title .arrow {
        margin-right: 8px;
        height: 12px;
        width: 12px; } }
    .side-cms-bar .side-title .arrow:before {
      background-color: #42bcc6;
      content: "";
      margin: 0 auto;
      position: absolute;
      right: 0;
      top: 0;
      height: 10px;
      width: 10px; }
      @media only screen and (max-width: 767px) {
        .side-cms-bar .side-title .arrow:before {
          height: 6px;
          width: 6px; } }
    .side-cms-bar .side-title .arrow:after {
      background-color: #42bcc6;
      content: "";
      margin: 0 auto;
      position: absolute;
      left: 0;
      bottom: 0;
      height: 10px;
      width: 10px; }
      @media only screen and (max-width: 767px) {
        .side-cms-bar .side-title .arrow:after {
          height: 6px;
          width: 6px; } }
  @media only screen and (max-width: 767px) {
    .side-cms-bar .side-title.js-toggle-menu:before {
      display: none; }
    .side-cms-bar .side-title.js-toggle-menu img {
      margin: 0 auto;
      position: absolute;
      right: 15px;
      top: 50%;
      transform: translateY(-50%);
      width: 10px; } }
  .side-cms-bar .side-title.is-active img {
    transform: rotate(180deg) translateY(-50%); }

.side-cms-bar ul {
  padding: 40px 23px 0;
  -webkit-justify-content: flex-start;
  justify-content: flex-start; }
  @media only screen and (max-width: 767px) {
    .side-cms-bar ul {
      padding: 18px 0 0; } }
  .side-cms-bar ul li {
    font-size: 18px;
    font-size: 1.8rem;
    letter-spacing: 0.05em;
    font-weight: 500;
    padding-left: 16px;
    position: relative;
    margin-bottom: 20px;
    width: calc(100% / 3); }
    @media only screen and (max-width: 767px) {
      .side-cms-bar ul li {
        font-size: 15px;
        font-size: 1.5rem;
        margin-bottom: 15px;
        width: 100%; }
        .side-cms-bar ul li:last-child {
          margin-bottom: 0; } }
    .side-cms-bar ul li:before {
      background-color: #fbdc6b;
      content: "";
      margin: 0 auto;
      position: absolute;
      left: 0;
      top: 50%;
      transform: translateY(-50%);
      height: 2px;
      width: 5px; }

.side-mv {
  position: relative;
  padding: 20px 20px 0; }
  @media only screen and (max-width: 767px) {
    .side-mv {
      margin-top: 20px;
      padding: 0 20px; } }
  .side-mv img {
    width: 100%;
    border-radius: 5px; }
  .side-mv .mv-ttl {
    color: white;
    margin: 0 auto;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 60px;
    text-align: center; }
    @media only screen and (max-width: 767px) {
      .side-mv .mv-ttl {
        bottom: 22px; } }
    .side-mv .mv-ttl .en {
      display: inline-block;
      font-size: 62px;
      font-size: 6.2rem;
      font-family: "Raleway", sans-serif;
      font-weight: bold;
      margin-bottom: 18px;
      letter-spacing: 0.1em;
      text-transform: uppercase;
      text-shadow: 0px 0px 15px rgba(118, 118, 118, 0.3); }
      @media only screen and (max-width: 767px) {
        .side-mv .mv-ttl .en {
          font-size: 33px;
          font-size: 3.3rem;
          margin-bottom: 9px; } }
    .side-mv .mv-ttl .ja {
      font-size: 20px;
      font-size: 2rem;
      letter-spacing: 0.05em;
      text-shadow: 0px 0px 15px rgba(118, 118, 118, 0.3);
      font-family: "Noto Sans JP", sans-serif;
      font-weight: 500; }
      @media only screen and (max-width: 767px) {
        .side-mv .mv-ttl .ja {
          font-size: 16px;
          font-size: 1.6rem; } }

.ttl-01 {
  text-align: center;
  position: relative; }
  @media only screen and (max-width: 767px) {
    .ttl-01 {
      text-align: left; } }
  .ttl-01:before {
    background-color: #f9cf00;
    content: "";
    margin: 0 auto;
    position: absolute;
    left: 0;
    right: 0;
    top: 30px;
    height: 2px;
    width: 25px; }
    @media only screen and (max-width: 767px) {
      .ttl-01:before {
        top: 23px;
        right: auto;
        width: 30px; } }
  .ttl-01 .en {
    display: inline-block;
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: bold;
    letter-spacing: 0.1em;
    margin-bottom: 33px;
    font-family: "Raleway", sans-serif; }
    @media only screen and (max-width: 767px) {
      .ttl-01 .en {
        font-size: 14px;
        font-size: 1.4rem;
        margin-bottom: 26px; } }
  .ttl-01 .ja {
    font-size: 32px;
    font-size: 3.2rem;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500; }
    @media only screen and (max-width: 767px) {
      .ttl-01 .ja {
        font-size: 20px;
        font-size: 2rem; } }
  @media only screen and (max-width: 767px) {
    .ttl-01.center {
      text-align: center; }
      .ttl-01.center:before {
        right: 0; } }

.ttl-02 {
  font-size: 24px;
  font-size: 2.4rem;
  font-family: "Raleway", sans-serif;
  font-weight: 600;
  letter-spacing: 0.1em;
  position: relative; }
  @media only screen and (max-width: 767px) {
    .ttl-02 {
      font-size: 22px;
      font-size: 2.2rem; } }
  .ttl-02:before {
    background-color: #f9cf00;
    content: "";
    margin: 0 auto;
    position: absolute;
    left: 0;
    top: 34px;
    height: 2px;
    width: 25px; }
    @media only screen and (max-width: 767px) {
      .ttl-02:before {
        top: 28px;
        height: 1px;
        width: 12px; } }

.ttl-03 {
  text-align: center; }
  @media only screen and (max-width: 767px) {
    .ttl-03 {
      text-align: left; } }
  .ttl-03 .en {
    display: inline-block;
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: bold;
    letter-spacing: 0.1em;
    position: relative;
    font-family: "Raleway", sans-serif; }
    @media only screen and (max-width: 767px) {
      .ttl-03 .en {
        font-size: 14px;
        font-size: 1.4rem;
        margin-bottom: 26px; } }
    .ttl-03 .en:before {
      background-color: #f9cf00;
      content: "";
      margin: 0 auto;
      position: absolute;
      left: 0;
      right: 0;
      top: 30px;
      height: 2px;
      width: 25px; }
      @media only screen and (max-width: 767px) {
        .ttl-03 .en:before {
          top: 23px;
          width: 30px; } }
  .ttl-03 .ja {
    font-size: 32px;
    font-size: 3.2rem;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    position: relative;
    margin-left: 27px;
    top: 11px; }
    @media only screen and (max-width: 767px) {
      .ttl-03 .ja {
        font-size: 20px;
        font-size: 2rem;
        top: 5px;
        margin-left: 19px; } }
  @media only screen and (max-width: 767px) {
    .ttl-03.center {
      text-align: center; }
      .ttl-03.center:before {
        right: 0; } }

.tith4 {
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: 500;
  font-family: "Noto Sans JP", sans-serif;
  position: relative;
  border-bottom: 2px solid #42bcc6;
  padding-bottom: 22px;
  display: flex;
  align-items: center; }
  @media only screen and (max-width: 767px) {
    .tith4 {
      font-size: 20px;
      font-size: 2rem;
      line-height: 26px;
      border-bottom: 2px solid #42bcc6;
      padding-bottom: 16px; } }
  .tith4::before {
    content: "";
    position: absolute;
    width: 23px;
    height: 20px;
    display: block;
    background-image: url("../images/caution/arrow02.png");
    background-repeat: no-repeat;
    background-size: contain;
    left: 0;
    top: 1px; }
    @media only screen and (max-width: 767px) {
      .tith4::before {
        width: 16px;
        height: 16px;
        top: 6px; } }
  .tith4 span {
    padding-left: 35px; }
    @media only screen and (max-width: 767px) {
      .tith4 span {
        padding-left: 29px; } }
  .tith4 small {
    font-size: 16px;
    font-size: 1.6rem;
    font-family: "Noto Sans JP", sans-serif;
    margin-left: 50px; }

.tith4-pink {
  border-bottom: 2px dotted #eac3c4; }
  @media only screen and (max-width: 767px) {
    .tith4-pink {
      border-bottom: 1px dotted #eac3c4; } }
  .tith4-pink::before {
    background-image: url("../images/manage/ico01.png"); }

.tith4-green {
  border-bottom: 2px dotted #c7cc90; }
  @media only screen and (max-width: 767px) {
    .tith4-green {
      border-bottom: 1px dotted #c7cc90; } }
  .tith4-green::before {
    background-image: url("../images/search/ico01.png"); }

@media only screen and (max-width: 767px) {
  .tith4sp {
    display: flex;
    line-height: 24px;
    padding-bottom: 10px; }
    .tith4sp::before {
      top: 6px; } }

.tith4-02 {
  font-size: 24px;
  font-size: 2.4rem;
  font-family: "Noto Sans JP", sans-serif; }
  @media only screen and (max-width: 767px) {
    .tith4-02 {
      font-size: 18px;
      font-size: 1.8rem;
      text-align: center; } }
  .tith4-02.blue {
    color: #42bcc6; }

.tith5 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 22px;
  font-size: 2.2rem;
  line-height: 32px;
  font-weight: 500;
  padding-left: 19px;
  background-position: left top 10px;
  background-repeat: no-repeat;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='14.005' viewBox='0 0 10 14.005'%3E%3Cpath id='arw' d='M1365.011,10056.994l-7.25-7h-2.75l7.25,7-7.25,7h2.75Z' transform='translate(-1355.011 -10049.992)' fill='%23f9cf00'/%3E%3C/svg%3E%0A"); }
  @media only screen and (max-width: 767px) {
    .tith5 {
      background-position: left top 6px;
      font-size: 18px;
      font-size: 1.8rem;
      line-height: 26px; } }

.c-ttl01__en {
  display: block;
  font-size: 50px;
  font-size: 5rem;
  line-height: 1.5;
  letter-spacing: .1em;
  font-weight: bold;
  font-family: "Raleway", sans-serif; }
  @media only screen and (max-width: 767px) {
    .c-ttl01__en {
      font-size: 36px;
      font-size: 3.6rem; } }
  .c-ttl01__en span {
    color: #42bcc6; }

.c-ttl01__ja {
  margin-top: 1px;
  display: block;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.5;
  letter-spacing: .12em;
  font-weight: 700;
  font-family: "Noto Sans JP", sans-serif; }
  @media only screen and (max-width: 767px) {
    .c-ttl01__ja {
      margin-top: 2px;
      font-size: 16px;
      font-size: 1.6rem; } }

.c-ttl01--center {
  text-align: center; }

@media only screen and (min-width: 768px) {
  .c-ttl01--1lineleft {
    display: flex;
    align-items: center; }
    .c-ttl01--1lineleft .c-ttl01__en {
      margin-right: 27px; }
    .c-ttl01--1lineleft .c-ttl01__ja {
      margin-top: -2px; } }

@media only screen and (min-width: 768px) {
  .c-ttl01--1linecenter {
    display: flex;
    align-items: center;
    justify-content: center; }
    .c-ttl01--1linecenter .c-ttl01__en {
      margin-right: 27px; }
    .c-ttl01--1linecenter .c-ttl01__ja {
      margin-top: -2px; } }

@media only screen and (max-width: 767px) {
  .c-ttl01--1linecenter {
    text-align: center; } }

/* Z-INDEX */
.formError {
  z-index: 990; }

.formError .formErrorContent {
  z-index: 991; }

.formError .formErrorArrow {
  z-index: 996; }

.ui-dialog .formError {
  z-index: 5000; }

.ui-dialog .formError .formErrorContent {
  z-index: 5001; }

.ui-dialog .formError .formErrorArrow {
  z-index: 5006; }

.inputContainer {
  position: relative;
  float: left; }

.formError {
  position: absolute;
  top: 300px;
  left: 300px;
  display: block;
  cursor: pointer;
  text-align: left; }

.formError.inline {
  position: relative;
  top: 0;
  left: 0;
  display: inline-block; }

.ajaxSubmit {
  padding: 20px;
  background: #55ea55;
  border: 1px solid #999;
  display: none; }

.formError .formErrorContent {
  width: 100%;
  background: #ee0101;
  position: relative;
  color: #fff;
  min-width: 120px;
  font-size: 11px;
  border: 2px solid #ddd;
  box-shadow: 0 0 6px #000;
  -moz-box-shadow: 0 0 6px #000;
  -webkit-box-shadow: 0 0 6px #000;
  -o-box-shadow: 0 0 6px #000;
  padding: 4px 10px 4px 10px;
  border-radius: 6px;
  -moz-border-radius: 6px;
  -webkit-border-radius: 6px;
  -o-border-radius: 6px; }

.formError.inline .formErrorContent {
  box-shadow: none;
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  -o-box-shadow: none;
  border: none;
  border-radius: 0;
  -moz-border-radius: 0;
  -webkit-border-radius: 0;
  -o-border-radius: 0; }

.greenPopup .formErrorContent {
  background: #33be40; }

.blackPopup .formErrorContent {
  background: #393939;
  color: #FFF; }

.formError .formErrorArrow {
  width: 15px;
  margin: -2px 0 0 13px;
  position: relative; }

body[dir='rtl'] .formError .formErrorArrow,
body.rtl .formError .formErrorArrow {
  margin: -2px 13px 0 0; }

.formError .formErrorArrowBottom {
  box-shadow: none;
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  -o-box-shadow: none;
  margin: 0px 0 0 12px;
  top: 2px; }

.formError .formErrorArrow div {
  border-left: 2px solid #ddd;
  border-right: 2px solid #ddd;
  box-shadow: 0 2px 3px #444;
  -moz-box-shadow: 0 2px 3px #444;
  -webkit-box-shadow: 0 2px 3px #444;
  -o-box-shadow: 0 2px 3px #444;
  font-size: 0px;
  height: 1px;
  background: #ee0101;
  margin: 0 auto;
  line-height: 0;
  font-size: 0;
  display: block; }

.formError .formErrorArrowBottom div {
  box-shadow: none;
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  -o-box-shadow: none; }

.greenPopup .formErrorArrow div {
  background: #33be40; }

.blackPopup .formErrorArrow div {
  background: #393939;
  color: #FFF; }

.formError .formErrorArrow .line10 {
  width: 13px;
  border: none; }

.formError .formErrorArrow .line9 {
  width: 11px;
  border: none; }

.formError .formErrorArrow .line8 {
  width: 11px; }

.formError .formErrorArrow .line7 {
  width: 9px; }

.formError .formErrorArrow .line6 {
  width: 7px; }

.formError .formErrorArrow .line5 {
  width: 5px; }

.formError .formErrorArrow .line4 {
  width: 3px; }

.formError .formErrorArrow .line3 {
  width: 1px;
  border-left: 2px solid #ddd;
  border-right: 2px solid #ddd;
  border-bottom: 0 solid #ddd; }

.formError .formErrorArrow .line2 {
  width: 3px;
  border: none;
  background: #ddd; }

.formError .formErrorArrow .line1 {
  width: 1px;
  border: none;
  background: #ddd; }

.notfound section.content {
  margin: 0 auto;
  padding: 100px 0;
  text-align: center;
  width: 1000px; }
  @media only screen and (max-width: 767px) {
    .notfound section.content {
      padding: 60px 20px 100px;
      width: 100%; } }
  @media only screen and (max-width: 320px) {
    .notfound section.content {
      padding: 100px 10px; } }
  .notfound section.content p {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 2; }
  .notfound section.content .btn {
    margin: 24px auto 0; }
    @media only screen and (max-width: 767px) {
      .notfound section.content .btn {
        margin: 33px auto 0; } }

body.about {
  font-weight: 500; }
  body.about .identity {
    position: relative;
    margin-top: 101px; }
    @media only screen and (min-width: 768px) {
      body.about .identity {
        display: flex;
        align-items: center;
        margin-top: 154px; } }
    body.about .identity .ttl-03 {
      text-align: left; }
      @media only screen and (max-width: 767px) {
        body.about .identity .ttl-03 .en {
          font-size: 16px;
          font-size: 1.6rem;
          margin-bottom: 34px; } }
      body.about .identity .ttl-03 .en:before {
        top: 35px;
        right: 0;
        margin: 0; }
        @media only screen and (max-width: 767px) {
          body.about .identity .ttl-03 .en:before {
            width: 25px;
            top: 27px; } }
      @media only screen and (min-width: 768px) {
        body.about .identity .ttl-03 .ja {
          margin-left: 42px; } }
      @media only screen and (max-width: 767px) {
        body.about .identity .ttl-03 .ja {
          margin-left: 0;
          font-size: 24px;
          font-size: 2.4rem;
          letter-spacing: .06em; } }
    body.about .identity__bg-text {
      position: absolute;
      left: 5px;
      top: -29px;
      z-index: 1; }
      @media only screen and (min-width: 768px) {
        body.about .identity__bg-text {
          max-width: calc(100% - 40px); } }
    body.about .identity .identity-wrapper {
      position: relative;
      z-index: 2; }
      @media only screen and (min-width: 768px) {
        body.about .identity .identity-wrapper {
          width: 68.75%;
          padding-left: calc((100% - 1000px) / 2);
          padding-bottom: 25px; } }
      @media only screen and (max-width: 767px) {
        body.about .identity .identity-wrapper .identity-cnt {
          padding: 0 25px; } }
      body.about .identity .identity-wrapper .identity-cnt__ttl {
        font-size: 32px;
        font-size: 3.2rem;
        line-height: 52px;
        font-family: "Noto Sans JP", sans-serif;
        margin-top: 72px; }
        @media only screen and (max-width: 767px) {
          body.about .identity .identity-wrapper .identity-cnt__ttl {
            font-size: 22px;
            font-size: 2.2rem;
            line-height: 32px;
            margin-top: 43px; } }
      body.about .identity .identity-wrapper .identity-cnt__txt {
        font-size: 18px;
        font-size: 1.8rem;
        line-height: 42px;
        font-family: "Noto Sans JP", sans-serif;
        margin-top: 30px; }
        @media only screen and (max-width: 767px) {
          body.about .identity .identity-wrapper .identity-cnt__txt {
            font-size: 16px;
            font-size: 1.6rem;
            line-height: 34px;
            margin-top: 28px;
            text-align: justify; } }
        body.about .identity .identity-wrapper .identity-cnt__txt + .identity-cnt__txt {
          margin-top: 17px; }
          @media only screen and (max-width: 767px) {
            body.about .identity .identity-wrapper .identity-cnt__txt + .identity-cnt__txt {
              margin-top: 15px; } }
    body.about .identity__img {
      position: relative;
      z-index: 2;
      background-image: url("../images/about/img01-sp.jpg");
      background-size: cover;
      background-repeat: no-repeat;
      background-position: center top;
      width: 100%;
      height: 48vw; }
      @media only screen and (min-width: 768px) {
        body.about .identity__img {
          width: 39.683%;
          height: 560px;
          background-image: url("../images/about/img01.jpg");
          margin-top: -8px; } }
      @media only screen and (max-width: 767px) {
        body.about .identity__img {
          margin-top: 50px; } }
  body.about .vision {
    margin-top: 136px; }
    @media only screen and (max-width: 767px) {
      body.about .vision {
        margin-top: 50px; } }
    @media only screen and (max-width: 767px) {
      body.about .vision .ttl-01 {
        text-align: center; }
        body.about .vision .ttl-01:before {
          width: 26px;
          top: 27px;
          right: 0; }
        body.about .vision .ttl-01 .en {
          font-size: 16px;
          font-size: 1.6rem;
          margin-bottom: 39px; }
        body.about .vision .ttl-01 .ja {
          font-size: 24px;
          font-size: 2.4rem;
          letter-spacing: .039em; } }
    body.about .vision__ttl {
      margin-top: 62px;
      text-align: center;
      font-size: 32px;
      font-size: 3.2rem;
      line-height: 44px;
      color: #42BCC6;
      font-family: "Noto Sans JP", sans-serif; }
      @media only screen and (max-width: 767px) {
        body.about .vision__ttl {
          margin-top: 40px;
          font-size: 22px;
          font-size: 2.2rem;
          line-height: 28px; } }
    body.about .vision__ttl02 {
      margin-top: 4px;
      text-align: center;
      font-size: 32px;
      font-size: 3.2rem;
      line-height: 44px;
      font-family: "Noto Sans JP", sans-serif; }
      @media only screen and (max-width: 767px) {
        body.about .vision__ttl02 {
          margin-top: 10px;
          font-size: 18px;
          font-size: 1.8rem;
          line-height: 28px; } }
    body.about .vision__txt {
      margin-top: 54px;
      font-size: 15px;
      font-size: 1.5rem;
      line-height: 28px; }
      @media only screen and (max-width: 767px) {
        body.about .vision__txt {
          margin-top: 26px; } }
    body.about .vision__img {
      margin-top: 93px; }
      @media only screen and (max-width: 767px) {
        body.about .vision__img {
          margin-top: 49px; } }
      body.about .vision__img img {
        width: 100%; }
  body.about .corporate-logo {
    padding: 95px 0 113px;
    background-color: #F8F8F8; }
    @media only screen and (max-width: 767px) {
      body.about .corporate-logo {
        padding: 66px 0 57px; } }
    @media only screen and (max-width: 767px) {
      body.about .corporate-logo .ttl-03 {
        text-align: center; } }
    @media only screen and (max-width: 767px) {
      body.about .corporate-logo .ttl-03 .en {
        font-size: 16px;
        font-size: 1.6rem;
        margin-bottom: 34px; } }
    @media only screen and (min-width: 768px) {
      body.about .corporate-logo .ttl-03 .en:before {
        right: auto;
        top: 35px;
        margin: 0; } }
    @media only screen and (max-width: 767px) {
      body.about .corporate-logo .ttl-03 .en:before {
        width: 26px;
        top: 27px; } }
    @media only screen and (min-width: 768px) {
      body.about .corporate-logo .ttl-03 .ja {
        margin-left: 40px; } }
    @media only screen and (max-width: 767px) {
      body.about .corporate-logo .ttl-03 .ja {
        font-size: 24px;
        font-size: 2.4rem;
        letter-spacing: .039em;
        margin-left: 0; } }
    body.about .corporate-logo__logobox {
      margin-top: 75px;
      background-color: #fff;
      padding: 61px 10px 59px;
      text-align: center; }
      @media only screen and (max-width: 767px) {
        body.about .corporate-logo__logobox {
          margin-top: 43px;
          padding: 69px 10px 69px; } }
    body.about .corporate-logo__txt {
      margin-top: 48px;
      text-align: center;
      font-size: 18px;
      font-size: 1.8rem;
      line-height: 42px;
      font-family: "Noto Sans JP", sans-serif; }
      @media only screen and (max-width: 767px) {
        body.about .corporate-logo__txt {
          margin-top: 27px;
          text-align: left;
          font-size: 16px;
          font-size: 1.6rem;
          line-height: 34px; }
          body.about .corporate-logo__txt p + p {
            margin-top: 14px; } }
    body.about .corporate-logo__txt02 {
      margin-top: 51px;
      font-size: 15px;
      font-size: 1.5rem;
      line-height: 28px; }
      @media only screen and (max-width: 767px) {
        body.about .corporate-logo__txt02 {
          margin-top: 43px; } }
      @media only screen and (min-width: 768px) {
        body.about .corporate-logo__txt02 .txt02-logo {
          display: flex;
          align-items: flex-start;
          justify-content: space-between;
          flex-direction: row-reverse;
          margin-bottom: 30px; } }
      @media only screen and (max-width: 767px) {
        body.about .corporate-logo__txt02 .txt02-logo {
          margin-bottom: 11px; } }
      body.about .corporate-logo__txt02 .txt02-logo > div {
        text-align: center;
        background-color: #fff; }
        @media only screen and (min-width: 768px) {
          body.about .corporate-logo__txt02 .txt02-logo > div {
            margin-top: 6px;
            width: 150px;
            padding: 35px 0 37px; } }
        @media only screen and (max-width: 767px) {
          body.about .corporate-logo__txt02 .txt02-logo > div {
            margin: 0 auto 34px;
            width: 203px;
            padding: 44px 0 38px; } }
      @media only screen and (min-width: 768px) {
        body.about .corporate-logo__txt02 .txt02-logo > p {
          width: calc(100% - 194px); } }
  body.about .message {
    margin-top: 115px; }
    @media only screen and (max-width: 767px) {
      body.about .message {
        margin-top: 66px; } }
    body.about .message .ttl-03 {
      text-align: left; }
      @media only screen and (max-width: 767px) {
        body.about .message .ttl-03 {
          text-align: center; } }
      @media only screen and (max-width: 767px) {
        body.about .message .ttl-03 .en {
          font-size: 16px;
          font-size: 1.6rem;
          margin-bottom: 34px; } }
      @media only screen and (max-width: 767px) {
        body.about .message .ttl-03 .en:before {
          width: 26px;
          top: 27px; } }
      @media only screen and (min-width: 768px) {
        body.about .message .ttl-03 .ja {
          margin-left: 23px; } }
      @media only screen and (max-width: 767px) {
        body.about .message .ttl-03 .ja {
          font-size: 24px;
          font-size: 2.4rem;
          letter-spacing: .039em;
          margin-left: 0; } }
    @media only screen and (min-width: 768px) {
      body.about .message .message-ctn {
        margin-top: 73px;
        margin-right: -44px;
        display: flex;
        justify-content: space-between;
        flex-direction: row-reverse;
        align-items: flex-start; } }
  @media only screen and (min-width: 768px) and (max-width: 1090px) {
    body.about .message .message-ctn {
      margin-right: -20px; } }
    @media only screen and (max-width: 767px) {
      body.about .message .message-ctn {
        margin-top: 51px; } }
    @media only screen and (min-width: 768px) {
      body.about .message .message-ctn__img {
        width: 35%;
        max-width: 340px;
        margin-top: 12px; } }
    @media only screen and (max-width: 767px) {
      body.about .message .message-ctn__img img {
        width: 100%; } }
    body.about .message .message-ctn__txt {
      font-size: 15px;
      font-size: 1.5rem;
      line-height: 28px; }
      @media only screen and (min-width: 768px) {
        body.about .message .message-ctn__txt {
          width: 62%;
          max-width: 640px; } }
      @media only screen and (max-width: 767px) {
        body.about .message .message-ctn__txt {
          margin-top: 26px; } }
      body.about .message .message-ctn__txt .sign-txt {
        margin-top: 56px; }
        @media only screen and (max-width: 767px) {
          body.about .message .message-ctn__txt .sign-txt {
            margin-top: 26px;
            text-align: center; } }
        body.about .message .message-ctn__txt .sign-txt span {
          font-size: 18px;
          font-size: 1.8rem;
          font-family: "Noto Sans JP", sans-serif; }
          @media only screen and (max-width: 767px) {
            body.about .message .message-ctn__txt .sign-txt span {
              font-size: 14px;
              font-size: 1.4rem;
              margin-right: 15px; } }
        body.about .message .message-ctn__txt .sign-txt img {
          position: relative;
          top: -4px;
          left: 12px; }
          @media only screen and (max-width: 767px) {
            body.about .message .message-ctn__txt .sign-txt img {
              width: 105px;
              left: -4px; } }
  body.about .about {
    margin-top: 117px; }
    @media only screen and (max-width: 767px) {
      body.about .about {
        margin-top: 75px; } }
    @media only screen and (min-width: 768px) {
      body.about .about .ttl-01 {
        margin-top: -28px; } }
    @media only screen and (max-width: 767px) {
      body.about .about .ttl-01 {
        text-align: center; }
        body.about .about .ttl-01:before {
          width: 26px;
          top: 27px;
          right: 0; }
        body.about .about .ttl-01 .en {
          font-size: 16px;
          font-size: 1.6rem;
          margin-bottom: 39px; }
        body.about .about .ttl-01 .ja {
          font-size: 24px;
          font-size: 2.4rem;
          letter-spacing: .039em; } }
    body.about .about .about-box {
      border: 1px solid #42bcc6;
      padding: 35px 14px; }
      @media only screen and (min-width: 768px) {
        body.about .about .about-box {
          display: flex;
          align-items: center;
          padding: 59px 0 35px; } }
      @media only screen and (max-width: 767px) {
        body.about .about .about-box {
          border-width: 2px;
          padding: 40px 28px 14px; } }
      @media only screen and (min-width: 768px) {
        body.about .about .about-box .about-ttl {
          width: calc(100% - 618px); } }
      @media only screen and (min-width: 768px) {
        body.about .about .about-box .about-cnt {
          width: 618px;
          padding-right: 20px; } }
      @media only screen and (max-width: 767px) {
        body.about .about .about-box .about-cnt {
          margin-top: 38px; } }
      body.about .about .about-box .detail {
        width: 100%; }
        @media only screen and (max-width: 767px) {
          body.about .about .about-box .detail tr {
            display: block;
            width: 100%; } }
        body.about .about .about-box .detail th, body.about .about .about-box .detail td {
          font-size: 15px;
          font-size: 1.5rem;
          line-height: 22px; }
          @media only screen and (min-width: 768px) {
            body.about .about .about-box .detail th, body.about .about .about-box .detail td {
              border-bottom: 20px solid #fff; } }
          @media only screen and (max-width: 767px) {
            body.about .about .about-box .detail th, body.about .about .about-box .detail td {
              display: block;
              width: 100%; } }
        body.about .about .about-box .detail th {
          background-color: #F8F8F8;
          font-weight: bold; }
          @media only screen and (min-width: 768px) {
            body.about .about .about-box .detail th {
              width: 180px;
              text-align: center;
              vertical-align: middle;
              padding: 4px 0; } }
          @media only screen and (max-width: 767px) {
            body.about .about .about-box .detail th {
              padding: 5px 10px; } }
        @media only screen and (min-width: 768px) {
          body.about .about .about-box .detail td {
            width: calc(100% - 180px);
            padding-left: 20px; } }
        @media only screen and (max-width: 767px) {
          body.about .about .about-box .detail td {
            padding: 13px 10px 20px; } }
        @media only screen and (min-width: 768px) {
          body.about .about .about-box .detail ul {
            margin-top: 3px; } }
        body.about .about .about-box .detail ul li {
          position: relative;
          padding-left: 12px; }
          @media only screen and (max-width: 767px) {
            body.about .about .about-box .detail ul li {
              padding-left: 3px; } }
          body.about .about .about-box .detail ul li:not(:first-child) {
            margin-top: 8px; }
            @media only screen and (max-width: 767px) {
              body.about .about .about-box .detail ul li:not(:first-child) {
                margin-top: 5px; } }
          body.about .about .about-box .detail ul li:before {
            content: "-";
            font-size: 15px;
            font-size: 1.5rem;
            line-height: 24px;
            font-weight: bold;
            color: #F9CF00;
            position: absolute;
            top: -2px;
            left: 0; }
            @media only screen and (max-width: 767px) {
              body.about .about .about-box .detail ul li:before {
                left: -11px; } }
  body.about .group {
    margin: 140px auto 0;
    background-color: #f8f8f8;
    padding: 95px 0 140px; }
    @media only screen and (max-width: 767px) {
      body.about .group {
        margin: 80px auto 0;
        padding: 66px 0 120px; } }
    @media only screen and (max-width: 767px) {
      body.about .group .ttl-03 {
        text-align: center; } }
    @media only screen and (max-width: 767px) {
      body.about .group .ttl-03 .en {
        font-size: 16px;
        font-size: 1.6rem;
        margin-bottom: 34px; } }
    @media only screen and (max-width: 767px) {
      body.about .group .ttl-03 .en:before {
        width: 26px;
        top: 27px; } }
    @media only screen and (max-width: 767px) {
      body.about .group .ttl-03 .ja {
        font-size: 24px;
        font-size: 2.4rem;
        letter-spacing: .039em;
        margin-left: 0; } }
    body.about .group .groupbox {
      margin-top: 75px;
      background-color: #fff;
      border-left: 2px solid #42BCC6; }
      @media only screen and (min-width: 768px) {
        body.about .group .groupbox {
          display: flex;
          justify-content: space-between;
          padding: 39px 70px 35px 30px; } }
      @media only screen and (max-width: 767px) {
        body.about .group .groupbox {
          margin-top: 51px;
          padding: 24px 28px 21px; } }
      @media only screen and (min-width: 768px) {
        body.about .group .groupbox__left {
          width: 47%;
          max-width: 400px; } }
      @media only screen and (min-width: 768px) {
        body.about .group .groupbox__right {
          width: 51%;
          max-width: 430px; } }
      body.about .group .groupbox__ttl {
        font-size: 20px;
        font-size: 2rem;
        line-height: 30px;
        font-family: "Noto Sans JP", sans-serif;
        padding-left: 17px;
        position: relative; }
        @media only screen and (max-width: 767px) {
          body.about .group .groupbox__ttl {
            font-size: 18px;
            font-size: 1.8rem;
            line-height: 26px;
            padding-left: 19px; } }
        body.about .group .groupbox__ttl:before {
          content: "";
          width: 6px;
          height: 8px;
          background-image: url(../images/about/arw.png);
          background-repeat: no-repeat;
          background-position: center;
          background-size: contain;
          position: absolute;
          top: 10px;
          left: 2px; }
          @media only screen and (max-width: 767px) {
            body.about .group .groupbox__ttl:before {
              width: 10px;
              height: 14px;
              background-image: url(../images/about/arw_sp.png);
              top: 7px;
              left: 0; } }
      body.about .group .groupbox__ttl02 {
        margin-top: 19px;
        font-size: 15px;
        font-size: 1.5rem;
        line-height: 25px;
        font-weight: bold;
        color: #fff;
        background-color: #42BCC6;
        padding: 3px 16px; }
        @media only screen and (max-width: 767px) {
          body.about .group .groupbox__ttl02 {
            margin-top: 24px; } }
      body.about .group .groupbox__dt {
        margin-top: 12px;
        font-size: 15px;
        font-size: 1.5rem;
        line-height: 24px; }
        @media only screen and (max-width: 767px) {
          body.about .group .groupbox__dt {
            margin-top: 19px;
            line-height: 28px; } }
      body.about .group .groupbox__lst {
        margin-top: 12px; }
        @media only screen and (max-width: 767px) {
          body.about .group .groupbox__lst {
            margin-bottom: 2px; } }
        body.about .group .groupbox__lst li {
          font-size: 15px;
          font-size: 1.5rem;
          line-height: 22px;
          position: relative;
          padding-left: 12px; }
          @media only screen and (max-width: 767px) {
            body.about .group .groupbox__lst li {
              line-height: 24px;
              padding-left: 25px; } }
          body.about .group .groupbox__lst li:not(:first-child) {
            margin-top: 8px; }
            @media only screen and (max-width: 767px) {
              body.about .group .groupbox__lst li:not(:first-child) {
                margin-top: 5px; } }
          body.about .group .groupbox__lst li:before {
            content: "-";
            font-size: 15px;
            font-size: 1.5rem;
            line-height: 24px;
            font-weight: bold;
            color: #F9CF00;
            position: absolute;
            top: -2px;
            left: 0; }
            @media only screen and (max-width: 767px) {
              body.about .group .groupbox__lst li:before {
                left: 6px; } }
    body.about .group .btn-group {
      width: 370px;
      max-width: 100%;
      display: block;
      margin: 56px auto 0;
      position: relative;
      overflow: hidden;
      -webkit-mask-image: -webkit-radial-gradient(white, black);
      text-decoration: none;
      border: 1px solid #42bcc6;
      background-color: #42bcc6;
      border-radius: 5px;
      text-align: center;
      outline: none;
      transition: ease .2s; }
      @media only screen and (max-width: 767px) {
        body.about .group .btn-group {
          margin-top: 37px; } }
      body.about .group .btn-group::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        z-index: 2;
        background: #fff;
        width: 100%;
        height: 100%;
        transition: transform 0.5s cubic-bezier(0.8, 0, 0.2, 1) 0s;
        transform: scale(0, 1);
        transform-origin: right top; }
      body.about .group .btn-group span {
        position: relative;
        z-index: 3;
        color: #fff;
        transition: color .2s;
        display: block;
        font-size: 18px;
        font-size: 1.8rem;
        font-family: "Noto Sans JP", sans-serif;
        font-weight: bold;
        line-height: 30px;
        padding: 19px 0;
        letter-spacing: .04em; }
        @media only screen and (max-width: 767px) {
          body.about .group .btn-group span {
            font-size: 16px;
            font-size: 1.6rem;
            line-height: 24px;
            padding: 17px 0; } }
        body.about .group .btn-group span::before, body.about .group .btn-group span::after {
          content: "";
          position: absolute;
          top: 50%; }
        body.about .group .btn-group span::before {
          z-index: 4;
          right: 24px;
          border-radius: 50%;
          width: 22px;
          height: 22px;
          background-color: #fff;
          margin-top: -11px;
          transition: background-color .2s; }
          @media only screen and (max-width: 767px) {
            body.about .group .btn-group span::before {
              right: 20px; } }
        body.about .group .btn-group span::after {
          right: 31px;
          z-index: 5;
          margin-top: -5px;
          width: 0;
          height: 0;
          border-style: solid;
          border-width: 5px 0 5px 6px;
          border-color: transparent transparent transparent #42bcc6;
          transition: border-color .2s; }
          @media only screen and (max-width: 767px) {
            body.about .group .btn-group span::after {
              right: 27px; } }
      @media only screen and (min-width: 768px) {
        body.about .group .btn-group:hover::before {
          transform-origin: left top;
          transform: scale(1, 1); }
        body.about .group .btn-group:hover span {
          color: #42bcc6; }
          body.about .group .btn-group:hover span::before {
            background-color: #42bcc6; }
          body.about .group .btn-group:hover span::after {
            border-color: transparent transparent transparent #fff; } }

body.brand .wrap {
  overflow: hidden; }

body.brand main {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }
  @media only screen and (max-width: 767px) {
    body.brand main {
      overflow-y: scroll; } }

body.brand .c-btnbox .btn {
  width: 370px;
  max-width: 100%;
  display: block;
  position: relative;
  overflow: hidden;
  border-radius: 5px;
  -webkit-mask-image: -webkit-radial-gradient(white, black);
  text-decoration: none;
  border: 1px solid #f59e9f;
  background-color: #f59e9f;
  text-align: center;
  outline: none;
  transition: ease .2s; }
  body.brand .c-btnbox .btn::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    background: #fff;
    width: 100%;
    height: 100%;
    transition: transform 0.5s cubic-bezier(0.8, 0, 0.2, 1) 0s;
    transform: scale(0, 1);
    transform-origin: right top; }
  body.brand .c-btnbox .btn span {
    position: relative;
    z-index: 3;
    color: #fff;
    transition: color .2s;
    display: block;
    font-size: 18px;
    font-size: 1.8rem;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: bold;
    line-height: 30px;
    padding: 19px 0; }
    @media only screen and (max-width: 767px) {
      body.brand .c-btnbox .btn span {
        font-size: 16px;
        font-size: 1.6rem;
        line-height: 24px;
        padding: 17px 0;
        letter-spacing: .04em; } }
    body.brand .c-btnbox .btn span::before, body.brand .c-btnbox .btn span::after {
      content: "";
      position: absolute;
      top: 50%; }
    body.brand .c-btnbox .btn span::before {
      z-index: 4;
      right: 24px;
      border-radius: 50%;
      width: 22px;
      height: 22px;
      background-color: #fff;
      margin-top: -11px;
      transition: background-color .2s; }
      @media only screen and (max-width: 767px) {
        body.brand .c-btnbox .btn span::before {
          right: 20px;
          width: 15px;
          height: 15px;
          margin-top: -7px; } }
    body.brand .c-btnbox .btn span::after {
      right: 31px;
      z-index: 5;
      margin-top: -5px;
      width: 0;
      height: 0;
      border-style: solid;
      border-width: 5px 0 5px 6px;
      border-color: transparent transparent transparent #f59e9f;
      transition: border-color .2s; }
      @media only screen and (max-width: 767px) {
        body.brand .c-btnbox .btn span::after {
          right: 25px;
          margin-top: -3px;
          border-width: 3.5px 0 3.5px 4px; } }
  @media only screen and (min-width: 768px) {
    body.brand .c-btnbox .btn:hover::before {
      transform-origin: left top;
      transform: scale(1, 1); }
    body.brand .c-btnbox .btn:hover span {
      color: #f59e9f; }
      body.brand .c-btnbox .btn:hover span::before {
        background-color: #f59e9f; }
      body.brand .c-btnbox .btn:hover span::after {
        border-color: transparent transparent transparent #fff; } }

@media only screen and (max-width: 767px) {
  body.brand .c-btnbox {
    text-align: center; }
    body.brand .c-btnbox .btn {
      max-width: 370px;
      width: 100%;
      display: inline-block; } }

body.brand .anchorbox {
  background: #f8f8f8;
  padding: 120px 0;
  margin-top: 9px; }
  @media only screen and (max-width: 767px) {
    body.brand .anchorbox {
      padding: 50px 0;
      margin-top: 0; } }
  body.brand .anchorbox .list {
    display: flex; }
    body.brand .anchorbox .list li {
      width: 50%; }
      body.brand .anchorbox .list li:nth-child(odd) {
        padding-right: 10px; }
      body.brand .anchorbox .list li:nth-child(even) {
        padding-left: 10px; }
    @media only screen and (max-width: 767px) {
      body.brand .anchorbox .list {
        display: block; }
        body.brand .anchorbox .list li {
          width: 100%; }
          body.brand .anchorbox .list li:nth-child(odd) {
            padding-right: 0;
            margin-bottom: 8px; }
          body.brand .anchorbox .list li:nth-child(even) {
            padding-left: 0; } }
    body.brand .anchorbox .list .btn {
      display: block;
      position: relative;
      border-radius: 5px;
      overflow: hidden;
      -webkit-mask-image: -webkit-radial-gradient(white, black);
      text-decoration: none;
      border: 2px solid #1150a1;
      background-color: #fff;
      text-align: center;
      outline: none;
      transition: ease .2s; }
      @media only screen and (max-width: 767px) {
        body.brand .anchorbox .list .btn {
          border: 1px solid #1150a1; } }
      body.brand .anchorbox .list .btn::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        z-index: 2;
        background: #1150a1;
        width: 100%;
        height: 100%;
        transition: transform 0.5s cubic-bezier(0.8, 0, 0.2, 1) 0s;
        transform: scale(0, 1);
        transform-origin: right top; }
      body.brand .anchorbox .list .btn span {
        position: relative;
        z-index: 3;
        transition: color .2s;
        display: block;
        font-size: 24px;
        font-size: 2.4rem;
        font-family: "Noto Sans JP", sans-serif;
        line-height: 28px;
        padding: 45px 0; }
        @media only screen and (max-width: 767px) {
          body.brand .anchorbox .list .btn span {
            font-size: 16px;
            font-size: 1.6rem;
            line-height: 24px;
            padding: 16px 0;
            letter-spacing: .04em; } }
        body.brand .anchorbox .list .btn span::before, body.brand .anchorbox .list .btn span::after {
          content: "";
          position: absolute;
          top: 50%; }
        body.brand .anchorbox .list .btn span::before {
          z-index: 4;
          right: 49px;
          border-radius: 50%;
          width: 22px;
          height: 22px;
          background-color: #1150a1;
          margin-top: -11px;
          transition: background-color .2s; }
          @media only screen and (max-width: 767px) {
            body.brand .anchorbox .list .btn span::before {
              right: 22px;
              width: 15px;
              height: 15px;
              margin-top: -7px; } }
        body.brand .anchorbox .list .btn span::after {
          right: 55px;
          z-index: 5;
          margin-top: -2px;
          width: 0;
          height: 0;
          border-left: 5px solid transparent;
          border-right: 5px solid transparent;
          border-top: 6px solid #fff;
          transition: border-color .2s; }
          @media only screen and (max-width: 767px) {
            body.brand .anchorbox .list .btn span::after {
              right: 26px;
              margin-top: -1px;
              border-left: 3.5px solid transparent;
              border-right: 3.5px solid transparent;
              border-top: 4px solid #fff; } }
      body.brand .anchorbox .list .btn.btn1 {
        border: 2px solid #f59e9f; }
        body.brand .anchorbox .list .btn.btn1::before {
          background-color: #f59e9f; }
        body.brand .anchorbox .list .btn.btn1 span::before {
          background-color: #f59e9f; }
        @media only screen and (max-width: 767px) {
          body.brand .anchorbox .list .btn.btn1 {
            border: 1px solid #f59e9f; } }
      @media only screen and (min-width: 768px) {
        body.brand .anchorbox .list .btn:hover::before {
          transform-origin: left top;
          transform: scale(1, 1); }
        body.brand .anchorbox .list .btn:hover span {
          color: #fff; }
          body.brand .anchorbox .list .btn:hover span::before {
            background-color: #fff; }
          body.brand .anchorbox .list .btn:hover span::after {
            border-top: 6px solid #1150a1; }
        body.brand .anchorbox .list .btn.btn1:hover span::after {
          border-top: 6px solid #f59e9f; } }

body.brand .anchor_brand {
  position: relative; }
  body.brand .anchor_brand > div {
    width: 100%;
    height: 1px;
    position: absolute;
    top: 0;
    left: 0; }
    @media only screen and (max-width: 767px) {
      body.brand .anchor_brand > div {
        top: -30px; } }

body.brand .brand_mainbox {
  position: relative;
  z-index: 1;
  display: flex; }
  @media only screen and (min-width: 1400px) {
    body.brand .brand_mainbox {
      align-items: center; } }
  body.brand .brand_mainbox .box {
    width: 50%;
    position: relative; }
    body.brand .brand_mainbox .box .bg {
      position: absolute;
      display: block;
      bottom: 0;
      left: 0;
      width: calc(100% + 35px); }
      body.brand .brand_mainbox .box .bg img {
        width: 100%; }
    body.brand .brand_mainbox .box .ttl {
      font-size: 42px;
      font-size: 4.2rem;
      line-height: 1;
      color: #f59e9f;
      font-family: "Noto Sans JP", sans-serif; }
    body.brand .brand_mainbox .box .txt {
      max-width: 520px;
      width: 100%;
      margin-top: 49px;
      font-size: 18px;
      font-size: 1.8rem;
      line-height: 42px; }
    @media only screen and (max-width: 1080px) {
      body.brand .brand_mainbox .box .ttl {
        font-size: 36px;
        font-size: 3.6rem; }
      body.brand .brand_mainbox .box .txt {
        margin-top: 40px;
        font-size: 16px;
        font-size: 1.6rem;
        line-height: 34px; } }
    @media only screen and (max-width: 880px) {
      body.brand .brand_mainbox .box .ttl {
        font-size: 32px;
        font-size: 3.2rem; }
      body.brand .brand_mainbox .box .txt {
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 28px; } }
  body.brand .brand_mainbox .lbox {
    padding-right: 40px;
    padding-bottom: 150px; }
    body.brand .brand_mainbox .lbox .img {
      position: relative;
      z-index: 1;
      margin-top: -40px; }
      body.brand .brand_mainbox .lbox .img img {
        width: 100%; }
  body.brand .brand_mainbox .rbox {
    padding-left: 20px; }
    @media only screen and (max-width: 1400px) {
      body.brand .brand_mainbox .rbox {
        padding-top: 94px; } }
    @media only screen and (max-width: 1200px) {
      body.brand .brand_mainbox .rbox {
        padding-top: 50px; } }
  @media only screen and (max-width: 767px) {
    body.brand .brand_mainbox {
      display: block;
      padding: 0 25px;
      padding-top: 60px; }
      body.brand .brand_mainbox .box {
        width: 100%; }
        body.brand .brand_mainbox .box .bg {
          max-width: 480px;
          width: calc(100% - 15px);
          left: -25px; }
        body.brand .brand_mainbox .box .ttl {
          font-size: 24px;
          font-size: 2.4rem; }
        body.brand .brand_mainbox .box .txt {
          max-width: 100%;
          margin-top: 0;
          font-size: 16px;
          font-size: 1.6rem;
          line-height: 26px;
          position: relative;
          z-index: 1; }
      body.brand .brand_mainbox .lbox {
        padding-right: 0;
        padding-bottom: 0; }
        body.brand .brand_mainbox .lbox .img {
          margin-top: 30px; }
      body.brand .brand_mainbox .rbox {
        padding-left: 0;
        padding-top: 0;
        margin-top: 30px;
        position: relative;
        padding-bottom: 55px; } }

body.brand .brand_mainbox_blue {
  margin-top: 121px; }
  @media only screen and (max-width: 767px) {
    body.brand .brand_mainbox_blue {
      margin-top: 0;
      padding-top: 70px; } }
  body.brand .brand_mainbox_blue .box .ttl {
    line-height: 58px;
    color: #42bcc6; }
    @media only screen and (max-width: 767px) {
      body.brand .brand_mainbox_blue .box .ttl {
        line-height: 34px; } }
  @media only screen and (min-width: 768px) {
    body.brand .brand_mainbox_blue .rbox {
      padding-top: 42px; }
      body.brand .brand_mainbox_blue .rbox .txt {
        margin-top: 36px; } }
  @media only screen and (min-width: 768px) {
    body.brand .brand_mainbox_blue .lbox .img {
      margin-top: 0; } }

body.brand .brand_wrrap .brand_box {
  margin-bottom: 80px; }
  body.brand .brand_wrrap .brand_box:last-child {
    margin-bottom: 0; }

body.brand .brand_box .headbox {
  background: #ff888a;
  background: linear-gradient(90deg, #ff888a 0%, #fdbb75 100%);
  color: #fff;
  display: flex; }
  @media only screen and (min-width: 1360px) {
    body.brand .brand_box .headbox {
      align-items: center; } }
  @media only screen and (max-width: 767px) {
    body.brand .brand_box .headbox {
      background: #ff888a;
      background: linear-gradient(270deg, #ff888a 0%, #fea47f 51%, #fdbb75 100%); } }
  body.brand .brand_box .headbox .img {
    width: 58.59375%;
    position: relative;
    z-index: 2; }
    body.brand .brand_box .headbox .img img {
      width: 100%; }
  body.brand .brand_box .headbox .txtbox {
    padding-left: calc( (100% - 1000px) / 2);
    width: 41.40625%;
    font-weight: bold; }
    @media only screen and (max-width: 1360px) {
      body.brand .brand_box .headbox .txtbox {
        padding-top: 80px; } }
    @media only screen and (max-width: 1160px) {
      body.brand .brand_box .headbox .txtbox {
        padding-top: 40px; } }
    @media only screen and (max-width: 1040px) {
      body.brand .brand_box .headbox .txtbox {
        padding-left: 25px; } }
    body.brand .brand_box .headbox .txtbox .lbl span {
      display: inline-block;
      border: 2px solid #fff;
      text-transform: uppercase;
      font-family: "Raleway", sans-serif;
      font-size: 16px;
      font-size: 1.6rem;
      line-height: 25px;
      text-align: center;
      letter-spacing: 0.1em;
      padding: 0 14px; }
      body.brand .brand_box .headbox .txtbox .lbl span small {
        display: inline-block;
        padding-left: 5px;
        font-family: "Lato", sans-serif;
        letter-spacing: 0.05em; }
    body.brand .brand_box .headbox .txtbox .txten {
      font-size: 36px;
      font-size: 3.6rem;
      line-height: 1;
      margin-top: 36px;
      font-family: "游ゴシック体", "游ゴシック", "YuGothic", "Yu Gothic", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif; }
    body.brand .brand_box .headbox .txtbox .txtjp {
      font-size: 18px;
      font-size: 1.8rem;
      line-height: 1;
      margin-top: 15px;
      font-family: "Noto Sans JP", sans-serif; }
    body.brand .brand_box .headbox .txtbox .txt {
      font-size: 18px;
      font-size: 1.8rem;
      line-height: 1;
      margin-top: 50px;
      font-family: "游ゴシック体", "游ゴシック", "YuGothic", "Yu Gothic", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif; }
      body.brand .brand_box .headbox .txtbox .txt span {
        display: inline-block;
        padding: 0 15px;
        margin-right: 20px;
        border-left: 1px solid #fff;
        border-right: 1px solid #fff; }
    @media only screen and (max-width: 980px) {
      body.brand .brand_box .headbox .txtbox .txten,
      body.brand .brand_box .headbox .txtbox .txt {
        margin-top: 25px; } }
    @media only screen and (max-width: 860px) {
      body.brand .brand_box .headbox .txtbox .txten,
      body.brand .brand_box .headbox .txtbox .txt,
      body.brand .brand_box .headbox .txtbox .txtjp {
        margin-top: 15px; } }
  @media only screen and (max-width: 767px) {
    body.brand .brand_box .headbox {
      margin-top: 65px;
      padding-bottom: 60px;
      position: relative;
      background: #ff888a;
      background: linear-gradient(90deg, #ff888a 0%, #fea47f 51%, #fdbb75 100%); }
      body.brand .brand_box .headbox .img {
        width: 54%; }
        body.brand .brand_box .headbox .img img {
          position: relative;
          top: -36px; }
      body.brand .brand_box .headbox .txtbox {
        width: 46%;
        padding: 40px 0 0 25px; }
        body.brand .brand_box .headbox .txtbox .lbl span {
          border: 1px solid #fff;
          font-size: 12px;
          font-size: 1.2rem;
          line-height: 18px;
          letter-spacing: 0.05em;
          padding: 1px 12px 0; }
          body.brand .brand_box .headbox .txtbox .lbl span small {
            letter-spacing: 0.025em; }
        body.brand .brand_box .headbox .txtbox .txten {
          font-size: 21px;
          font-size: 2.1rem;
          margin-top: 20px; }
        body.brand .brand_box .headbox .txtbox .txtjp {
          font-size: 13px;
          font-size: 1.3rem;
          margin-top: 15px; }
        body.brand .brand_box .headbox .txtbox .txt {
          font-size: 14px;
          font-size: 1.4rem;
          margin-top: 30px; }
          body.brand .brand_box .headbox .txtbox .txt span {
            padding: 0 10px;
            margin-right: 10px; } }
      @media only screen and (max-width: 767px) and (max-width: 440px) {
        body.brand .brand_box .headbox .txtbox .txt {
          margin-right: 0;
          position: absolute;
          left: 25px;
          bottom: 55px; } }

body.brand .brand_box .itembox {
  margin-top: 80px;
  background-color: #f9f8ea;
  padding: 0 20px 80px; }
  @media only screen and (max-width: 1200px) {
    body.brand .brand_box .itembox {
      padding-left: 0; } }
  body.brand .brand_box .itembox .innerwrap {
    position: relative;
    max-width: 1160px;
    width: 100%;
    margin: 0 auto;
    padding: 0 40px 80px 80px;
    z-index: 1; }
    body.brand .brand_box .itembox .innerwrap:before {
      display: block;
      content: "";
      position: absolute;
      left: 0;
      bottom: 0;
      width: 62%;
      height: calc(100% + 115px);
      background-color: #fff; }
    @media only screen and (max-width: 1200px) {
      body.brand .brand_box .itembox .innerwrap {
        padding-left: calc( (100% - 1000px) / 2); } }
    @media only screen and (max-width: 1060px) {
      body.brand .brand_box .itembox .innerwrap {
        padding-left: 20px;
        padding-right: 0; } }
    @media only screen and (max-width: 880px) {
      body.brand .brand_box .itembox .innerwrap:before {
        width: 67%; } }
    @media only screen and (max-width: 790px) {
      body.brand .brand_box .itembox .innerwrap:before {
        width: 70%; } }
  body.brand .brand_box .itembox .ttlmain {
    margin-bottom: 0;
    position: relative;
    top: -44px; }
    body.brand .brand_box .itembox .ttlmain span {
      display: inline-block;
      font-size: 24px;
      font-size: 2.4rem;
      line-height: 36px;
      font-weight: bold; }
  body.brand .brand_box .itembox .c-btnbox {
    margin-top: 35px; }
  body.brand .brand_box .itembox .txtbox {
    position: relative;
    z-index: 1; }
  body.brand .brand_box .itembox .box {
    display: flex; }
    @media only screen and (min-width: 768px) {
      body.brand .brand_box .itembox .box {
        margin-top: -12px; } }
    body.brand .brand_box .itembox .box .item {
      width: 50%;
      display: inline-block;
      vertical-align: top;
      font-size: 0; }
      body.brand .brand_box .itembox .box .item:nth-child(odd) {
        padding-right: 5px; }
      body.brand .brand_box .itembox .box .item:nth-child(even) {
        padding-left: 5px; }
      body.brand .brand_box .itembox .box .item img {
        width: 100%;
        display: block; }
    body.brand .brand_box .itembox .box .rbox {
      max-width: 440px;
      width: 100%;
      font-size: 0;
      padding-top: 40px;
      letter-spacing: 0; }
    body.brand .brand_box .itembox .box .lbox {
      max-width: calc(100% - 440px);
      width: 100%;
      padding-right: 80px; }
    body.brand .brand_box .itembox .box .txt {
      padding-top: 35px;
      border-top: 1px solid #e6e6e6;
      font-size: 15px;
      font-size: 1.5rem;
      line-height: 24px;
      text-align: justify; }
    @media only screen and (max-width: 992px) {
      body.brand .brand_box .itembox .box .rbox {
        max-width: 45%; }
      body.brand .brand_box .itembox .box .lbox {
        max-width: 55%;
        padding-right: 40px; } }
  @media only screen and (max-width: 767px) {
    body.brand .brand_box .itembox {
      margin-top: 0;
      background-color: #fff;
      padding: 0 20px 30px;
      position: relative; }
      body.brand .brand_box .itembox:after {
        content: "";
        display: block;
        width: 100%;
        height: calc(100% - 60px);
        bottom: 0;
        left: 0;
        position: absolute;
        background-color: #f9f8ea; }
      body.brand .brand_box .itembox .innerwrap {
        max-width: 100%;
        padding: 0 20px 40px;
        background-color: #fff;
        position: relative;
        z-index: 1; }
        body.brand .brand_box .itembox .innerwrap:before {
          width: 100%;
          height: 100px;
          bottom: auto;
          top: -30px; }
      body.brand .brand_box .itembox .ttlmain {
        margin-bottom: 10px;
        top: -5px; }
        body.brand .brand_box .itembox .ttlmain span {
          font-size: 16px;
          font-size: 1.6rem;
          line-height: 26px; }
      body.brand .brand_box .itembox .c-btnbox {
        margin-top: 40px; }
      body.brand .brand_box .itembox .box {
        display: block; }
        body.brand .brand_box .itembox .box .item:nth-child(odd) {
          padding-right: 3px; }
        body.brand .brand_box .itembox .box .item:nth-child(even) {
          padding-left: 3px; }
        body.brand .brand_box .itembox .box .img {
          margin-top: 35px;
          font-size: 0;
          letter-spacing: 0; }
        body.brand .brand_box .itembox .box .lbox {
          max-width: 100%;
          padding-right: 0; }
        body.brand .brand_box .itembox .box .txt {
          padding-top: 15px; } }

body.brand .brand_box .youtubebox {
  background-color: #f8f8f8;
  padding: 0 20px 80px; }
  @media only screen and (max-width: 767px) {
    body.brand .brand_box .youtubebox {
      background: #fff;
      padding-top: 30px;
      padding-bottom: 0; } }
  body.brand .brand_box .youtubebox .innerwrap {
    width: 1000px;
    max-width: 100%;
    margin: auto; }
    @media only screen and (max-width: 767px) {
      body.brand .brand_box .youtubebox .innerwrap {
        width: 294px; } }
  body.brand .brand_box .youtubebox__title {
    font-size: 24px;
    line-height: 34px;
    font-weight: 500;
    padding-left: 35px;
    padding-bottom: 10px;
    border-bottom: 2px dotted #42bcc6;
    background-repeat: no-repeat;
    background-position: left top 7px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20px' height='20px'%3E%3Cpath fill-rule='evenodd' fill='rgb(93, 178, 204)' d='M10.0,0.0 L20.0,0.0 L20.0,9.999 L10.0,9.999 L10.0,0.0 Z'/%3E%3Cpath fill-rule='evenodd' fill='rgb(93, 178, 204)' d='M0.0,9.999 L10.0,9.999 L10.0,19.999 L0.0,19.999 L0.0,9.999 Z'/%3E%3C/svg%3E"); }
    @media only screen and (max-width: 767px) {
      body.brand .brand_box .youtubebox__title {
        font-size: 17px;
        line-height: 24px;
        padding-left: 25px;
        background-size: 12px;
        background-position: left top 5px; } }
  body.brand .brand_box .youtubebox .youtubelist {
    margin-top: 40px;
    display: flex; }
    @media only screen and (max-width: 767px) {
      body.brand .brand_box .youtubebox .youtubelist {
        display: block;
        margin-top: 20px; } }
    body.brand .brand_box .youtubebox .youtubelist li {
      width: calc(33.3333% - 20px/3);
      margin-right: 10px;
      position: relative;
      overflow: hidden; }
      body.brand .brand_box .youtubebox .youtubelist li:before {
        content: "";
        display: block;
        width: 100%;
        padding-bottom: 56.25%; }
      @media only screen and (max-width: 767px) {
        body.brand .brand_box .youtubebox .youtubelist li {
          width: 100%;
          margin-right: 0;
          margin-bottom: 20px; }
          body.brand .brand_box .youtubebox .youtubelist li:last-child {
            margin-bottom: 0; } }
      body.brand .brand_box .youtubebox .youtubelist li:nth-child(3n) {
        margin-right: 0; }
      @media only screen and (min-width: 768px) {
        body.brand .brand_box .youtubebox .youtubelist li a {
          transition: all .3s; }
          body.brand .brand_box .youtubebox .youtubelist li a:hover {
            opacity: 0.7; } }
      body.brand .brand_box .youtubebox .youtubelist li iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%; }

body.brand .brand_box_even .headbox {
  background: #ff888a;
  background: linear-gradient(270deg, #ff888a 0%, #fdbb75 100%);
  flex-direction: row-reverse; }
  body.brand .brand_box_even .headbox .txtbox {
    padding-left: 80px; }
  @media only screen and (max-width: 767px) {
    body.brand .brand_box_even .headbox {
      position: relative; }
      body.brand .brand_box_even .headbox .txtbox {
        padding-left: 25px; } }
    @media only screen and (max-width: 767px) and (max-width: 440px) {
      body.brand .brand_box_even .headbox .txtbox .txt {
        margin-right: 0;
        position: absolute;
        left: 25px;
        bottom: 55px; } }

@media only screen and (min-width: 768px) {
  body.brand .brand_box_even .itembox {
    padding: 0 20px 80px; } }
  @media only screen and (min-width: 768px) and (max-width: 1200px) {
    body.brand .brand_box_even .itembox {
      padding-right: 0; } }

@media only screen and (min-width: 768px) {
    body.brand .brand_box_even .itembox .innerwrap {
      padding: 0 80px 80px 40px; }
      body.brand .brand_box_even .itembox .innerwrap:before {
        left: auto;
        right: 0; } }
    @media only screen and (min-width: 768px) and (max-width: 1200px) {
      body.brand .brand_box_even .itembox .innerwrap {
        padding-right: calc( (100% - 1000px) / 2); } }
    @media only screen and (min-width: 768px) and (max-width: 1060px) {
      body.brand .brand_box_even .itembox .innerwrap {
        padding-left: 0;
        padding-right: 20px; } }

@media only screen and (min-width: 768px) {
    body.brand .brand_box_even .itembox .ttlmain {
      top: -42px;
      margin-bottom: 0;
      text-align: right; }
      body.brand .brand_box_even .itembox .ttlmain span {
        max-width: calc(100% - 440px);
        width: 100%;
        padding-left: 80px;
        text-align: left; } }
      @media only screen and (min-width: 768px) and (max-width: 992px) {
        body.brand .brand_box_even .itembox .ttlmain span {
          padding-left: 40px;
          max-width: 55%; } }

@media only screen and (min-width: 768px) {
    body.brand .brand_box_even .itembox .box {
      flex-direction: row-reverse; }
      body.brand .brand_box_even .itembox .box .lbox {
        padding-right: 0;
        padding-left: 80px; }
      body.brand .brand_box_even .itembox .box .txt {
        padding-top: 36px;
        border-top: 1px solid #e6e6e6;
        font-size: 15px;
        font-size: 1.5rem;
        line-height: 24px;
        text-align: justify; } }
    @media only screen and (min-width: 768px) and (max-width: 992px) {
      body.brand .brand_box_even .itembox .box .rbox {
        max-width: 45%; }
      body.brand .brand_box_even .itembox .box .lbox {
        max-width: 55%;
        padding-left: 40px; } }

body.brand .brand_wrrap_blue {
  margin-bottom: 200px; }
  @media only screen and (max-width: 767px) {
    body.brand .brand_wrrap_blue {
      margin-bottom: 125px; } }
  body.brand .brand_wrrap_blue .c-btnbox .btn {
    border: 1px solid #1150a1;
    background-color: #1150a1; }
    body.brand .brand_wrrap_blue .c-btnbox .btn span::after {
      border-color: transparent transparent transparent #1150a1; }
    @media only screen and (min-width: 768px) {
      body.brand .brand_wrrap_blue .c-btnbox .btn:hover span {
        color: #1150a1; }
        body.brand .brand_wrrap_blue .c-btnbox .btn:hover span::before {
          background-color: #1150a1; }
        body.brand .brand_wrrap_blue .c-btnbox .btn:hover span::after {
          border-color: transparent transparent transparent #fff; } }
  body.brand .brand_wrrap_blue .brand_box .headbox {
    background: #0c53a8;
    background: linear-gradient(90deg, #0c53a8 0%, #0d7fbd 36%, #357cbc 100%); }
    @media only screen and (max-width: 767px) {
      body.brand .brand_wrrap_blue .brand_box .headbox {
        background: #0c54a8;
        background: linear-gradient(270deg, #0c54a8 0%, #107fbd 51%, #367cbc 100%); } }
  body.brand .brand_wrrap_blue .brand_box .itembox {
    background-color: #f8f8f8; }
    @media only screen and (max-width: 767px) {
      body.brand .brand_wrrap_blue .brand_box .itembox:after {
        background-color: #f8f8f8; } }
  body.brand .brand_wrrap_blue .brand_box_even .headbox {
    background: #0c53a8;
    background: linear-gradient(270deg, #0c53a8 0%, #0d7fbd 36%, #357cbc 100%); }
    @media only screen and (max-width: 767px) {
      body.brand .brand_wrrap_blue .brand_box_even .headbox {
        background: #0c54a8;
        background: linear-gradient(90deg, #0c54a8 0%, #107fbd 51%, #367cbc 100%); } }

body.caution .caution-content {
  padding: 105px 0 200px; }
  @media only screen and (max-width: 767px) {
    body.caution .caution-content {
      padding: 50px 0 125px; } }
  body.caution .caution-content p {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 28px; }
    @media only screen and (max-width: 767px) {
      body.caution .caution-content p {
        line-height: 24px;
        text-align: justify; } }
  body.caution .caution-content .content-buttonbox {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    padding-bottom: 95px; }
    @media only screen and (max-width: 767px) {
      body.caution .caution-content .content-buttonbox {
        padding-bottom: 48px; } }
    body.caution .caution-content .content-buttonbox li {
      width: 33%;
      max-width: 330px;
      text-align: center;
      background: #f8f8f8;
      font-size: 18px;
      font-size: 1.8rem;
      font-family: "Noto Sans JP", sans-serif;
      margin-bottom: 5px;
      position: relative;
      transition: color 0.5s;
      z-index: 0;
      border: none; }
      @media only screen and (max-width: 767px) {
        body.caution .caution-content .content-buttonbox li {
          width: 49%;
          max-width: 49%;
          font-size: 15px;
          font-size: 1.5rem;
          margin-bottom: -4px;
          text-align: left; } }
      body.caution .caution-content .content-buttonbox li:before {
        content: "";
        position: absolute;
        left: 0;
        top: 0;
        background-color: #5db2cc;
        z-index: -1;
        transform: scaleX(0);
        transform-origin: 100% 0;
        transition: transform 0.5s; }
      body.caution .caution-content .content-buttonbox li::after {
        content: "";
        position: absolute;
        width: 20px;
        height: 20px;
        display: block;
        background-image: url("../images/caution/arrow.png");
        background-repeat: no-repeat;
        background-size: contain;
        right: 30px;
        top: 32px; }
        @media only screen and (max-width: 767px) {
          body.caution .caution-content .content-buttonbox li::after {
            width: 15px;
            height: 15px;
            right: 15px;
            top: 22px; } }
      body.caution .caution-content .content-buttonbox li a {
        padding: 30px 0 32px;
        display: block; }
        @media only screen and (max-width: 767px) {
          body.caution .caution-content .content-buttonbox li a {
            padding: 22px 0 23px 15px; } }
      body.caution .caution-content .content-buttonbox li:hover {
        color: #fff; }
        body.caution .caution-content .content-buttonbox li:hover::after {
          background-image: url("../images/caution/arrow-hover.png"); }
        body.caution .caution-content .content-buttonbox li:hover:before {
          transform: scaleX(1);
          transform-origin: 0 0;
          color: #000; }
    @media only screen and (max-width: 767px) {
      body.caution .caution-content .content-buttonbox .l-h {
        line-height: 22px; }
        body.caution .caution-content .content-buttonbox .l-h a {
          padding: 8px 0 8px 15px; } }
  body.caution .caution-content .content-buttonbox02 {
    line-height: 24px; }
    @media only screen and (max-width: 767px) {
      body.caution .caution-content .content-buttonbox02 {
        line-height: 22px; } }
    body.caution .caution-content .content-buttonbox02 a {
      padding: 15px 0 17px !important; }
      @media only screen and (max-width: 767px) {
        body.caution .caution-content .content-buttonbox02 a {
          padding: 8px 0 8px 15px !important; } }
    @media only screen and (max-width: 767px) {
      body.caution .caution-content .content-buttonbox02 .l-h-3 {
        line-height: 16px;
        font-size: 13px;
        font-size: 1.3rem; }
        body.caution .caution-content .content-buttonbox02 .l-h-3 a {
          padding: 6px 0 6px 15px !important; } }
  body.caution .caution-content .buttonbox {
    background: #f8f8f8;
    padding: 120px 0;
    font-size: 24px;
    font-size: 2.4rem;
    font-family: "Noto Sans JP", sans-serif; }
    @media only screen and (max-width: 767px) {
      body.caution .caution-content .buttonbox {
        font-size: 16px;
        font-size: 1.6rem;
        padding: 48px 0 43px; } }
    body.caution .caution-content .buttonbox .buttonbox-content {
      display: flex;
      justify-content: space-between; }
      @media only screen and (max-width: 767px) {
        body.caution .caution-content .buttonbox .buttonbox-content {
          display: block; } }
      body.caution .caution-content .buttonbox .buttonbox-content .btn {
        border: 2px #5db2cc solid;
        background: #fff;
        width: 50%;
        max-width: 490px;
        padding: 47px 0;
        text-align: center;
        position: relative;
        transition: color 0.5s;
        z-index: 0; }
        @media only screen and (max-width: 767px) {
          body.caution .caution-content .buttonbox .buttonbox-content .btn {
            width: 100%;
            max-width: 100%;
            border: 1px #5db2cc solid;
            padding: 21px 0;
            margin-bottom: 8px; } }
        body.caution .caution-content .buttonbox .buttonbox-content .btn:before {
          content: "";
          position: absolute;
          left: 0;
          top: 0;
          background-color: #5db2cc;
          z-index: -1;
          transform: scaleX(0);
          transform-origin: 100% 0;
          transition: transform 0.5s; }
        body.caution .caution-content .buttonbox .buttonbox-content .btn::after {
          content: "";
          position: absolute;
          width: 20px;
          height: 20px;
          display: block;
          background-image: url("../images/caution/arrow.png");
          background-repeat: no-repeat;
          background-size: contain;
          right: 48px;
          top: 48px; }
          @media only screen and (max-width: 767px) {
            body.caution .caution-content .buttonbox .buttonbox-content .btn::after {
              width: 15px;
              height: 15px;
              right: 22px;
              top: 22px; } }
        body.caution .caution-content .buttonbox .buttonbox-content .btn:hover {
          color: #fff; }
          body.caution .caution-content .buttonbox .buttonbox-content .btn:hover::after {
            background-image: url("../images/caution/arrow-hover.png"); }
          body.caution .caution-content .buttonbox .buttonbox-content .btn:hover:before {
            transform: scaleX(1);
            transform-origin: 0 0;
            color: #000; }
  body.caution .caution-content .content01 {
    padding: 120px 0 0; }
    @media only screen and (max-width: 767px) {
      body.caution .caution-content .content01 {
        padding: 60px 0 0; } }
  body.caution .caution-content .content02 {
    padding: 150px 0 0; }
    @media only screen and (max-width: 767px) {
      body.caution .caution-content .content02 {
        padding: 50px 0 0; } }
  body.caution .caution-content .content01 .ttl-01,
  body.caution .caution-content .content02 .ttl-01 {
    margin-bottom: 60px; }
    @media only screen and (max-width: 767px) {
      body.caution .caution-content .content01 .ttl-01,
      body.caution .caution-content .content02 .ttl-01 {
        margin-bottom: 26px;
        text-align: center; }
        body.caution .caution-content .content01 .ttl-01::before,
        body.caution .caution-content .content02 .ttl-01::before {
          right: 0; } }
  body.caution .caution-content .content01 .komokubox,
  body.caution .caution-content .content02 .komokubox {
    background: #f8f8f8;
    padding: 100px 0; }
    @media only screen and (max-width: 767px) {
      body.caution .caution-content .content01 .komokubox,
      body.caution .caution-content .content02 .komokubox {
        padding: 50px 0; } }
    body.caution .caution-content .content01 .komokubox .komokuboxcontent,
    body.caution .caution-content .content02 .komokubox .komokuboxcontent {
      background: #fff;
      padding: 80px 60px 75px; }
      @media only screen and (max-width: 767px) {
        body.caution .caution-content .content01 .komokubox .komokuboxcontent,
        body.caution .caution-content .content02 .komokubox .komokuboxcontent {
          padding: 30px 15px 25px; } }
      body.caution .caution-content .content01 .komokubox .komokuboxcontent li,
      body.caution .caution-content .content02 .komokubox .komokuboxcontent li {
        margin-bottom: 70px; }
        @media only screen and (max-width: 767px) {
          body.caution .caution-content .content01 .komokubox .komokuboxcontent li,
          body.caution .caution-content .content02 .komokubox .komokuboxcontent li {
            margin-bottom: 35px; } }
        body.caution .caution-content .content01 .komokubox .komokuboxcontent li .tith4,
        body.caution .caution-content .content02 .komokubox .komokuboxcontent li .tith4 {
          margin-bottom: 32px; }
          @media only screen and (max-width: 767px) {
            body.caution .caution-content .content01 .komokubox .komokuboxcontent li .tith4,
            body.caution .caution-content .content02 .komokubox .komokuboxcontent li .tith4 {
              margin-bottom: 15px; } }
        body.caution .caution-content .content01 .komokubox .komokuboxcontent li .detail01,
        body.caution .caution-content .content02 .komokubox .komokuboxcontent li .detail01 {
          background: #f8f8f8;
          padding-bottom: 30px;
          margin: 20px 0 25px; }
          @media only screen and (max-width: 767px) {
            body.caution .caution-content .content01 .komokubox .komokuboxcontent li .detail01,
            body.caution .caution-content .content02 .komokubox .komokuboxcontent li .detail01 {
              padding-bottom: 18px;
              margin: 18px 0 20px; } }
          body.caution .caution-content .content01 .komokubox .komokuboxcontent li .detail01 .detail01list,
          body.caution .caution-content .content02 .komokubox .komokuboxcontent li .detail01 .detail01list {
            display: flex;
            justify-content: space-between;
            flex-wrap: wrap;
            font-size: 18px;
            font-size: 1.8rem;
            padding: 30px 10px 10px 30px; }
            @media only screen and (max-width: 767px) {
              body.caution .caution-content .content01 .komokubox .komokuboxcontent li .detail01 .detail01list,
              body.caution .caution-content .content02 .komokubox .komokuboxcontent li .detail01 .detail01list {
                font-size: 15px;
                font-size: 1.5rem;
                display: block;
                padding: 17px 15px; } }
            body.caution .caution-content .content01 .komokubox .komokuboxcontent li .detail01 .detail01list li,
            body.caution .caution-content .content02 .komokubox .komokuboxcontent li .detail01 .detail01list li {
              margin-bottom: 30px;
              position: relative; }
              @media only screen and (max-width: 767px) {
                body.caution .caution-content .content01 .komokubox .komokuboxcontent li .detail01 .detail01list li,
                body.caution .caution-content .content02 .komokubox .komokuboxcontent li .detail01 .detail01list li {
                  display: flex;
                  line-height: 24px;
                  margin-bottom: 9px; } }
              body.caution .caution-content .content01 .komokubox .komokuboxcontent li .detail01 .detail01list li::before,
              body.caution .caution-content .content02 .komokubox .komokuboxcontent li .detail01 .detail01list li::before {
                content: "";
                position: absolute;
                width: 21px;
                height: 21px;
                display: block;
                background-image: url("../images/caution/check.png");
                background-repeat: no-repeat;
                background-size: contain;
                left: 0;
                top: -1px; }
                @media only screen and (max-width: 767px) {
                  body.caution .caution-content .content01 .komokubox .komokuboxcontent li .detail01 .detail01list li::before,
                  body.caution .caution-content .content02 .komokubox .komokuboxcontent li .detail01 .detail01list li::before {
                    width: 16px;
                    height: 16px;
                    top: 3px; } }
                @media all and (-ms-high-contrast: none) {
                  body.caution .caution-content .content01 .komokubox .komokuboxcontent li .detail01 .detail01list li::before,
                  body.caution .caution-content .content02 .komokubox .komokuboxcontent li .detail01 .detail01list li::before {
                    top: -4px; } }
              body.caution .caution-content .content01 .komokubox .komokuboxcontent li .detail01 .detail01list li span,
              body.caution .caution-content .content02 .komokubox .komokuboxcontent li .detail01 .detail01list li span {
                padding-left: 30px; }
                @media only screen and (max-width: 767px) {
                  body.caution .caution-content .content01 .komokubox .komokuboxcontent li .detail01 .detail01list li span,
                  body.caution .caution-content .content02 .komokubox .komokuboxcontent li .detail01 .detail01list li span {
                    padding-left: 23px; } }
            body.caution .caution-content .content01 .komokubox .komokuboxcontent li .detail01 .detail01list .col-1,
            body.caution .caution-content .content02 .komokubox .komokuboxcontent li .detail01 .detail01list .col-1 {
              width: 43%; }
              @media only screen and (max-width: 767px) {
                body.caution .caution-content .content01 .komokubox .komokuboxcontent li .detail01 .detail01list .col-1,
                body.caution .caution-content .content02 .komokubox .komokuboxcontent li .detail01 .detail01list .col-1 {
                  width: 100%; } }
            body.caution .caution-content .content01 .komokubox .komokuboxcontent li .detail01 .detail01list .col-2,
            body.caution .caution-content .content02 .komokubox .komokuboxcontent li .detail01 .detail01list .col-2 {
              width: 57%; }
              @media only screen and (max-width: 767px) {
                body.caution .caution-content .content01 .komokubox .komokuboxcontent li .detail01 .detail01list .col-2,
                body.caution .caution-content .content02 .komokubox .komokuboxcontent li .detail01 .detail01list .col-2 {
                  width: 100%; } }
          body.caution .caution-content .content01 .komokubox .komokuboxcontent li .detail01 .rednote,
          body.caution .caution-content .content02 .komokubox .komokuboxcontent li .detail01 .rednote {
            font-size: 12px;
            font-size: 1.2rem;
            color: #e80000;
            padding: 0 0 0 30px;
            margin: -10px 0 0;
            display: flex; }
            @media only screen and (max-width: 767px) {
              body.caution .caution-content .content01 .komokubox .komokuboxcontent li .detail01 .rednote,
              body.caution .caution-content .content02 .komokubox .komokuboxcontent li .detail01 .rednote {
                padding: 0 0 0 15px;
                line-height: 17px;
                font-size: 11px;
                font-size: 1.1rem;
                margin: -15px 0 0; } }
        body.caution .caution-content .content01 .komokubox .komokuboxcontent li .detail02,
        body.caution .caution-content .content02 .komokubox .komokuboxcontent li .detail02 {
          display: flex;
          justify-content: space-between; }
          @media only screen and (max-width: 767px) {
            body.caution .caution-content .content01 .komokubox .komokuboxcontent li .detail02,
            body.caution .caution-content .content02 .komokubox .komokuboxcontent li .detail02 {
              display: block; } }
          body.caution .caution-content .content01 .komokubox .komokuboxcontent li .detail02 .detail02right,
          body.caution .caution-content .content02 .komokubox .komokuboxcontent li .detail02 .detail02right {
            width: 60%;
            max-width: 530px; }
            @media only screen and (max-width: 767px) {
              body.caution .caution-content .content01 .komokubox .komokuboxcontent li .detail02 .detail02right,
              body.caution .caution-content .content02 .komokubox .komokuboxcontent li .detail02 .detail02right {
                width: 100%;
                max-width: 100%; } }
          body.caution .caution-content .content01 .komokubox .komokuboxcontent li .detail02 .detail02left,
          body.caution .caution-content .content02 .komokubox .komokuboxcontent li .detail02 .detail02left {
            width: 38%;
            max-width: 280px; }
            @media only screen and (max-width: 767px) {
              body.caution .caution-content .content01 .komokubox .komokuboxcontent li .detail02 .detail02left,
              body.caution .caution-content .content02 .komokubox .komokuboxcontent li .detail02 .detail02left {
                width: 100%;
                max-width: 100%;
                margin: 15px 0; } }
        body.caution .caution-content .content01 .komokubox .komokuboxcontent li .detail03,
        body.caution .caution-content .content02 .komokubox .komokuboxcontent li .detail03 {
          padding: 30px;
          background: #f8f8f8;
          margin: 20px 0; }
          @media only screen and (max-width: 767px) {
            body.caution .caution-content .content01 .komokubox .komokuboxcontent li .detail03,
            body.caution .caution-content .content02 .komokubox .komokuboxcontent li .detail03 {
              padding: 15px; } }
          body.caution .caution-content .content01 .komokubox .komokuboxcontent li .detail03 .box,
          body.caution .caution-content .content02 .komokubox .komokuboxcontent li .detail03 .box {
            display: flex;
            align-items: center;
            margin-bottom: 19px; }
            @media only screen and (max-width: 767px) {
              body.caution .caution-content .content01 .komokubox .komokuboxcontent li .detail03 .box,
              body.caution .caution-content .content02 .komokubox .komokuboxcontent li .detail03 .box {
                align-items: baseline;
                margin-bottom: 8px; } }
            body.caution .caution-content .content01 .komokubox .komokuboxcontent li .detail03 .box .num,
            body.caution .caution-content .content02 .komokubox .komokuboxcontent li .detail03 .box .num {
              font-size: 18px;
              font-size: 1.8rem;
              font-weight: bold;
              color: #5db2cc;
              margin-right: 15px; }
              @media only screen and (max-width: 767px) {
                body.caution .caution-content .content01 .komokubox .komokuboxcontent li .detail03 .box .num,
                body.caution .caution-content .content02 .komokubox .komokuboxcontent li .detail03 .box .num {
                  font-size: 15px;
                  font-size: 1.5rem;
                  line-height: 24px;
                  margin-right: 10px; } }
            body.caution .caution-content .content01 .komokubox .komokuboxcontent li .detail03 .box .text,
            body.caution .caution-content .content02 .komokubox .komokuboxcontent li .detail03 .box .text {
              font-size: 18px;
              font-size: 1.8rem; }
              @media only screen and (max-width: 767px) {
                body.caution .caution-content .content01 .komokubox .komokuboxcontent li .detail03 .box .text,
                body.caution .caution-content .content02 .komokubox .komokuboxcontent li .detail03 .box .text {
                  font-size: 15px;
                  font-size: 1.5rem;
                  line-height: 24px; } }
          body.caution .caution-content .content01 .komokubox .komokuboxcontent li .detail03 .boxlast,
          body.caution .caution-content .content02 .komokubox .komokuboxcontent li .detail03 .boxlast {
            margin-bottom: 0; }
        body.caution .caution-content .content01 .komokubox .komokuboxcontent li .detail04,
        body.caution .caution-content .content02 .komokubox .komokuboxcontent li .detail04 {
          padding: 30px 30px 20px;
          background: #f8f8f8;
          margin: 30px 0 0; }
          @media only screen and (max-width: 767px) {
            body.caution .caution-content .content01 .komokubox .komokuboxcontent li .detail04,
            body.caution .caution-content .content02 .komokubox .komokuboxcontent li .detail04 {
              padding: 20px 15px 15px;
              margin: 20px 0 0; } }
          body.caution .caution-content .content01 .komokubox .komokuboxcontent li .detail04 h5,
          body.caution .caution-content .content02 .komokubox .komokuboxcontent li .detail04 h5 {
            font-size: 18px;
            font-size: 1.8rem;
            font-weight: bold;
            margin-bottom: 12px;
            position: relative; }
            @media only screen and (max-width: 767px) {
              body.caution .caution-content .content01 .komokubox .komokuboxcontent li .detail04 h5,
              body.caution .caution-content .content02 .komokubox .komokuboxcontent li .detail04 h5 {
                font-size: 16px;
                font-size: 1.6rem;
                margin-bottom: 8px; } }
            body.caution .caution-content .content01 .komokubox .komokuboxcontent li .detail04 h5::before,
            body.caution .caution-content .content02 .komokubox .komokuboxcontent li .detail04 h5::before {
              content: "";
              position: absolute;
              width: 7px;
              height: 12px;
              display: block;
              background-image: url("../images/caution/arrow03.png");
              background-repeat: no-repeat;
              background-size: contain;
              left: 0;
              top: 3px; }
              @media only screen and (max-width: 767px) {
                body.caution .caution-content .content01 .komokubox .komokuboxcontent li .detail04 h5::before,
                body.caution .caution-content .content02 .komokubox .komokuboxcontent li .detail04 h5::before {
                  width: 5px;
                  height: 10px; } }
              @media all and (-ms-high-contrast: none) {
                body.caution .caution-content .content01 .komokubox .komokuboxcontent li .detail04 h5::before,
                body.caution .caution-content .content02 .komokubox .komokuboxcontent li .detail04 h5::before {
                  top: -1px; } }
            body.caution .caution-content .content01 .komokubox .komokuboxcontent li .detail04 h5 span,
            body.caution .caution-content .content02 .komokubox .komokuboxcontent li .detail04 h5 span {
              padding-left: 15px; }
              @media only screen and (max-width: 767px) {
                body.caution .caution-content .content01 .komokubox .komokuboxcontent li .detail04 h5 span,
                body.caution .caution-content .content02 .komokubox .komokuboxcontent li .detail04 h5 span {
                  padding-left: 10px; } }
        body.caution .caution-content .content01 .komokubox .komokuboxcontent li .detail05,
        body.caution .caution-content .content02 .komokubox .komokuboxcontent li .detail05 {
          margin: 30px 0 23px; }
          @media only screen and (max-width: 767px) {
            body.caution .caution-content .content01 .komokubox .komokuboxcontent li .detail05,
            body.caution .caution-content .content02 .komokubox .komokuboxcontent li .detail05 {
              margin: 25px 0 18px;
              padding: 15px 15px 4px; } }
          @media only screen and (max-width: 767px) {
            body.caution .caution-content .content01 .komokubox .komokuboxcontent li .detail05 .box,
            body.caution .caution-content .content02 .komokubox .komokuboxcontent li .detail05 .box {
              margin-bottom: 12px; } }
      body.caution .caution-content .content01 .komokubox .komokuboxcontent .last,
      body.caution .caution-content .content02 .komokubox .komokuboxcontent .last {
        margin-bottom: 0; }
    @media only screen and (max-width: 767px) {
      body.caution .caution-content .content01 .komokubox .komokuboxcontent02,
      body.caution .caution-content .content02 .komokubox .komokuboxcontent02 {
        padding: 30px 15px; } }

body.caution .btn {
  width: 370px;
  max-width: 100%;
  display: block;
  position: relative;
  overflow: hidden;
  text-decoration: none;
  border: 1px solid #5db2cc;
  background-color: #5db2cc;
  text-align: center;
  outline: none;
  transition: ease 0.2s;
  letter-spacing: 1px; }
  @media only screen and (max-width: 767px) {
    body.caution .btn {
      margin: 7px auto 0; } }
  body.caution .btn::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    background: #fff;
    width: 100%;
    height: 100%;
    transition: transform 0.5s cubic-bezier(0.8, 0, 0.2, 1) 0s;
    transform: scale(0, 1);
    transform-origin: right top; }
  body.caution .btn span {
    position: relative;
    z-index: 3;
    color: #fff;
    transition: color 0.2s;
    display: block;
    font-size: 18px;
    font-size: 1.8rem;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: bold;
    line-height: 30px;
    padding: 19px 0; }
    @media only screen and (max-width: 767px) {
      body.caution .btn span {
        font-size: 16px;
        font-size: 1.6rem;
        line-height: 24px;
        padding: 17px 0;
        letter-spacing: 0.04em; } }
    body.caution .btn span::after, body.caution .btn span::before {
      content: "";
      position: absolute;
      top: 50%; }
    body.caution .btn span::before {
      z-index: 4;
      right: 24px;
      border-radius: 50%;
      width: 22px;
      height: 22px;
      background-color: #fff;
      margin-top: -11px;
      transition: background-color 0.2s; }
      @media only screen and (max-width: 767px) {
        body.caution .btn span::before {
          right: 20px;
          width: 15px;
          height: 15px;
          margin-top: -7px; } }
    body.caution .btn span::after {
      right: 31px;
      z-index: 5;
      margin-top: -5px;
      width: 0;
      height: 0;
      border-style: solid;
      border-width: 5px 0 5px 6px;
      border-color: transparent transparent transparent #5db2cc;
      transition: border-color 0.2s; }
      @media only screen and (max-width: 767px) {
        body.caution .btn span::after {
          right: 25px;
          margin-top: -3px;
          border-width: 3.5px 0 3.5px 4px; } }
  @media only screen and (min-width: 768px) {
    body.caution .btn:hover::before {
      transform-origin: left top;
      transform: scale(1, 1); }
    body.caution .btn:hover span {
      color: #5db2cc; }
      body.caution .btn:hover span::before {
        background-color: #5db2cc; }
      body.caution .btn:hover span::after {
        border-color: transparent transparent transparent #fff; } }
  body.caution .btn--youtube {
    margin-top: 40px; }
    @media only screen and (max-width: 767px) {
      body.caution .btn--youtube {
        margin-top: 20px; } }
    body.caution .btn--youtube span {
      text-align: left;
      padding-left: 70px; }
      @media only screen and (max-width: 767px) {
        body.caution .btn--youtube span {
          padding-left: 50px; } }
      body.caution .btn--youtube span:before, body.caution .btn--youtube span:after {
        content: none; }
      body.caution .btn--youtube span:before {
        content: "";
        width: 20px;
        height: 21px;
        top: 0;
        bottom: 0;
        right: auto;
        left: 30px;
        margin: auto;
        border-radius: 0;
        background-color: transparent !important;
        background-size: cover;
        background-image: url("../images/common/icn_youtube.png"); }
        @media only screen and (max-width: 767px) {
          body.caution .btn--youtube span:before {
            width: 15px;
            height: 16px;
            left: 20px;
            background-image: url("../images/common/icn_youtube_sp.png"); } }
    @media only screen and (min-width: 768px) {
      body.caution .btn--youtube:hover span:before {
        background-image: url("../images/common/icn_youtube_hover.png"); } }

@media only screen and (min-width: 768px) {
  body.caution #k01,
  body.caution #k02,
  body.caution #k03,
  body.caution #k04,
  body.caution #k05,
  body.caution #k06,
  body.caution #k07,
  body.caution #k08,
  body.caution #k09,
  body.caution #k10,
  body.caution #k11,
  body.caution #k12,
  body.caution #k13,
  body.caution #k14,
  body.caution #k15,
  body.caution #k16,
  body.caution #k17,
  body.caution #k18,
  body.caution #k19 {
    position: relative;
    top: -25px; } }

@media only screen and (max-width: 767px) {
  body.caution #k01,
  body.caution #k02,
  body.caution #k03,
  body.caution #k04,
  body.caution #k05,
  body.caution #k06,
  body.caution #k07,
  body.caution #k08,
  body.caution #k09,
  body.caution #k10,
  body.caution #k11,
  body.caution #k12,
  body.caution #k13,
  body.caution #k14,
  body.caution #k15,
  body.caution #k16,
  body.caution #k17,
  body.caution #k18,
  body.caution #k19 {
    position: relative;
    top: -75px; } }

@media only screen and (max-width: 767px) {
  body.caution #box01 {
    position: relative;
    top: -25px; } }

@media only screen and (max-width: 767px) {
  body.caution #box02 {
    position: relative;
    top: -25px; } }

body.construct {
  overflow-x: hidden;
  overflow-y: auto; }

.c-layout1 {
  display: flex;
  flex-wrap: wrap;
  margin-top: 99px; }
  @media only screen and (min-width: 768px) {
    .c-layout1 {
      flex-wrap: nowrap; } }
  @media only screen and (max-width: 767px) {
    .c-layout1 {
      margin-top: 59px; } }
  .c-layout1.mt120 {
    margin-top: 120px; }
    @media only screen and (max-width: 767px) {
      .c-layout1.mt120 {
        margin-top: 78px; } }
  .c-layout1.mt170 {
    margin-top: 170px; }
    @media only screen and (max-width: 767px) {
      .c-layout1.mt170 {
        margin-top: 73px; } }
  .c-layout1 .c-layout1-img {
    width: calc(50vw - 120px);
    margin-left: calc(-50vw + 540px);
    margin-right: 80px;
    position: relative; }
    @media only screen and (max-width: 1120px) {
      .c-layout1 .c-layout1-img {
        width: 440px;
        margin-left: -20px;
        margin-right: 40px; } }
    @media only screen and (max-width: 767px) {
      .c-layout1 .c-layout1-img {
        width: calc(100% + 25px);
        margin: 0;
        margin-left: -25px; } }
    .c-layout1 .c-layout1-img img {
      display: block;
      position: relative;
      z-index: 1;
      width: 100%;
      border-radius: 0 10px 10px 0;
      box-shadow: 10px 10px 20px rgba(22, 151, 162, 0.16); }
    .c-layout1 .c-layout1-img .bg {
      width: 380px;
      height: 278px;
      border-radius: 0px 0px 40px 0px;
      overflow: hidden;
      position: absolute;
      bottom: -60px;
      left: 0;
      background: #C7C7C7;
      opacity: 0.2; }
      @media only screen and (max-width: 767px) {
        .c-layout1 .c-layout1-img .bg {
          top: 30px;
          bottom: -30px;
          height: auto;
          width: calc(100% - 35px);
          border-radius: 0px 0px 30px 0px; } }
      .c-layout1 .c-layout1-img .bg:before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: linear-gradient(-90deg, #42BCC6 0%, #e39f6d 100%);
        mix-blend-mode: overlay; }
  .c-layout1 .c-layout1-cnt {
    width: calc(100% - 500px);
    display: flex;
    align-items: center; }
    @media only screen and (max-width: 1120px) {
      .c-layout1 .c-layout1-cnt {
        width: calc(100% - 460px); } }
    @media only screen and (max-width: 767px) {
      .c-layout1 .c-layout1-cnt {
        width: 100%; } }
  .c-layout1 .c-layout1-title {
    font-family: "Noto Sans JP", sans-serif;
    font-size: 32px;
    font-size: 3.2rem;
    line-height: 53px;
    letter-spacing: 0;
    font-weight: 500;
    color: #42BCC6; }
    @media only screen and (max-width: 1080px) {
      .c-layout1 .c-layout1-title {
        font-size: 28px;
        font-size: 2.8rem; } }
    @media only screen and (max-width: 767px) {
      .c-layout1 .c-layout1-title {
        margin-top: 61px;
        font-size: 24px;
        font-size: 2.4rem;
        line-height: 36px; } }
  .c-layout1 .c-layout1-des {
    margin-top: 30px;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 28px;
    letter-spacing: 0;
    font-weight: 500; }
    @media only screen and (max-width: 1080px) {
      .c-layout1 .c-layout1-des {
        font-size: 13px;
        font-size: 1.3rem; } }
    @media only screen and (max-width: 767px) {
      .c-layout1 .c-layout1-des {
        margin-top: 23px;
        font-size: 15px;
        font-size: 1.5rem; } }
  .c-layout1--right {
    flex-direction: row-reverse;
    margin-top: 118px; }
    @media only screen and (min-width: 768px) {
      .c-layout1--right .c-layout1-img {
        margin-right: calc(-50vw + 540px);
        margin-left: 80px; } }
  @media only screen and (min-width: 768px) and (max-width: 1120px) {
    .c-layout1--right .c-layout1-img {
      width: 440px;
      margin-right: -20px;
      margin-left: 40px; } }
    @media only screen and (max-width: 767px) {
      .c-layout1--right {
        margin-top: 80px; }
        .c-layout1--right .c-layout1-img {
          margin-left: 0;
          margin-right: -25px; } }
    .c-layout1--right .c-layout1-img img {
      border-radius: 10px 0 0 10px; }
    .c-layout1--right .c-layout1-img .bg {
      border-radius: 0 0 0 40px;
      left: auto;
      right: 0; }
      .c-layout1--right .c-layout1-img .bg:before {
        background: linear-gradient(90deg, #42BCC6 0%, #e39f6d 100%); }

.c-layout2 {
  margin-top: 120px; }
  @media only screen and (max-width: 767px) {
    .c-layout2 {
      margin-top: 45px; } }
  .c-layout2.mt126 {
    margin-top: 126px; }
    @media only screen and (max-width: 767px) {
      .c-layout2.mt126 {
        margin-top: 45px; } }
  .c-layout2 + .c-layout2 {
    margin-top: 76px; }
    @media only screen and (max-width: 767px) {
      .c-layout2 + .c-layout2 {
        margin-top: 50px; } }
  .c-layout2 .c-layout2-des {
    margin-top: 33px;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 28px;
    font-weight: 500; }
    @media only screen and (max-width: 767px) {
      .c-layout2 .c-layout2-des {
        margin-top: 24px; } }
    .c-layout2 .c-layout2-des + .c-layout2-listbtns {
      margin-top: 33px; }
      @media only screen and (max-width: 767px) {
        .c-layout2 .c-layout2-des + .c-layout2-listbtns {
          margin-top: 22px; } }
  .c-layout2 .c-layout2-listicon {
    margin-top: 47px;
    display: flex;
    flex-wrap: wrap; }
    @media only screen and (max-width: 767px) {
      .c-layout2 .c-layout2-listicon {
        margin-top: 31px; } }
    .c-layout2 .c-layout2-listicon .item {
      width: calc(33.3333% - 70px / 3);
      margin-right: 35px;
      border-bottom: 1px dotted #C8D6DE;
      padding-bottom: 21px;
      display: flex;
      align-items: center; }
      @media only screen and (max-width: 767px) {
        .c-layout2 .c-layout2-listicon .item {
          padding-bottom: 16px;
          width: 100%;
          margin: 0; }
          .c-layout2 .c-layout2-listicon .item + .item {
            margin-top: 15px; } }
      .c-layout2 .c-layout2-listicon .item:nth-child(3n) {
        margin-right: 0; }
      .c-layout2 .c-layout2-listicon .item .item-ico {
        width: 90px;
        height: 90px;
        border-radius: 50px;
        background: #EBF8F9;
        margin-right: 24px;
        display: flex;
        align-items: center;
        justify-content: center; }
        @media only screen and (max-width: 767px) {
          .c-layout2 .c-layout2-listicon .item .item-ico {
            width: 50px;
            height: 50px;
            margin-right: 15px; } }
      .c-layout2 .c-layout2-listicon .item .item-title {
        width: calc(100% - 114px);
        font-family: "Noto Sans JP", sans-serif;
        font-size: 18px;
        font-size: 1.8rem;
        line-height: 26px;
        font-weight: 500; }
        @media only screen and (max-width: 767px) {
          .c-layout2 .c-layout2-listicon .item .item-title {
            width: calc(100% - 65px);
            font-size: 16px;
            font-size: 1.6rem;
            line-height: 24px; } }
  .c-layout2 .c-layout2-listbtns {
    margin-top: 38px;
    display: flex;
    flex-wrap: wrap; }
    .c-layout2 .c-layout2-listbtns .btn {
      margin-right: 20px;
      margin-bottom: 10px;
      max-width: calc(50% - 10px); }
      .c-layout2 .c-layout2-listbtns .btn:nth-child(2n) {
        margin-right: 0; }
      @media only screen and (max-width: 767px) {
        .c-layout2 .c-layout2-listbtns .btn {
          width: 100%;
          max-width: 100%;
          margin: 0; }
          .c-layout2 .c-layout2-listbtns .btn + .btn {
            margin-top: 10px; } }
  .c-layout2 .layout2-box1 {
    margin-top: 50px;
    display: flex; }
    @media only screen and (max-width: 767px) {
      .c-layout2 .layout2-box1 {
        margin-top: 39px; } }
    .c-layout2 .layout2-box1 + .layout2-box1 {
      margin-top: 45px; }
      @media only screen and (max-width: 767px) {
        .c-layout2 .layout2-box1 + .layout2-box1 {
          margin-top: 43px; } }
    .c-layout2 .layout2-box1 .layout2-box1-cnt {
      width: calc(100% - 340px);
      margin-right: 60px; }
      @media only screen and (max-width: 767px) {
        .c-layout2 .layout2-box1 .layout2-box1-cnt {
          width: 100%;
          margin: 0; } }
    .c-layout2 .layout2-box1 .layout2-box1-img {
      width: 280px; }
      @media only screen and (max-width: 767px) {
        .c-layout2 .layout2-box1 .layout2-box1-img {
          width: 100%;
          margin-top: 23px; } }
      .c-layout2 .layout2-box1 .layout2-box1-img img {
        width: 100%; }
    .c-layout2 .layout2-box1 .layout2-box1-number {
      background: #42BCC6;
      font-family: "Raleway", sans-serif;
      font-size: 18px;
      font-size: 1.8rem;
      line-height: 21px;
      letter-spacing: .1em;
      font-weight: bold;
      color: white;
      padding: 4px 21px; }
      @media only screen and (max-width: 767px) {
        .c-layout2 .layout2-box1 .layout2-box1-number {
          padding: 4px 17px; } }
      .c-layout2 .layout2-box1 .layout2-box1-number span {
        display: inline-block;
        margin-left: 10px;
        font-family: "Lato", sans-serif; }
        @media only screen and (max-width: 767px) {
          .c-layout2 .layout2-box1 .layout2-box1-number span {
            margin-left: 6px; } }
    .c-layout2 .layout2-box1 .layout2-box1-title {
      font-family: "Noto Sans JP", sans-serif;
      font-size: 24px;
      font-size: 2.4rem;
      line-height: 35px;
      font-weight: 500;
      margin-top: 22px;
      position: relative; }
      @media only screen and (max-width: 767px) {
        .c-layout2 .layout2-box1 .layout2-box1-title {
          font-size: 20px;
          font-size: 2rem;
          line-height: 29px; } }
    .c-layout2 .layout2-box1 .c-layout2-des {
      margin-top: 25px; }
      @media only screen and (max-width: 767px) {
        .c-layout2 .layout2-box1 .c-layout2-des {
          margin-top: 24px; } }
    .c-layout2 .layout2-box1 .btn {
      margin-top: 33px; }
      @media only screen and (max-width: 767px) {
        .c-layout2 .layout2-box1 .btn {
          margin-top: 23px; } }
  .c-layout2 .layout2-box2 {
    margin-top: 44px; }
    @media only screen and (max-width: 767px) {
      .c-layout2 .layout2-box2 {
        margin-top: 33px; } }
    .c-layout2 .layout2-box2 .layout2-box2-listtxt {
      font-size: 0;
      line-height: 0;
      margin-top: 10px; }
      @media only screen and (max-width: 767px) {
        .c-layout2 .layout2-box2 .layout2-box2-listtxt {
          margin-top: 12px; } }
      .c-layout2 .layout2-box2 .layout2-box2-listtxt li {
        display: inline-block;
        vertical-align: top;
        margin-left: 16px;
        font-family: "Noto Sans JP", sans-serif;
        font-size: 16px;
        font-size: 1.6rem;
        line-height: 24px;
        font-weight: 500; }
        @media only screen and (max-width: 767px) {
          .c-layout2 .layout2-box2 .layout2-box2-listtxt li {
            margin-left: 0;
            font-size: 15px;
            font-size: 1.5rem;
            line-height: 20px; }
            .c-layout2 .layout2-box2 .layout2-box2-listtxt li + li {
              margin-top: 4px; } }
    .c-layout2 .layout2-box2 .layout2-box2-img {
      margin-top: 30px;
      width: calc(100% + 20px); }
      @media only screen and (max-width: 767px) {
        .c-layout2 .layout2-box2 .layout2-box2-img {
          margin-top: 25px;
          width: 100%; } }
    .c-layout2 .layout2-box2 .layout2-box2-note {
      margin-top: 15px;
      width: calc(100% + 10px); }
      @media only screen and (max-width: 767px) {
        .c-layout2 .layout2-box2 .layout2-box2-note {
          margin-top: 25px; } }
      .c-layout2 .layout2-box2 .layout2-box2-note li {
        padding-left: 11px;
        position: relative;
        font-family: "Noto Sans JP", sans-serif;
        font-size: 12px;
        font-size: 1.2rem;
        line-height: 17px; }
        @media only screen and (max-width: 767px) {
          .c-layout2 .layout2-box2 .layout2-box2-note li {
            line-height: 16px;
            padding-right: 9px; } }
        .c-layout2 .layout2-box2 .layout2-box2-note li + li {
          margin-top: 5px; }
          @media only screen and (max-width: 767px) {
            .c-layout2 .layout2-box2 .layout2-box2-note li + li {
              margin-top: 7px; } }
        .c-layout2 .layout2-box2 .layout2-box2-note li:before {
          content: "※";
          position: absolute;
          left: 0;
          top: 0; }
    .c-layout2 .layout2-box2 .layout2-box2-des {
      margin-top: 40px;
      text-align: center;
      font-family: "Noto Sans JP", sans-serif;
      font-size: 22px;
      font-size: 2.2rem;
      line-height: 34px;
      font-weight: 500; }
      @media only screen and (max-width: 767px) {
        .c-layout2 .layout2-box2 .layout2-box2-des {
          margin-top: 24px;
          font-size: 19px;
          font-size: 1.9rem;
          line-height: 30px; } }
      .c-layout2 .layout2-box2 .layout2-box2-des b {
        font-weight: 500;
        color: #42BCC6; }
  .c-layout2 .layout2-box3 {
    margin-top: 44px; }
    @media only screen and (max-width: 767px) {
      .c-layout2 .layout2-box3 {
        margin-top: 33px; } }
    .c-layout2 .layout2-box3 + .layout2-box3 {
      margin-top: 50px; }
      @media only screen and (max-width: 767px) {
        .c-layout2 .layout2-box3 + .layout2-box3 {
          margin-top: 40px; } }
    .c-layout2 .layout2-box3 .layout2-box3-list {
      margin-top: 30px;
      display: flex;
      flex-wrap: wrap; }
      @media only screen and (max-width: 767px) {
        .c-layout2 .layout2-box3 .layout2-box3-list {
          margin-top: 25px; } }
      .c-layout2 .layout2-box3 .layout2-box3-list .item {
        width: calc(50% - 20px);
        margin-right: 40px; }
        @media only screen and (max-width: 767px) {
          .c-layout2 .layout2-box3 .layout2-box3-list .item {
            width: 100%;
            margin: 0; }
            .c-layout2 .layout2-box3 .layout2-box3-list .item + .item {
              margin-top: 23px; } }
        .c-layout2 .layout2-box3 .layout2-box3-list .item:nth-child(2n) {
          margin-right: 0; }
        .c-layout2 .layout2-box3 .layout2-box3-list .item .item-cnt {
          border: 1px solid #C8D6DE;
          border-top: 0;
          padding: 30px 40px 35px; }
          @media only screen and (max-width: 767px) {
            .c-layout2 .layout2-box3 .layout2-box3-list .item .item-cnt {
              padding: 24px 30px 25px; } }
        .c-layout2 .layout2-box3 .layout2-box3-list .item .item-title {
          text-align: center;
          font-family: "Noto Sans JP", sans-serif;
          font-size: 18px;
          font-size: 1.8rem;
          line-height: 28px;
          font-weight: 500;
          padding: 11px;
          color: white;
          background: #42BCC6;
          border-radius: 5px 5px 0 0; }
        .c-layout2 .layout2-box3 .layout2-box3-list .item .item-list {
          background: #EBF8F9;
          height: calc(100% - 50px);
          padding: 30px 40px 40px;
          background-position: center right;
          background-repeat: no-repeat;
          background-size: 193px auto;
          background-image: url(../images/construct/bg-o.png); }
          @media only screen and (max-width: 767px) {
            .c-layout2 .layout2-box3 .layout2-box3-list .item .item-list {
              background-image: url(../images/construct/bg-o_sp.png);
              padding: 26px 30px 23px; } }
          .c-layout2 .layout2-box3 .layout2-box3-list .item .item-list li {
            font-family: "Noto Sans JP", sans-serif;
            font-size: 18px;
            font-size: 1.8rem;
            line-height: 28px;
            font-weight: 500;
            position: relative;
            padding-left: 29px; }
            @media only screen and (max-width: 767px) {
              .c-layout2 .layout2-box3 .layout2-box3-list .item .item-list li {
                font-size: 16px;
                font-size: 1.6rem;
                line-height: 24px; } }
            .c-layout2 .layout2-box3 .layout2-box3-list .item .item-list li + li {
              margin-top: 11px; }
              @media only screen and (max-width: 767px) {
                .c-layout2 .layout2-box3 .layout2-box3-list .item .item-list li + li {
                  margin-top: 12px; } }
            .c-layout2 .layout2-box3 .layout2-box3-list .item .item-list li:before {
              content: '';
              position: absolute;
              top: 4px;
              left: 0;
              width: 20px;
              height: 20px;
              background-position: center;
              background-repeat: no-repeat;
              background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Cdefs%3E%3CclipPath id='clip-path'%3E%3Crect width='20' height='20' fill='none'/%3E%3C/clipPath%3E%3C/defs%3E%3Cg id='check_box' data-name='check box' clip-path='url(%23clip-path)'%3E%3Cg id='check_box-2' data-name='check box'%3E%3Cg id='_' data-name='□' fill='%23fff' stroke='%23a8a8a8' stroke-linejoin='round' stroke-width='1'%3E%3Crect width='20' height='20' rx='2' stroke='none'/%3E%3Crect x='0.5' y='0.5' width='19' height='19' rx='1.5' fill='none'/%3E%3C/g%3E%3Cpath id='check' d='M1265.9,4521.007l-9.138,13.656a.811.811,0,0,1-.673.338h-.007a.82.82,0,0,1-.673-.329l-5.295-7.6a.616.616,0,0,1,.221-.9.877.877,0,0,1,1.057.12l4.628,4.793,8.551-10.795a.869.869,0,0,1,1.065-.192A.619.619,0,0,1,1265.9,4521.007Z' transform='translate(-1248 -4518)' fill='%2342bcc6'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A"); }
        .c-layout2 .layout2-box3 .layout2-box3-list .item .item-img {
          display: block;
          margin: auto; }
        .c-layout2 .layout2-box3 .layout2-box3-list .item .item-des {
          margin-top: 34px;
          font-size: 15px;
          font-size: 1.5rem;
          line-height: 28px;
          font-weight: 500; }
          @media only screen and (max-width: 767px) {
            .c-layout2 .layout2-box3 .layout2-box3-list .item .item-des {
              margin: 27px 0 0;
              line-height: 24px; } }
        .c-layout2 .layout2-box3 .layout2-box3-list .item--black .item-title {
          background: #101010; }
        .c-layout2 .layout2-box3 .layout2-box3-list .item--black .item-list {
          background-color: #F8F8F8;
          background-image: url(../images/construct/bg-x.png); }
          @media only screen and (max-width: 767px) {
            .c-layout2 .layout2-box3 .layout2-box3-list .item--black .item-list {
              background-image: url(../images/construct/bg-x_sp.png); } }
  @media only screen and (max-width: 767px) {
    .c-layout2--strength {
      margin-top: 43px; } }
  @media only screen and (min-width: 768px) {
    .c-layout2--strength .layout2-box1 + .layout2-box1 {
      margin-top: 48px; } }
  .c-layout2--strength .layout2-box1 .layout2-box1-title.hasnote {
    padding-right: 142px; }

@media only screen and (min-width: 768px) and (max-width: 1670px) {
  .c-layout2--strength .layout2-box1 .layout2-box1-title.hasnote {
    font-size: 20px;
    font-size: 2rem; } }
    @media only screen and (max-width: 767px) {
      .c-layout2--strength .layout2-box1 .layout2-box1-title.hasnote {
        padding: 0; }
        .c-layout2--strength .layout2-box1 .layout2-box1-title.hasnote sup {
          font-size: 12px;
          font-size: 1.2rem;
          display: inline-block;
          transform: translateY(-10px) translateX(2px); } }
    .c-layout2--strength .layout2-box1 .layout2-box1-title.hasnote .note {
      font-size: 12px;
      font-size: 1.2rem;
      line-height: 16px;
      font-weight: 400;
      position: absolute;
      top: 3px;
      right: 0; }
      @media only screen and (max-width: 767px) {
        .c-layout2--strength .layout2-box1 .layout2-box1-title.hasnote .note {
          position: relative;
          top: 0;
          display: block;
          margin: 4px 0 26px;
          padding-left: 12px; } }
      .c-layout2--strength .layout2-box1 .layout2-box1-title.hasnote .note:before {
        content: '※';
        position: absolute;
        top: 0;
        left: -11px; }
        @media only screen and (max-width: 767px) {
          .c-layout2--strength .layout2-box1 .layout2-box1-title.hasnote .note:before {
            left: 0; } }

.c-flow {
  margin-top: 119px; }
  @media only screen and (max-width: 767px) {
    .c-flow {
      margin-top: 62px; } }
  .c-flow .c-flow-img {
    width: 100%; }
  .c-flow .c-flow-cnt {
    padding: 120px 0 116px;
    background-position: top 87px right;
    background-repeat: no-repeat;
    background-size: 730px auto;
    background-image: url(../images/construct/flow-logo.jpg); }
    @media only screen and (max-width: 767px) {
      .c-flow .c-flow-cnt {
        padding: 70px 0 62px;
        background-position: center top 40px;
        background-size: 375px auto;
        background-image: url(../images/construct/flow-logo_sp.png); } }
  .c-flow .c-flow-title__en {
    font-family: "Raleway", sans-serif;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 21px;
    letter-spacing: .1em;
    font-weight: bold;
    color: #42BCC6; }
    @media only screen and (max-width: 767px) {
      .c-flow .c-flow-title__en {
        font-size: 16px;
        font-size: 1.6rem;
        line-height: 19px; } }
  .c-flow .c-flow-title__ja {
    margin-top: 22px;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 32px;
    font-size: 3.2rem;
    line-height: 46px;
    letter-spacing: .12em;
    font-weight: 500; }
    @media only screen and (max-width: 767px) {
      .c-flow .c-flow-title__ja {
        margin-top: 13px;
        font-size: 24px;
        font-size: 2.4rem;
        line-height: 36px; } }
  .c-flow .c-flow-list {
    margin-top: 82px;
    position: relative; }
    @media only screen and (max-width: 767px) {
      .c-flow .c-flow-list {
        margin-top: 39px; } }
    .c-flow .c-flow-list:before {
      content: '';
      position: absolute;
      border-left: 1px dotted #42BCC6;
      width: 1px;
      left: 70px;
      top: 10px;
      bottom: 20px; }
      @media only screen and (max-width: 767px) {
        .c-flow .c-flow-list:before {
          content: none; } }
    .c-flow .c-flow-list .flow {
      display: flex;
      flex-wrap: wrap; }
      .c-flow .c-flow-list .flow + .flow {
        margin-top: 61px; }
        @media only screen and (max-width: 767px) {
          .c-flow .c-flow-list .flow + .flow {
            margin-top: 55px; } }
      @media only screen and (max-width: 767px) {
        .c-flow .c-flow-list .flow {
          position: relative; }
          .c-flow .c-flow-list .flow:before {
            content: '';
            position: absolute;
            left: 0;
            right: 0;
            bottom: -45px;
            margin: auto;
            width: 1px;
            height: 30px;
            border-left: 1px dotted #42BCC6; } }
      .c-flow .c-flow-list .flow:last-child {
        position: relative;
        z-index: 1; }
        .c-flow .c-flow-list .flow:last-child:before {
          content: '';
          background: white;
          width: 3px;
          position: absolute;
          z-index: -1;
          top: 10px;
          bottom: 0;
          left: 68px; }
          @media only screen and (max-width: 767px) {
            .c-flow .c-flow-list .flow:last-child:before {
              content: none; } }
      .c-flow .c-flow-list .flow .flow-ico {
        width: 138px;
        height: 138px;
        margin-right: 60px;
        background: #42BCC6;
        border-radius: 70px;
        display: flex;
        justify-content: center;
        align-items: center;
        position: relative;
        z-index: 1; }
        @media only screen and (max-width: 767px) {
          .c-flow .c-flow-list .flow .flow-ico {
            width: 88px;
            height: 88px;
            margin-right: 24px; } }
      .c-flow .c-flow-list .flow .flow-cnt {
        width: calc(100% - 198px);
        display: flex;
        align-items: center; }
        @media only screen and (max-width: 767px) {
          .c-flow .c-flow-list .flow .flow-cnt {
            width: 100%; }
            .c-flow .c-flow-list .flow .flow-cnt .flexbox {
              display: flex;
              flex-wrap: wrap; } }
      .c-flow .c-flow-list .flow .flow-title {
        font-size: 0;
        line-height: 0; }
        @media only screen and (max-width: 767px) {
          .c-flow .c-flow-list .flow .flow-title {
            width: calc(100% - 112px);
            display: flex;
            align-items: center; } }
        .c-flow .c-flow-list .flow .flow-title__num {
          display: inline-block;
          vertical-align: middle;
          margin-right: 25px; }
          .c-flow .c-flow-list .flow .flow-title__num img {
            height: 24px; }
            @media only screen and (max-width: 767px) {
              .c-flow .c-flow-list .flow .flow-title__num img {
                height: 15px; } }
          @media only screen and (max-width: 767px) {
            .c-flow .c-flow-list .flow .flow-title__num {
              display: block; } }
        .c-flow .c-flow-list .flow .flow-title__hd {
          display: inline-block;
          vertical-align: middle;
          font-family: "Noto Sans JP", sans-serif;
          font-size: 26px;
          font-size: 2.6rem;
          line-height: 39px;
          font-weight: 500; }
          @media only screen and (max-width: 767px) {
            .c-flow .c-flow-list .flow .flow-title__hd {
              display: block;
              margin-top: 10px;
              font-size: 20px;
              font-size: 2rem;
              line-height: 26px; } }
      .c-flow .c-flow-list .flow .flow-des {
        margin-top: 23px;
        font-size: 15px;
        font-size: 1.5rem;
        line-height: 28px;
        font-weight: 500; }
        @media only screen and (max-width: 767px) {
          .c-flow .c-flow-list .flow .flow-des {
            margin-top: 24px;
            padding-right: 4px;
            width: 100%; } }
      .c-flow .c-flow-list .flow .flow-btns {
        display: flex;
        flex-wrap: wrap;
        margin-top: 32px; }
        @media only screen and (max-width: 767px) {
          .c-flow .c-flow-list .flow .flow-btns {
            margin-top: 23px;
            width: 100%; } }
        .c-flow .c-flow-list .flow .flow-btns .btn {
          margin-right: 20px; }
          @media only screen and (max-width: 767px) {
            .c-flow .c-flow-list .flow .flow-btns .btn {
              width: 100%;
              margin: 0; }
              .c-flow .c-flow-list .flow .flow-btns .btn + .btn {
                margin-top: 8px; } }
          .c-flow .c-flow-list .flow .flow-btns .btn:last-child {
            margin-right: 0; }

.c-case {
  padding: 100px 0 80px;
  background: linear-gradient(90deg, #EFF9FA 0%, #FBF7F3 100%); }
  @media only screen and (max-width: 767px) {
    .c-case {
      padding: 57px 0 65px; } }
  .c-case .c-case-title {
    display: flex;
    justify-content: center;
    align-items: center;
    padding-right: 26px; }
    @media only screen and (max-width: 767px) {
      .c-case .c-case-title {
        display: block;
        padding: 0;
        text-align: center; } }
    .c-case .c-case-title__en {
      font-family: "Raleway", sans-serif;
      font-size: 50px;
      font-size: 5rem;
      line-height: 59px;
      letter-spacing: .1em;
      font-weight: bold;
      margin-right: 36px; }
      @media only screen and (max-width: 767px) {
        .c-case .c-case-title__en {
          font-size: 36px;
          font-size: 3.6rem;
          line-height: 42px;
          margin: 0; } }
      .c-case .c-case-title__en span {
        color: #42BCC6; }
    .c-case .c-case-title__ja {
      font-family: "Noto Sans JP", sans-serif;
      font-size: 18px;
      font-size: 1.8rem;
      line-height: 26px;
      letter-spacing: .12em;
      font-weight: bold; }
      @media only screen and (max-width: 767px) {
        .c-case .c-case-title__ja {
          margin-top: 8px;
          font-size: 16px;
          font-size: 1.6rem;
          line-height: 24px; } }
  .c-case .c-case-des {
    margin-top: 44px;
    text-align: center;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 28px;
    font-weight: 500; }
    @media only screen and (max-width: 767px) {
      .c-case .c-case-des {
        margin-top: 23px;
        text-align: left; } }
  .c-case .c-case-list {
    margin-top: 75px; }
    @media only screen and (max-width: 767px) {
      .c-case .c-case-list {
        margin-top: 33px; } }
    @media only screen and (max-width: 767px) {
      .c-case .c-case-list .case + .case {
        margin-top: 1px; } }
    .c-case .c-case-list .case .case-control {
      position: relative;
      cursor: pointer;
      margin-top: 1px; }
      .c-case .c-case-list .case .case-control:after {
        content: '';
        width: 100%;
        height: 1px;
        background: linear-gradient(#42bcc6 0%, #dbdbdb 100%);
        opacity: 0.31;
        position: absolute;
        left: 0;
        bottom: 0; }
      .c-case .c-case-list .case .case-control .case-number {
        position: absolute;
        z-index: 1;
        top: 50%;
        transform: translateY(-50%);
        left: -20px;
        font-family: "Lato", sans-serif;
        font-size: 88px;
        font-size: 8.8rem;
        line-height: 106px;
        letter-spacing: .06em;
        font-weight: 900;
        color: white;
        text-shadow: 1px 0 #42BCC6, -1px 0 #42BCC6, 0 1px #42BCC6, 0 -1px #42BCC6, 1px 1px #42BCC6, -1px -1px #42BCC6, 1px -1px #42BCC6, -1px 1px #42BCC6;
        transition: color .3s, text-shadow .3s; }
        @media only screen and (max-width: 767px) {
          .c-case .c-case-list .case .case-control .case-number {
            top: 21px;
            transform: none;
            font-size: 24px;
            font-size: 2.4rem;
            line-height: 29px;
            left: -5px; } }
      .c-case .c-case-list .case .case-control img {
        width: 100%;
        display: block;
        transition: opacity .3s; }
      .c-case .c-case-list .case .case-control .imghover {
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        opacity: 0; }
      .c-case .c-case-list .case .case-control .case-control-cnt {
        position: absolute;
        z-index: 1;
        left: 0;
        right: 0;
        top: 50%;
        transform: translateY(-50%);
        margin: auto;
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding-right: 16px; }
        @media only screen and (max-width: 1200px) {
          .c-case .c-case-list .case .case-control .case-control-cnt {
            padding-left: 80px; } }
        @media only screen and (max-width: 1180px) {
          .c-case .c-case-list .case .case-control .case-control-cnt {
            padding-right: 40px; } }
        @media only screen and (max-width: 767px) {
          .c-case .c-case-list .case .case-control .case-control-cnt {
            display: block;
            transform: none;
            top: 22px;
            padding: 0 0 0 10px; } }
        .c-case .c-case-list .case .case-control .case-control-cnt:after {
          content: "";
          width: 36px;
          height: 36px;
          position: absolute;
          top: 0;
          bottom: 0;
          right: -63px;
          margin: auto;
          border: 1px solid #C8D6DE;
          border-radius: 20px;
          background-position: top 50% left 55%;
          background-repeat: no-repeat;
          background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='9' height='12' viewBox='0 0 9 12'%3E%3Cpath id='arw' d='M1495.994,5406.987l9,5.987-9,6.013Z' transform='translate(-1495.994 -5406.987)' fill='%2342bcc6'/%3E%3C/svg%3E%0A");
          transform: rotate(90deg); }
          @media only screen and (max-width: 1180px) {
            .c-case .c-case-list .case .case-control .case-control-cnt:after {
              right: -10px; } }
          @media only screen and (max-width: 767px) {
            .c-case .c-case-list .case .case-control .case-control-cnt:after {
              content: none; } }
      .c-case .c-case-list .case .case-control .case-control-title {
        color: #42BCC6;
        transition: color .3s; }
        @media only screen and (max-width: 767px) {
          .c-case .c-case-list .case .case-control .case-control-title {
            padding-right: 40px;
            position: relative; }
            .c-case .c-case-list .case .case-control .case-control-title:after {
              content: "";
              width: 29px;
              height: 29px;
              position: absolute;
              top: 3px;
              bottom: 0;
              right: -1px;
              margin: auto;
              border: 1px solid #C8D6DE;
              border-radius: 20px;
              background-position: top 50% left 56%;
              background-repeat: no-repeat;
              background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='9' height='12' viewBox='0 0 9 12'%3E%3Cpath id='arw' d='M1495.994,5406.987l9,5.987-9,6.013Z' transform='translate(-1495.994 -5406.987)' fill='%2342bcc6'/%3E%3C/svg%3E%0A");
              transform: rotate(90deg); } }
        .c-case .c-case-list .case .case-control .case-control-title__hd {
          font-family: "Raleway", sans-serif;
          font-size: 36px;
          font-size: 3.6rem;
          line-height: 42px;
          letter-spacing: .1em;
          font-weight: bold; }
          @media only screen and (max-width: 767px) {
            .c-case .c-case-list .case .case-control .case-control-title__hd {
              font-size: 24px;
              font-size: 2.4rem;
              line-height: 29px; } }
        .c-case .c-case-list .case .case-control .case-control-title__address {
          font-size: 16px;
          font-size: 1.6rem;
          line-height: 1;
          font-weight: bold;
          margin-top: 17px;
          position: relative;
          padding-left: 20px; }
          @media only screen and (max-width: 767px) {
            .c-case .c-case-list .case .case-control .case-control-title__address {
              margin-top: 8px;
              font-size: 14px;
              font-size: 1.4rem; } }
          .c-case .c-case-list .case .case-control .case-control-title__address:before {
            content: '';
            position: absolute;
            left: 0;
            top: 0;
            width: 12px;
            height: 17px;
            background-position: center;
            background-repeat: no-repeat;
            background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11.987' height='15.004' viewBox='0 0 11.987 15.004'%3E%3Cpath id='icn_pin' d='M1172.2,4439.687a6.061,6.061,0,0,0-8.41,0,5.533,5.533,0,0,0-1.128,6.658,64.755,64.755,0,0,0,4.578,6.291.971.971,0,0,0,1.509,0,64.858,64.858,0,0,0,4.578-6.291A5.533,5.533,0,0,0,1172.2,4439.687Zm-4.2,7.2a3.12,3.12,0,1,1,3.2-3.118A3.162,3.162,0,0,1,1168,4446.886Z' transform='translate(-1162.006 -4437.991)' fill='%23f9cf00'/%3E%3C/svg%3E%0A"); }
            @media only screen and (max-width: 767px) {
              .c-case .c-case-list .case .case-control .case-control-title__address:before {
                top: -2px; } }
      .c-case .c-case-list .case .case-control .case-control-des {
        text-align: right;
        font-family: "Noto Sans JP", sans-serif;
        font-size: 22px;
        font-size: 2.2rem;
        line-height: 34px;
        font-weight: 500;
        color: #42BCC6;
        transition: color .3s; }
        @media only screen and (max-width: 767px) {
          .c-case .c-case-list .case .case-control .case-control-des {
            margin-top: 18px;
            text-align: left;
            font-size: 15px;
            font-size: 1.5rem;
            line-height: 22px; } }
      @media only screen and (min-width: 1024px) {
        .c-case .c-case-list .case .case-control:hover img {
          opacity: 0; }
        .c-case .c-case-list .case .case-control:hover .imghover {
          opacity: 1; }
        .c-case .c-case-list .case .case-control:hover .case-number {
          color: #42BCC6;
          text-shadow: 1px 0 #fff, -1px 0 #fff, 0 1px #fff, 0 -1px #fff, 1px 1px #fff, -1px -1px #fff, 1px -1px #fff, -1px 1px #fff; }
        .c-case .c-case-list .case .case-control:hover .case-control-title, .c-case .c-case-list .case .case-control:hover .case-control-des {
          color: white; }
        .c-case .c-case-list .case .case-control:hover .case-control-cnt:after {
          border-color: white;
          background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='9' height='12' viewBox='0 0 9 12'%3E%3Cpath id='arw' d='M1495.994,5406.987l9,5.987-9,6.013Z' transform='translate(-1495.994 -5406.987)' fill='%23fff'/%3E%3C/svg%3E%0A"); } }
      .c-case .c-case-list .case .case-control.is-active img {
        opacity: 0; }
      .c-case .c-case-list .case .case-control.is-active .imghover {
        opacity: 1; }
      .c-case .c-case-list .case .case-control.is-active .case-number {
        color: #42BCC6;
        text-shadow: 1px 0 #fff, -1px 0 #fff, 0 1px #fff, 0 -1px #fff, 1px 1px #fff, -1px -1px #fff, 1px -1px #fff, -1px 1px #fff; }
      .c-case .c-case-list .case .case-control.is-active .case-control-title, .c-case .c-case-list .case .case-control.is-active .case-control-des {
        color: white; }
      .c-case .c-case-list .case .case-control.is-active .case-control-cnt:after {
        transform: rotate(-90deg);
        background-position: center;
        border-color: white;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='9' height='12' viewBox='0 0 9 12'%3E%3Cpath id='arw' d='M1495.994,5406.987l9,5.987-9,6.013Z' transform='translate(-1495.994 -5406.987)' fill='%23fff'/%3E%3C/svg%3E%0A"); }
      @media only screen and (max-width: 767px) {
        .c-case .c-case-list .case .case-control.is-active .case-control-title:after {
          transform: rotate(-90deg);
          border-color: white;
          background-position: center;
          background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='9' height='12' viewBox='0 0 9 12'%3E%3Cpath id='arw' d='M1495.994,5406.987l9,5.987-9,6.013Z' transform='translate(-1495.994 -5406.987)' fill='%23fff'/%3E%3C/svg%3E%0A"); } }
    .c-case .c-case-list .case .case-cnt {
      background: white;
      padding: 60px 0 100px;
      display: none; }
      @media only screen and (max-width: 767px) {
        .c-case .c-case-list .case .case-cnt {
          padding: 40px 0 38px; } }
      .c-case .c-case-list .case .case-cnt .case-cnt-list {
        display: flex;
        flex-wrap: wrap; }
        .c-case .c-case-list .case .case-cnt .case-cnt-list .item {
          width: calc(50% - 30px);
          margin-right: 60px; }
          @media only screen and (max-width: 767px) {
            .c-case .c-case-list .case .case-cnt .case-cnt-list .item {
              width: 100%;
              margin: 0;
              position: relative; }
              .c-case .c-case-list .case .case-cnt .case-cnt-list .item + .item {
                margin-top: 54px; }
              .c-case .c-case-list .case .case-cnt .case-cnt-list .item:before {
                content: '';
                width: 16px;
                height: 12px;
                position: absolute;
                left: 0;
                right: 0;
                bottom: -30px;
                margin: auto;
                background-position: center;
                background-repeat: no-repeat;
                background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='16' height='12' viewBox='0 0 16 12'%3E%3Cdefs%3E%3CclipPath id='clip-path'%3E%3Crect width='16' height='12' fill='none'/%3E%3C/clipPath%3E%3C/defs%3E%3Cg id='Repeat_Grid_1' data-name='Repeat Grid 1' clip-path='url(%23clip-path)'%3E%3Cg transform='translate(-155.121 -558)'%3E%3Cpath id='arw' d='M0,16,12,8.017,0,0Z' transform='translate(171.121 558) rotate(90)' fill='%23f9cf00'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A"); }
              .c-case .c-case-list .case .case-cnt .case-cnt-list .item:last-child:before {
                content: none; } }
          .c-case .c-case-list .case .case-cnt .case-cnt-list .item:nth-child(2n) {
            margin-right: 0; }
            .c-case .c-case-list .case .case-cnt .case-cnt-list .item:nth-child(2n) .item-img:before {
              content: none; }
          .c-case .c-case-list .case .case-cnt .case-cnt-list .item .item-img {
            position: relative; }
            .c-case .c-case-list .case .case-cnt .case-cnt-list .item .item-img:before {
              content: '';
              width: 12px;
              height: 16px;
              position: absolute;
              top: 0;
              bottom: 0;
              right: -36px;
              margin: auto;
              background-position: center;
              background-repeat: no-repeat;
              background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='16' viewBox='0 0 12 16'%3E%3Cpath id='arw' d='M0,16,12,8.017,0,0Z' fill='%23f9cf00'/%3E%3C/svg%3E%0A"); }
              @media only screen and (max-width: 767px) {
                .c-case .c-case-list .case .case-cnt .case-cnt-list .item .item-img:before {
                  content: none; } }
            .c-case .c-case-list .case .case-cnt .case-cnt-list .item .item-img:after {
              content: 'BEFORE';
              position: absolute;
              left: 0;
              right: 0;
              bottom: 0;
              background: #101010;
              font-family: "Raleway", sans-serif;
              text-align: center;
              font-size: 16px;
              font-size: 1.6rem;
              line-height: 18px;
              letter-spacing: .06em;
              font-weight: 600;
              color: white;
              padding: 5px 10px; }
              @media only screen and (max-width: 767px) {
                .c-case .c-case-list .case .case-cnt .case-cnt-list .item .item-img:after {
                  position: relative;
                  display: block; } }
            .c-case .c-case-list .case .case-cnt .case-cnt-list .item .item-img img {
              width: 100%; }
          .c-case .c-case-list .case .case-cnt .case-cnt-list .item .item-title {
            text-align: center;
            margin-top: 26px;
            font-family: "Noto Sans JP", sans-serif;
            font-size: 22px;
            font-size: 2.2rem;
            line-height: 34px;
            font-weight: 500; }
            @media only screen and (max-width: 767px) {
              .c-case .c-case-list .case .case-cnt .case-cnt-list .item .item-title {
                margin-top: 18px;
                font-size: 20px;
                font-size: 2rem;
                line-height: 29px; } }
          .c-case .c-case-list .case .case-cnt .case-cnt-list .item .item-des {
            margin-top: 23px;
            font-size: 15px;
            font-size: 1.5rem;
            line-height: 28px;
            font-weight: 500; }
            @media only screen and (max-width: 767px) {
              .c-case .c-case-list .case .case-cnt .case-cnt-list .item .item-des {
                margin-top: 13px;
                line-height: 26px; } }
          .c-case .c-case-list .case .case-cnt .case-cnt-list .item--after .item-img:after {
            content: 'AFTER';
            background: #42BCC6; }
          .c-case .c-case-list .case .case-cnt .case-cnt-list .item--after .item-title {
            color: #42BCC6; }
      .c-case .c-case-list .case .case-cnt .case-cnt-gray {
        margin-top: 53px;
        background: #F8F8F8;
        border-radius: 5px;
        position: relative;
        padding: 40px 60px;
        padding-left: 245px; }
        @media only screen and (max-width: 767px) {
          .c-case .c-case-list .case .case-cnt .case-cnt-gray {
            margin-top: 25px;
            padding: 25px 25px 23px; } }
        .c-case .c-case-list .case .case-cnt .case-cnt-gray .case-cnt-gray-title {
          position: absolute;
          left: 60px;
          top: 50%;
          transform: translateY(-50%);
          font-size: 0;
          line-height: 0; }
          @media only screen and (max-width: 767px) {
            .c-case .c-case-list .case .case-cnt .case-cnt-gray .case-cnt-gray-title {
              position: relative;
              left: 0;
              top: 0;
              transform: none;
              padding: 0 11px; } }
          .c-case .c-case-list .case .case-cnt .case-cnt-gray .case-cnt-gray-title .ja {
            display: inline-block;
            vertical-align: middle;
            font-family: "Noto Sans JP", sans-serif;
            font-size: 20px;
            font-size: 2rem;
            line-height: 30px;
            font-weight: 500;
            margin-right: 16px; }
            @media only screen and (max-width: 767px) {
              .c-case .c-case-list .case .case-cnt .case-cnt-gray .case-cnt-gray-title .ja {
                font-size: 18px;
                font-size: 1.8rem;
                line-height: 26px;
                margin-right: 11px; } }
          .c-case .c-case-list .case .case-cnt .case-cnt-gray .case-cnt-gray-title .en {
            display: inline-block;
            vertical-align: middle;
            font-family: "Raleway", sans-serif;
            font-size: 14px;
            font-size: 1.4rem;
            line-height: 30px;
            letter-spacing: .1em;
            font-weight: bold;
            color: #42BCC6; }
            @media only screen and (max-width: 767px) {
              .c-case .c-case-list .case .case-cnt .case-cnt-gray .case-cnt-gray-title .en {
                font-size: 12px;
                font-size: 1.2rem;
                line-height: 26px; } }
        .c-case .c-case-list .case .case-cnt .case-cnt-gray .case-cnt-gray-list {
          padding: 3px 0 0 50px;
          display: flex;
          flex-wrap: wrap;
          border-left: 1px solid #C8D6DE; }
          @media only screen and (max-width: 767px) {
            .c-case .c-case-list .case .case-cnt .case-cnt-gray .case-cnt-gray-list {
              margin-top: 10px;
              padding: 18px 0 0;
              border: 0;
              border-top: 1px solid #C8D6DE; } }
          .c-case .c-case-list .case .case-cnt .case-cnt-gray .case-cnt-gray-list li {
            width: 39%;
            position: relative;
            font-size: 16px;
            font-size: 1.6rem;
            line-height: 2;
            font-weight: 500;
            margin-bottom: 2px;
            padding-left: 107px; }
            @media only screen and (min-width: 768px) {
              .c-case .c-case-list .case .case-cnt .case-cnt-gray .case-cnt-gray-list li {
                white-space: nowrap; }
                .c-case .c-case-list .case .case-cnt .case-cnt-gray .case-cnt-gray-list li:nth-child(2n) {
                  width: 54%; } }
            @media only screen and (max-width: 767px) {
              .c-case .c-case-list .case .case-cnt .case-cnt-gray .case-cnt-gray-list li {
                width: 100%;
                margin: 0;
                padding-left: 86px;
                font-size: 14px;
                font-size: 1.4rem;
                line-height: 18px; }
                .c-case .c-case-list .case .case-cnt .case-cnt-gray .case-cnt-gray-list li + li {
                  margin-top: 10px; } }
            .c-case .c-case-list .case .case-cnt .case-cnt-gray .case-cnt-gray-list li .title {
              position: absolute;
              left: 0;
              top: 0;
              font-weight: bold;
              padding-left: 18px;
              background-position: center left;
              background-repeat: no-repeat;
              background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='10' viewBox='0 0 8 10'%3E%3Cpath id='arw' d='M1551.3,6655.853l-5.8-5h-2.2l5.8,5-5.8,5h2.2Z' transform='translate(-1543.296 -6650.853)' fill='%23f9cf00'/%3E%3C/svg%3E%0A"); }
              @media only screen and (max-width: 767px) {
                .c-case .c-case-list .case .case-cnt .case-cnt-gray .case-cnt-gray-list li .title {
                  padding-left: 14px; } }
          @media only screen and (min-width: 768px) {
            .c-case .c-case-list .case .case-cnt .case-cnt-gray .case-cnt-gray-list--jouer li {
              width: 59%; } }
  @media only screen and (min-width: 768px) and (max-width: 1050px) {
    .c-case .c-case-list .case .case-cnt .case-cnt-gray .case-cnt-gray-list--jouer li {
      width: 56%; } }
          @media only screen and (min-width: 768px) {
              .c-case .c-case-list .case .case-cnt .case-cnt-gray .case-cnt-gray-list--jouer li:nth-child(2n) {
                width: 41%; } }
    @media only screen and (min-width: 768px) and (max-width: 1050px) {
      .c-case .c-case-list .case .case-cnt .case-cnt-gray .case-cnt-gray-list--jouer li:nth-child(2n) {
        width: 44%; } }
          @media only screen and (min-width: 768px) {
            .c-case .c-case-list .case .case-cnt .case-cnt-gray .case-cnt-gray-list--bureau li {
              width: 42%; }
              .c-case .c-case-list .case .case-cnt .case-cnt-gray .case-cnt-gray-list--bureau li:nth-child(2n) {
                width: 58%; }
            .c-case .c-case-list .case .case-cnt .case-cnt-gray .case-cnt-gray-list--mikado li {
              width: 42%; }
              .c-case .c-case-list .case .case-cnt .case-cnt-gray .case-cnt-gray-list--mikado li:nth-child(2n) {
                width: 58%; } }
      .c-case .c-case-list .case .case-cnt .case-cnt-btn {
        margin: 50px auto 0; }
        @media only screen and (max-width: 767px) {
          .c-case .c-case-list .case .case-cnt .case-cnt-btn {
            margin-top: 30px;
            width: 265px; }
            .c-case .c-case-list .case .case-cnt .case-cnt-btn span {
              font-size: 14px;
              font-size: 1.4rem;
              padding: 13px 0; }
              .c-case .c-case-list .case .case-cnt .case-cnt-btn span:before {
                width: 18px;
                height: 18px;
                right: 15px; }
              .c-case .c-case-list .case .case-cnt .case-cnt-btn span:after {
                right: 21px;
                border-width: 4px 0 4px 5px; } }

body.contact section.form ul.steps {
  margin-top: 0; }

@media only screen and (min-width: 768px) {
  body.contact section.form table th:before {
    background-color: #e6e6e6;
    content: "";
    margin: 0 auto;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    height: calc(100% - 20px);
    width: 1px; } }

body.contact .sec-contact {
  margin-top: -95px;
  padding: 36px 0 140px;
  position: relative;
  z-index: 2;
  background-image: url(/images/contact/bg_text.svg);
  background-repeat: no-repeat;
  background-position: center top; }
  @media only screen and (max-width: 767px) {
    body.contact .sec-contact {
      margin-top: -53px;
      padding: 30px 0 120px;
      background-image: url(/images/contact/bg_text_sp.svg);
      background-position: top right 1px; } }
  @media only screen and (min-width: 768px) {
    body.contact .sec-contact .ttl-contact {
      display: flex;
      align-items: center;
      margin-left: -12px; } }
  body.contact .sec-contact .ttl-contact__en {
    font-size: 18px;
    font-size: 1.8rem;
    letter-spacing: .1em;
    font-weight: bold;
    font-family: "Raleway", sans-serif;
    position: relative;
    padding-bottom: 14px; }
    @media only screen and (min-width: 768px) {
      body.contact .sec-contact .ttl-contact__en {
        white-space: nowrap;
        margin-top: 5px; } }
    @media only screen and (max-width: 767px) {
      body.contact .sec-contact .ttl-contact__en {
        display: block;
        font-size: 16px;
        font-size: 1.6rem; } }
    body.contact .sec-contact .ttl-contact__en:before {
      content: "";
      width: 25px;
      height: 2px;
      background-color: #F9CF00;
      position: absolute;
      bottom: 0;
      left: 0; }
      @media only screen and (min-width: 768px) {
        body.contact .sec-contact .ttl-contact__en:before {
          right: 0;
          margin: 0 auto; } }
  body.contact .sec-contact .ttl-contact__ja {
    font-size: 32px;
    font-size: 3.2rem;
    line-height: 1.375;
    font-weight: 500;
    font-family: "Noto Sans JP", sans-serif;
    margin-left: 27px; }
    @media only screen and (max-width: 767px) {
      body.contact .sec-contact .ttl-contact__ja {
        margin-top: 20px;
        display: block;
        font-size: 24px;
        font-size: 2.4rem;
        line-height: 1.5;
        letter-spacing: .06em;
        margin-left: 0; } }
  body.contact .sec-contact .txt {
    margin-top: 57px;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.86; }
    @media only screen and (max-width: 767px) {
      body.contact .sec-contact .txt {
        margin-top: 28px;
        line-height: 1.6; } }
  body.contact .sec-contact .banner {
    margin-top: 73px;
    display: block;
    position: relative; }
    @media only screen and (max-width: 767px) {
      body.contact .sec-contact .banner {
        margin-top: 35px; } }
    @media only screen and (max-width: 767px) {
      body.contact .sec-contact .banner__bg img {
        width: 100%; } }
    body.contact .sec-contact .banner__inner {
      color: #fff;
      position: absolute;
      top: 50%;
      margin-top: -37px; }
      @media only screen and (min-width: 768px) {
        body.contact .sec-contact .banner__inner {
          text-align: right;
          right: 11.8%; } }
      @media only screen and (max-width: 767px) {
        body.contact .sec-contact .banner__inner {
          left: 32px; } }
    @media only screen and (min-width: 768px) {
      body.contact .sec-contact .banner__txt01 {
        padding-right: 3px; } }
    body.contact .sec-contact .banner__txt02 {
      margin-top: 10px;
      font-size: 20px;
      font-size: 2rem;
      line-height: 2;
      letter-spacing: .04em;
      font-family: "Noto Sans JP", sans-serif; }
      @media only screen and (max-width: 767px) {
        body.contact .sec-contact .banner__txt02 {
          margin-top: 13px;
          font-size: 14px;
          font-size: 1.4rem;
          padding-left: 3px; } }
    body.contact .sec-contact .banner__arrow {
      width: 36px;
      height: 36px;
      border-radius: 100%;
      border: 1px solid #c8d6de;
      position: absolute;
      top: 19px;
      right: -15.3%;
      transition: .3s border-color, .3s background-color; }
      @media only screen and (max-width: 767px) {
        body.contact .sec-contact .banner__arrow {
          top: auto;
          bottom: 2px;
          right: -1px; } }
      body.contact .sec-contact .banner__arrow:before {
        content: "";
        width: 0;
        height: 0;
        border-top: 6px solid transparent;
        border-bottom: 6px solid transparent;
        border-left: 9px solid #fff;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 2px;
        right: 0;
        margin: auto; }
    @media only screen and (min-width: 768px) {
      body.contact .sec-contact .banner:hover .banner__arrow {
        border-color: #42bcc6;
        background-color: #42bcc6; } }

body.creations .main-content {
  padding: 101px 0 200px;
  flex-direction: column-reverse; }
  @media only screen and (max-width: 767px) {
    body.creations .main-content {
      padding: 50px 0 123px;
      display: flex;
      flex-direction: column; } }
  @media only screen and (min-width: 768px) {
    body.creations .main-content .side-cms-bar {
      flex-wrap: nowrap; }
      body.creations .main-content .side-cms-bar ul li:nth-child(3n+1) {
        width: 35.2%; }
      body.creations .main-content .side-cms-bar ul li:nth-child(3n+2) {
        width: 42.2%; }
      body.creations .main-content .side-cms-bar ul li:nth-child(3n) {
        width: 22.6%; } }
  @media only screen and (min-width: 768px) and (max-width: 900px) {
    body.creations .main-content .side-cms-bar ul li {
      font-size: 16px;
      font-size: 1.6rem;
      letter-spacing: .01em; } }
  body.creations .main-content .side-cms-bar.frst {
    order: 1;
    margin-bottom: 128px; }
    @media only screen and (max-width: 767px) {
      body.creations .main-content .side-cms-bar.frst {
        margin-bottom: 55px; } }
  @media only screen and (max-width: 767px) {
    body.creations .main-content .article-content {
      order: 2; } }
  body.creations .main-content .article-content ul.article-list {
    -webkit-justify-content: flex-start;
    justify-content: flex-start; }
    @media only screen and (max-width: 767px) {
      body.creations .main-content .article-content ul.article-list {
        padding-bottom: 20px; } }
    body.creations .main-content .article-content ul.article-list .imager {
      overflow: hidden;
      padding-bottom: 87%;
      position: relative; }
      @media only screen and (max-width: 767px) {
        body.creations .main-content .article-content ul.article-list .imager {
          padding-bottom: 94%; } }
      body.creations .main-content .article-content ul.article-list .imager .caption {
        background-color: #e6e6e6;
        font-size: 12px;
        font-size: 1.2rem;
        margin: 0 auto;
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        text-align: center;
        height: 20px;
        display: -webkit-flex;
        display: flex;
        -webkit-align-items: center;
        align-items: center;
        -webkit-justify-content: center;
        justify-content: center; }
        @media only screen and (max-width: 767px) {
          body.creations .main-content .article-content ul.article-list .imager .caption {
            font-size: 10px;
            font-size: 1rem; } }
        body.creations .main-content .article-content ul.article-list .imager .caption .en {
          display: inline-block;
          margin-right: 9px;
          font-size: 16px;
          font-size: 1.6rem;
          font-weight: 600;
          font-family: "Raleway", sans-serif;
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale; }
          @media only screen and (max-width: 767px) {
            body.creations .main-content .article-content ul.article-list .imager .caption .en {
              margin-right: 7px;
              font-size: 10px;
              font-size: 1rem; } }
        body.creations .main-content .article-content ul.article-list .imager .caption .ja {
          font-family: "Noto Sans JP", sans-serif;
          font-weight: 500; }
      body.creations .main-content .article-content ul.article-list .imager .img {
        background-size: cover;
        background-position: center;
        margin: 0 auto;
        position: absolute;
        left: 0;
        right: 0;
        top: 50%;
        transform: translateY(-50%);
        transition: all .3s;
        height: 100%;
        width: 100%; }
    body.creations .main-content .article-content ul.article-list .ttl {
      display: inline-block;
      font-size: 16px;
      font-size: 1.6rem;
      font-weight: bold;
      margin: 20px 0; }
      @media only screen and (max-width: 767px) {
        body.creations .main-content .article-content ul.article-list .ttl {
          font-size: 14px;
          font-size: 1.4rem;
          line-height: 1.5;
          margin: 10px 0 7px; } }
    body.creations .main-content .article-content ul.article-list .location {
      font-size: 15px;
      font-size: 1.5rem; }
      @media only screen and (max-width: 767px) {
        body.creations .main-content .article-content ul.article-list .location {
          font-size: 14px;
          font-size: 1.4rem; } }
      body.creations .main-content .article-content ul.article-list .location img {
        width: 12px;
        margin-right: 10px; }
        @media only screen and (max-width: 767px) {
          body.creations .main-content .article-content ul.article-list .location img {
            margin-right: 8px;
            width: 10px; } }
    body.creations .main-content .article-content ul.article-list .voice {
      font-size: 15px;
      font-size: 1.5rem; }
      @media only screen and (max-width: 767px) {
        body.creations .main-content .article-content ul.article-list .voice {
          font-size: 14px;
          font-size: 1.4rem; } }
      body.creations .main-content .article-content ul.article-list .voice img {
        width: 16px;
        margin-right: 10px; }
        @media only screen and (max-width: 767px) {
          body.creations .main-content .article-content ul.article-list .voice img {
            margin-right: 8px;
            width: 14px; } }
    body.creations .main-content .article-content ul.article-list li {
      opacity: 0;
      margin-bottom: 48px;
      width: calc((100% - 100px)/3); }
      @media only screen and (min-width: 768px) {
        body.creations .main-content .article-content ul.article-list li {
          margin-right: 50px; }
          body.creations .main-content .article-content ul.article-list li:nth-child(3n) {
            margin-right: 0; }
          body.creations .main-content .article-content ul.article-list li:hover .img {
            transform: scale(1.1) translateY(-50%); } }
      @media only screen and (max-width: 767px) {
        body.creations .main-content .article-content ul.article-list li {
          margin-bottom: 25px;
          width: calc(50% - 12px); }
          body.creations .main-content .article-content ul.article-list li:nth-child(odd) {
            margin-right: 24px; } }
      body.creations .main-content .article-content ul.article-list li:nth-child(1) {
        animation-delay: .2s; }
      body.creations .main-content .article-content ul.article-list li:nth-child(2) {
        animation-delay: .5s; }
      body.creations .main-content .article-content ul.article-list li:nth-child(3) {
        animation-delay: .9s; }
      body.creations .main-content .article-content ul.article-list li:nth-child(4) {
        animation-delay: .2s; }
      body.creations .main-content .article-content ul.article-list li:nth-child(5) {
        animation-delay: .5s; }
      body.creations .main-content .article-content ul.article-list li:nth-child(6) {
        animation-delay: .9s; }
      body.creations .main-content .article-content ul.article-list li:nth-child(7) {
        animation-delay: .2s; }
      body.creations .main-content .article-content ul.article-list li:nth-child(8) {
        animation-delay: .5s; }
      body.creations .main-content .article-content ul.article-list li:nth-child(9) {
        animation-delay: .9s; }
      body.creations .main-content .article-content ul.article-list li:nth-child(10) {
        animation-delay: .2s; }
      body.creations .main-content .article-content ul.article-list li:nth-child(11) {
        animation-delay: .5s; }
      body.creations .main-content .article-content ul.article-list li:nth-child(12) {
        animation-delay: .9s; }

body.creations .pagination {
  margin-top: 40px; }
  @media only screen and (max-width: 767px) {
    body.creations .pagination {
      margin-top: 20px; } }

@media only screen and (min-width: 768px) {
  body.creations.single .main-content {
    padding-bottom: 140px; } }

@media only screen and (max-width: 767px) {
  body.creations.single .main-content {
    padding-bottom: 120px; } }

body.creations.single .side-cms-bar.frst {
  margin-top: 5px; }
  @media only screen and (max-width: 767px) {
    body.creations.single .side-cms-bar.frst {
      margin-top: 2px; } }

body.creations.single .article-content .upper-sec {
  border-bottom: 2px solid #e6e6e6;
  margin-bottom: 60px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: space-between;
  justify-content: space-between; }
  @media only screen and (max-width: 767px) {
    body.creations.single .article-content .upper-sec {
      border: none;
      margin-bottom: 18px; } }
  body.creations.single .article-content .upper-sec .category1 {
    background-color: #e6e6e6;
    padding-left: 20px;
    padding-top: 3px;
    height: 30px;
    width: 260px;
    font-size: 15px;
    font-size: 1.5rem;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: flex-start;
    justify-content: flex-start; }
    @media only screen and (max-width: 767px) {
      body.creations.single .article-content .upper-sec .category1 {
        padding-left: 15px;
        margin-bottom: 15px;
        font-size: 15px;
        font-size: 1.5rem;
        width: 100%; } }
  body.creations.single .article-content .upper-sec .category2 {
    font-size: 15px;
    font-size: 1.5rem; }
    @media only screen and (max-width: 767px) {
      body.creations.single .article-content .upper-sec .category2 {
        font-size: 15px;
        font-size: 1.5rem; } }
    body.creations.single .article-content .upper-sec .category2 span {
      color: #42bcc6; }

body.creations.single .article-content .mid-sec {
  margin-bottom: 93px;
  -webkit-align-items: center;
  align-items: center; }
  @media only screen and (max-width: 767px) {
    body.creations.single .article-content .mid-sec {
      margin-bottom: 50px; } }
  body.creations.single .article-content .mid-sec .left {
    width: 42%; }
    @media only screen and (max-width: 767px) {
      body.creations.single .article-content .mid-sec .left {
        order: 2;
        width: 100%; } }
  body.creations.single .article-content .mid-sec .right {
    position: relative;
    width: 58%; }
    @media only screen and (max-width: 767px) {
      body.creations.single .article-content .mid-sec .right {
        order: 1;
        width: 100%; } }
    body.creations.single .article-content .mid-sec .right .icn_zoom {
      margin: 0 auto;
      position: absolute;
      pointer-events: none;
      right: 0;
      bottom: 0;
      width: 30px; }
      @media only screen and (max-width: 767px) {
        body.creations.single .article-content .mid-sec .right .icn_zoom {
          width: 25px; } }
  body.creations.single .article-content .mid-sec .article-title {
    margin-bottom: 50px;
    letter-spacing: 0; }
    @media only screen and (max-width: 767px) {
      body.creations.single .article-content .mid-sec .article-title {
        margin-top: 25px;
        margin-bottom: 22px; } }
    body.creations.single .article-content .mid-sec .article-title .ja {
      font-size: 26px;
      font-size: 2.6rem;
      font-weight: bold; }
      @media only screen and (max-width: 767px) {
        body.creations.single .article-content .mid-sec .article-title .ja {
          font-size: 22px;
          font-size: 2.2rem; } }
    body.creations.single .article-content .mid-sec .article-title .sml {
      display: block;
      font-size: 18px;
      font-size: 1.8rem; }
      @media only screen and (max-width: 767px) {
        body.creations.single .article-content .mid-sec .article-title .sml {
          margin-top: 6px;
          font-size: 15px;
          font-size: 1.5rem; } }
  body.creations.single .article-content .mid-sec .place {
    font-size: 15px;
    font-size: 1.5rem;
    margin-bottom: 62px; }
    @media only screen and (max-width: 767px) {
      body.creations.single .article-content .mid-sec .place {
        font-size: 15px;
        font-size: 1.5rem;
        margin-bottom: 30px; } }
    body.creations.single .article-content .mid-sec .place img {
      margin-right: 9px;
      width: 12px;
      position: relative;
      top: -1px; }
  body.creations.single .article-content .mid-sec table tr th {
    font-size: 15px;
    font-size: 1.5rem;
    font-weight: bold;
    padding-left: 16px;
    padding-bottom: 23px;
    position: relative;
    width: 124px; }
    @media only screen and (max-width: 767px) {
      body.creations.single .article-content .mid-sec table tr th {
        padding-bottom: 14px;
        width: 120px; } }
    body.creations.single .article-content .mid-sec table tr th:before {
      border-right: 1px solid #f9d10f;
      border-bottom: 1px solid #f9d10f;
      content: "";
      margin: 0 auto;
      position: absolute;
      left: 0;
      top: 5px;
      transform: rotate(-45deg);
      height: 5px;
      width: 5px; }
  body.creations.single .article-content .mid-sec table tr td {
    font-size: 15px;
    font-size: 1.5rem;
    padding-bottom: 23px; }
    @media only screen and (max-width: 767px) {
      body.creations.single .article-content .mid-sec table tr td {
        padding-bottom: 14px; } }

body.creations.single .article-content .creation-info {
  position: relative; }
  @media only screen and (min-width: 768px) {
    body.creations.single .article-content .creation-info {
      min-height: 394px; } }
  body.creations.single .article-content .creation-info .cms-ttl {
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 1.583;
    font-weight: bold;
    text-align: center;
    margin-bottom: 30px; }
    @media only screen and (max-width: 767px) {
      body.creations.single .article-content .creation-info .cms-ttl {
        line-height: 1.5;
        font-size: 18px;
        font-size: 1.8rem;
        margin-bottom: 20px; } }
  body.creations.single .article-content .creation-info .deco {
    margin: 0 auto;
    position: absolute;
    left: calc(50% - 640px);
    top: 50%;
    transform: translateY(-50%);
    max-width: 710px;
    z-index: -1; }
    @media only screen and (max-width: 767px) {
      body.creations.single .article-content .creation-info .deco {
        top: -12px;
        transform: translateY(0%);
        left: -24px;
        width: calc(100% + 46px); } }

body.creations.single .article-content .before-sec .before-ttl {
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0;
  padding-left: 37px;
  padding-bottom: 15px;
  position: relative;
  text-align: left;
  border-bottom: 2px solid #42bcc6;
  font-family: "Noto Sans JP", sans-serif; }
  @media only screen and (max-width: 767px) {
    body.creations.single .article-content .before-sec .before-ttl {
      font-size: 20px;
      font-size: 2rem;
      line-height: 1.44;
      padding-bottom: 14px;
      padding-left: 29px; } }
  body.creations.single .article-content .before-sec .before-ttl:before {
    background-color: #42bcc6;
    content: "";
    margin: 0 auto;
    position: absolute;
    left: 10px;
    top: 8px;
    height: 10px;
    width: 10px; }
    @media only screen and (max-width: 767px) {
      body.creations.single .article-content .before-sec .before-ttl:before {
        top: 7px;
        left: 9px;
        height: 8px;
        width: 8px; } }
  body.creations.single .article-content .before-sec .before-ttl:after {
    background-color: #42bcc6;
    content: "";
    margin: 0 auto;
    position: absolute;
    left: 0px;
    top: 18px;
    height: 10px;
    width: 10px; }
    @media only screen and (max-width: 767px) {
      body.creations.single .article-content .before-sec .before-ttl:after {
        top: 15px;
        left: 1px;
        height: 8px;
        width: 8px; } }

body.creations.single .article-content .before-sec .duo {
  margin-top: 60px;
  -webkit-align-items: center;
  align-items: center; }
  @media only screen and (max-width: 767px) {
    body.creations.single .article-content .before-sec .duo {
      margin-top: 20px; } }

body.creations.single .article-content .before-sec .imager {
  width: 280px; }
  @media only screen and (max-width: 767px) {
    body.creations.single .article-content .before-sec .imager {
      margin-bottom: 19px;
      width: 100%; } }

body.creations.single .article-content .before-sec .txt-box {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.866;
  width: calc(100% - 348px); }
  @media only screen and (max-width: 767px) {
    body.creations.single .article-content .before-sec .txt-box {
      width: 100%; } }

body.creations.single .article-content .galery-sec {
  border-top: 1px dotted #e6e6e6;
  margin-top: 60px;
  padding-top: 60px;
  padding-bottom: 60px; }
  @media only screen and (max-width: 767px) {
    body.creations.single .article-content .galery-sec {
      margin-top: 20px;
      padding-top: 30px;
      padding-bottom: 0px; } }
  @media only screen and (min-width: 768px) {
    body.creations.single .article-content .galery-sec ul {
      margin-bottom: -30px;
      -webkit-justify-content: flex-start;
      justify-content: flex-start; } }
  body.creations.single .article-content .galery-sec ul li {
    background-size: cover;
    background-position: center;
    padding-bottom: 21%;
    position: relative;
    margin-bottom: 20px;
    width: calc((100% - 60px)/3); }
    @media only screen and (min-width: 768px) {
      body.creations.single .article-content .galery-sec ul li {
        cursor: pointer;
        -webkit-transition: 0.3s;
        -moz-transition: 0.3s;
        -o-transition: 0.3s;
        transition: 0.3s; }
        body.creations.single .article-content .galery-sec ul li:hover {
          opacity: .7; } }
    @media only screen and (min-width: 768px) {
      body.creations.single .article-content .galery-sec ul li {
        margin-right: 20px; }
        body.creations.single .article-content .galery-sec ul li:nth-child(3n) {
          margin-right: 0; } }
    @media only screen and (max-width: 767px) {
      body.creations.single .article-content .galery-sec ul li {
        padding-bottom: 54%;
        width: 100%; }
        body.creations.single .article-content .galery-sec ul li:last-child {
          margin-bottom: 0; } }
    body.creations.single .article-content .galery-sec ul li a {
      display: block;
      height: 100%; }
    body.creations.single .article-content .galery-sec ul li .image {
      margin: 0 auto;
      position: absolute;
      left: 0;
      right: 0;
      top: 50%;
      transform: translateY(-50%);
      opacity: 0; }
    body.creations.single .article-content .galery-sec ul li img.deco {
      margin: 0 auto;
      position: absolute;
      right: 0;
      bottom: 0;
      width: 30px; }
      @media only screen and (max-width: 767px) {
        body.creations.single .article-content .galery-sec ul li img.deco {
          width: 25px; } }

body.creations.single .article-content .upper-sec.voice-row {
  margin-top: 130px; }
  @media only screen and (max-width: 767px) {
    body.creations.single .article-content .upper-sec.voice-row {
      margin-top: 50px; } }
  body.creations.single .article-content .upper-sec.voice-row .category1 {
    font-size: 15px;
    font-size: 1.5rem;
    letter-spacing: 0;
    font-weight: 500;
    font-family: "Noto Sans JP", sans-serif;
    padding-left: 0; }
    @media only screen and (min-width: 768px) {
      body.creations.single .article-content .upper-sec.voice-row .category1 {
        height: 28px;
        justify-content: center; } }
    @media only screen and (max-width: 767px) {
      body.creations.single .article-content .upper-sec.voice-row .category1 {
        height: auto;
        font-size: 18px;
        font-size: 1.8rem;
        padding: 13px 20px; } }
  @media only screen and (min-width: 768px) {
    body.creations.single .article-content .upper-sec.voice-row .category2 {
      margin-bottom: 6px; } }
  @media only screen and (max-width: 767px) {
    body.creations.single .article-content .upper-sec.voice-row .category2 {
      margin-top: 11px;
      font-size: 18px;
      font-size: 1.8rem; } }
  body.creations.single .article-content .upper-sec.voice-row .category2 span {
    margin-right: 4px; }

body.creations.single .voice-box {
  margin-top: -7px;
  margin-bottom: 93px; }
  @media only screen and (max-width: 767px) {
    body.creations.single .voice-box {
      margin-top: -1px;
      margin-bottom: 63px; } }
  body.creations.single .voice-box__ttl {
    font-size: 26px;
    font-size: 2.6rem;
    line-height: 1.6923;
    letter-spacing: 0;
    font-weight: bold; }
    @media only screen and (max-width: 767px) {
      body.creations.single .voice-box__ttl {
        font-size: 22px;
        font-size: 2.2rem;
        line-height: 1.5454; } }
  @media only screen and (min-width: 768px) {
    body.creations.single .voice-box__inner {
      margin-top: 44px;
      display: flex;
      flex-direction: row-reverse;
      align-items: flex-start; } }
  @media only screen and (max-width: 767px) {
    body.creations.single .voice-box__inner {
      margin-top: 27px; } }
  body.creations.single .voice-box__content {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.8667;
    letter-spacing: 0;
    font-weight: 500; }
    @media only screen and (min-width: 768px) {
      body.creations.single .voice-box__content {
        width: 100%; } }
    @media only screen and (max-width: 767px) {
      body.creations.single .voice-box__content {
        margin-top: 29px; } }
  @media only screen and (min-width: 768px) {
    body.creations.single .voice-box__img {
      margin-top: 7px;
      min-width: 350px;
      max-width: 350px;
      text-align: right;
      padding-left: 70px; } }
  @media only screen and (max-width: 767px) {
    body.creations.single .voice-box__img img {
      width: 100%; } }

@media only screen and (max-width: 767px) {
  body.creations .single-pagination {
    margin-bottom: 0; } }

body.departure section.intro {
  padding: 102px 0 0px; }
  @media only screen and (max-width: 767px) {
    body.departure section.intro {
      padding: 45px 0 0px; } }
  body.departure section.intro .ttl {
    font-size: 24px;
    font-size: 2.4rem;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    line-height: 1.5;
    padding-left: 39px;
    padding-bottom: 12px;
    position: relative;
    margin-bottom: 40px;
    text-align: left;
    background-image: url("../images/news/bdr.png");
    background-position: bottom;
    background-size: 2px;
    background-repeat: repeat-x; }
    @media only screen and (max-width: 767px) {
      body.departure section.intro .ttl {
        font-size: 17px;
        font-size: 1.7rem;
        line-height: 1.44;
        padding-bottom: 20px;
        margin-bottom: 20px;
        padding-left: 20px; } }
    body.departure section.intro .ttl:before {
      background-color: #5db2cc;
      content: "";
      margin: 0 auto;
      position: absolute;
      left: 10px;
      top: 5px;
      height: 10px;
      width: 10px; }
      @media only screen and (max-width: 767px) {
        body.departure section.intro .ttl:before {
          left: 6px;
          height: 6px;
          width: 6px; } }
    body.departure section.intro .ttl:after {
      background-color: #5db2cc;
      content: "";
      margin: 0 auto;
      position: absolute;
      left: 0px;
      top: 15px;
      height: 10px;
      width: 10px; }
      @media only screen and (max-width: 767px) {
        body.departure section.intro .ttl:after {
          top: 12px;
          height: 6px;
          width: 6px; } }
  body.departure section.intro .list-box {
    background-color: #f8f8f8;
    padding: 30px;
    margin-bottom: 40px; }
    @media only screen and (max-width: 767px) {
      body.departure section.intro .list-box {
        margin-bottom: 15px;
        padding: 20px 15px; } }
    body.departure section.intro .list-box .list-box-ttl {
      border-bottom: 2px solid #5db2cc;
      color: #5db2cc;
      font-size: 20px;
      font-size: 2rem;
      font-family: "Noto Sans JP", sans-serif;
      text-align: center;
      padding-bottom: 20px;
      margin-bottom: 40px; }
      @media only screen and (max-width: 767px) {
        body.departure section.intro .list-box .list-box-ttl {
          border-bottom: 1px solid #5db2cc;
          font-size: 16px;
          font-size: 1.6rem;
          text-align: center;
          padding-bottom: 14px;
          margin-bottom: 20px; } }
    body.departure section.intro .list-box ul.list li {
      font-size: 18px;
      font-size: 1.8rem;
      line-height: 1.4;
      position: relative;
      padding-left: 30px;
      margin-bottom: 30px; }
      @media only screen and (max-width: 767px) {
        body.departure section.intro .list-box ul.list li {
          font-size: 15px;
          font-size: 1.5rem;
          line-height: 1.6;
          padding-left: 20px;
          margin-bottom: 12px; } }
      body.departure section.intro .list-box ul.list li:last-child {
        margin-bottom: 0; }
      body.departure section.intro .list-box ul.list li .det {
        font-size: 12px;
        font-size: 1.2rem;
        margin-top: 10px;
        padding-left: 15px;
        position: relative; }
        @media only screen and (max-width: 767px) {
          body.departure section.intro .list-box ul.list li .det {
            font-size: 11px;
            font-size: 1.1rem;
            margin-top: 10px; } }
      body.departure section.intro .list-box ul.list li a {
        color: #5db2cc;
        text-decoration: underline; }
      body.departure section.intro .list-box ul.list li .ast {
        margin: 0 auto;
        position: absolute;
        left: 0;
        top: 0; }
      body.departure section.intro .list-box ul.list li img {
        margin: 0 auto;
        position: absolute;
        left: 0;
        top: 2px;
        width: 20px; }
        @media only screen and (max-width: 767px) {
          body.departure section.intro .list-box ul.list li img {
            top: 4px;
            width: 15px; } }
  body.departure section.intro .duo {
    margin: 0 auto;
    padding-top: 40px;
    margin-bottom: 150px;
    max-width: 760px; }
    @media only screen and (max-width: 767px) {
      body.departure section.intro .duo {
        padding-top: 25px;
        margin-bottom: 64px; } }
    body.departure section.intro .duo a {
      background-color: #5db2cc;
      color: white;
      font-size: 18px;
      font-size: 1.8rem;
      font-weight: bold;
      letter-spacing: 0.04em;
      padding-left: 29px;
      height: 70px;
      width: calc(50% - 10px);
      display: -webkit-flex;
      display: flex;
      -webkit-align-items: center;
      align-items: center;
      -webkit-justify-content: flex-start;
      justify-content: flex-start; }
      @media only screen and (min-width: 768px) {
        body.departure section.intro .duo a {
          cursor: pointer;
          -webkit-transition: 0.3s;
          -moz-transition: 0.3s;
          -o-transition: 0.3s;
          transition: 0.3s; }
          body.departure section.intro .duo a:hover {
            opacity: .7; } }
      @media only screen and (max-width: 767px) {
        body.departure section.intro .duo a {
          font-size: 16px;
          font-size: 1.6rem;
          margin-bottom: 8px;
          padding-left: 20px;
          height: 60px;
          width: 100%; } }
      body.departure section.intro .duo a img {
        margin-right: 19px;
        width: 20px; }
        @media only screen and (max-width: 767px) {
          body.departure section.intro .duo a img {
            margin-right: 13px;
            width: 16px; } }

body.departure.topdep section.form {
  padding-top: 0; }

body.departure section.form .banner {
  display: block;
  margin: 0 auto;
  margin-top: 120px;
  max-width: 880px; }
  @media only screen and (max-width: 767px) {
    body.departure section.form .banner {
      margin-top: 90px; } }

body.departure section.form .nb {
  border-bottom: none !important; }
  @media only screen and (min-width: 768px) {
    body.departure section.form .nb th {
      vertical-align: middle !important; }
      body.departure section.form .nb th em {
        margin: 0 auto;
        position: absolute;
        top: 50% !important;
        transform: translateY(-50%) !important; } }

body.departure section.form .detailp {
  font-size: 12px;
  font-size: 1.2rem;
  margin-bottom: 14px; }
  @media only screen and (max-width: 767px) {
    body.departure section.form .detailp {
      font-size: 11px;
      font-size: 1.1rem;
      margin-bottom: 11px; } }

body.departure section.form .table-box {
  border: 1px solid #e6e6e6;
  border-radius: 5px;
  margin-bottom: 60px; }
  @media only screen and (max-width: 767px) {
    body.departure section.form .table-box {
      margin-bottom: 50px; } }

@media only screen and (max-width: 767px) {
  body.departure section.form textarea {
    height: 40px !important; } }

@media only screen and (min-width: 768px) {
  body.departure section.form .radio-row.reg .checkerradio {
    max-width: 244px;
    width: 100%; } }

body.departure section.form .mt {
  margin-top: 14px; }
  @media only screen and (max-width: 767px) {
    body.departure section.form .mt {
      margin-top: 20px; } }

body.departure section.form ul.steps {
  margin-top: 80px; }
  @media only screen and (max-width: 767px) {
    body.departure section.form ul.steps {
      margin-top: 30px; } }

@media only screen and (min-width: 768px) {
  body.departure .form #privacyChk {
    width: 800px; } }

@media only screen and (max-width: 767px) {
  body.departure .privacy-check label {
    white-space: normal;
    text-align: left; } }

@media only screen and (max-width: 767px) {
  body.departure .privacy-check .effec {
    top: 2px;
    transform: translateY(0%); } }

body.departure.confirm .select-wrap {
  -webkit-justify-content: flex-start;
  justify-content: flex-start; }

body.departure .btn-youtube {
  width: 370px;
  max-width: 100%;
  display: block;
  position: relative;
  overflow: hidden;
  text-decoration: none;
  border: 1px solid #5db2cc;
  background-color: #5db2cc;
  text-align: center;
  outline: none;
  transition: ease 0.2s;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 40px; }
  @media only screen and (max-width: 767px) {
    body.departure .btn-youtube {
      margin-bottom: 20px; } }
  body.departure .btn-youtube::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    background: #fff;
    width: 100%;
    height: 100%;
    transition: transform 0.5s cubic-bezier(0.8, 0, 0.2, 1) 0s;
    transform: scale(0, 1);
    transform-origin: right top; }
  body.departure .btn-youtube span {
    position: relative;
    z-index: 3;
    color: #fff;
    transition: color 0.2s;
    display: block;
    font-size: 18px;
    font-size: 1.8rem;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: bold;
    line-height: 30px;
    padding: 19px 0; }
    @media only screen and (max-width: 767px) {
      body.departure .btn-youtube span {
        font-size: 16px;
        font-size: 1.6rem;
        line-height: 24px;
        padding: 17px 0;
        letter-spacing: 0.04em; } }
    body.departure .btn-youtube span:before {
      content: "";
      width: 20px;
      height: 21px;
      position: absolute;
      top: 0;
      bottom: 0;
      right: auto;
      left: 30px;
      margin: auto;
      border-radius: 0;
      background-color: transparent !important;
      background-size: cover;
      background-image: url("../images/common/icn_youtube.png"); }
      @media only screen and (max-width: 767px) {
        body.departure .btn-youtube span:before {
          width: 15px;
          height: 16px;
          left: 20px;
          background-image: url("../images/common/icn_youtube_sp.png"); } }
  @media only screen and (min-width: 768px) {
    body.departure .btn-youtube:hover::before {
      transform-origin: left top;
      transform: scale(1, 1); }
    body.departure .btn-youtube:hover span {
      color: #5db2cc; }
      body.departure .btn-youtube:hover span:before {
        background-image: url("../images/common/icn_youtube_hover.png"); } }

body.document .sec-assets {
  padding: 98px 0 73px;
  position: relative;
  z-index: 1; }
  @media only screen and (max-width: 767px) {
    body.document .sec-assets {
      padding: 61px 0 48px; } }
  body.document .sec-assets:before {
    content: "";
    background-image: url(/images/document/assets_bg01.jpg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    background-color: #42bcc6;
    position: absolute;
    top: 298px;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: -1;
    pointer-events: none; }
    @media only screen and (max-width: 767px) {
      body.document .sec-assets:before {
        background-image: url(/images/document/assets_bg01_sp.jpg);
        top: 254px; } }
  @media only screen and (min-width: 768px) {
    body.document .sec-assets .inner-assets {
      max-width: 1280px;
      margin: 0 auto;
      display: flex;
      justify-content: space-between;
      align-items: flex-start; } }
  @media only screen and (max-width: 767px) {
    body.document .sec-assets .inner-assets {
      padding: 0 25px; } }
  @media only screen and (min-width: 768px) {
    body.document .sec-assets .info-assets {
      width: calc(50% + 140px); } }
  @media only screen and (min-width: 768px) {
    body.document .sec-assets .info-assets .in-info {
      padding: 0 20px;
      max-width: 680px;
      margin-left: auto; } }
  body.document .sec-assets .info-assets .ttl-en {
    font-size: 74px;
    font-size: 7.4rem;
    line-height: 1.05;
    letter-spacing: .1em;
    font-weight: 300;
    font-family: "Raleway", sans-serif;
    color: #42bcc6; }
    @media only screen and (max-width: 767px) {
      body.document .sec-assets .info-assets .ttl-en {
        font-size: 34px;
        font-size: 3.4rem;
        line-height: 1.14; } }
    body.document .sec-assets .info-assets .ttl-en strong {
      font-weight: bold; }
    body.document .sec-assets .info-assets .ttl-en .mr {
      margin-right: 10px; }
  body.document .sec-assets .info-assets .ttl-ja {
    margin-top: 93px;
    font-size: 32px;
    font-size: 3.2rem;
    line-height: 1.625;
    letter-spacing: 0;
    font-weight: 500;
    font-family: "Noto Sans JP", sans-serif;
    color: #fff; }
    @media only screen and (max-width: 767px) {
      body.document .sec-assets .info-assets .ttl-ja {
        margin-top: 29px;
        font-size: 20px;
        font-size: 2rem;
        line-height: 1.6; } }
  body.document .sec-assets .info-assets .txt {
    margin-top: 32px;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 2.26;
    letter-spacing: .05em;
    font-weight: 500;
    font-family: "Noto Sans JP", sans-serif;
    color: #fff; }
    @media only screen and (max-width: 767px) {
      body.document .sec-assets .info-assets .txt {
        margin-top: 15px;
        line-height: 1.86; } }
  @media only screen and (min-width: 768px) {
    body.document .sec-assets .image-assets {
      margin-top: 7px;
      width: calc(50% - 140px); } }
  @media only screen and (max-width: 767px) {
    body.document .sec-assets .image-assets {
      margin-top: 25px;
      margin-right: -25px; } }
  body.document .sec-assets .image-assets img {
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px; }
    @media only screen and (max-width: 767px) {
      body.document .sec-assets .image-assets img {
        width: 100%; } }

body.document .sec-present {
  padding: 100px 0 75px;
  background-image: url(/images/document/present_bg01.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover; }
  @media only screen and (max-width: 767px) {
    body.document .sec-present {
      padding: 44px 0 55px;
      background-image: url(/images/document/present_bg01_sp.jpg); } }
  @media only screen and (min-width: 768px) {
    body.document .sec-present .wrap-present {
      display: flex;
      flex-wrap: wrap;
      align-items: flex-start;
      margin: 0 -12.53px; } }
  @media only screen and (min-width: 768px) {
    body.document .sec-present .infobox, body.document .sec-present .catalogitem {
      width: calc(100%/3 - 25px);
      margin: 0 12.5px 25px; } }
  body.document .sec-present .infobox {
    margin-top: -7px; }
    @media only screen and (max-width: 767px) {
      body.document .sec-present .infobox {
        margin-top: 0;
        margin-bottom: 27px; } }
    body.document .sec-present .infobox .txt {
      margin-top: 47px;
      max-width: 290px;
      font-size: 15px;
      font-size: 1.5rem;
      line-height: 1.866;
      letter-spacing: .05em;
      font-family: "Noto Sans JP", sans-serif; }
      @media only screen and (max-width: 767px) {
        body.document .sec-present .infobox .txt {
          margin-top: 37px;
          max-width: 100%; } }
  body.document .sec-present .catalogitem {
    position: relative;
    background-color: #fff;
    overflow: hidden;
    border-radius: 5px;
    box-shadow: 0 0 10px rgba(22, 151, 162, 0.16); }
    @media only screen and (max-width: 767px) {
      body.document .sec-present .catalogitem {
        margin-bottom: 10px; } }
    body.document .sec-present .catalogitem__in {
      display: block;
      position: relative; }
      body.document .sec-present .catalogitem__in img {
        width: 100%; }
    body.document .sec-present .catalogitem__over {
      width: 100%;
      height: 100%;
      background-color: rgba(168, 168, 168, 0.85);
      position: absolute;
      top: 0;
      left: 0;
      opacity: 0;
      transition: .3s background-color, .3s opacity;
      display: flex;
      align-items: center;
      justify-content: center; }
      @media only screen and (min-width: 768px) {
        body.document .sec-present .catalogitem__over:hover {
          opacity: 1; } }
      body.document .sec-present .catalogitem__over > div {
        width: 100%; }
    body.document .sec-present .catalogitem__txtcheck {
      width: 100%;
      text-align: center;
      font-size: 26px;
      font-size: 2.6rem;
      line-height: 1.5;
      letter-spacing: .04em;
      font-weight: bold;
      font-family: "Noto Sans JP", sans-serif;
      color: #fff;
      opacity: 0;
      transition: .3s opacity, .3s transform;
      position: relative;
      z-index: 2;
      pointer-events: none; }
      body.document .sec-present .catalogitem__txtcheck span {
        display: inline-block;
        position: relative;
        padding-left: 22px; }
        body.document .sec-present .catalogitem__txtcheck span:before {
          content: "";
          width: 22px;
          height: 22px;
          background-image: url(/images/document/ttl_check.svg);
          background-repeat: no-repeat;
          background-position: center;
          position: absolute;
          top: 11px;
          left: -9px; }
    body.document .sec-present .catalogitem__btn {
      width: calc(100% - 40px);
      max-width: 265px;
      height: 60px;
      margin: 0 auto;
      border: 1px solid #fff;
      border-radius: 5px;
      overflow: hidden;
      -webkit-mask-image: -webkit-radial-gradient(white, black);
      display: flex;
      align-items: center;
      justify-content: center;
      text-align: center;
      font-size: 18px;
      font-size: 1.8rem;
      line-height: 1.5;
      letter-spacing: .04em;
      font-weight: bold;
      background-color: #42bcc6;
      font-family: "Noto Sans JP", sans-serif;
      color: #fff;
      cursor: pointer;
      transition: .3s color, .3s border-color, .3s top;
      position: relative;
      top: -19px;
      z-index: 1; }
      body.document .sec-present .catalogitem__btn:before {
        content: "";
        width: 100%;
        height: 100%;
        background-color: #fff;
        position: absolute;
        top: 0;
        left: 0;
        z-index: -1;
        transform: scale(0, 1);
        transform-origin: right top;
        transition: .3s transform; }
      body.document .sec-present .catalogitem__btn span {
        position: relative; }
      body.document .sec-present .catalogitem__btn--check {
        display: block; }
      body.document .sec-present .catalogitem__btn--uncheck {
        display: none; }
      @media only screen and (min-width: 768px) {
        body.document .sec-present .catalogitem__btn:hover {
          color: #42bcc6;
          border-color: #42bcc6; }
          body.document .sec-present .catalogitem__btn:hover:before {
            transform-origin: left top;
            transform: scale(1, 1); } }
    body.document .sec-present .catalogitem__over-sp {
      opacity: 0;
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      z-index: 1;
      background-color: rgba(66, 188, 198, 0.85);
      transition: .3s opacity;
      z-index: 2; }
    body.document .sec-present .catalogitem__txtcheck-sp {
      width: 100%;
      text-align: center;
      font-size: 24px;
      font-size: 2.4rem;
      line-height: 1.5;
      letter-spacing: .04em;
      font-weight: bold;
      font-family: "Noto Sans JP", sans-serif;
      color: #fff;
      position: relative;
      top: 31%; }
      body.document .sec-present .catalogitem__txtcheck-sp span {
        display: inline-block;
        position: relative;
        padding-top: 33px; }
        body.document .sec-present .catalogitem__txtcheck-sp span:before {
          content: "";
          width: 22px;
          height: 22px;
          background-image: url(/images/document/ttl_check.svg);
          background-repeat: no-repeat;
          background-position: center;
          position: absolute;
          top: 0;
          left: 0;
          right: 0;
          margin: 0 auto; }
    body.document .sec-present .catalogitem__btn-sp {
      background-color: #42bcc6;
      color: #fff;
      width: 265px;
      height: 50px;
      border: 1px solid #fff;
      border-radius: 5px;
      display: flex;
      align-items: center;
      justify-content: center;
      text-align: center;
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 1.5;
      letter-spacing: .04em;
      font-weight: bold;
      font-family: "Noto Sans JP", sans-serif;
      position: absolute;
      bottom: 30px;
      left: 0;
      right: 0;
      margin: 0 auto;
      z-index: 2; }
    body.document .sec-present .catalogitem input {
      position: absolute;
      top: 0;
      left: 0;
      opacity: 0; }
      body.document .sec-present .catalogitem input:checked ~ .catalogitem__in .catalogitem__over {
        opacity: 1;
        background-color: rgba(66, 188, 198, 0.85); }
      body.document .sec-present .catalogitem input:checked ~ .catalogitem__in .catalogitem__txtcheck {
        opacity: 1;
        transform: translateY(3px); }
      body.document .sec-present .catalogitem input:checked ~ .catalogitem__in .catalogitem__btn {
        top: 42px; }
      body.document .sec-present .catalogitem input:checked ~ .catalogitem__in .catalogitem__btn--check {
        display: none; }
      body.document .sec-present .catalogitem input:checked ~ .catalogitem__in .catalogitem__btn--uncheck {
        display: block; }
      body.document .sec-present .catalogitem input:checked ~ .catalogitem__in .catalogitem__over-sp {
        opacity: 1; }
  body.document .sec-present .banner-download {
    margin: 55px auto 0;
    max-width: 1000px;
    position: relative;
    z-index: 1;
    border-radius: 10px;
    overflow: hidden;
    -webkit-mask-image: -webkit-radial-gradient(white, black);
    cursor: pointer; }
    @media only screen and (min-width: 768px) {
      body.document .sec-present .banner-download:before {
        content: "";
        background-image: url(/images/document/banner_bg01.jpg);
        background-repeat: no-repeat;
        background-position: center;
        background-size: cover;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        z-index: -1;
        pointer-events: none;
        transition: .3s transform; }
      body.document .sec-present .banner-download:hover:before {
        transform: scale(1.1); } }
    @media only screen and (max-width: 767px) {
      body.document .sec-present .banner-download {
        margin-top: 78px; } }
    body.document .sec-present .banner-download .arrow-banner {
      width: 36px;
      height: 36px;
      border-radius: 100%;
      border: 1px solid #c8d6de;
      position: absolute;
      top: 50%;
      right: 4%;
      margin-top: -18px;
      transition: .3s border-color, .3s background-color;
      z-index: 1; }
      body.document .sec-present .banner-download .arrow-banner:before {
        content: "";
        width: 0;
        height: 0;
        border-top: 6px solid transparent;
        border-bottom: 6px solid transparent;
        border-left: 9px solid #fff;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 2px;
        right: 0;
        margin: auto; }
    body.document .sec-present .banner-download .txt-banner {
      font-size: 18px;
      font-size: 1.8rem;
      line-height: 1.83;
      letter-spacing: .04em;
      font-weight: 500;
      font-family: "Noto Sans JP", sans-serif;
      color: #42bcc6;
      transition: .3s color;
      position: absolute;
      top: 50%;
      margin-top: -16px;
      right: 10.8%; }
      body.document .sec-present .banner-download .txt-banner span {
        background-color: #fff;
        transition: .3s background-color;
        padding: 0 5px 2px 6px; }
    @media only screen and (min-width: 768px) {
      body.document .sec-present .banner-download:hover .arrow-banner {
        border-color: #42bcc6;
        background-color: #42bcc6; }
      body.document .sec-present .banner-download:hover .txt-banner {
        color: #fff; }
        body.document .sec-present .banner-download:hover .txt-banner span {
          background-color: #42bcc6; } }

body.document .sec-document {
  padding: 92px 0 100px; }
  @media only screen and (max-width: 767px) {
    body.document .sec-document {
      padding: 50px 0 10px; } }
  @media only screen and (min-width: 768px) {
    body.document .sec-document .wrap-btn {
      margin-top: 81px;
      display: flex;
      justify-content: space-between; } }
  @media only screen and (max-width: 767px) {
    body.document .sec-document .wrap-btn {
      margin-top: 40px; } }
  body.document .sec-document .btn {
    border-radius: 5px;
    border: 1px solid #C8D6DE;
    display: flex;
    align-items: center;
    position: relative;
    transition: .3s border-color, .3s background-color; }
    @media only screen and (min-width: 768px) {
      body.document .sec-document .btn {
        width: calc(50% - 10px);
        height: 100px;
        padding: 10px 29px; } }
    @media only screen and (max-width: 767px) {
      body.document .sec-document .btn {
        height: 90px;
        padding: 6px 19px 10px;
        margin-bottom: 10px; } }
    body.document .sec-document .btn__txt {
      transition: .3s color; }
      body.document .sec-document .btn__txt .txt-en {
        display: block;
        font-size: 28px;
        font-size: 2.8rem;
        line-height: 1.5;
        letter-spacing: .1em;
        font-weight: bold;
        font-family: "Raleway", sans-serif;
        transition: .3s color; }
        @media only screen and (max-width: 767px) {
          body.document .sec-document .btn__txt .txt-en {
            font-size: 24px;
            font-size: 2.4rem; } }
        body.document .sec-document .btn__txt .txt-en span {
          color: #42bcc6;
          transition: .3s color; }
      body.document .sec-document .btn__txt .txt-ja {
        margin-top: -1px;
        display: block;
        font-size: 12px;
        font-size: 1.2rem;
        line-height: 1.5;
        letter-spacing: .12em;
        font-weight: 700;
        font-family: "Noto Sans JP", sans-serif;
        transition: .3s color; }
        @media only screen and (max-width: 767px) {
          body.document .sec-document .btn__txt .txt-ja {
            margin-top: 1px; } }
    body.document .sec-document .btn__arrow {
      width: 36px;
      height: 36px;
      border-radius: 100%;
      border: 1px solid #c8d6de;
      position: absolute;
      top: 50%;
      right: 29px;
      margin-top: -18px;
      transition: .3s border-color, .3s background-color; }
      @media only screen and (max-width: 767px) {
        body.document .sec-document .btn__arrow {
          width: 30px;
          height: 30px;
          right: 19px;
          margin-top: -15px; } }
      body.document .sec-document .btn__arrow:before {
        content: "";
        width: 0;
        height: 0;
        border-left: 6px solid transparent;
        border-right: 6px solid transparent;
        border-top: 9px solid #42bcc6;
        position: absolute;
        top: 2px;
        bottom: 0;
        left: 0;
        right: 0;
        margin: auto; }
        @media only screen and (max-width: 767px) {
          body.document .sec-document .btn__arrow:before {
            border-left-width: 5px;
            border-right-width: 5px;
            border-top-width: 8px; } }
    @media only screen and (min-width: 768px) {
      body.document .sec-document .btn:hover {
        border-color: #42bcc6;
        background-color: #42bcc6; }
        body.document .sec-document .btn:hover .txt-en, body.document .sec-document .btn:hover .txt-ja {
          color: #fff; }
          body.document .sec-document .btn:hover .txt-en span, body.document .sec-document .btn:hover .txt-ja span {
            color: #fff; }
        body.document .sec-document .btn:hover .btn__arrow {
          border-color: #fff;
          background-color: #fff; } }

body.document section.form {
  padding-top: 37px;
  padding-bottom: 122px; }
  @media only screen and (max-width: 767px) {
    body.document section.form {
      margin-top: -22px;
      padding-top: 80px;
      padding-bottom: 64px; } }
  body.document section.form .form-hd {
    margin-top: 73px; }
    @media only screen and (max-width: 767px) {
      body.document section.form .form-hd {
        margin-top: 26px; } }
    body.document section.form .form-hd__txt {
      font-size: 15px;
      line-height: 24px; }
      body.document section.form .form-hd__txt a {
        text-decoration: underline;
        color: #1b95e0; }
    body.document section.form .form-hd .form-note {
      margin-top: 7px; }
      @media only screen and (max-width: 767px) {
        body.document section.form .form-hd .form-note {
          margin-top: 9px; } }
      body.document section.form .form-hd .form-note li {
        font-size: 12px;
        line-height: 20px; }
        @media only screen and (max-width: 767px) {
          body.document section.form .form-hd .form-note li {
            line-height: 16px;
            position: relative;
            padding-left: 15px; }
            body.document section.form .form-hd .form-note li + li {
              margin-top: 6px; } }
        body.document section.form .form-hd .form-note li::before {
          content: "※";
          display: inline-block;
          margin-right: 5px; }
          @media only screen and (max-width: 767px) {
            body.document section.form .form-hd .form-note li::before {
              margin-right: 0;
              font-size: 11px;
              line-height: 14px;
              position: absolute;
              left: 0;
              top: 1px; } }
  @media only screen and (max-width: 767px) {
    body.document section.form .form-wrap {
      margin-top: 40px; } }
  body.document section.form .form-wrap .tbl01 {
    margin-bottom: 80px; }
    @media only screen and (max-width: 767px) {
      body.document section.form .form-wrap .tbl01 {
        margin-bottom: 38px; } }
  @media only screen and (min-width: 768px) {
    body.document section.form .form-wrap .tbl02 tr th {
      padding: 34px 41px; }
      body.document section.form .form-wrap .tbl02 tr th .th-ttl {
        line-height: 24px; }
      body.document section.form .form-wrap .tbl02 tr th em {
        top: 50%;
        transform: translateY(-50%); }
      body.document section.form .form-wrap .tbl02 tr th.vat {
        padding-top: 20px; }
        body.document section.form .form-wrap .tbl02 tr th.vat em {
          top: 34px;
          transform: none; }
        body.document section.form .form-wrap .tbl02 tr th.vat--02 {
          padding-top: 15px; }
          body.document section.form .form-wrap .tbl02 tr th.vat--02 em {
            top: 18px; }
      body.document section.form .form-wrap .tbl02 tr th.thOwner {
        padding-top: 40px;
        padding-bottom: 36px; } }
  body.document section.form .form-wrap .tbl02 tr th .txtSmall {
    margin-top: 0; }
    @media only screen and (max-width: 767px) {
      body.document section.form .form-wrap .tbl02 tr th .txtSmall {
        width: 100%;
        margin-top: 2px; } }
  @media only screen and (max-width: 767px) {
    body.document section.form .form-wrap .tbl02 tr th .txtSmall01-sp {
      margin-top: -3px;
      width: 42%;
      padding-left: 19px;
      order: -1; } }
  body.document section.form ul.steps {
    margin-top: 46px; }
    @media only screen and (max-width: 767px) {
      body.document section.form ul.steps {
        margin-top: 38px; } }

body.document.confirm section.form {
  margin-top: 59px; }
  @media only screen and (max-width: 767px) {
    body.document.confirm section.form {
      margin-top: -23px; } }

body.document.complete section.form {
  margin-top: 59px;
  padding-bottom: 140px; }
  @media only screen and (max-width: 767px) {
    body.document.complete section.form {
      margin-top: -23px;
      padding-bottom: 120px; } }
  body.document.complete section.form .ttl-mail {
    margin-bottom: 76px; }
    @media only screen and (max-width: 767px) {
      body.document.complete section.form .ttl-mail {
        margin-bottom: 30px; } }

body.document.complete main p.reg-txt {
  max-width: 100%;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.6;
  margin-bottom: 55px; }
  @media only screen and (max-width: 767px) {
    body.document.complete main p.reg-txt {
      margin-bottom: 35px; } }

body.document.complete main .steps {
  margin-bottom: 57px; }
  @media only screen and (max-width: 767px) {
    body.document.complete main .steps {
      margin-bottom: 26px !important; } }

body.document .list-radio,
body.document .list-checkbox {
  display: flex;
  flex-wrap: wrap; }
  body.document .list-radio label,
  body.document .list-checkbox label {
    font-size: 15px;
    line-height: 28px;
    letter-spacing: 0;
    position: relative;
    padding-left: 35px;
    margin-right: 38px; }
    @media only screen and (max-width: 767px) {
      body.document .list-radio label,
      body.document .list-checkbox label {
        font-size: 14px;
        line-height: 20px;
        padding-left: 28px; } }
    body.document .list-radio label:last-child,
    body.document .list-checkbox label:last-child {
      margin-right: 0; }
  body.document .list-radio input[type="radio"],
  body.document .list-radio input[type="checkbox"],
  body.document .list-checkbox input[type="radio"],
  body.document .list-checkbox input[type="checkbox"] {
    -webkit-appearance: none;
    appearance: none;
    width: 20px;
    height: 20px;
    background: #fff;
    border: 1px solid #a8a8a8;
    background-position: center;
    background-repeat: no-repeat;
    background-size: auto;
    transition: background 0.3s;
    will-change: background;
    border-radius: 0;
    margin: 0;
    padding: 0;
    display: inline-block;
    position: absolute;
    left: 0;
    top: 3px; }
    @media only screen and (max-width: 767px) {
      body.document .list-radio input[type="radio"],
      body.document .list-radio input[type="checkbox"],
      body.document .list-checkbox input[type="radio"],
      body.document .list-checkbox input[type="checkbox"] {
        top: 0; } }
  body.document .list-radio span,
  body.document .list-checkbox span {
    display: inline-block; }

@media only screen and (max-width: 767px) {
  body.document .list-radio {
    margin-top: 9px; } }

body.document .list-radio input[type="radio"] {
  border-radius: 50%; }
  body.document .list-radio input[type="radio"]:checked {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 10 10'%3E%3Crect id='Rectangle_4933' data-name='Rectangle 4933' width='10' height='10' rx='5' fill='%235db2cc'/%3E%3C/svg%3E%0A"); }

body.document .txtSmall {
  font-size: 12px;
  line-height: 20px;
  margin-top: 5px;
  margin-bottom: -3px; }

body.document .list-checkbox {
  display: block;
  margin-top: 8px; }
  @media only screen and (min-width: 768px) {
    body.document .list-checkbox {
      margin-top: -5px;
      margin-bottom: -8px; } }
  body.document .list-checkbox label {
    display: block; }
    body.document .list-checkbox label:not(:last-child) {
      margin-bottom: 7px; }
      @media only screen and (max-width: 767px) {
        body.document .list-checkbox label:not(:last-child) {
          margin-bottom: 15px; } }
  body.document .list-checkbox input[type="checkbox"] {
    border-radius: 2px;
    border-color: #a7a7a8; }
    @media only screen and (max-width: 767px) {
      body.document .list-checkbox input[type="checkbox"] {
        border-radius: 0; } }
    body.document .list-checkbox input[type="checkbox"]:checked {
      background: transparent url(../images/common/check.png) center/16px 15px no-repeat; }

body.document .box_area {
  display: flex;
  flex-wrap: wrap; }
  @media only screen and (max-width: 767px) {
    body.document .box_area {
      justify-content: space-between; } }
  body.document .box_area__input {
    width: 180px; }
    @media only screen and (max-width: 767px) {
      body.document .box_area__input {
        width: 150px; } }
  body.document .box_area__radio {
    width: calc(100% - 180px);
    padding-left: 40px;
    padding-top: 13px; }
    @media only screen and (max-width: 767px) {
      body.document .box_area__radio {
        width: calc(100% - 150px);
        padding-top: 0;
        padding-left: 40px; } }

@media only screen and (max-width: 767px) {
  body.document .list-radio02 {
    margin-top: 10px;
    margin-bottom: -5px; } }

body.document .list-radio02 label {
  margin-right: 0; }
  @media only screen and (min-width: 768px) {
    body.document .list-radio02 label:nth-child(3), body.document .list-radio02 label:nth-child(1) {
      width: 179px; }
    body.document .list-radio02 label:nth-child(2), body.document .list-radio02 label:nth-child(4) {
      width: calc(100% - 179px); } }
  @media only screen and (max-width: 767px) {
    body.document .list-radio02 label {
      width: 50%; } }
  body.document .list-radio02 label:not(:nth-child(-n + 2)) {
    margin-top: 7px; }
    @media only screen and (max-width: 767px) {
      body.document .list-radio02 label:not(:nth-child(-n + 2)) {
        margin-top: 10px; } }

body.document .sec-tel {
  padding: 96px 0 105px;
  background-image: url(/images/document/tel_bg01.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover; }
  @media only screen and (max-width: 767px) {
    body.document .sec-tel {
      padding: 50px 0;
      background-image: url(/images/document/tel_bg01_sp.jpg); } }
  @media only screen and (max-width: 767px) {
    body.document .sec-tel .c-ttl01 {
      text-align: center; } }
  @media only screen and (min-width: 768px) {
    body.document .sec-tel .tel-box {
      margin: 0 auto;
      max-width: 920px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding-right: 8px; } }
  @media only screen and (min-width: 768px) {
    body.document .sec-tel .tel-box .hdbox {
      margin-top: -3px;
      width: 350px; } }
  @media only screen and (min-width: 768px) {
    body.document .sec-tel .tel-box .infobox {
      width: 497px; } }
  @media only screen and (max-width: 767px) {
    body.document .sec-tel .tel-box .infobox {
      margin-top: 28px; } }
  body.document .sec-tel .tel-box .infobox .txt {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.5;
    letter-spacing: 0;
    font-weight: 500; }
    @media only screen and (max-width: 767px) {
      body.document .sec-tel .tel-box .infobox .txt {
        line-height: 1.867;
        letter-spacing: .05em; } }
  @media only screen and (min-width: 768px) {
    body.document .sec-tel .tel-box .infobox .number-time {
      margin-top: 30px;
      display: flex;
      align-items: center;
      justify-content: space-between; } }
  @media only screen and (max-width: 767px) {
    body.document .sec-tel .tel-box .infobox .number-time {
      margin-top: 30px;
      text-align: center; } }
  body.document .sec-tel .tel-box .infobox .number a {
    display: inline-block;
    font-size: 48px;
    font-size: 4.8rem;
    line-height: 1;
    letter-spacing: .04em;
    font-weight: bold;
    font-family: "Lato", sans-serif;
    color: #42bcc6;
    position: relative;
    padding-left: 42px; }
    @media only screen and (max-width: 767px) {
      body.document .sec-tel .tel-box .infobox .number a {
        font-size: 36px;
        font-size: 3.6rem;
        padding-left: 26px; } }
    body.document .sec-tel .tel-box .infobox .number a:before {
      content: "";
      width: 22px;
      height: 37px;
      background-image: url(/images/common/icn_tel.svg);
      background-repeat: no-repeat;
      background-position: center;
      background-size: contain;
      position: absolute;
      top: 6px;
      left: 5px; }
      @media only screen and (max-width: 767px) {
        body.document .sec-tel .tel-box .infobox .number a:before {
          width: 15px;
          height: 26px;
          top: 7px;
          left: 0; } }
  body.document .sec-tel .tel-box .infobox .time {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.4;
    letter-spacing: .05em;
    font-weight: 500;
    font-family: "Noto Sans JP", sans-serif; }
    @media only screen and (max-width: 767px) {
      body.document .sec-tel .tel-box .infobox .time {
        margin-top: 9px; }
        body.document .sec-tel .tel-box .infobox .time span {
          margin-left: 16px; } }

body.document .popup-download {
  display: none;
  overflow: auto;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1001;
  backdrop-filter: blur(10px);
  background-color: rgba(0, 0, 0, 0.5); }
  body.document .popup-download .close-popup {
    width: 60px;
    height: 60px;
    background-image: url(/images/document/close_popup.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    position: fixed;
    top: 31px;
    right: 35px;
    z-index: 10;
    cursor: pointer; }
    @media only screen and (max-width: 767px) {
      body.document .popup-download .close-popup {
        top: 17px;
        right: 22px; } }
  body.document .popup-download .wrap-popup {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 100%;
    padding: 90px 0; }
    @media only screen and (max-width: 767px) {
      body.document .popup-download .wrap-popup {
        padding: 75px 0; } }
  body.document .popup-download .popup-box {
    width: calc(100% - 40px);
    max-width: 1000px;
    background-color: #fff;
    border-radius: 10px;
    padding: 49px 20px 61px; }
    @media only screen and (max-width: 767px) {
      body.document .popup-download .popup-box {
        width: calc(100% - 50px);
        padding: 40px 30px 39px; } }
    body.document .popup-download .popup-box .ttl-download {
      text-align: center;
      font-size: 20px;
      font-size: 2rem;
      line-height: 1.6;
      letter-spacing: 0;
      font-weight: bold;
      font-family: "Noto Sans JP", sans-serif;
      color: #42bcc6; }
  body.document .popup-download section.form {
    margin: 0 auto;
    padding: 0;
    max-width: 840px; }
    body.document .popup-download section.form .form-wrap {
      margin: 0;
      padding: 0; }
      body.document .popup-download section.form .form-wrap .tbl01 {
        margin: 38px 0 0; }
        @media only screen and (max-width: 767px) {
          body.document .popup-download section.form .form-wrap .tbl01 {
            margin-top: 28px; } }
        @media only screen and (min-width: 768px) {
          body.document .popup-download section.form .form-wrap .tbl01 tr th {
            width: 255px;
            padding: 37px 21px; } }
        @media only screen and (min-width: 768px) {
          body.document .popup-download section.form .form-wrap .tbl01 tr th em {
            right: 34px; } }
        @media only screen and (min-width: 768px) {
          body.document .popup-download section.form .form-wrap .tbl01 tr td {
            width: calc(100% - 155px);
            padding: 20px 10px 20px 35px; } }
        @media only screen and (max-width: 767px) {
          body.document .popup-download section.form .form-wrap .tbl01 tr td input[name="reg_phone"] {
            max-width: 100%; } }
      body.document .popup-download section.form .form-wrap .btn {
        margin-top: 50px; }
        @media only screen and (max-width: 767px) {
          body.document .popup-download section.form .form-wrap .btn {
            margin-top: 30px; } }
        body.document .popup-download section.form .form-wrap .btn .arrow {
          background-image: url(/images/document/icon_download.svg);
          background-repeat: no-repeat;
          background-position: center; }
          body.document .popup-download section.form .form-wrap .btn .arrow:before {
            display: none; }

body.download .dln-ctn {
  padding: 96px 0 140px;
  position: relative;
  z-index: 0;
  background-color: #f4f4f4;
  font-family: "Noto Sans JP", sans-serif; }
  @media only screen and (max-width: 767px) {
    body.download .dln-ctn {
      padding: 60px 0 120px; } }
  body.download .dln-ctn::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: -1;
    mix-blend-mode: overlay;
    background: #42bcc6;
    background: linear-gradient(45deg, #42bcc6 0%, #e39f6d 100%); }
  body.download .dln-ctn__title {
    text-align: center;
    font-size: 32px;
    font-size: 3.2rem;
    line-height: 52px;
    letter-spacing: 0;
    font-weight: 500;
    color: #42bcc6;
    margin-bottom: 32px; }
    @media only screen and (max-width: 767px) {
      body.download .dln-ctn__title {
        font-size: 24px;
        line-height: 36px;
        margin-bottom: 26px; } }
  body.download .dln-ctn__txt {
    text-align: center;
    margin-bottom: 74px;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 34px;
    letter-spacing: 0.05em;
    font-weight: 500; }
    @media only screen and (min-width: 768px) and (max-width: 795px) {
      body.download .dln-ctn__txt {
        font-size: 13px;
        line-height: 25px; } }
    @media only screen and (max-width: 767px) {
      body.download .dln-ctn__txt {
        text-align: left;
        line-height: 28px;
        margin-bottom: 37px; } }
  @media only screen and (min-width: 768px) {
    body.download .dln-ctn__list {
      display: flex;
      flex-wrap: wrap; } }
  body.download .dln-ctn__list .item {
    background-color: #fff;
    box-shadow: 0 0 10px rgba(22, 150, 162, 0.16);
    padding: 36px 30px 32px;
    border-radius: 5px;
    overflow: hidden;
    position: relative; }
    @media only screen and (min-width: 768px) {
      body.download .dln-ctn__list .item {
        width: calc(50% - 20px); }
        body.download .dln-ctn__list .item:not(:nth-child(2n)) {
          margin-right: 40px; }
        body.download .dln-ctn__list .item:not(:nth-child(-n + 2)) {
          margin-top: 40px; } }
    @media only screen and (max-width: 767px) {
      body.download .dln-ctn__list .item {
        padding: 30px; }
        body.download .dln-ctn__list .item:not(:last-child) {
          margin-bottom: 10px; } }
    body.download .dln-ctn__list .item:before {
      content: "";
      width: 14px;
      height: 14px;
      position: absolute;
      top: 0;
      left: 0;
      background-color: #42bcc6;
      clip-path: polygon(0 0, 100% 0, 0% 100%);
      -webkit-clip-path: polygon(0 0, 100% 0, 0% 100%); }
    body.download .dln-ctn__list .item__cate {
      color: #42bcc6;
      font-size: 13px;
      line-height: 19px;
      letter-spacing: 0.06em;
      font-weight: bold;
      padding: 2px 11px;
      border: 1px solid #42bcc6;
      margin-bottom: 20px; }
      @media only screen and (max-width: 767px) {
        body.download .dln-ctn__list .item__cate {
          font-size: 12px;
          line-height: 18px;
          letter-spacing: 0em;
          padding: 2px 12px;
          margin-bottom: 24px; } }
    body.download .dln-ctn__list .item__ctn {
      color: #42bcc6;
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      margin-bottom: 17px;
      min-height: 151px; }
      @media only screen and (max-width: 767px) {
        body.download .dln-ctn__list .item__ctn {
          min-height: 0;
          margin-bottom: 24px;
          align-items: flex-end; } }
    body.download .dln-ctn__list .item__title {
      width: calc(100% - 105px); }
      @media only screen and (min-width: 768px) {
        body.download .dln-ctn__list .item__title {
          width: 60.95%;
          padding-right: 33px; } }
      body.download .dln-ctn__list .item__title .lbel {
        font-size: 16px;
        line-height: 22px;
        letter-spacing: 0em;
        font-weight: bold;
        margin-bottom: 5px;
        display: block; }
        @media only screen and (max-width: 795px) {
          body.download .dln-ctn__list .item__title .lbel {
            font-size: 14px;
            line-height: 22px; } }
        @media only screen and (max-width: 767px) {
          body.download .dln-ctn__list .item__title .lbel {
            font-size: 13px;
            line-height: 20px;
            margin-right: -30px;
            margin-bottom: 4px; } }
      body.download .dln-ctn__list .item__title .ttBig {
        font-size: 30px;
        line-height: 40px;
        letter-spacing: 0.02em;
        font-weight: 900;
        display: block; }
        @media only screen and (max-width: 1020px) {
          body.download .dln-ctn__list .item__title .ttBig {
            font-size: 20px;
            line-height: 27px; } }
        @media only screen and (max-width: 795px) {
          body.download .dln-ctn__list .item__title .ttBig {
            font-size: 18px;
            line-height: 25px; } }
        @media only screen and (max-width: 767px) {
          body.download .dln-ctn__list .item__title .ttBig {
            font-size: 20px;
            line-height: 27px;
            letter-spacing: 0em;
            padding-right: 18px; } }
        body.download .dln-ctn__list .item__title .ttBig .num {
          font-size: 44px; }
          @media only screen and (max-width: 1020px) {
            body.download .dln-ctn__list .item__title .ttBig .num {
              font-size: 30px; } }
          @media only screen and (max-width: 767px) {
            body.download .dln-ctn__list .item__title .ttBig .num {
              font-size: 32px; } }
    body.download .dln-ctn__list .item__img {
      width: 105px; }
      @media only screen and (min-width: 768px) {
        body.download .dln-ctn__list .item__img {
          width: 39.05%; } }
      body.download .dln-ctn__list .item__img img {
        width: 100%; }
    body.download .dln-ctn__list .item__desc {
      font-size: 14px;
      line-height: 24px;
      letter-spacing: 0.05em;
      font-weight: 500;
      margin-bottom: 22px; }
      @media only screen and (max-width: 890px) {
        body.download .dln-ctn__list .item__desc {
          font-size: 12px;
          line-height: 20px; } }
      @media only screen and (max-width: 767px) {
        body.download .dln-ctn__list .item__desc {
          font-size: 12px;
          line-height: 20px; } }
    body.download .dln-ctn__list .item .btn.btn-03 {
      width: 100%;
      cursor: pointer; }
      body.download .dln-ctn__list .item .btn.btn-03 span {
        padding: 14px 0;
        letter-spacing: 0.04em; }
        @media only screen and (max-width: 767px) {
          body.download .dln-ctn__list .item .btn.btn-03 span {
            font-size: 14px;
            line-height: 18px;
            padding: 16px 0; } }
        body.download .dln-ctn__list .item .btn.btn-03 span::before, body.download .dln-ctn__list .item .btn.btn-03 span::after {
          display: none; }

body.download .popup-download {
  opacity: 0;
  pointer-events: none;
  overflow: auto;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1001;
  backdrop-filter: blur(10px);
  background-color: rgba(0, 0, 0, 0.5);
  transition: opacity 0.3s; }
  body.download .popup-download.is-active {
    opacity: 1;
    pointer-events: auto; }
  body.download .popup-download .closepopup {
    width: 60px;
    height: 60px;
    background-image: url(/images/document/close_popup.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    position: fixed;
    top: 31px;
    right: 35px;
    z-index: 10;
    cursor: pointer; }
    @media only screen and (max-width: 767px) {
      body.download .popup-download .closepopup {
        top: 17px;
        right: 22px; } }
  body.download .popup-download .wrap-popup {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 100%;
    padding: 90px 0; }
    @media only screen and (max-width: 767px) {
      body.download .popup-download .wrap-popup {
        padding: 75px 0; } }
  body.download .popup-download .popup-box {
    width: calc(100% - 40px);
    max-width: 1000px;
    background-color: #fff;
    border-radius: 10px;
    padding: 49px 20px 61px; }
    @media only screen and (max-width: 767px) {
      body.download .popup-download .popup-box {
        width: calc(100% - 50px);
        padding: 40px 30px 39px; } }
    body.download .popup-download .popup-box .ttl-download {
      text-align: center;
      font-size: 20px;
      font-size: 2rem;
      line-height: 1.6;
      letter-spacing: 0;
      font-weight: bold;
      font-family: "Noto Sans JP", sans-serif;
      color: #42bcc6; }
  body.download .popup-download section.form {
    margin: 0 auto;
    padding: 0;
    max-width: 840px; }
    body.download .popup-download section.form .form-wrap {
      margin: 0;
      padding: 0; }

body.faq .index-list {
  padding: 110px 0 50px; }
  @media only screen and (max-width: 767px) {
    body.faq .index-list {
      padding: 46px 0 0px; } }
  body.faq .index-list li {
    background-color: #f8f8f8;
    position: relative;
    width: calc((100% - 10px)/3); }
    @media only screen and (min-width: 768px) {
      body.faq .index-list li {
        cursor: pointer;
        -webkit-transition: 0.3s;
        -moz-transition: 0.3s;
        -o-transition: 0.3s;
        transition: 0.3s; }
        body.faq .index-list li:hover {
          opacity: .7; } }
    @media only screen and (max-width: 767px) {
      body.faq .index-list li {
        margin-bottom: 8px;
        width: 100%; } }
    body.faq .index-list li a {
      font-size: 18px;
      font-size: 1.8rem;
      font-family: "Noto Sans JP", sans-serif;
      font-weight: 500;
      height: 80px;
      display: -webkit-flex;
      display: flex;
      -webkit-align-items: center;
      align-items: center;
      -webkit-justify-content: center;
      justify-content: center; }
      @media only screen and (max-width: 767px) {
        body.faq .index-list li a {
          font-size: 16px;
          font-size: 1.6rem;
          height: 60px; } }
      body.faq .index-list li a .arrow {
        margin: 0 auto;
        position: absolute;
        right: 29px;
        top: 50%;
        transform: translateY(-50%);
        width: 22px; }
        @media only screen and (max-width: 767px) {
          body.faq .index-list li a .arrow {
            right: 22px;
            width: 15px; } }

body.faq .banner-01 {
  background-color: #f8f8f8;
  display: block;
  margin: 0 auto 120px;
  max-width: 666px;
  transition: all .3s; }
  @media only screen and (min-width: 768px) {
    body.faq .banner-01 {
      height: 150px; } }
  @media only screen and (max-width: 767px) {
    body.faq .banner-01 {
      margin: 0 auto 75px; } }
  @media only screen and (min-width: 768px) {
    body.faq .banner-01 img {
      height: 100%; } }
  @media only screen and (min-width: 768px) {
    body.faq .banner-01:hover {
      background-color: #e5f7e8; } }

body.faq section.faq-content {
  background-color: #f8f8f8;
  padding-top: 94px;
  padding-bottom: 100px; }
  @media only screen and (max-width: 767px) {
    body.faq section.faq-content {
      padding-top: 44px;
      padding-bottom: 50px; } }
  body.faq section.faq-content ul.faq-question-list {
    margin: 58px auto 140px; }
    @media only screen and (max-width: 767px) {
      body.faq section.faq-content ul.faq-question-list {
        margin: 24px auto 60px; } }
    body.faq section.faq-content ul.faq-question-list:last-child {
      margin-bottom: 0; }
    body.faq section.faq-content ul.faq-question-list li.question {
      background-color: #fff;
      margin-bottom: 10px; }
      body.faq section.faq-content ul.faq-question-list li.question:last-child {
        margin-bottom: 0; }
      body.faq section.faq-content ul.faq-question-list li.question .question-trigger {
        color: #5db2cc;
        font-size: 18px;
        font-size: 1.8rem;
        font-family: "Noto Sans JP", sans-serif;
        font-weight: 500;
        letter-spacing: 0.05em;
        line-height: 2;
        padding: 35px 78px;
        position: relative; }
        @media only screen and (max-width: 767px) {
          body.faq section.faq-content ul.faq-question-list li.question .question-trigger {
            font-size: 15px;
            font-size: 1.5rem;
            line-height: 1.625;
            padding: 18px 45px;
            position: relative; } }
        body.faq section.faq-content ul.faq-question-list li.question .question-trigger:before {
          background-color: #5db2cc;
          border-radius: 5px;
          color: white;
          content: "Q";
          display: block;
          font-size: 16px;
          font-size: 1.6rem;
          font-family: "Lato", sans-serif;
          font-weight: 500;
          position: absolute;
          top: 41px;
          left: 40px;
          text-align: center;
          height: 24px;
          width: 24px;
          display: -webkit-flex;
          display: flex;
          -webkit-align-items: center;
          align-items: center;
          -webkit-justify-content: center;
          justify-content: center; }
          @media only screen and (max-width: 767px) {
            body.faq section.faq-content ul.faq-question-list li.question .question-trigger:before {
              top: 20px;
              left: 15px;
              height: 20px;
              width: 20px; } }
        body.faq section.faq-content ul.faq-question-list li.question .question-trigger .question-trigger-ttl:before {
          background-color: #5cb1ca;
          content: "";
          margin: 0 auto;
          position: absolute;
          right: 40px;
          top: 53px;
          height: 2px;
          width: 21px; }
          @media only screen and (max-width: 767px) {
            body.faq section.faq-content ul.faq-question-list li.question .question-trigger .question-trigger-ttl:before {
              top: 28px;
              transform: translateY(0%);
              right: 15px;
              width: 12px; } }
        body.faq section.faq-content ul.faq-question-list li.question .question-trigger .question-trigger-ttl:after {
          background-color: #5cb1ca;
          content: "";
          margin: 0 auto;
          position: absolute;
          right: 49px;
          top: 44px;
          height: 21px;
          width: 2px; }
          @media only screen and (max-width: 767px) {
            body.faq section.faq-content ul.faq-question-list li.question .question-trigger .question-trigger-ttl:after {
              top: 23px;
              transform: translateY(0%);
              right: 20px;
              height: 12px; } }
        body.faq section.faq-content ul.faq-question-list li.question .question-trigger.active .question-trigger-ttl:after {
          transform: rotate(90deg); }
      body.faq section.faq-content ul.faq-question-list li.question .answer {
        display: none;
        padding: 0 78px 43px; }
        @media only screen and (max-width: 767px) {
          body.faq section.faq-content ul.faq-question-list li.question .answer {
            padding-bottom: 18px;
            padding-left: 44px;
            padding-right: 44px; } }
        body.faq section.faq-content ul.faq-question-list li.question .answer .answer-ttl {
          position: relative;
          text-align: justify; }
          @media only screen and (max-width: 767px) {
            body.faq section.faq-content ul.faq-question-list li.question .answer .answer-ttl {
              padding-left: 0;
              position: relative; } }
          body.faq section.faq-content ul.faq-question-list li.question .answer .answer-ttl p {
            font-size: 15px;
            font-size: 1.5rem;
            letter-spacing: 0.05em;
            line-height: 1.86;
            margin-bottom: 11px; }
            @media only screen and (max-width: 767px) {
              body.faq section.faq-content ul.faq-question-list li.question .answer .answer-ttl p {
                line-height: 1.6; } }
            body.faq section.faq-content ul.faq-question-list li.question .answer .answer-ttl p a {
              color: #18acd7;
              text-decoration: underline; }
            body.faq section.faq-content ul.faq-question-list li.question .answer .answer-ttl p b {
              font-weight: bold; }
            body.faq section.faq-content ul.faq-question-list li.question .answer .answer-ttl p:last-of-type {
              margin-bottom: 0; }
            body.faq section.faq-content ul.faq-question-list li.question .answer .answer-ttl p .det {
              position: relative;
              font-size: 12px;
              font-size: 1.2rem;
              padding-left: 13px;
              line-height: 1.2; }
              @media only screen and (max-width: 767px) {
                body.faq section.faq-content ul.faq-question-list li.question .answer .answer-ttl p .det {
                  font-size: 11px;
                  font-size: 1.1rem; } }
            body.faq section.faq-content ul.faq-question-list li.question .answer .answer-ttl p .ast {
              margin: 0 auto;
              position: absolute;
              left: 0;
              top: 0%; }
          body.faq section.faq-content ul.faq-question-list li.question .answer .answer-ttl:before {
            border: 2px solid #5db2cc;
            border-radius: 5px;
            color: #5db2cc;
            content: "A";
            display: block;
            font-size: 16px;
            font-size: 1.6rem;
            font-weight: bold;
            font-family: "Lato", sans-serif;
            position: absolute;
            text-align: center;
            top: 2px;
            left: -38px;
            height: 20px;
            width: 20px;
            display: -webkit-flex;
            display: flex;
            -webkit-align-items: center;
            align-items: center;
            -webkit-justify-content: center;
            justify-content: center; }
            @media only screen and (max-width: 767px) {
              body.faq section.faq-content ul.faq-question-list li.question .answer .answer-ttl:before {
                border: 1px solid #5db2cc;
                left: -28px;
                height: 18px;
                width: 18px; } }
    body.faq section.faq-content ul.faq-question-list.orange li .question-trigger:before {
      background-color: #eb8f0c; }
    body.faq section.faq-content ul.faq-question-list.orange li .question-trigger-ttl {
      color: #eb8f0c; }
      body.faq section.faq-content ul.faq-question-list.orange li .question-trigger-ttl:before, body.faq section.faq-content ul.faq-question-list.orange li .question-trigger-ttl:after {
        background-color: #eb8f0c !important; }
    body.faq section.faq-content ul.faq-question-list.orange li .answer-ttl:before {
      border-color: #f9cf00 !important;
      color: #f9cf00 !important; }
    body.faq section.faq-content ul.faq-question-list.orange li ul {
      background-color: #f8f8f8;
      padding: 29px;
      margin-top: 20px; }
      @media only screen and (max-width: 767px) {
        body.faq section.faq-content ul.faq-question-list.orange li ul {
          padding: 15px; } }
      body.faq section.faq-content ul.faq-question-list.orange li ul li {
        padding-left: 33px;
        position: relative;
        margin-bottom: 19px;
        font-size: 18px;
        font-size: 1.8rem; }
        @media only screen and (max-width: 767px) {
          body.faq section.faq-content ul.faq-question-list.orange li ul li {
            font-size: 15px;
            font-size: 1.5rem;
            line-height: 1.6;
            margin-bottom: 16px; } }
        @media only screen and (max-width: 767px) {
          body.faq section.faq-content ul.faq-question-list.orange li ul li {
            padding-left: 25px; } }
        body.faq section.faq-content ul.faq-question-list.orange li ul li span.nb {
          color: #f9cf00;
          margin: 0 auto;
          position: absolute;
          left: 0;
          top: 0%;
          font-size: 18px;
          font-size: 1.8rem;
          font-family: "Lato", sans-serif;
          font-weight: bold; }
          @media only screen and (max-width: 767px) {
            body.faq section.faq-content ul.faq-question-list.orange li ul li span.nb {
              font-size: 15px;
              font-size: 1.5rem; } }
        body.faq section.faq-content ul.faq-question-list.orange li ul li .sml {
          display: inline-block;
          font-size: 12px;
          font-size: 1.2rem;
          margin-top: 11px;
          padding-left: 15px;
          position: relative; }
          @media only screen and (max-width: 767px) {
            body.faq section.faq-content ul.faq-question-list.orange li ul li .sml {
              font-size: 11px;
              font-size: 1.1rem;
              line-height: 1.54;
              padding-left: 13px; } }
          body.faq section.faq-content ul.faq-question-list.orange li ul li .sml .ast {
            margin: 0 auto;
            position: absolute;
            left: 0;
            top: 0%; }
  body.faq section.faq-content .bigbanner {
    margin-top: 100px; }
    @media only screen and (max-width: 767px) {
      body.faq section.faq-content .bigbanner {
        margin-top: 60px; } }

body.faq .anchor {
  position: relative;
  top: -30px; }
  @media only screen and (max-width: 767px) {
    body.faq .anchor {
      top: -84px; } }
  body.faq .anchor#anchor-04 {
    top: 100px; }
    @media only screen and (max-width: 767px) {
      body.faq .anchor#anchor-04 {
        top: 0px; } }

body.group .group-content {
  padding: 110px 0 41px; }
  @media only screen and (max-width: 767px) {
    body.group .group-content {
      padding: 61px 0 30px; } }
  body.group .group-content p {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 28px; }
    @media only screen and (max-width: 767px) {
      body.group .group-content p {
        line-height: 24px; } }
  body.group .group-content .content01 {
    margin-bottom: 120px; }
    @media only screen and (max-width: 767px) {
      body.group .group-content .content01 {
        margin-bottom: 64px; } }
    body.group .group-content .content01 .ttl-03 .en {
      margin-bottom: 20px; }
      @media only screen and (max-width: 767px) {
        body.group .group-content .content01 .ttl-03 .en {
          margin-bottom: 35px;
          font-size: 16px;
          font-size: 1.6rem; }
          body.group .group-content .content01 .ttl-03 .en:before {
            width: 25px;
            top: 28px; } }
    body.group .group-content .content01 .ttl-03 .ja {
      margin-left: 0; }
      @media only screen and (max-width: 767px) {
        body.group .group-content .content01 .ttl-03 .ja {
          font-size: 24px;
          font-size: 2.4rem;
          letter-spacing: .06em; } }
    body.group .group-content .content01 p {
      max-width: 880px;
      margin: 60px auto 54px;
      line-height: 24px; }
      @media only screen and (max-width: 767px) {
        body.group .group-content .content01 p {
          margin: 37px auto 42px;
          line-height: 28px; } }
    body.group .group-content .content01 .greybg {
      background: #f8f8f8;
      padding: 0 0 40px; }
      @media only screen and (max-width: 767px) {
        body.group .group-content .content01 .greybg {
          padding: 0 0 40px; } }
      body.group .group-content .content01 .greybg .logobox {
        background: #fff;
        padding: 58px 63px 86px;
        border-bottom: 2px #42bcc6 solid;
        position: relative;
        top: -60px;
        max-width: 1140px; }
        @media only screen and (max-width: 767px) {
          body.group .group-content .content01 .greybg .logobox {
            border-bottom: 1px #42bcc6 solid;
            top: -24px;
            padding: 40px 15px 23px; } }
        body.group .group-content .content01 .greybg .logobox .logo {
          width: 180px;
          margin: 0 auto; }
          @media only screen and (max-width: 767px) {
            body.group .group-content .content01 .greybg .logobox .logo {
              width: 150px;
              margin: 0 0 0 5px; } }
        body.group .group-content .content01 .greybg .logobox h3 {
          text-align: center;
          display: block;
          font-size: 18px;
          font-size: 1.8rem;
          margin: 20px 0;
          font-family: "Noto Sans JP", sans-serif;
          font-weight: 500; }
          @media only screen and (max-width: 767px) {
            body.group .group-content .content01 .greybg .logobox h3 {
              font-size: 18px;
              font-size: 1.8rem;
              text-align: left;
              margin: 14px 0 39px 3px; } }
        body.group .group-content .content01 .greybg .logobox .map {
          text-align: center;
          max-width: 804px;
          margin: 0 auto 10px; }
        body.group .group-content .content01 .greybg .logobox .list {
          display: flex;
          justify-content: space-between; }
          @media only screen and (max-width: 767px) {
            body.group .group-content .content01 .greybg .logobox .list {
              display: block;
              padding: 0 5px 0 30px;
              position: relative; }
              body.group .group-content .content01 .greybg .logobox .list::before {
                content: "";
                position: absolute;
                display: block;
                width: 25px;
                height: 347px;
                background-image: url("../images/group/map-sp.png");
                background-repeat: no-repeat;
                background-size: contain;
                left: 5px;
                top: -20px; } }
          body.group .group-content .content01 .greybg .logobox .list li {
            width: 23%;
            max-width: 220px; }
            @media only screen and (max-width: 767px) {
              body.group .group-content .content01 .greybg .logobox .list li {
                width: 100%;
                max-width: 100%; } }
            body.group .group-content .content01 .greybg .logobox .list li.green .areaname {
              background-color: #2ab48b; }
            body.group .group-content .content01 .greybg .logobox .list li.blue .areaname {
              background-color: #42bcc6; }
            body.group .group-content .content01 .greybg .logobox .list li.yellow .areaname {
              background-color: #eba644; }
            body.group .group-content .content01 .greybg .logobox .list li.purple .areaname {
              background-color: #9e8ac6; }
            body.group .group-content .content01 .greybg .logobox .list li .areaname {
              height: 60px;
              font-size: 16px;
              font-size: 1.6rem;
              font-family: "Noto Sans JP", sans-serif;
              display: flex;
              justify-content: center;
              align-items: center;
              color: #fff; }
              @media only screen and (max-width: 767px) {
                body.group .group-content .content01 .greybg .logobox .list li .areaname {
                  height: 50px;
                  font-size: 17px;
                  font-size: 1.7rem; } }
              @media all and (-ms-high-contrast: none) {
                body.group .group-content .content01 .greybg .logobox .list li .areaname {
                  padding: 6px 0 0; } }
            body.group .group-content .content01 .greybg .logobox .list li .companyname {
              font-size: 14px;
              font-size: 1.4rem;
              text-align: center;
              line-height: 24px;
              font-family: "Noto Sans JP", sans-serif;
              margin-top: 11px; }
              @media only screen and (max-width: 767px) {
                body.group .group-content .content01 .greybg .logobox .list li .companyname {
                  font-size: 15px;
                  font-size: 1.5rem;
                  margin-top: 9px;
                  margin-bottom: 16px;
                  line-height: 25px;
                  margin-right: 11px; } }
  body.group .group-content .content02 .content02list .listbox {
    margin-bottom: 100px; }
    @media only screen and (max-width: 767px) {
      body.group .group-content .content02 .content02list .listbox {
        margin-bottom: 82px; } }
    body.group .group-content .content02 .content02list .listbox .listboxh3 {
      border-top: 2px solid #2ab48b;
      border-bottom: 2px solid #2ab48b;
      padding: 24px 0;
      display: flex;
      justify-content: space-between;
      align-items: center;
      color: #2ab48b;
      font-family: "Noto Sans JP", sans-serif;
      letter-spacing: 1px;
      padding-right: 18px;
      font-weight: 500; }
      @media only screen and (max-width: 767px) {
        body.group .group-content .content02 .content02list .listbox .listboxh3 {
          display: block;
          padding: 27px 0 25px; } }
      body.group .group-content .content02 .content02list .listbox .listboxh3 .left {
        font-size: 20px;
        font-size: 2rem;
        position: relative;
        letter-spacing: 0; }
        @media only screen and (max-width: 767px) {
          body.group .group-content .content02 .content02list .listbox .listboxh3 .left {
            font-size: 15px;
            font-size: 1.5rem; } }
        body.group .group-content .content02 .content02list .listbox .listboxh3 .left::after {
          content: "";
          position: absolute;
          width: 8px;
          height: 10px;
          display: block;
          background-image: url("../images/group/arw.png");
          background-repeat: no-repeat;
          background-size: contain;
          left: 0;
          top: 5px; }
          @media only screen and (max-width: 767px) {
            body.group .group-content .content02 .content02list .listbox .listboxh3 .left::after {
              width: 8px;
              height: 10px;
              top: 3px; } }
          @media all and (-ms-high-contrast: none) {
            body.group .group-content .content02 .content02list .listbox .listboxh3 .left::after {
              top: 2px; } }
        body.group .group-content .content02 .content02list .listbox .listboxh3 .left span {
          padding-left: 16px; }
      body.group .group-content .content02 .content02list .listbox .listboxh3 .right {
        font-size: 24px;
        font-size: 2.4rem;
        letter-spacing: 0; }
        @media only screen and (max-width: 767px) {
          body.group .group-content .content02 .content02list .listbox .listboxh3 .right {
            font-size: 22px;
            font-size: 2.2rem;
            line-height: 32px;
            margin-top: 12px; } }
    body.group .group-content .content02 .content02list .listbox .content {
      display: flex;
      justify-content: space-between;
      margin: 60px 0 51px; }
      @media only screen and (max-width: 767px) {
        body.group .group-content .content02 .content02list .listbox .content {
          display: block;
          margin: 32px 0 24px; } }
      body.group .group-content .content02 .content02list .listbox .content .contentleft {
        width: 54%;
        max-width: 540px; }
        @media only screen and (max-width: 767px) {
          body.group .group-content .content02 .content02list .listbox .content .contentleft {
            width: 100%;
            max-width: 100%; } }
        body.group .group-content .content02 .content02list .listbox .content .contentleft h4 {
          font-size: 32px;
          font-size: 3.2rem;
          font-weight: 500;
          color: #2ab48b;
          font-family: "Noto Sans JP", sans-serif;
          margin-bottom: 30px; }
          @media only screen and (max-width: 767px) {
            body.group .group-content .content02 .content02list .listbox .content .contentleft h4 {
              font-size: 22px;
              font-size: 2.2rem;
              line-height: 32px;
              text-align: center;
              margin: 32px 0 20px; } }
        body.group .group-content .content02 .content02list .listbox .content .contentleft p {
          line-height: 28px; }
      body.group .group-content .content02 .content02list .listbox .content .contentright {
        width: 39%;
        max-width: 390px; }
        @media only screen and (max-width: 767px) {
          body.group .group-content .content02 .content02list .listbox .content .contentright {
            width: 100%;
            max-width: 100%; } }
    body.group .group-content .content02 .content02list .listbox .buttonbox {
      display: flex;
      justify-content: center; }
      @media only screen and (max-width: 767px) {
        body.group .group-content .content02 .content02list .listbox .buttonbox {
          display: block; } }
      body.group .group-content .content02 .content02list .listbox .buttonbox .btn {
        margin-right: 10px;
        border: 1px solid #2ab48b;
        background-color: #2ab48b;
        display: flex;
        align-items: center; }
        body.group .group-content .content02 .content02list .listbox .buttonbox .btn span {
          width: 100%; }
          body.group .group-content .content02 .content02list .listbox .buttonbox .btn span::after {
            border-color: transparent transparent transparent #2ab48b; }
        @media only screen and (min-width: 768px) {
          body.group .group-content .content02 .content02list .listbox .buttonbox .btn:nth-child(3n) {
            margin-right: 0;
            padding-right: 13px; }
          body.group .group-content .content02 .content02list .listbox .buttonbox .btn:hover span {
            color: #2ab48b; }
            body.group .group-content .content02 .content02list .listbox .buttonbox .btn:hover span::before {
              background-color: #2ab48b; }
            body.group .group-content .content02 .content02list .listbox .buttonbox .btn:hover span::after {
              border-color: transparent transparent transparent #fff; } }
      body.group .group-content .content02 .content02list .listbox .buttonbox .btnl-h {
        height: 70px; }
        @media only screen and (max-width: 767px) {
          body.group .group-content .content02 .content02list .listbox .buttonbox .btnl-h {
            height: 60px; } }
        body.group .group-content .content02 .content02list .listbox .buttonbox .btnl-h span {
          line-height: 24px;
          padding: 5px 0; }
          @media only screen and (max-width: 767px) {
            body.group .group-content .content02 .content02list .listbox .buttonbox .btnl-h span {
              line-height: 24px; } }
          body.group .group-content .content02 .content02list .listbox .buttonbox .btnl-h span small {
            font-size: 15px;
            font-size: 1.5rem; }
  body.group .group-content .content02 .content02list .listbox02 .listboxh3 {
    border-top: 2px solid #42bcc6;
    border-bottom: 2px solid #42bcc6;
    color: #42bcc6; }
  body.group .group-content .content02 .content02list .listbox02 .content .contentleft h4 {
    color: #42bcc6; }
  body.group .group-content .content02 .content02list .listbox02 .buttonbox .btn {
    border: 1px solid #42bcc6;
    background-color: #42bcc6;
    display: flex;
    align-items: center; }
    body.group .group-content .content02 .content02list .listbox02 .buttonbox .btn span {
      width: 100%; }
      body.group .group-content .content02 .content02list .listbox02 .buttonbox .btn span::after {
        border-color: transparent transparent transparent #42bcc6; }
    @media only screen and (min-width: 768px) {
      body.group .group-content .content02 .content02list .listbox02 .buttonbox .btn:hover span {
        color: #42bcc6; }
        body.group .group-content .content02 .content02list .listbox02 .buttonbox .btn:hover span::before {
          background-color: #42bcc6; }
        body.group .group-content .content02 .content02list .listbox02 .buttonbox .btn:hover span::after {
          border-color: transparent transparent transparent #fff; } }
  body.group .group-content .content02 .content02list .listbox03 .listboxh3 {
    border-top: 2px solid #eba644;
    border-bottom: 2px solid #eba644;
    color: #eba644; }
  body.group .group-content .content02 .content02list .listbox03 .content .contentleft h4 {
    color: #eba644; }
  body.group .group-content .content02 .content02list .listbox03 .buttonbox .btn {
    border: 1px solid #eba644;
    background-color: #eba644; }
    body.group .group-content .content02 .content02list .listbox03 .buttonbox .btn span::after {
      border-color: transparent transparent transparent #eba644; }
    @media only screen and (min-width: 768px) {
      body.group .group-content .content02 .content02list .listbox03 .buttonbox .btn:hover span {
        color: #eba644; }
        body.group .group-content .content02 .content02list .listbox03 .buttonbox .btn:hover span::before {
          background-color: #eba644; }
        body.group .group-content .content02 .content02list .listbox03 .buttonbox .btn:hover span::after {
          border-color: transparent transparent transparent #fff; } }
  body.group .group-content .btn {
    width: 370px;
    max-width: 100%;
    display: block;
    position: relative;
    overflow: hidden;
    border-radius: 5px;
    -webkit-mask-image: -webkit-radial-gradient(white, black);
    text-decoration: none;
    border: 1px solid #42bcc6;
    background-color: #42bcc6;
    text-align: center;
    outline: none;
    transition: ease 0.2s;
    letter-spacing: 1px; }
    @media only screen and (max-width: 767px) {
      body.group .group-content .btn {
        margin: 7px auto 0; } }
    body.group .group-content .btn::before {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      z-index: 2;
      background: #fff;
      width: 100%;
      height: 100%;
      transition: transform 0.5s cubic-bezier(0.8, 0, 0.2, 1) 0s;
      transform: scale(0, 1);
      transform-origin: right top; }
    body.group .group-content .btn span {
      position: relative;
      z-index: 3;
      color: #fff;
      transition: color 0.2s;
      display: block;
      font-size: 18px;
      font-size: 1.8rem;
      font-family: "Noto Sans JP", sans-serif;
      font-weight: bold;
      line-height: 30px;
      padding: 19px 0; }
      @media only screen and (max-width: 767px) {
        body.group .group-content .btn span {
          font-size: 16px;
          font-size: 1.6rem;
          line-height: 24px;
          padding: 17px 0;
          letter-spacing: 0.04em; } }
      body.group .group-content .btn span::after, body.group .group-content .btn span::before {
        content: "";
        position: absolute;
        top: 50%; }
      body.group .group-content .btn span::before {
        z-index: 4;
        right: 24px;
        border-radius: 50%;
        width: 22px;
        height: 22px;
        background-color: #fff;
        margin-top: -11px;
        transition: background-color 0.2s; }
        @media only screen and (max-width: 767px) {
          body.group .group-content .btn span::before {
            right: 20px;
            width: 15px;
            height: 15px;
            margin-top: -7px; } }
      body.group .group-content .btn span::after {
        right: 31px;
        z-index: 5;
        margin-top: -5px;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 5px 0 5px 6px;
        border-color: transparent transparent transparent #42bcc6;
        transition: border-color 0.2s; }
        @media only screen and (max-width: 767px) {
          body.group .group-content .btn span::after {
            right: 25px;
            margin-top: -3px;
            border-width: 3.5px 0 3.5px 4px; } }
    @media only screen and (min-width: 768px) {
      body.group .group-content .btn:hover::before {
        transform-origin: left top;
        transform: scale(1, 1); }
      body.group .group-content .btn:hover span {
        color: #42bcc6; }
        body.group .group-content .btn:hover span::before {
          background-color: #42bcc6; }
        body.group .group-content .btn:hover span::after {
          border-color: transparent transparent transparent #fff; } }

body.history {
  font-weight: 500; }
  @media only screen and (min-width: 768px) {
    body.history {
      position: relative; }
      body.history .side-mv {
        background-color: #fff; }
      body.history .breadcrumbs-box {
        background-color: #fff;
        padding-bottom: 165px; }
      body.history::before {
        content: "";
        position: fixed;
        z-index: -1;
        left: 0;
        top: 0;
        height: 100%;
        width: 100%;
        background: url("../images/history/img05.jpg") center/cover no-repeat; } }
  @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
    body.history {
      transform: translateZ(0); } }
  body.history footer .ft-banner.ft-01 {
    display: none; }
  body.history .history-graph {
    background-color: #f8f8f8;
    position: relative;
    padding: 36px 0 199px; }
    @media only screen and (max-width: 767px) {
      body.history .history-graph {
        margin-top: 89px;
        padding: 1px 0 128px; } }
    body.history .history-graph::before {
      content: "";
      position: absolute;
      z-index: 1;
      left: 0;
      top: -50px;
      height: calc(100% - 70px);
      width: 64.0625%;
      width: calc(50% + 180px);
      background: url("../images/history/bg01.jpg") center bottom/cover no-repeat; }
      @media only screen and (max-width: 767px) {
        body.history .history-graph::before {
          background-image: url("../images/history/bg01-sp.jpg");
          top: -30px;
          height: calc(100% - 34px);
          width: 85.333333%; } }
    body.history .history-graph .inner {
      position: relative;
      z-index: 2; }
    body.history .history-graph .ttl-01,
    body.history .history-graph .ttl-03 {
      text-align: left; }
      body.history .history-graph .ttl-01 .en,
      body.history .history-graph .ttl-01 .ja,
      body.history .history-graph .ttl-03 .en,
      body.history .history-graph .ttl-03 .ja {
        color: #fff; }
    @media only screen and (max-width: 767px) {
      body.history .history-graph .ttl-01 {
        margin-top: 35px; }
        body.history .history-graph .ttl-01 .en {
          font-size: 16px;
          font-size: 1.6rem;
          margin-bottom: 39px; }
          body.history .history-graph .ttl-01 .en:before {
            width: 25px;
            top: 27px; }
        body.history .history-graph .ttl-01 .ja {
          font-size: 24px;
          font-size: 2.4rem;
          letter-spacing: .06em; } }
    body.history .history-graph .history-grid {
      margin-top: -13px; }
      @media only screen and (max-width: 767px) {
        body.history .history-graph .history-grid {
          margin-top: 36px; } }
    body.history .history-graph .history-item {
      position: relative; }
      @media only screen and (min-width: 768px) {
        body.history .history-graph .history-item .animation-hist-area {
          position: absolute;
          top: 47px;
          width: 10px;
          height: 270px;
          background-size: cover;
          background-position: center;
          background-repeat: no-repeat; }
        @keyframes dot {
          0% {
            top: 0; }
          50% {
            top: 100%; }
          100% {
            top: 0; } }
          body.history .history-graph .history-item .animation-hist-area .dot {
            background-color: #42bcc6;
            border-radius: 50%;
            margin: 0 auto;
            position: absolute;
            left: 0;
            top: 0%;
            height: 10px;
            width: 10px;
            -webkit-animation-name: dot;
            animation-name: dot;
            -webkit-animation-duration: 9s;
            animation-duration: 9s;
            -webkit-animation-fill-mode: both;
            animation-fill-mode: both;
            animation-timing-function: ease-in;
            animation-iteration-count: infinite; }
          body.history .history-graph .history-item .animation-hist-area:before {
            border-left: 2px dotted #42bcc6;
            content: "";
            margin: 0 auto;
            position: absolute;
            left: 4px;
            top: 0%;
            height: 100%;
            width: 2px; }
        @keyframes line {
          0% {
            height: 100%; }
          50% {
            height: 0%; }
          100% {
            height: 100%; } }
          body.history .history-graph .history-item .animation-hist-area:after {
            border-left: 2px solid #42bcc6;
            content: "";
            margin: 0 auto;
            position: absolute;
            left: 4px;
            bottom: 0;
            height: 100%;
            width: 2px;
            -webkit-animation-name: line;
            animation-name: line;
            -webkit-animation-duration: 9s;
            animation-duration: 9s;
            -webkit-animation-fill-mode: both;
            animation-fill-mode: both;
            animation-timing-function: ease-in;
            animation-iteration-count: infinite; }
        body.history .history-graph .history-item:nth-child(odd) .animation-hist-area {
          right: 15px; }
        body.history .history-graph .history-item:nth-child(odd) .history-item__hd {
          text-align: right; }
        body.history .history-graph .history-item:nth-child(odd) .history-item__img {
          right: 50px; }
        body.history .history-graph .history-item:nth-child(odd) .history-item__year {
          right: -10px; }
        body.history .history-graph .history-item:nth-child(odd) .detail {
          padding-right: 85px; }
        body.history .history-graph .history-item:nth-child(even) .animation-hist-area {
          left: 15px; }
          body.history .history-graph .history-item:nth-child(even) .animation-hist-area:after, body.history .history-graph .history-item:nth-child(even) .animation-hist-area:before {
            border-color: #fff; }
          body.history .history-graph .history-item:nth-child(even) .animation-hist-area .dot {
            background-color: white; }
        body.history .history-graph .history-item:nth-child(even) .history-item__hd {
          color: #fff; }
        body.history .history-graph .history-item:nth-child(even) .history-item__img {
          left: 50px; }
        body.history .history-graph .history-item:nth-child(even) .history-item__year {
          left: -5px;
          color: #fff; }
        body.history .history-graph .history-item:nth-child(even) .detail {
          padding-left: 85px;
          margin-left: auto; }
        body.history .history-graph .history-item.item01 .detail {
          margin-top: 76px; }
        body.history .history-graph .history-item.item01 .history-item__year {
          bottom: -29px; }
        body.history .history-graph .history-item.item02 {
          margin-top: 57px; }
          body.history .history-graph .history-item.item02 .detail {
            margin-top: -5px; }
          body.history .history-graph .history-item.item02 .history-item__year {
            bottom: -81px; }
        body.history .history-graph .history-item.item03 {
          margin-top: 56px; }
          body.history .history-graph .history-item.item03 .detail {
            margin-top: 76px; }
          body.history .history-graph .history-item.item03 .history-item__year {
            bottom: -62px; }
        body.history .history-graph .history-item.item04 {
          margin-top: 56px; }
          body.history .history-graph .history-item.item04 .detail {
            margin-top: 11px; }
          body.history .history-graph .history-item.item04 .history-item__year {
            bottom: -94px; }
        body.history .history-graph .history-item.item05 {
          margin-top: 56px; }
          body.history .history-graph .history-item.item05 .detail {
            margin-top: 76px; }
          body.history .history-graph .history-item.item05 .history-item__year {
            bottom: -28px;
            right: -48px; } }
    @media only screen and (min-width: 768px) and (max-width: 1140px) {
      body.history .history-graph .history-item.item05 .history-item__year {
        right: -5px; } }
      @media only screen and (max-width: 767px) {
        body.history .history-graph .history-item {
          padding: 25px 30px 22px;
          background-color: #fff; }
          body.history .history-graph .history-item:last-child .history-item__hd {
            max-width: calc(100% - 131px); }
          body.history .history-graph .history-item:last-child .history-item__year {
            width: 131px; }
          body.history .history-graph .history-item ~ .history-item {
            margin-top: 10px; }
          body.history .history-graph .history-item .hd-wrapper {
            display: flex;
            justify-content: space-between;
            align-items: flex-end; }
          body.history .history-graph .history-item.item05 .history-item__year {
            right: -11px; } }
      body.history .history-graph .history-item__hd {
        font-size: 30px;
        font-size: 3rem;
        line-height: 1;
        letter-spacing: .1em;
        font-weight: bold;
        font-family: "Lato", sans-serif;
        color: #42bcc6; }
        @media only screen and (max-width: 767px) {
          body.history .history-graph .history-item__hd {
            font-size: 14px;
            font-size: 1.4rem;
            line-height: 24px;
            padding-bottom: 11px;
            width: 188px;
            min-width: 160px;
            max-width: calc(100% - 107px);
            background: url("../images/history/bg02-sp.png") bottom 4px right/auto 5px no-repeat; } }
        body.history .history-graph .history-item__hd span {
          font-weight: 300;
          display: inline-block;
          margin-left: 0.3em; }
      @media only screen and (min-width: 768px) {
        body.history .history-graph .history-item__img {
          position: absolute;
          top: 56px;
          z-index: 3; } }
      @media only screen and (max-width: 767px) {
        body.history .history-graph .history-item__img {
          margin-top: 15px; } }
      body.history .history-graph .history-item__year {
        font-size: 80px;
        font-size: 8rem;
        line-height: 1;
        letter-spacing: .1em;
        font-family: "Lato", sans-serif;
        font-weight: bold;
        color: #42bcc6;
        position: absolute;
        white-space: nowrap; }
        @media only screen and (max-width: 767px) {
          body.history .history-graph .history-item__year {
            position: relative;
            top: -5px;
            right: -2px;
            font-size: 28px;
            font-size: 2.8rem; } }
        body.history .history-graph .history-item__year span {
          font-size: 40px;
          font-size: 4rem;
          font-family: "游ゴシック体", "游ゴシック", "YuGothic", "Yu Gothic", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
          position: relative;
          left: 13px; }
          @media only screen and (max-width: 767px) {
            body.history .history-graph .history-item__year span {
              font-size: 16px;
              font-size: 1.6rem;
              left: 4px; } }
      body.history .history-graph .history-item .detail {
        position: relative; }
        @media only screen and (min-width: 768px) {
          body.history .history-graph .history-item .detail {
            background-color: #fff;
            padding: 44px 50px 40px;
            width: 610px; } }
        body.history .history-graph .history-item .detail__ttl {
          font-size: 24px;
          font-size: 2.4rem;
          line-height: 34px;
          font-family: "Noto Sans JP", sans-serif;
          position: relative;
          padding-left: 20px; }
          @media only screen and (max-width: 767px) {
            body.history .history-graph .history-item .detail__ttl {
              font-size: 18px;
              font-size: 1.8rem;
              line-height: 27px;
              padding-left: 19px;
              padding-right: 0;
              margin-top: 24px; } }
          body.history .history-graph .history-item .detail__ttl::before {
            content: "";
            position: absolute;
            left: 0;
            top: 11px;
            width: 10px;
            height: 14px;
            background: url("../images/history/arrow.png") center/cover no-repeat; }
            @media only screen and (max-width: 767px) {
              body.history .history-graph .history-item .detail__ttl::before {
                top: 5px;
                width: 12px;
                height: 16px;
                background-image: url("../images/history/arrow-sp.png"); } }
        body.history .history-graph .history-item .detail__txt {
          font-size: 15px;
          font-size: 1.5rem;
          line-height: 28px;
          margin-top: 28px; }
          @media only screen and (max-width: 767px) {
            body.history .history-graph .history-item .detail__txt {
              margin-top: 18px;
              text-align: justify; } }
  body.history .history-detail {
    background-color: #fff;
    margin-top: 300px;
    padding: 120px 0 200px; }
    @media only screen and (max-width: 767px) {
      body.history .history-detail {
        margin-top: 0;
        padding: 0 0 116px; }
        body.history .history-detail .ttl-01 {
          text-align: center;
          margin-top: 74px; }
          body.history .history-detail .ttl-01:before {
            width: 26px;
            top: 27px;
            right: 0; }
          body.history .history-detail .ttl-01 .en {
            font-size: 16px;
            font-size: 1.6rem;
            margin-bottom: 39px; }
          body.history .history-detail .ttl-01 .ja {
            font-size: 24px;
            font-size: 2.4rem;
            letter-spacing: .039em; }
        body.history .history-detail__img {
          width: 100%; } }
    body.history .history-detail .history-table {
      border: 1px solid #e6e6e6;
      table-layout: fixed;
      width: 100%;
      margin-top: 66px; }
      @media only screen and (max-width: 767px) {
        body.history .history-detail .history-table {
          margin-top: 36px;
          border: none;
          display: block; }
          body.history .history-detail .history-table thead, body.history .history-detail .history-table tbody, body.history .history-detail .history-table th, body.history .history-detail .history-table td, body.history .history-detail .history-table tr {
            display: block; }
          body.history .history-detail .history-table tr:not(:first-child) {
            margin-top: 20px; } }
      body.history .history-detail .history-table th, body.history .history-detail .history-table td {
        vertical-align: top;
        border: 1px solid #e6e6e6; }
        @media only screen and (max-width: 767px) {
          body.history .history-detail .history-table th, body.history .history-detail .history-table td {
            border: none; } }
      body.history .history-detail .history-table th {
        font-size: 16px;
        font-size: 1.6rem;
        line-height: 24px;
        font-family: "Noto Sans JP", sans-serif;
        color: #42bcc6;
        background-color: #f8f8f8;
        padding: 3px 10px; }
        @media only screen and (min-width: 768px) {
          body.history .history-detail .history-table th {
            font-size: 24px;
            font-size: 2.4rem;
            text-align: center;
            padding: 26px 0;
            width: 220px; } }
        body.history .history-detail .history-table th span {
          font-family: "Lato", sans-serif;
          font-weight: bold; }
      body.history .history-detail .history-table td {
        padding: 26px 20px; }
        @media only screen and (max-width: 1024px) {
          body.history .history-detail .history-table td {
            padding-right: 10px; } }
        @media all and (-ms-high-contrast: none) {
          body.history .history-detail .history-table td {
            padding: 31px 20px 23px; } }
        @media only screen and (max-width: 767px) {
          body.history .history-detail .history-table td {
            padding: 0 0 0 10px; } }
      @media only screen and (max-width: 767px) {
        body.history .history-detail .history-table .year-list {
          margin-top: 16px; } }
      @media only screen and (min-width: 768px) {
        body.history .history-detail .history-table .year-list .year {
          display: flex;
          align-items: flex-start; } }
      body.history .history-detail .history-table .year-list .year ~ .year {
        margin-top: 20px; }
        @media only screen and (max-width: 767px) {
          body.history .history-detail .history-table .year-list .year ~ .year {
            margin-top: 13px; } }
      body.history .history-detail .history-table .year-list .year__num {
        width: 117px;
        font-size: 16px;
        font-size: 1.6rem;
        line-height: 24px;
        color: #42bcc6;
        font-family: "Noto Sans JP", sans-serif;
        text-align: right;
        padding-right: 21px; }
        @media all and (-ms-high-contrast: none) {
          body.history .history-detail .history-table .year-list .year__num {
            margin-top: -3px; } }
        @media only screen and (max-width: 767px) {
          body.history .history-detail .history-table .year-list .year__num {
            font-size: 15px;
            font-size: 1.5rem;
            line-height: 20px;
            text-align: left;
            width: auto;
            padding-right: 0; } }
        body.history .history-detail .history-table .year-list .year__num span {
          font-family: "Lato", sans-serif;
          font-weight: bold; }
      @media only screen and (min-width: 768px) {
        body.history .history-detail .history-table .year-list .year__txt {
          padding-left: 17px;
          width: calc(100% - 117px);
          position: relative; }
          body.history .history-detail .history-table .year-list .year__txt::before {
            content: "";
            position: absolute;
            top: 0;
            left: -2px;
            height: 100%;
            width: 1px;
            background-color: #e6e6e6; } }
      @media only screen and (max-width: 767px) {
        body.history .history-detail .history-table .year-list .year__txt {
          margin-top: 10px; } }
      body.history .history-detail .history-table .year-list .year__txt p {
        font-size: 15px;
        font-size: 1.5rem;
        line-height: 24px; }
        @media only screen and (max-width: 767px) {
          body.history .history-detail .history-table .year-list .year__txt p {
            line-height: 22px;
            position: relative;
            padding-left: 25px; }
            body.history .history-detail .history-table .year-list .year__txt p::before {
              content: "";
              position: absolute;
              left: 2px;
              top: 12px;
              width: 5px;
              height: 2px;
              background-color: #e6e6e6; } }
    @media only screen and (max-width: 767px) and (max-width: 767px) {
      body.history .history-detail .history-table .year-list .year__txt p::before {
        top: 10px;
        left: 8px; } }
        body.history .history-detail .history-table .year-list .year__txt p ~ p {
          margin-top: 9px; }
          @media only screen and (max-width: 767px) {
            body.history .history-detail .history-table .year-list .year__txt p ~ p {
              margin-top: 5px; } }

@media only screen and (min-width: 768px) {
  body.menu-color-index .header:not(.fixed) {
    top: 30px; } }

body.menu-color-index .header:not(.fixed).is-blue .hamberger:not(.is-active):before {
  color: #42bcc6; }

body.menu-color-index .header:not(.fixed).is-blue .hamberger:not(.is-active) .hamberger-ico:before, body.menu-color-index .header:not(.fixed).is-blue .hamberger:not(.is-active) .hamberger-ico:after {
  background: #42bcc6; }

@media only screen and (min-width: 768px) {
  body.menu-color-index .header:not(.fixed).is-blue .header-nav .nav-btn {
    border-color: #42bcc6; } }

body.index .h1-main, body.index .header {
  opacity: 0;
  pointer-events: none;
  transition: 1.5s opacity; }
  body.index .h1-main.is-show, body.index .header.is-show {
    opacity: 1;
    pointer-events: auto; }

body.index .h1-main {
  padding: 10px 15px; }

body.index .c-bg-img {
  position: relative;
  overflow: hidden; }

body.index .c-bg-img-main {
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0; }

body.index .is-hover-img .c-bg-img-main {
  transition: transform .3s; }

body.index .is-hover-img:hover .c-bg-img-main {
  transform: scale(1.1); }

body.index [data-delay="1"] {
  animation-delay: .1s; }

body.index [data-delay="2"] {
  animation-delay: .2s; }

body.index [data-delay="3"] {
  animation-delay: .3s; }

body.index [data-delay="4"] {
  animation-delay: .4s; }

body.index [data-delay="5"] {
  animation-delay: .5s; }

body.index [data-delay="6"] {
  animation-delay: .6s; }

body.index [data-delay="7"] {
  animation-delay: .7s; }

body.index main {
  background-color: #f8f8f8; }

body.index .sec-mv {
  padding: 0 20px 20px;
  margin-top: 30px;
  position: relative;
  background-color: #fff; }
  @media only screen and (max-width: 767px) {
    body.index .sec-mv {
      margin-top: 20px; } }
  body.index .sec-mv .ttl {
    color: white;
    margin: 0 auto;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 59px;
    text-align: center;
    z-index: 2; }
    @media only screen and (max-width: 767px) {
      body.index .sec-mv .ttl {
        height: 200px;
        top: 0;
        bottom: 50px;
        margin: auto; } }
    body.index .sec-mv .ttl .en {
      display: block;
      font-size: 64px;
      font-size: 6.4rem;
      font-weight: bold;
      font-family: "Raleway", sans-serif;
      letter-spacing: 0.1em;
      padding-left: 8px; }
      body.index .sec-mv .ttl .en span {
        font-weight: 300; }
      @media only screen and (max-width: 767px) {
        body.index .sec-mv .ttl .en {
          font-size: 46px;
          font-size: 4.6rem;
          line-height: 1.087;
          padding-left: 4px; } }
    body.index .sec-mv .ttl .ja {
      display: block;
      display: inline-block;
      font-family: "Noto Sans JP", sans-serif;
      font-size: 18px;
      font-size: 1.8rem;
      letter-spacing: 0.12em;
      margin-top: 20px; }
      @media only screen and (max-width: 767px) {
        body.index .sec-mv .ttl .ja {
          font-size: 16px;
          font-size: 1.6rem;
          letter-spacing: 0.05em;
          margin-top: 15px;
          padding-left: 14px; } }
  body.index .sec-mv .ttl-hiromi {
    color: #42bcc6;
    position: absolute;
    z-index: 2; }
    @media only screen and (min-width: 768px) {
      body.index .sec-mv .ttl-hiromi {
        height: 220px;
        margin: auto 0;
        top: 0;
        bottom: 92px;
        left: calc(50% + 93px); } }
    @media only screen and (max-width: 767px) {
      body.index .sec-mv .ttl-hiromi {
        width: 100%;
        text-align: center;
        top: 112px;
        left: 0; } }
  @media only screen and (max-width: 767px) and (max-height: 780px) {
    body.index .sec-mv .ttl-hiromi {
      top: 6.3vh; } }
  @media only screen and (max-width: 767px) and (max-height: 620px) {
    body.index .sec-mv .ttl-hiromi {
      top: 20px; } }
    body.index .sec-mv .ttl-hiromi .ja {
      display: block;
      font-size: 46px;
      font-size: 4.6rem;
      line-height: 1.608;
      letter-spacing: .12em;
      font-weight: bold;
      font-family: "Noto Sans JP", sans-serif; }
      @media only screen and (max-width: 767px) {
        body.index .sec-mv .ttl-hiromi .ja {
          font-size: 28px;
          font-size: 2.8rem;
          line-height: 1.428;
          padding-left: 22px; } }
  @media only screen and (max-width: 767px) and (max-height: 780px) {
    body.index .sec-mv .ttl-hiromi .ja {
      font-size: 22px;
      font-size: 2.2rem; } }
  @media only screen and (max-width: 767px) and (max-height: 620px) {
    body.index .sec-mv .ttl-hiromi .ja {
      font-size: 18px;
      font-size: 1.8rem;
      line-height: 1.4; } }
    body.index .sec-mv .ttl-hiromi .en {
      margin-top: 34px;
      display: block;
      font-size: 18px;
      font-size: 1.8rem;
      letter-spacing: .1em;
      font-weight: 600;
      font-family: "Raleway", sans-serif;
      position: relative; }
      @media only screen and (max-width: 767px) {
        body.index .sec-mv .ttl-hiromi .en {
          margin-top: 20px;
          font-size: 12px;
          font-size: 1.2rem;
          padding-bottom: 28px; } }
  @media only screen and (max-width: 767px) and (max-height: 780px) {
    body.index .sec-mv .ttl-hiromi .en {
      margin-top: 10px;
      font-size: 11px;
      font-size: 1.1rem;
      padding-bottom: 18px; } }
  @media only screen and (max-width: 767px) and (max-height: 620px) {
    body.index .sec-mv .ttl-hiromi .en {
      margin-top: 5px;
      font-size: 10px;
      font-size: 1rem;
      padding-bottom: 10px; } }
      body.index .sec-mv .ttl-hiromi .en:before {
        content: "";
        width: 120px;
        height: 1px;
        background-color: #42bcc6;
        position: absolute;
        top: 9px;
        left: 254px; }
        @media only screen and (max-width: 767px) {
          body.index .sec-mv .ttl-hiromi .en:before {
            width: 60px;
            top: auto;
            bottom: 0;
            left: 0;
            right: 0;
            margin: 0 auto; } }
  body.index .sec-mv .slide {
    background-size: cover;
    background-position: center;
    overflow: hidden;
    position: relative;
    height: calc(100vh - 50px);
    width: 100%;
    border-radius: 5px; }
    @media only screen and (min-device-width: 768px) and (max-device-width: 1024px) {
      body.index .sec-mv .slide {
        height: 586px; } }
    @media only screen and (min-width: 768px) {
      body.index .sec-mv .slide {
        max-height: none !important; } }
    @media only screen and (max-width: 767px) {
      body.index .sec-mv .slide {
        height: 772px; } }
    body.index .sec-mv .slide .image,
    body.index .sec-mv .slide .image-hiromi {
      background-repeat: no-repeat;
      background-position: center;
      background-size: cover;
      background-color: #fff;
      position: absolute;
      top: 0;
      left: 0;
      height: 100%;
      width: 100%; }
    @media only screen and (min-width: 768px) {
      body.index .sec-mv .slide.slide1-hiromi .image-hiromi {
        background-image: url(/images/top/mv_hiromi_bg.jpg);
        background-size: 100% 100%; }
        body.index .sec-mv .slide.slide1-hiromi .image-hiromi__img01 {
          background-image: url(/images/top/mv_hiromi_img01.png);
          background-repeat: no-repeat;
          background-position: center bottom;
          background-size: 1240px 750px;
          background-size: contain;
          position: absolute;
          top: 0;
          left: 0;
          height: 100%;
          width: 100%;
          z-index: 2; }
        body.index .sec-mv .slide.slide1-hiromi .image-hiromi__img02 {
          width: calc(50% + 91px);
          position: absolute;
          bottom: 0;
          right: 0;
          z-index: 1; }
          body.index .sec-mv .slide.slide1-hiromi .image-hiromi__img02 img {
            width: 100%; } }
    @media only screen and (max-width: 767px) {
      body.index .sec-mv .slide.slide1-hiromi .image-hiromi {
        background-image: url(/images/top/mv_hiromi_sp.jpg);
        background-size: contain;
        background-position: center bottom; } }
  @media only screen and (max-width: 767px) and (max-height: 780px) {
    body.index .sec-mv .slide.slide1-hiromi .image-hiromi {
      background-position: center bottom -15px; } }
  @media only screen and (max-width: 767px) and (max-height: 620px) {
    body.index .sec-mv .slide.slide1-hiromi .image-hiromi {
      background-position: center bottom -47px; } }
    body.index .sec-mv .slide.slide1 .image {
      background-image: url(/images/top/mv1.jpg); }
      @media only screen and (max-width: 767px) {
        body.index .sec-mv .slide.slide1 .image {
          background-image: url(/images/top/mv1_sp.jpg); } }
    body.index .sec-mv .slide.slide2 .image {
      background-image: url(/images/top/mv2.jpg); }
      @media only screen and (max-width: 767px) {
        body.index .sec-mv .slide.slide2 .image {
          background-image: url(/images/top/mv2_sp.jpg); } }
    body.index .sec-mv .slide.slide3 .image {
      background-image: url(/images/top/mv3.jpg); }
      @media only screen and (max-width: 767px) {
        body.index .sec-mv .slide.slide3 .image {
          background-image: url(/images/top/mv3_sp.jpg); } }
    body.index .sec-mv .slide.slide4 .image {
      background-image: url(/images/top/mv4.jpg); }
      @media only screen and (max-width: 767px) {
        body.index .sec-mv .slide.slide4 .image {
          background-image: url(/images/top/mv4_sp.jpg); } }
    body.index .sec-mv .slide.slide5 .image {
      background-image: url(/images/top/mv5.jpg); }
      @media only screen and (max-width: 767px) {
        body.index .sec-mv .slide.slide5 .image {
          background-image: url(/images/top/mv5_sp.jpg); } }
  body.index .sec-mv .slide-dots {
    position: absolute; }
    @media only screen and (min-width: 768px) {
      body.index .sec-mv .slide-dots {
        top: 50%;
        left: 58px;
        transform: translateY(-50%);
        margin-top: 26px; } }
    @media only screen and (max-width: 767px) {
      body.index .sec-mv .slide-dots {
        width: 100%;
        text-align: center;
        bottom: 62px;
        left: 0; } }
  @media only screen and (max-width: 767px) and (max-height: 620px) {
    body.index .sec-mv .slide-dots {
      bottom: 46px; } }
    body.index .sec-mv .slide-dots .slick-dots li {
      width: 16px;
      height: 16px;
      position: relative; }
      @media only screen and (min-width: 768px) {
        body.index .sec-mv .slide-dots .slick-dots li {
          display: block;
          margin: 8px 0; } }
      @media only screen and (max-width: 767px) {
        body.index .sec-mv .slide-dots .slick-dots li {
          margin: 0 4px; } }
      body.index .sec-mv .slide-dots .slick-dots li button {
        display: none; }
      body.index .sec-mv .slide-dots .slick-dots li:after {
        content: "";
        width: 8px;
        height: 8px;
        border-radius: 100px;
        background-color: #fff;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        margin: auto; }
      body.index .sec-mv .slide-dots .slick-dots li circle {
        stroke-dasharray: 160;
        stroke-dashoffset: 160;
        fill: transparent; }

@keyframes ani-dot {
  0% {
    stroke-dashoffset: 160px;
    stroke-dasharray: 160px; }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 160px; } }
      body.index .sec-mv .slide-dots .slick-dots li.slick-active circle {
        -webkit-animation: ani-dot 25s linear 0s both;
        animation: ani-dot 25s linear 0s both; }
  body.index .sec-mv .slick-dotted.slick-slider {
    margin-bottom: 0; }
  body.index .sec-mv .image-hiromi {
    opacity: 0;
    transition: 2s opacity;
    transition-delay: 1s; }
    body.index .sec-mv .image-hiromi.is-show {
      opacity: 1; }

body.index .sec-service {
  padding: 134px 0 148px;
  position: relative;
  z-index: 1;
  overflow: hidden; }
  @media only screen and (min-width: 768px) {
    body.index .sec-service:before {
      content: "";
      background-color: #fff;
      border-bottom-left-radius: 40px;
      width: calc(50% + 400px);
      max-width: 95%;
      position: absolute;
      top: 283px;
      bottom: 92px;
      right: 0;
      z-index: -1;
      pointer-events: none; } }
  @media only screen and (max-width: 767px) {
    body.index .sec-service {
      padding: 73px 0 0; } }
  @media only screen and (min-width: 768px) {
    body.index .sec-service .hd-box {
      display: flex;
      align-items: flex-start;
      max-width: 1280px;
      margin: 0 auto; } }
  @media only screen and (max-width: 767px) {
    body.index .sec-service .hd-box {
      padding: 0 25px; } }
  @media only screen and (min-width: 768px) {
    body.index .sec-service .hd-box .leftbox {
      width: 50%;
      margin-top: 56px;
      padding-left: 20px;
      padding-right: 40px; } }
  @media only screen and (min-width: 768px) and (max-width: 1000px) {
    body.index .sec-service .hd-box .leftbox {
      padding-right: 20px; } }
  @media only screen and (min-width: 768px) {
    body.index .sec-service .hd-box .leftbox .in-leftbox {
      max-width: 480px;
      margin-left: auto; } }
  body.index .sec-service .hd-box .leftbox .ttl {
    position: relative;
    z-index: 2; }
    body.index .sec-service .hd-box .leftbox .ttl .ttl-en {
      font-size: 140px;
      font-size: 14rem;
      line-height: 0;
      letter-spacing: 0.1em;
      font-weight: 600;
      color: #fff;
      font-family: "Raleway", sans-serif;
      white-space: nowrap;
      position: absolute; }
      @media only screen and (min-width: 768px) {
        body.index .sec-service .hd-box .leftbox .ttl .ttl-en {
          top: -37px;
          left: -120px; } }
  @media only screen and (min-width: 768px) and (max-width: 1300px) {
    body.index .sec-service .hd-box .leftbox .ttl .ttl-en {
      font-size: 100px;
      font-size: 10rem;
      left: -10px; } }
      @media only screen and (max-width: 767px) {
        body.index .sec-service .hd-box .leftbox .ttl .ttl-en {
          font-size: 64px;
          font-size: 6.4rem;
          line-height: 0.84375;
          top: 285px;
          right: -29px;
          transform: rotate(90deg);
          transform-origin: top right; } }
    body.index .sec-service .hd-box .leftbox .ttl .ttl-ja {
      font-size: 22px;
      font-size: 2.2rem;
      line-height: 1.5;
      letter-spacing: 0.12em;
      font-weight: bold;
      color: #42bcc6;
      font-family: "Noto Sans JP", sans-serif;
      position: relative;
      z-index: 1; }
      @media only screen and (max-width: 767px) {
        body.index .sec-service .hd-box .leftbox .ttl .ttl-ja {
          font-size: 18px;
          font-size: 1.8rem; } }
  body.index .sec-service .hd-box .leftbox .ttl2 {
    margin-top: 17px;
    font-size: 32px;
    font-size: 3.2rem;
    line-height: 1.625;
    letter-spacing: .12em;
    font-weight: 500;
    font-family: "Noto Sans JP", sans-serif; }

@media only screen and (min-width: 768px) and (max-width: 1000px) {
  body.index .sec-service .hd-box .leftbox .ttl2 {
    font-size: 25px;
    font-size: 2.5rem; } }
    @media only screen and (max-width: 767px) {
      body.index .sec-service .hd-box .leftbox .ttl2 {
        margin-top: 3px;
        font-size: 24px;
        font-size: 2.4rem;
        line-height: 1.5;
        position: relative;
        z-index: 3; } }
  body.index .sec-service .hd-box .leftbox .txt {
    margin-top: 34px;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 2;
    letter-spacing: .05em;
    font-weight: 500;
    font-family: "Noto Sans JP", sans-serif; }
    @media only screen and (min-width: 768px) {
      body.index .sec-service .hd-box .leftbox .txt {
        max-width: 440px; } }
    @media only screen and (max-width: 767px) {
      body.index .sec-service .hd-box .leftbox .txt {
        margin-top: 27px;
        line-height: 1.86;
        position: relative;
        z-index: 3; } }
  @media only screen and (min-width: 768px) {
    body.index .sec-service .hd-box .rightbox {
      width: 50%; } }
  @media only screen and (max-width: 767px) {
    body.index .sec-service .hd-box .rightbox {
      margin-top: 37px;
      margin-right: -25px; } }
  body.index .sec-service .hd-box .rightbox .in-rightbox {
    position: relative;
    position: relative;
    box-shadow: 10px 10px 20px rgba(22, 151, 162, 0.16); }
    body.index .sec-service .hd-box .rightbox .in-rightbox:before {
      display: block;
      content: " ";
      width: 100%;
      padding-top: 50%; }
    body.index .sec-service .hd-box .rightbox .in-rightbox > .content {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0; }
    @media only screen and (min-width: 768px) {
      body.index .sec-service .hd-box .rightbox .in-rightbox {
        min-height: 320px; } }
    @media only screen and (max-width: 767px) {
      body.index .sec-service .hd-box .rightbox .in-rightbox {
        position: relative; }
        body.index .sec-service .hd-box .rightbox .in-rightbox:before {
          display: block;
          content: " ";
          width: 100%;
          padding-top: 57.14286%; }
        body.index .sec-service .hd-box .rightbox .in-rightbox > .content {
          position: absolute;
          top: 0;
          left: 0;
          right: 0;
          bottom: 0; } }
  body.index .sec-service .hd-box .rightbox .img {
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    opacity: 0; }
    @media only screen and (min-width: 768px) {
      body.index .sec-service .hd-box .rightbox .img {
        transition: 0.7s opacity; }
        body.index .sec-service .hd-box .rightbox .img.is-active {
          opacity: 1; } }
  body.index .sec-service .hd-box .rightbox .defaut {
    opacity: 1; }
    @media only screen and (min-width: 768px) {
      body.index .sec-service .hd-box .rightbox .defaut.is-hidden {
        opacity: 0; } }
  @media only screen and (min-width: 768px) {
    body.index .sec-service .service-box {
      margin-top: 56px;
      display: flex;
      align-items: flex-start;
      justify-content: space-between; } }
  @media only screen and (max-width: 767px) {
    body.index .sec-service .service-box {
      margin-top: 37px;
      padding-bottom: 47px;
      position: relative; }
      body.index .sec-service .service-box:before {
        content: "";
        background-color: #fff;
        position: absolute;
        top: -120px;
        bottom: 0;
        left: -25px;
        right: -25px;
        z-index: -1;
        pointer-events: none; } }
  @media only screen and (min-width: 768px) {
    body.index .sec-service .service-box .columnleft {
      width: 49%;
      max-width: 480px; } }
  @media only screen and (min-width: 768px) {
    body.index .sec-service .service-box .columnright {
      width: 49%;
      max-width: 480px; } }
  body.index .sec-service .service-box .item {
    display: block;
    font-family: "Noto Sans JP", sans-serif;
    border-bottom: 1px solid #c8d6de;
    position: relative; }
    @media only screen and (min-width: 768px) {
      body.index .sec-service .service-box .item {
        height: 135px;
        padding: 15px 0 10px;
        margin-bottom: 24px; } }
    @media only screen and (max-width: 767px) {
      body.index .sec-service .service-box .item {
        padding: 4px 0 18px;
        margin-bottom: 17px; } }
    body.index .sec-service .service-box .item:before {
      content: "";
      width: 0;
      height: 1px;
      background-color: #42bcc6;
      position: absolute;
      bottom: -1px;
      left: 0;
      transition: .3s width; }
    body.index .sec-service .service-box .item__ttl {
      display: flex;
      align-items: center;
      position: relative; }
      body.index .sec-service .service-box .item__ttl .no-ttl {
        width: 88px; }
        @media only screen and (max-width: 767px) {
          body.index .sec-service .service-box .item__ttl .no-ttl {
            width: 44px; }
            body.index .sec-service .service-box .item__ttl .no-ttl img {
              width: 35px; } }
      body.index .sec-service .service-box .item__ttl .main-ttl {
        width: calc(100% - 88px);
        font-size: 28px;
        font-size: 2.8rem;
        line-height: 1.5;
        letter-spacing: .12em;
        font-weight: 500; }

@media only screen and (min-width: 768px) and (max-width: 1000px) {
  body.index .sec-service .service-box .item__ttl .main-ttl {
    font-size: 22px;
    font-size: 2.2rem; } }
        @media only screen and (max-width: 767px) {
          body.index .sec-service .service-box .item__ttl .main-ttl {
            width: calc(100% - 44px);
            font-size: 22px;
            font-size: 2.2rem; } }
        body.index .sec-service .service-box .item__ttl .main-ttl strong {
          color: #42bcc6; }
    body.index .sec-service .service-box .item__txt {
      margin-top: 23px;
      font-size: 15px;
      font-size: 1.5rem;
      line-height: 2;
      letter-spacing: .05em;
      font-weight: 500;
      color: #767676; }
      @media only screen and (max-width: 767px) {
        body.index .sec-service .service-box .item__txt {
          margin-top: 16px;
          font-size: 14px;
          font-size: 1.4rem;
          line-height: 1.57; } }
    body.index .sec-service .service-box .item__arrow {
      width: 36px;
      height: 36px;
      border-radius: 100%;
      border: 1px solid #c8d6de;
      position: absolute;
      top: 17px;
      right: 0;
      transition: .3s border-color, .3s background-color; }
      @media only screen and (max-width: 767px) {
        body.index .sec-service .service-box .item__arrow {
          width: 30px;
          height: 30px;
          top: 6px; } }
      body.index .sec-service .service-box .item__arrow:before {
        content: "";
        width: 0;
        height: 0;
        border-top: 6px solid transparent;
        border-bottom: 6px solid transparent;
        border-left: 9px solid #42bcc6;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 2px;
        right: 0;
        margin: auto;
        transition: .3s border-color; }
        @media only screen and (max-width: 767px) {
          body.index .sec-service .service-box .item__arrow:before {
            border-top-width: 5px;
            border-bottom-width: 5px;
            border-left-width: 8px; } }
    @media only screen and (min-width: 768px) {
      body.index .sec-service .service-box .item:hover:before {
        width: 100%; }
      body.index .sec-service .service-box .item:hover .item__arrow {
        border-color: #42bcc6;
        background-color: #42bcc6; }
        body.index .sec-service .service-box .item:hover .item__arrow:before {
          border-left-color: #fff; } }

body.index .sec-news {
  padding-bottom: 103px; }
  @media only screen and (max-width: 767px) {
    body.index .sec-news {
      padding: 50px 0 74px; } }
  @media only screen and (min-width: 768px) {
    body.index .sec-news .news-box {
      display: flex;
      justify-content: space-between;
      align-items: flex-start;
      position: relative; } }
  @media only screen and (min-width: 768px) {
    body.index .sec-news .news-box__hd {
      width: 200px;
      padding-bottom: 126px; } }
  @media only screen and (min-width: 768px) {
    body.index .sec-news .news-box__inner {
      width: calc(100% - 220px);
      max-width: 726px;
      padding-top: 7px; } }
  @media only screen and (max-width: 767px) {
    body.index .sec-news .news-box__inner {
      margin-top: 20px; } }
  @media only screen and (min-width: 768px) {
    body.index .sec-news .news-box__inner .lst-item li + li {
      margin-top: 27px; } }
  body.index .sec-news .news-box__inner .item {
    display: block;
    border-bottom: 1px solid #c8d6de;
    position: relative;
    padding: 13px 0; }
    @media only screen and (max-width: 767px) {
      body.index .sec-news .news-box__inner .item {
        padding: 20px 0 24px; } }
    body.index .sec-news .news-box__inner .item:before {
      content: "";
      width: 0;
      height: 1px;
      background-color: #42bcc6;
      position: absolute;
      bottom: -1px;
      left: 0;
      transition: .3s width; }
    body.index .sec-news .news-box__inner .item__info {
      display: flex;
      align-items: flex-start; }
      body.index .sec-news .news-box__inner .item__info .cat-info {
        display: flex;
        flex-wrap: wrap;
        margin-right: 10px; }
        @media only screen and (max-width: 767px) {
          body.index .sec-news .news-box__inner .item__info .cat-info {
            margin-right: 12px; } }
        body.index .sec-news .news-box__inner .item__info .cat-info span {
          min-width: 124px;
          text-align: center;
          font-size: 12px;
          font-size: 1.2rem;
          line-height: 1.35;
          letter-spacing: .05em;
          font-weight: bold;
          font-family: "Noto Sans JP", sans-serif;
          color: #fff;
          background-color: #1893aa;
          border-radius: 3px;
          padding: 3px 5px;
          margin: 0 4px 4px 0; }
          @media only screen and (max-width: 767px) {
            body.index .sec-news .news-box__inner .item__info .cat-info span {
              min-width: 100px;
              font-size: 10px;
              font-size: 1rem; } }
      body.index .sec-news .news-box__inner .item__info .date-info {
        margin-top: -1px;
        white-space: nowrap;
        font-size: 16px;
        font-size: 1.6rem;
        line-height: 1.35;
        letter-spacing: 0;
        font-family: "Lato", sans-serif; }
        @media only screen and (max-width: 767px) {
          body.index .sec-news .news-box__inner .item__info .date-info {
            margin-top: 1px;
            font-size: 13px;
            font-size: 1.3rem; } }
    body.index .sec-news .news-box__inner .item__ttl {
      margin-top: 14px;
      font-size: 16px;
      font-size: 1.6rem;
      line-height: 1.625;
      letter-spacing: .08em;
      font-family: "Noto Sans JP", sans-serif; }
      @media only screen and (min-width: 768px) {
        body.index .sec-news .news-box__inner .item__ttl {
          overflow: hidden;
          width: 100%;
          -webkit-line-clamp: 1;
          display: -webkit-box;
          -webkit-box-orient: vertical;
          -o-text-overflow: ellipsis;
          text-overflow: ellipsis;
          white-space: normal; } }
      @media only screen and (max-width: 767px) {
        body.index .sec-news .news-box__inner .item__ttl {
          margin-top: 11px;
          font-size: 15px;
          font-size: 1.5rem;
          line-height: 1.6;
          letter-spacing: .06em;
          overflow: hidden;
          width: 100%;
          -webkit-line-clamp: 2;
          display: -webkit-box;
          -webkit-box-orient: vertical;
          -o-text-overflow: ellipsis;
          text-overflow: ellipsis;
          white-space: normal; } }
    @media only screen and (min-width: 768px) {
      body.index .sec-news .news-box__inner .item:hover:before {
        width: 100%; } }
  @media only screen and (min-width: 768px) {
    body.index .sec-news .news-box__btn {
      position: absolute;
      bottom: 0;
      left: 0; } }
  @media only screen and (max-width: 767px) {
    body.index .sec-news .news-box__btn {
      margin-top: 30px; } }

@media only screen and (min-width: 768px) {
  body.index .layout-coloumn-event {
    display: flex;
    justify-content: space-between; } }

@media only screen and (min-width: 768px) {
  body.index .sec-coloumn {
    width: 50%;
    max-width: 470px;
    padding-bottom: 71px; } }

@media only screen and (max-width: 767px) {
  body.index .sec-coloumn {
    padding-bottom: 74px; } }

body.index .sec-coloumn .lst-item {
  margin-top: 22px; }
  @media only screen and (max-width: 767px) {
    body.index .sec-coloumn .lst-item {
      margin-top: 20px; } }

body.index .sec-coloumn .item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid #c8d6de;
  position: relative;
  padding: 30px 0 25px; }
  @media only screen and (max-width: 767px) {
    body.index .sec-coloumn .item {
      padding: 20px 0 23px; } }
  body.index .sec-coloumn .item:before {
    content: "";
    width: 0;
    height: 1px;
    background-color: #42bcc6;
    position: absolute;
    bottom: -1px;
    left: 0;
    transition: .3s width; }
  @media only screen and (min-width: 768px) {
    body.index .sec-coloumn .item__info {
      margin-top: 2px;
      width: calc(100% - 130px);
      max-width: 310px; } }
  @media only screen and (max-width: 767px) {
    body.index .sec-coloumn .item__info {
      width: calc(100% - 110px);
      padding-right: 10px; } }
  body.index .sec-coloumn .item__info .cat-date {
    display: flex;
    align-items: flex-start; }
  body.index .sec-coloumn .item__info .cat {
    display: flex;
    flex-wrap: wrap;
    margin-right: 11px; }
    @media only screen and (max-width: 767px) {
      body.index .sec-coloumn .item__info .cat {
        margin-right: 12px; } }
    body.index .sec-coloumn .item__info .cat span {
      min-width: 124px;
      text-align: center;
      font-size: 12px;
      font-size: 1.2rem;
      line-height: 1.35;
      letter-spacing: .05em;
      font-weight: bold;
      font-family: "Noto Sans JP", sans-serif;
      color: #fff;
      background-color: #1893aa;
      border-radius: 3px;
      padding: 3px 5px;
      margin: 0 4px 4px 0; }
      @media only screen and (max-width: 767px) {
        body.index .sec-coloumn .item__info .cat span {
          min-width: 100px;
          font-size: 10px;
          font-size: 1rem; } }
  body.index .sec-coloumn .item__info .date {
    margin-top: 1px;
    white-space: nowrap;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.35;
    letter-spacing: 0;
    color: #1893aa;
    font-family: "Lato", sans-serif; }
    @media only screen and (max-width: 767px) {
      body.index .sec-coloumn .item__info .date {
        margin-top: 1px;
        font-size: 13px;
        font-size: 1.3rem; } }
  body.index .sec-coloumn .item__info .ttl {
    margin-top: 13px;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.625;
    letter-spacing: .06em;
    font-weight: 500;
    font-family: "Noto Sans JP", sans-serif; }
    @media only screen and (min-width: 768px) {
      body.index .sec-coloumn .item__info .ttl {
        overflow: hidden;
        width: 100%;
        -webkit-line-clamp: 1;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -o-text-overflow: ellipsis;
        text-overflow: ellipsis;
        white-space: normal; } }
    @media only screen and (max-width: 767px) {
      body.index .sec-coloumn .item__info .ttl {
        margin-top: 11px;
        font-size: 15px;
        font-size: 1.5rem;
        line-height: 1.6;
        overflow: hidden;
        width: 100%;
        -webkit-line-clamp: 2;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -o-text-overflow: ellipsis;
        text-overflow: ellipsis;
        white-space: normal; } }
  body.index .sec-coloumn .item__img {
    width: 120px;
    height: 90px;
    border-radius: 5px;
    -webkit-mask-image: -webkit-radial-gradient(white, black); }
    @media only screen and (max-width: 767px) {
      body.index .sec-coloumn .item__img {
        width: 110px;
        height: 82px; } }
  @media only screen and (min-width: 768px) {
    body.index .sec-coloumn .item:hover:before {
      width: 100%; } }

@media only screen and (min-width: 768px) {
  body.index .sec-coloumn .btn-coloumn {
    margin-top: 22px;
    margin-left: auto;
    margin-right: 8px; } }

@media only screen and (max-width: 767px) {
  body.index .sec-coloumn .btn-coloumn {
    margin-top: 30px; } }

@media only screen and (min-width: 768px) {
  body.index .sec-event {
    width: 45%;
    max-width: 450px;
    padding-bottom: 71px; } }

@media only screen and (max-width: 767px) {
  body.index .sec-event {
    padding-bottom: 64px; } }

body.index .sec-event .lst-item {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between; }
  @media only screen and (min-width: 768px) {
    body.index .sec-event .lst-item {
      margin-top: 52px; } }
  @media only screen and (max-width: 767px) {
    body.index .sec-event .lst-item {
      margin-top: 40px; } }
  @media only screen and (min-width: 768px) {
    body.index .sec-event .lst-item li {
      width: 49%;
      max-width: 200px;
      margin-top: 40px; } }
  @media only screen and (max-width: 767px) {
    body.index .sec-event .lst-item li {
      width: calc(50% - 12.5px);
      margin-top: 23px; } }
  body.index .sec-event .lst-item li:nth-child(1), body.index .sec-event .lst-item li:nth-child(2) {
    margin-top: 0; }

body.index .sec-event .item {
  display: block;
  height: 100%;
  border-bottom: 1px solid #c8d6de;
  position: relative;
  padding-bottom: 19px; }
  @media only screen and (max-width: 767px) {
    body.index .sec-event .item {
      padding-bottom: 15px; } }
  body.index .sec-event .item:before {
    content: "";
    width: 0;
    height: 1px;
    background-color: #42bcc6;
    position: absolute;
    bottom: -1px;
    left: 0;
    transition: .3s width; }
  body.index .sec-event .item__img {
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
    -webkit-mask-image: -webkit-radial-gradient(white, black); }
    @media only screen and (min-width: 768px) {
      body.index .sec-event .item__img {
        height: 150px; } }
    @media only screen and (max-width: 767px) {
      body.index .sec-event .item__img {
        height: 112px; } }
  body.index .sec-event .item__cat {
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
    color: #fff;
    background-color: #1893aa;
    text-align: center;
    min-height: 22px;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.35;
    letter-spacing: .05em;
    font-weight: bold;
    font-family: "Noto Sans JP", sans-serif;
    padding: 3px 5px; }
    @media only screen and (max-width: 767px) {
      body.index .sec-event .item__cat {
        min-height: 21px;
        font-size: 10px;
        font-size: 1rem; } }
  body.index .sec-event .item__ttl {
    margin-top: 13px;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.625;
    letter-spacing: .06em;
    font-weight: 500;
    font-family: "Noto Sans JP", sans-serif;
    overflow: hidden;
    width: 100%;
    -webkit-line-clamp: 2;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
    white-space: normal; }
    @media only screen and (max-width: 767px) {
      body.index .sec-event .item__ttl {
        margin-top: 10px;
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 1.57; } }
  @media only screen and (min-width: 768px) {
    body.index .sec-event .item:hover:before {
      width: 100%; } }

@media only screen and (min-width: 768px) {
  body.index .sec-event .btn-event {
    margin-top: 22px;
    margin-left: auto; } }

@media only screen and (max-width: 767px) {
  body.index .sec-event .btn-event {
    margin-top: 30px; } }

body.index .sec-case {
  padding: 92px 0 71px;
  position: relative;
  z-index: 1; }
  @media only screen and (max-width: 767px) {
    body.index .sec-case {
      padding: 49px 0 56px; } }
  body.index .sec-case:before {
    content: "";
    background-image: url(/images/top/case_bg.jpg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: -110px;
    z-index: -1;
    pointer-events: none; }
    @media only screen and (max-width: 767px) {
      body.index .sec-case:before {
        background-image: url(/images/top/case_bg_sp.jpg);
        bottom: -263px; } }
  @media only screen and (min-width: 768px) {
    body.index .sec-case .c-ttl01 {
      padding-right: 26px; } }
  body.index .sec-case .txt-case {
    margin-top: 38px;
    text-align: center;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 2;
    letter-spacing: .05em;
    font-weight: 500;
    font-family: "Noto Sans JP", sans-serif; }
    @media only screen and (max-width: 767px) {
      body.index .sec-case .txt-case {
        margin-top: 27px;
        line-height: 1.86;
        letter-spacing: .03em; } }
  body.index .sec-case .case-box {
    margin-top: 56px;
    overflow: hidden; }
    @media only screen and (max-width: 767px) {
      body.index .sec-case .case-box {
        margin-top: 29px; } }
  body.index .sec-case .lst-case {
    margin: 0 auto; }
    @media only screen and (min-width: 768px) {
      body.index .sec-case .lst-case {
        max-width: 1140px; } }
  @media only screen and (min-width: 768px) and (max-width: 1200px) {
    body.index .sec-case .lst-case {
      padding: 0 40px; } }
    @media only screen and (max-width: 767px) {
      body.index .sec-case .lst-case {
        width: 289px; } }
    body.index .sec-case .lst-case .slick-list {
      overflow: visible; }
    body.index .sec-case .lst-case .slide-case {
      padding: 0 20px; }
      @media only screen and (max-width: 767px) {
        body.index .sec-case .lst-case .slide-case {
          padding: 0 12px; } }
    body.index .sec-case .lst-case .slick-dots {
      margin-top: 58px;
      padding: 0 20px;
      display: flex;
      position: static; }
      @media only screen and (max-width: 767px) {
        body.index .sec-case .lst-case .slick-dots {
          padding: 0;
          width: auto;
          margin: 39px -18px 0; } }
      body.index .sec-case .lst-case .slick-dots li {
        flex: 1;
        margin: 0;
        padding: 0;
        height: 1px;
        width: auto;
        background-color: #c8d6de; }
        body.index .sec-case .lst-case .slick-dots li button {
          display: none; }
        body.index .sec-case .lst-case .slick-dots li.slick-active {
          background-color: #42bcc6; }
    body.index .sec-case .lst-case .slick-prev, body.index .sec-case .lst-case .slick-next {
      width: 64px;
      height: 64px;
      background-color: #42bcc6;
      border-radius: 100%;
      top: 70px;
      transform: translate(0, 0);
      font-size: 0;
      color: #42bcc6;
      z-index: 10; }
      @media only screen and (max-width: 767px) {
        body.index .sec-case .lst-case .slick-prev, body.index .sec-case .lst-case .slick-next {
          width: 48px;
          height: 48px; } }
      body.index .sec-case .lst-case .slick-prev:before, body.index .sec-case .lst-case .slick-next:before {
        display: none; }
      body.index .sec-case .lst-case .slick-prev:after, body.index .sec-case .lst-case .slick-next:after {
        content: "";
        width: 16px;
        height: 16px;
        border-top: 2px solid #fff;
        border-right: 2px solid #fff;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 10px;
        margin: auto;
        transform: rotate(45deg); }
        @media only screen and (max-width: 767px) {
          body.index .sec-case .lst-case .slick-prev:after, body.index .sec-case .lst-case .slick-next:after {
            width: 12px;
            height: 12px;
            right: 6px; } }
    body.index .sec-case .lst-case .slick-prev {
      left: -10px;
      transform: rotate(180deg); }

@media only screen and (min-width: 768px) and (max-width: 1200px) {
  body.index .sec-case .lst-case .slick-prev {
    left: 26px; } }
      @media only screen and (max-width: 767px) {
        body.index .sec-case .lst-case .slick-prev {
          left: -18px; } }
    body.index .sec-case .lst-case .slick-next {
      right: -10px; }

@media only screen and (min-width: 768px) and (max-width: 1200px) {
  body.index .sec-case .lst-case .slick-next {
    right: 26px; } }
      @media only screen and (max-width: 767px) {
        body.index .sec-case .lst-case .slick-next {
          right: -18px; } }
  body.index .sec-case .item {
    display: block; }
    body.index .sec-case .item__img {
      border-top-left-radius: 5px;
      border-top-right-radius: 5px;
      -webkit-mask-image: -webkit-radial-gradient(white, black); }
      @media only screen and (min-width: 768px) {
        body.index .sec-case .item__img {
          height: 214px; } }
      @media only screen and (max-width: 767px) {
        body.index .sec-case .item__img {
          height: 167px; } }
    body.index .sec-case .item__caption {
      min-height: 28px;
      text-align: center;
      color: #fff;
      background-color: #1893aa;
      border-bottom-left-radius: 5px;
      border-bottom-right-radius: 5px;
      padding: 7px 5px 5px; }
      @media only screen and (max-width: 767px) {
        body.index .sec-case .item__caption {
          min-height: 22px;
          padding: 3px 5px 5px; } }
      body.index .sec-case .item__caption .en-cap {
        font-size: 16px;
        font-size: 1.6rem;
        letter-spacing: .06em;
        font-weight: 600;
        font-family: "Raleway", sans-serif; }
        @media only screen and (max-width: 767px) {
          body.index .sec-case .item__caption .en-cap {
            font-size: 14px;
            font-size: 1.4rem; } }
      body.index .sec-case .item__caption .ja-cap {
        font-size: 12px;
        font-size: 1.2rem;
        letter-spacing: .05em;
        font-weight: bold;
        font-family: "Noto Sans JP", sans-serif; }
        @media only screen and (max-width: 767px) {
          body.index .sec-case .item__caption .ja-cap {
            font-size: 10px;
            font-size: 1rem; } }
      body.index .sec-case .item__caption span + span {
        margin-left: 8px;
        margin-right: -4px; }
        @media only screen and (max-width: 767px) {
          body.index .sec-case .item__caption span + span {
            margin-left: 4px;
            margin-right: -1px; } }
    body.index .sec-case .item__ttl {
      margin-top: 14px;
      font-size: 16px;
      font-size: 1.6rem;
      line-height: 1.75;
      letter-spacing: .06em;
      font-weight: 500;
      font-family: "Noto Sans JP", sans-serif;
      overflow: hidden;
      width: 100%;
      -webkit-line-clamp: 1;
      display: -webkit-box;
      -webkit-box-orient: vertical;
      -o-text-overflow: ellipsis;
      text-overflow: ellipsis;
      white-space: normal; }
      @media only screen and (max-width: 767px) {
        body.index .sec-case .item__ttl {
          margin-top: 9px;
          font-size: 15px;
          font-size: 1.5rem;
          line-height: 1.6; } }
    body.index .sec-case .item__cat {
      margin-top: 7px;
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 1.6;
      letter-spacing: .05em;
      font-weight: 500;
      font-family: "Noto Sans JP", sans-serif;
      position: relative;
      padding-left: 22px; }
      @media only screen and (max-width: 767px) {
        body.index .sec-case .item__cat {
          margin-top: 11px;
          font-size: 10px;
          font-size: 1rem;
          padding-left: 17px; } }
      body.index .sec-case .item__cat.location:before {
        content: "";
        width: 12px;
        height: 16px;
        background-image: url(/images/top/icon_location.svg);
        background-repeat: no-repeat;
        background-position: center;
        position: absolute;
        top: 4px;
        left: 0; }
        @media only screen and (max-width: 767px) {
          body.index .sec-case .item__cat.location:before {
            width: 10px;
            height: 12px;
            background-size: cover;
            top: 2px; } }
      body.index .sec-case .item__cat.voice:before {
        content: "";
        width: 16px;
        height: 14px;
        background-image: url(/images/top/icon_voice.svg);
        background-repeat: no-repeat;
        background-position: center;
        position: absolute;
        top: 4px;
        left: 0; }
        @media only screen and (max-width: 767px) {
          body.index .sec-case .item__cat.voice:before {
            width: 12px;
            height: 12px;
            background-size: cover;
            top: 2px; } }
  body.index .sec-case .btn-case {
    margin: 42px auto 0; }
    @media only screen and (max-width: 767px) {
      body.index .sec-case .btn-case {
        margin-top: 30px; } }

body.index .sec-brands {
  padding: 72px 0 180px;
  position: relative;
  overflow: hidden;
  z-index: 1; }

@media only screen and (min-width: 768px) and (max-width: 1130px) {
  body.index .sec-brands {
    padding-left: 40px;
    padding-right: 40px; } }
  @media only screen and (max-width: 767px) {
    body.index .sec-brands {
      padding: 44px 0 94px; } }
  body.index .sec-brands:before {
    content: "";
    background-color: #fff;
    border-radius: 40px;
    position: absolute;
    top: 0;
    bottom: 80px;
    left: 40px;
    right: 40px;
    z-index: -1;
    pointer-events: none; }
    @media only screen and (max-width: 767px) {
      body.index .sec-brands:before {
        border-radius: 20px;
        bottom: 64px;
        left: 25px;
        right: 25px; } }
  @media only screen and (min-width: 768px) {
    body.index .sec-brands .inner-brands {
      padding-left: 120px; } }
  @media only screen and (min-width: 768px) and (max-width: 1130px) {
    body.index .sec-brands .inner-brands {
      padding-left: 40px; } }
  @media only screen and (min-width: 768px) {
    body.index .sec-brands .c-ttl01 {
      justify-content: flex-start; } }
  body.index .sec-brands .lst-brand {
    margin: 42px auto 0; }
    @media only screen and (min-width: 768px) {
      body.index .sec-brands .lst-brand {
        max-width: 1108px; } }
    @media only screen and (max-width: 767px) {
      body.index .sec-brands .lst-brand {
        margin-top: 34px;
        width: 289px; } }
    body.index .sec-brands .lst-brand .slick-list {
      overflow: visible; }
    body.index .sec-brands .lst-brand .slide-brand {
      padding: 0 15px; }
      @media only screen and (max-width: 767px) {
        body.index .sec-brands .lst-brand .slide-brand {
          padding: 0 12px; } }
  body.index .sec-brands .item {
    display: block;
    position: relative;
    border-radius: 10px;
    overflow: hidden;
    -webkit-mask-image: -webkit-radial-gradient(white, black); }
    body.index .sec-brands .item__img {
      height: 380px;
      position: relative; }
      @media only screen and (max-width: 767px) {
        body.index .sec-brands .item__img {
          height: 296px; } }
    body.index .sec-brands .item__ttl {
      position: absolute;
      bottom: 23px;
      left: 24px;
      z-index: 2;
      color: #fff;
      font-family: "Raleway", sans-serif;
      padding-left: 20px;
      padding-right: 62px; }
      @media only screen and (max-width: 767px) {
        body.index .sec-brands .item__ttl {
          bottom: 25px;
          padding-left: 15px;
          padding-right: 53px; } }
      body.index .sec-brands .item__ttl:before {
        content: "";
        width: 1px;
        background-color: #fff;
        position: absolute;
        top: 4px;
        bottom: 2px;
        left: 0; }
        @media only screen and (max-width: 767px) {
          body.index .sec-brands .item__ttl:before {
            top: 2px;
            bottom: 0; } }
      body.index .sec-brands .item__ttl .ttl-en {
        display: block;
        font-size: 28px;
        font-size: 2.8rem;
        line-height: 1.5;
        letter-spacing: .06em;
        font-weight: bold; }
        @media only screen and (max-width: 767px) {
          body.index .sec-brands .item__ttl .ttl-en {
            font-size: 20px;
            font-size: 2rem; } }
      body.index .sec-brands .item__ttl .ttl-ja {
        margin-top: 1px;
        display: block;
        font-size: 15px;
        font-size: 1.5rem;
        line-height: 1.5;
        letter-spacing: .1em;
        font-weight: bold; }
        @media only screen and (max-width: 767px) {
          body.index .sec-brands .item__ttl .ttl-ja {
            font-size: 12px;
            font-size: 1.2rem; } }
  @media only screen and (min-width: 768px) {
    body.index .sec-brands .btn-brand {
      position: absolute;
      top: 84px;
      right: 118px; } }
  @media only screen and (min-width: 768px) and (max-width: 1130px) {
    body.index .sec-brands .btn-brand {
      right: 80px; } }
  @media only screen and (max-width: 767px) {
    body.index .sec-brands .btn-brand {
      margin: 34px auto 0;
      max-width: 265px;
      height: 50px; }
      body.index .sec-brands .btn-brand .c-btn01__arrow {
        width: 18px;
        height: 18px;
        right: 16px;
        margin-top: -9px; } }

body.index .sec-about {
  position: relative;
  z-index: 1;
  padding: 103px 0 120px;
  overflow: hidden; }
  @media only screen and (max-width: 767px) {
    body.index .sec-about {
      padding: 0 0 80px; } }
  body.index .sec-about:before {
    content: "";
    background-color: #42bbc6;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 208px;
    z-index: -1;
    pointer-events: none; }
    @media only screen and (max-width: 767px) {
      body.index .sec-about:before {
        bottom: 145px; } }
  @media only screen and (min-width: 768px) {
    body.index .sec-about .hd-box {
      max-width: 910px;
      margin: 0 auto;
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      padding-right: 20px; } }
  body.index .sec-about .hd-box__ttl {
    color: #fff; }
    @media only screen and (min-width: 768px) {
      body.index .sec-about .hd-box__ttl {
        width: 280px; } }
    @media only screen and (max-width: 767px) {
      body.index .sec-about .hd-box__ttl .ttl {
        margin: -9px 0 0 -31px; } }
    body.index .sec-about .hd-box__ttl .ttl__en {
      display: block;
      font-size: 70px;
      font-size: 7rem;
      line-height: 1.114;
      letter-spacing: .1em;
      font-weight: bold;
      font-family: "Raleway", sans-serif; }
      @media only screen and (max-width: 767px) {
        body.index .sec-about .hd-box__ttl .ttl__en {
          font-size: 64px;
          font-size: 6.4rem;
          line-height: 1;
          position: relative; } }
    body.index .sec-about .hd-box__ttl .ttl__ja {
      margin-top: 14px;
      display: block;
      font-size: 20px;
      font-size: 2rem;
      line-height: 1.5;
      letter-spacing: .12em;
      font-weight: bold;
      font-family: "Noto Sans JP", sans-serif;
      padding-left: 4px; }
      @media only screen and (max-width: 767px) {
        body.index .sec-about .hd-box__ttl .ttl__ja {
          margin: 14px 0 0 30px;
          font-size: 18px;
          font-size: 1.8rem;
          position: relative;
          padding-left: 0; }
          body.index .sec-about .hd-box__ttl .ttl__ja:before {
            content: "";
            height: 2px;
            background-color: #fff;
            position: absolute;
            top: 12px;
            left: 167px;
            right: 0; } }
  body.index .sec-about .hd-box__info {
    color: #fff; }
    @media only screen and (min-width: 768px) {
      body.index .sec-about .hd-box__info {
        max-width: 520px;
        width: calc(100% - 280px);
        padding-top: 6px; } }
    @media only screen and (max-width: 767px) {
      body.index .sec-about .hd-box__info {
        margin-top: 37px; } }
    body.index .sec-about .hd-box__info .txt {
      font-size: 16px;
      font-size: 1.6rem;
      line-height: 2.0625;
      letter-spacing: .08em;
      font-family: "Noto Sans JP", sans-serif; }
      @media only screen and (min-width: 768px) {
        body.index .sec-about .hd-box__info .txt {
          font-weight: bold;
          padding-bottom: 24px;
          border-bottom: 2px solid #fff; } }
      @media only screen and (max-width: 767px) {
        body.index .sec-about .hd-box__info .txt {
          font-size: 15px;
          font-size: 1.5rem;
          line-height: 1.86;
          letter-spacing: .05em;
          font-weight: 500; } }
      body.index .sec-about .hd-box__info .txt p + p {
        margin-top: 13px; }
        @media only screen and (max-width: 767px) {
          body.index .sec-about .hd-box__info .txt p + p {
            margin-top: 18px; } }
    @media only screen and (min-width: 768px) {
      body.index .sec-about .hd-box__info .btn-about {
        margin-top: 21px;
        margin-left: auto; } }
    @media only screen and (max-width: 767px) {
      body.index .sec-about .hd-box__info .btn-about {
        margin-top: 20px; } }
  @media only screen and (min-width: 768px) {
    body.index .sec-about .about-box {
      margin-top: 47px;
      display: flex;
      justify-content: center;
      align-items: flex-start; } }
  @media only screen and (max-width: 767px) {
    body.index .sec-about .about-box {
      margin-top: 28px; } }
  body.index .sec-about .about-box .item {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    z-index: 1;
    border-radius: 10px;
    overflow: hidden; }
    @media only screen and (min-width: 768px) {
      body.index .sec-about .about-box .item {
        width: calc(50% - 5px);
        height: 180px; }
        body.index .sec-about .about-box .item:nth-child(2n) {
          margin-left: 10px; } }
    @media only screen and (max-width: 767px) {
      body.index .sec-about .about-box .item {
        height: 140px; }
        body.index .sec-about .about-box .item:not(:first-child) {
          margin-top: 8px; } }
    body.index .sec-about .about-box .item__img {
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      z-index: -1;
      pointer-events: none; }
    body.index .sec-about .about-box .item__ttl {
      width: 100%;
      color: #fff;
      position: relative; }
      @media only screen and (min-width: 768px) {
        body.index .sec-about .about-box .item__ttl {
          margin-top: 4px;
          padding-bottom: 51px;
          text-align: center; } }
      @media only screen and (max-width: 767px) {
        body.index .sec-about .about-box .item__ttl {
          padding-left: 25px; } }
      body.index .sec-about .about-box .item__ttl .ttl-en {
        font-size: 16px;
        font-size: 1.6rem;
        line-height: 1.45;
        letter-spacing: .1em;
        font-weight: bold;
        font-family: "Raleway", sans-serif; }
      body.index .sec-about .about-box .item__ttl .ttl-ja {
        margin-top: 1px;
        font-size: 28px;
        font-size: 2.8rem;
        line-height: 1.5;
        letter-spacing: 0;
        font-weight: bold;
        font-family: "Noto Sans JP", sans-serif; }
        @media only screen and (max-width: 767px) {
          body.index .sec-about .about-box .item__ttl .ttl-ja {
            font-size: 24px;
            font-size: 2.4rem;
            letter-spacing: .12em; } }
      body.index .sec-about .about-box .item__ttl .arrow {
        width: 36px;
        height: 36px;
        border-radius: 100%;
        position: absolute;
        background-color: #fff;
        transition: .3s background-color;
        z-index: 1; }
        @media only screen and (min-width: 768px) {
          body.index .sec-about .about-box .item__ttl .arrow {
            bottom: 0;
            left: 0;
            right: 0;
            margin: 0 auto; } }
        @media only screen and (max-width: 767px) {
          body.index .sec-about .about-box .item__ttl .arrow {
            top: 0;
            bottom: 0;
            right: 25px;
            margin: auto 0; } }
        body.index .sec-about .about-box .item__ttl .arrow:before {
          content: "";
          width: 0;
          height: 0;
          border-top: 6px solid transparent;
          border-bottom: 6px solid transparent;
          border-left: 9px solid #42bcc6;
          position: absolute;
          top: 0;
          bottom: 0;
          left: 2px;
          right: 0;
          margin: auto;
          transition: .3s border-color; }
          @media only screen and (max-width: 767px) {
            body.index .sec-about .about-box .item__ttl .arrow:before {
              border-top-width: 5px;
              border-bottom-width: 5px;
              border-left-width: 8px; } }
      @media only screen and (min-width: 768px) {
        body.index .sec-about .about-box .item__ttl:hover .arrow {
          background-color: #42bcc6; }
          body.index .sec-about .about-box .item__ttl:hover .arrow:before {
            border-left-color: #fff; } }

body.index .sec-page {
  position: relative;
  background-image: url(/images/top/page_bg.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  overflow: hidden;
  z-index: 1; }
  @media only screen and (min-width: 768px) {
    body.index .sec-page {
      display: flex; } }
  @media only screen and (max-width: 767px) {
    body.index .sec-page {
      background-image: url(/images/top/page_bg_sp.jpg);
      padding: 17px 25px 16px; } }
  body.index .sec-page .item {
    position: relative; }
    @media only screen and (min-width: 768px) {
      body.index .sec-page .item {
        width: 50%;
        height: 280px;
        display: flex;
        align-items: center; }
        body.index .sec-page .item:after {
          content: "";
          width: 200%;
          height: 100%;
          background-repeat: no-repeat;
          background-position: center;
          background-size: cover;
          position: absolute;
          top: 0;
          z-index: -1;
          opacity: 0;
          transition: .3s opacity; }
        body.index .sec-page .item:hover:after {
          opacity: 1; } }
    @media only screen and (max-width: 767px) {
      body.index .sec-page .item {
        display: block;
        padding: 29px 17px 31px 15px; } }
    body.index .sec-page .item__ttl {
      width: 100%;
      position: relative; }
      @media only screen and (min-width: 768px) {
        body.index .sec-page .item__ttl {
          display: flex;
          margin-top: -5px;
          max-width: 490px; } }
      body.index .sec-page .item__ttl .c-ttl01 {
        position: relative;
        padding-right: 90px; }
        @media only screen and (max-width: 767px) {
          body.index .sec-page .item__ttl .c-ttl01 {
            padding-right: 40px; } }
        @media only screen and (max-width: 767px) {
          body.index .sec-page .item__ttl .c-ttl01__en {
            font-size: 34px;
            font-size: 3.4rem; } }
        body.index .sec-page .item__ttl .c-ttl01__ja {
          margin-top: 2px; }
          @media only screen and (max-width: 767px) {
            body.index .sec-page .item__ttl .c-ttl01__ja {
              margin-top: -3px; } }
      body.index .sec-page .item__ttl .blank {
        position: relative; }
        body.index .sec-page .item__ttl .blank:before {
          content: "";
          width: 10px;
          height: 8px;
          background-image: url(/images/top/icon_blank.svg);
          background-repeat: no-repeat;
          background-position: center;
          position: absolute;
          top: 11px;
          right: -21px; }
          @media only screen and (max-width: 767px) {
            body.index .sec-page .item__ttl .blank:before {
              top: 8px;
              right: -22px; } }
      body.index .sec-page .item__ttl .arrow {
        width: 36px;
        height: 36px;
        border-radius: 100%;
        position: absolute;
        top: 20px;
        right: 0;
        background-color: #42bcc6;
        z-index: 1; }
        @media only screen and (max-width: 767px) {
          body.index .sec-page .item__ttl .arrow {
            width: 34px;
            height: 34px;
            top: 10px; } }
        body.index .sec-page .item__ttl .arrow:before {
          content: "";
          width: 0;
          height: 0;
          border-top: 6px solid transparent;
          border-bottom: 6px solid transparent;
          border-left: 9px solid #fff;
          position: absolute;
          top: 0;
          bottom: 0;
          left: 2px;
          right: 0;
          margin: auto; }
          @media only screen and (max-width: 767px) {
            body.index .sec-page .item__ttl .arrow:before {
              border-top-width: 5px;
              border-bottom-width: 5px;
              border-left-width: 8px; } }
    @media only screen and (min-width: 768px) {
      body.index .sec-page .item:nth-child(1) {
        justify-content: flex-end;
        padding-left: 20px; }
        body.index .sec-page .item:nth-child(1):after {
          left: 0;
          background-image: url(/images/top/page_bg_item01.jpg); }
      body.index .sec-page .item:nth-child(2) {
        padding-right: 20px; }
        body.index .sec-page .item:nth-child(2):before {
          content: "";
          width: 1px;
          height: 180px;
          background-color: #42bcc6;
          position: absolute;
          left: 0;
          top: 50%;
          transform: translateY(-50%);
          pointer-events: none; }
        body.index .sec-page .item:nth-child(2):after {
          right: 0;
          background-image: url(/images/top/page_bg_item02.jpg); }
        body.index .sec-page .item:nth-child(2) .item__ttl {
          max-width: 500px;
          justify-content: flex-end; } }
    @media only screen and (max-width: 767px) {
      body.index .sec-page .item:nth-child(2):before {
        content: "";
        width: 100%;
        height: 1px;
        background-color: #42bcc6;
        position: absolute;
        top: 0;
        left: 0;
        pointer-events: none; } }

body.investment {
  overflow-x: hidden;
  overflow-y: auto; }
  @media only screen and (min-width: 768px) {
    body.investment .btn-03--blank span:after {
      right: 30px; } }
  @media only screen and (min-width: 768px) {
    body.investment .tith4 {
      padding-bottom: 21px; } }
  body.investment .c-layout1 {
    align-items: center; }
    @media only screen and (min-width: 768px) {
      body.investment .c-layout1 .c-layout1-cnt {
        margin-top: -3px; } }
    @media only screen and (min-width: 768px) {
      body.investment .c-layout1 .c-layout1-img {
        margin-top: -60px; } }
    body.investment .c-layout1--right {
      margin-top: 112px; }
      @media only screen and (max-width: 767px) {
        body.investment .c-layout1--right {
          margin-top: 77px; } }
      @media only screen and (min-width: 768px) {
        body.investment .c-layout1--right .c-layout1-img {
          margin-top: -10px; } }
  body.investment .c-layout2 {
    margin-top: 67px; }
    @media only screen and (max-width: 767px) {
      body.investment .c-layout2 {
        margin-top: 45px; } }
    body.investment .c-layout2--estate .c-layout2-img {
      margin-top: 41px; }
      @media only screen and (max-width: 767px) {
        body.investment .c-layout2--estate .c-layout2-img {
          margin-top: 23px; } }
      body.investment .c-layout2--estate .c-layout2-img img {
        width: 100%; }
    body.investment .c-layout2--advantages {
      margin-top: 87px; }
      @media only screen and (max-width: 767px) {
        body.investment .c-layout2--advantages {
          margin-top: 52px; } }
      body.investment .c-layout2--advantages .advantage-list {
        display: flex;
        flex-wrap: wrap;
        margin-left: -30px;
        margin-top: 17px; }
        @media only screen and (max-width: 767px) {
          body.investment .c-layout2--advantages .advantage-list {
            margin-left: 0;
            display: block; } }
      body.investment .c-layout2--advantages .advantage-item {
        display: flex;
        align-items: center;
        border-bottom: 1px dashed #C8D6DE;
        width: calc(50% - 30px);
        margin-left: 30px;
        margin-top: 16px;
        padding-bottom: 6px; }
        @media only screen and (min-width: 768px) {
          body.investment .c-layout2--advantages .advantage-item:nth-child(2) {
            order: 3; }
          body.investment .c-layout2--advantages .advantage-item:nth-child(3) {
            order: 2;
            padding-left: 5px; }
          body.investment .c-layout2--advantages .advantage-item:nth-child(4) {
            padding-left: 5px;
            order: 4; } }
        @media only screen and (max-width: 767px) {
          body.investment .c-layout2--advantages .advantage-item {
            width: 100%;
            margin-top: 0;
            margin-left: 0;
            padding: 20px 0; } }
        body.investment .c-layout2--advantages .advantage-item__number {
          font-size: 52px;
          font-size: 5.2rem;
          line-height: 80px;
          letter-spacing: .06em;
          margin-top: -2px;
          font-weight: 900;
          font-family: "Lato", sans-serif;
          color: white;
          text-shadow: 1px 0 #42BCC6, -1px 0 #42BCC6, 0 1px #42BCC6, 0 -1px #42BCC6, 1px 1px #42BCC6, -1px -1px #42BCC6, 1px -1px #42BCC6, -1px 1px #42BCC6; }
          @media only screen and (max-width: 767px) {
            body.investment .c-layout2--advantages .advantage-item__number {
              font-size: 40px;
              font-size: 4rem;
              line-height: 1;
              margin-top: -6px; } }
        body.investment .c-layout2--advantages .advantage-item__text {
          font-size: 18px;
          font-size: 1.8rem;
          line-height: 26px;
          font-weight: 500;
          font-family: "Noto Sans JP", sans-serif;
          padding-left: 16px;
          margin-top: -6px; }
          @media only screen and (max-width: 767px) {
            body.investment .c-layout2--advantages .advantage-item__text {
              font-size: 15px;
              font-size: 1.5rem;
              line-height: 22px;
              padding-left: 14px;
              margin-top: -5px; } }
    body.investment .c-layout2--contact {
      margin-top: 83px; }
      @media only screen and (max-width: 767px) {
        body.investment .c-layout2--contact {
          margin-top: 49px; } }
      body.investment .c-layout2--contact .contact-list {
        display: flex;
        margin-left: -36px;
        margin-top: 40px; }
        @media only screen and (max-width: 767px) {
          body.investment .c-layout2--contact .contact-list {
            display: block;
            margin-left: 0;
            margin-top: 15px; } }
      body.investment .c-layout2--contact .contact-item {
        font-family: "Noto Sans JP", sans-serif;
        font-weight: 500;
        width: calc(25% - 36px);
        margin-left: 36px; }
        @media only screen and (max-width: 767px) {
          body.investment .c-layout2--contact .contact-item {
            display: flex;
            align-items: center;
            width: 100%;
            margin-left: 0;
            border-bottom: 1px dotted #C8D6DE;
            min-height: 102px; } }
        body.investment .c-layout2--contact .contact-item__top {
          display: flex;
          align-items: center; }
          @media only screen and (min-width: 768px) {
            body.investment .c-layout2--contact .contact-item__top {
              border-bottom: 1px dotted #C8D6DE;
              padding-bottom: 18px; } }
          body.investment .c-layout2--contact .contact-item__top .img {
            width: 80px; }
            @media only screen and (max-width: 767px) {
              body.investment .c-layout2--contact .contact-item__top .img {
                width: 50px; } }
          body.investment .c-layout2--contact .contact-item__top .ttl {
            color: #42BCC6;
            font-size: 20px;
            font-size: 2rem;
            line-height: 26px;
            flex: 1;
            margin-top: -4px;
            padding-left: 24px; }
            @media only screen and (max-width: 767px) {
              body.investment .c-layout2--contact .contact-item__top .ttl {
                margin-top: -1px;
                width: 105px;
                padding-left: 15px;
                font-size: 18px;
                font-size: 1.8rem; } }
        body.investment .c-layout2--contact .contact-item__text {
          font-size: 15px;
          font-size: 1.5rem;
          line-height: 26px;
          margin-top: 18px; }
          @media only screen and (max-width: 767px) {
            body.investment .c-layout2--contact .contact-item__text {
              flex: 1;
              line-height: 24px;
              margin-top: 0; } }
      body.investment .c-layout2--contact .c-layout2-listbtns {
        margin-top: 48px; }
        @media only screen and (max-width: 767px) {
          body.investment .c-layout2--contact .c-layout2-listbtns {
            margin-top: 28px; } }
    body.investment .c-layout2--those {
      margin-top: 77px; }
      @media only screen and (max-width: 767px) {
        body.investment .c-layout2--those {
          margin-top: 51px; } }
    body.investment .c-layout2--track {
      margin-top: 100px; }
      @media only screen and (max-width: 767px) {
        body.investment .c-layout2--track {
          margin-top: 45px; } }
      body.investment .c-layout2--track .track-list {
        display: flex;
        margin-top: 45px; }

@media only screen and (min-width: 768px) and (max-width: 1100px) {
  body.investment .c-layout2--track .track-list {
    justify-content: center; } }
        @media only screen and (max-width: 767px) {
          body.investment .c-layout2--track .track-list {
            display: block;
            margin-top: 34px; } }
      body.investment .c-layout2--track .track-item {
        margin-left: 46px; }

@media only screen and (min-width: 768px) and (max-width: 1100px) {
  body.investment .c-layout2--track .track-item {
    margin-left: -3.90625vw; } }
        @media only screen and (max-width: 767px) {
          body.investment .c-layout2--track .track-item {
            margin: 0 auto;
            margin-top: 26px;
            width: 294px; } }
        body.investment .c-layout2--track .track-item__ttl {
          font-family: "Noto Sans JP", sans-serif;
          font-size: 22px;
          font-size: 2.2rem;
          margin-bottom: 2px;
          text-align: center; }
          @media only screen and (max-width: 1100px) {
            body.investment .c-layout2--track .track-item__ttl {
              font-size: 1.71875vw; } }
          @media only screen and (max-width: 767px) {
            body.investment .c-layout2--track .track-item__ttl {
              margin-bottom: -10px;
              margin-left: -10px;
              font-size: 18px;
              font-size: 1.8rem; } }
        body.investment .c-layout2--track .track-item__content {
          color: #42BCC6;
          font-size: 20px;
          font-size: 2rem;
          line-height: 52px;
          font-weight: bold;
          display: flex;
          align-items: center;
          position: relative; }
          @media only screen and (max-width: 767px) {
            body.investment .c-layout2--track .track-item__content {
              justify-content: center; } }
          body.investment .c-layout2--track .track-item__content:before, body.investment .c-layout2--track .track-item__content:after {
            content: '';
            background-image: url(../images/investment/ico-track.svg);
            background-size: cover;
            width: 22px;
            height: 54px;
            position: relative;
            bottom: -6px; }
            @media only screen and (max-width: 767px) {
              body.investment .c-layout2--track .track-item__content:before, body.investment .c-layout2--track .track-item__content:after {
                bottom: 0; } }
          body.investment .c-layout2--track .track-item__content:before {
            transform: scaleX(-1);
            left: -28px; }
            @media only screen and (max-width: 767px) {
              body.investment .c-layout2--track .track-item__content:before {
                left: -40px; } }
          body.investment .c-layout2--track .track-item__content:after {
            right: -25px; }
            @media only screen and (max-width: 767px) {
              body.investment .c-layout2--track .track-item__content:after {
                right: -28px; } }
          body.investment .c-layout2--track .track-item__content span {
            font-size: 54px;
            font-size: 5.4rem;
            line-height: 80px;
            font-weight: 900;
            font-family: "Lato", sans-serif;
            position: relative;
            top: 4px; }

@media only screen and (min-width: 768px) and (max-width: 1100px) {
  body.investment .c-layout2--track .track-item__content span {
    font-size: 3.90625vw; } }
            @media only screen and (max-width: 767px) {
              body.investment .c-layout2--track .track-item__content span {
                font-size: 48px;
                font-size: 4.8rem; } }
          body.investment .c-layout2--track .track-item__content .fz1 {
            font-size: 32px;
            font-size: 3.2rem; }

@media only screen and (min-width: 768px) and (max-width: 1100px) {
  body.investment .c-layout2--track .track-item__content .fz1 {
    font-size: 2.34375vw; } }
            body.investment .c-layout2--track .track-item__content .fz1.ml {
              margin-left: 11px;
              position: relative; }

@media only screen and (min-width: 768px) and (max-width: 1100px) {
  body.investment .c-layout2--track .track-item__content .fz1.ml {
    margin-left: 0.85938vw; } }
              body.investment .c-layout2--track .track-item__content .fz1.ml:after {
                content: '※';
                position: absolute;
                right: -18px;
                top: -30px;
                font-family: "Noto Sans JP", sans-serif;
                font-size: 12px;
                font-size: 1.2rem;
                font-weight: 400;
                color: #101010; }
        body.investment .c-layout2--track .track-item__note {
          font-family: "Noto Sans JP", sans-serif;
          font-size: 12px;
          font-size: 1.2rem;
          margin-left: -6px;
          margin-top: -1px; }

@media only screen and (min-width: 768px) and (max-width: 1100px) {
  body.investment .c-layout2--track .track-item__note {
    font-size: 0.9375vw;
    margin-left: 2px; } }
          @media only screen and (max-width: 767px) {
            body.investment .c-layout2--track .track-item__note {
              text-align: center;
              margin-left: -16px;
              margin-top: -4px; } }
        @media only screen and (max-width: 767px) {
          body.investment .c-layout2--track .track-item:first-child {
            margin-top: 0; } }
        body.investment .c-layout2--track .track-item:first-child span {
          margin-left: 6px;
          margin-right: 6px; }
        body.investment .c-layout2--track .track-item:first-child small {
          position: relative;
          top: -2px; }
        @media only screen and (max-width: 767px) {
          body.investment .c-layout2--track .track-item:first-child .track-item__content p {
            margin-left: -10px; } }
        @media only screen and (min-width: 768px) {
          body.investment .c-layout2--track .track-item:nth-child(2) {
            margin-left: 120px; } }
  @media only screen and (min-width: 768px) and (max-width: 1100px) {
    body.investment .c-layout2--track .track-item:nth-child(2) {
      margin-left: 9.375vw; } }
        body.investment .c-layout2--track .track-item:nth-child(2) .track-item__ttl {
          margin-left: -12px; }
          @media only screen and (max-width: 767px) {
            body.investment .c-layout2--track .track-item:nth-child(2) .track-item__ttl {
              margin-left: -9px; } }
        body.investment .c-layout2--track .track-item:nth-child(2) .track-item__content:after, body.investment .c-layout2--track .track-item:nth-child(2) .track-item__content:before {
          bottom: -1px; }
          @media only screen and (max-width: 767px) {
            body.investment .c-layout2--track .track-item:nth-child(2) .track-item__content:after, body.investment .c-layout2--track .track-item:nth-child(2) .track-item__content:before {
              bottom: 3px; } }
        body.investment .c-layout2--track .track-item:nth-child(2) .track-item__content:after {
          right: -50px; }
          @media only screen and (max-width: 767px) {
            body.investment .c-layout2--track .track-item:nth-child(2) .track-item__content:after {
              right: -53px; } }
        body.investment .c-layout2--track .track-item:nth-child(2) .track-item__content:before {
          left: -45px; }
          @media only screen and (max-width: 767px) {
            body.investment .c-layout2--track .track-item:nth-child(2) .track-item__content:before {
              left: -62px; } }
        @media only screen and (max-width: 767px) {
          body.investment .c-layout2--track .track-item:nth-child(2) .track-item__content p {
            margin-left: -13px; } }
        @media only screen and (min-width: 768px) {
          body.investment .c-layout2--track .track-item:nth-child(3) {
            margin-left: 101px; } }
  @media only screen and (min-width: 768px) and (max-width: 1100px) {
    body.investment .c-layout2--track .track-item:nth-child(3) {
      margin-left: 9.375vw; } }
        @media only screen and (max-width: 767px) {
          body.investment .c-layout2--track .track-item:nth-child(3) {
            margin-top: 36px; } }
        body.investment .c-layout2--track .track-item:nth-child(3) .track-item__content:before {
          left: -19px; }
          @media only screen and (max-width: 767px) {
            body.investment .c-layout2--track .track-item:nth-child(3) .track-item__content:before {
              left: -34px; } }
        @media only screen and (max-width: 767px) {
          body.investment .c-layout2--track .track-item:nth-child(3) .track-item__content:after {
            right: -34px; } }
        body.investment .c-layout2--track .track-item:nth-child(3) .track-item__content small {
          left: 6px;
          top: 4px;
          position: relative; }
        @media only screen and (max-width: 767px) {
          body.investment .c-layout2--track .track-item:nth-child(3) .track-item__content p {
            margin-left: -5px; } }
    body.investment .c-layout2--profitable {
      margin-top: 88px; }
      @media only screen and (max-width: 767px) {
        body.investment .c-layout2--profitable {
          margin-top: 44px; } }
      body.investment .c-layout2--profitable .profitable-list {
        margin-top: 50px; }
        @media only screen and (max-width: 767px) {
          body.investment .c-layout2--profitable .profitable-list {
            margin-top: 40px; } }
      body.investment .c-layout2--profitable .profitable-item {
        margin-top: 40px; }
        body.investment .c-layout2--profitable .profitable-item:first-child {
          margin-top: 0; }
        body.investment .c-layout2--profitable .profitable-item .img {
          margin-top: 32px; }
          body.investment .c-layout2--profitable .profitable-item .img img {
            width: 100%; }
          @media only screen and (max-width: 767px) {
            body.investment .c-layout2--profitable .profitable-item .img {
              margin-top: 25px; } }
    body.investment .c-layout2--support {
      margin-top: 79px; }
      @media only screen and (max-width: 767px) {
        body.investment .c-layout2--support {
          margin-top: 44px; } }
      @media only screen and (max-width: 767px) {
        body.investment .c-layout2--support .layout2-box1 {
          margin-top: 40px; } }
      body.investment .c-layout2--support .layout2-box1 + .layout2-box1 {
        margin-top: 50px; }
        @media only screen and (max-width: 767px) {
          body.investment .c-layout2--support .layout2-box1 + .layout2-box1 {
            margin-top: 44px; } }
      body.investment .c-layout2--support .layout2-box1 .layout2-box1-number span {
        margin-left: 8px; }
        @media only screen and (max-width: 767px) {
          body.investment .c-layout2--support .layout2-box1 .layout2-box1-number span {
            margin-left: 5px; } }
      body.investment .c-layout2--support .wide-support {
        border-radius: 5px;
        background-color: #F8F8F8;
        display: flex;
        align-items: center;
        margin-top: 44px;
        min-height: 200px;
        padding: 20px; }
        @media only screen and (max-width: 767px) {
          body.investment .c-layout2--support .wide-support {
            margin-top: 22px;
            display: block;
            padding: 30px; } }
        body.investment .c-layout2--support .wide-support__title {
          position: relative;
          width: 402px;
          padding-left: 60px; }
          @media only screen and (max-width: 767px) {
            body.investment .c-layout2--support .wide-support__title {
              padding-left: 0;
              width: 100%; } }
          body.investment .c-layout2--support .wide-support__title:after {
            content: '';
            width: 1px;
            height: 120px;
            background-color: #C8D6DE;
            position: absolute;
            right: 0;
            top: -30px; }
            @media only screen and (max-width: 767px) {
              body.investment .c-layout2--support .wide-support__title:after {
                height: 1px;
                width: 100%;
                top: auto;
                bottom: -21px; } }
          body.investment .c-layout2--support .wide-support__title h5 {
            font-family: "Noto Sans JP", sans-serif;
            font-size: 20px;
            font-size: 2rem;
            line-height: 30px;
            font-weight: 500; }
            @media only screen and (max-width: 767px) {
              body.investment .c-layout2--support .wide-support__title h5 {
                font-size: 18px;
                font-size: 1.8rem;
                line-height: 26px; } }
          body.investment .c-layout2--support .wide-support__title span {
            color: #42BCC6;
            font-family: "Raleway", sans-serif;
            font-size: 14px;
            font-size: 1.4rem;
            letter-spacing: 0.1em;
            line-height: 20px;
            font-weight: 700;
            margin-top: 13px;
            display: block; }
            @media only screen and (max-width: 767px) {
              body.investment .c-layout2--support .wide-support__title span {
                margin-top: 6px;
                font-size: 12px;
                font-size: 1.2rem; } }
        body.investment .c-layout2--support .wide-support__list {
          flex: 1;
          padding-left: 60px; }
          @media only screen and (max-width: 767px) {
            body.investment .c-layout2--support .wide-support__list {
              padding-left: 0;
              margin-top: 47px; } }
          body.investment .c-layout2--support .wide-support__list li {
            font-size: 18px;
            font-size: 1.8rem;
            line-height: 32px;
            display: flex;
            align-items: flex-start; }
            @media only screen and (max-width: 767px) {
              body.investment .c-layout2--support .wide-support__list li {
                line-height: 26px; } }
            body.investment .c-layout2--support .wide-support__list li + li {
              margin-top: 8px; }
              @media only screen and (max-width: 767px) {
                body.investment .c-layout2--support .wide-support__list li + li {
                  margin-top: 12px; } }
            body.investment .c-layout2--support .wide-support__list li small {
              font-size: 12px;
              font-size: 1.2rem;
              margin-top: 2px;
              line-height: 1; }
              @media only screen and (max-width: 767px) {
                body.investment .c-layout2--support .wide-support__list li small {
                  position: relative;
                  top: -5px;
                  left: 4px; } }
            body.investment .c-layout2--support .wide-support__list li:before {
              content: '';
              width: 20px;
              height: 20px;
              background-image: url(../images/investment/ico-check.svg);
              background-size: 100% 100%;
              flex-shrink: 0;
              margin: 7px 9px 0 0; }
              @media only screen and (max-width: 767px) {
                body.investment .c-layout2--support .wide-support__list li:before {
                  margin-top: 4px; } }
      body.investment .c-layout2--support .text-note {
        font-family: "Noto Sans JP", sans-serif;
        margin-top: 15px; }
        @media only screen and (max-width: 767px) {
          body.investment .c-layout2--support .text-note {
            margin-top: 23px; } }
        body.investment .c-layout2--support .text-note li {
          display: flex;
          align-items: flex-start;
          font-size: 12px;
          font-size: 1.2rem;
          line-height: 16px;
          font-weight: 400; }
          body.investment .c-layout2--support .text-note li + li {
            margin-top: 6px; }
          body.investment .c-layout2--support .text-note li:before {
            content: '※';
            font-family: "Noto Sans JP", sans-serif;
            margin-right: 2px; }
  body.investment .c-flow {
    padding-bottom: 6px; }
    @media only screen and (max-width: 767px) {
      body.investment .c-flow {
        padding-bottom: 0; } }
    @media only screen and (min-width: 768px) {
      body.investment .c-flow .c-flow-title {
        margin-left: -20px; } }
  @media only screen and (min-width: 768px) and (max-width: 1106px) {
    body.investment .c-flow .c-flow-title {
      margin-left: 0; } }
    body.investment .c-flow .flow-ico {
      position: relative;
      z-index: 1; }
    body.investment .c-flow .flow {
      position: relative; }
  body.investment .c-case {
    padding: 100px 0 110px; }
    @media only screen and (max-width: 767px) {
      body.investment .c-case {
        padding: 54px 0 69px 0; } }
    body.investment .c-case .c-case-title {
      padding-right: 50px; }
      @media only screen and (max-width: 767px) {
        body.investment .c-case .c-case-title {
          padding-right: 0; } }
      body.investment .c-case .c-case-title__en {
        margin-right: 27px; }
        @media only screen and (max-width: 767px) {
          body.investment .c-case .c-case-title__en {
            margin-right: 0; } }
      @media only screen and (max-width: 767px) {
        body.investment .c-case .c-case-title__ja {
          display: block; } }
    body.investment .c-case .c-case-list {
      margin-top: 80px; }
      @media only screen and (max-width: 767px) {
        body.investment .c-case .c-case-list {
          margin-top: 40px; } }
    body.investment .c-case .c-case-item {
      display: flex;
      align-items: center;
      margin-top: 42px;
      padding-top: 50px;
      border-top: 1px solid #C8D6DE; }
      @media only screen and (max-width: 767px) {
        body.investment .c-case .c-case-item {
          display: block;
          margin-top: 35px;
          padding-top: 34px; } }
      body.investment .c-case .c-case-item:first-child {
        margin-top: 0;
        padding-top: 0;
        border-top: 0; }
      body.investment .c-case .c-case-item .top {
        display: flex;
        font-size: "Noto Sans JP", sans-serif;
        align-items: center; }
        body.investment .c-case .c-case-item .top__thumb {
          width: 74px;
          flex-shrink: 0; }
          @media only screen and (max-width: 767px) {
            body.investment .c-case .c-case-item .top__thumb {
              width: 88px; }
              body.investment .c-case .c-case-item .top__thumb img {
                width: 100%; } }
        body.investment .c-case .c-case-item .top__text {
          flex: 1;
          padding-left: 24px;
          margin-top: 4px;
          font-weight: 500;
          font-family: "Noto Sans JP", sans-serif; }
          @media only screen and (max-width: 767px) {
            body.investment .c-case .c-case-item .top__text {
              padding-right: 20px; } }
          body.investment .c-case .c-case-item .top__text span {
            color: #42BCC6;
            font-size: 15px;
            font-size: 1.5rem;
            letter-spacing: 0.05em; }
            @media only screen and (max-width: 767px) {
              body.investment .c-case .c-case-item .top__text span {
                font-size: 14px;
                font-size: 1.4rem; } }
          body.investment .c-case .c-case-item .top__text p {
            font-size: 20px;
            font-size: 2rem;
            line-height: 32px;
            margin-top: 10px; }
            @media only screen and (max-width: 767px) {
              body.investment .c-case .c-case-item .top__text p {
                font-size: 18px;
                font-size: 1.8rem;
                line-height: 26px; } }
      body.investment .c-case .c-case-item .bottom {
        margin-top: 24px; }
        body.investment .c-case .c-case-item .bottom .text {
          font-size: 15px;
          font-size: 1.5rem;
          line-height: 28px; }
      body.investment .c-case .c-case-item__left {
        flex: 1;
        padding-right: 60px; }
        @media only screen and (max-width: 767px) {
          body.investment .c-case .c-case-item__left {
            padding-right: 0; } }
      body.investment .c-case .c-case-item__right {
        width: 300px;
        overflow: hidden;
        border-radius: 5px;
        margin-top: 28px; }
        @media only screen and (max-width: 767px) {
          body.investment .c-case .c-case-item__right {
            width: 100%;
            margin-top: 23px; } }
        body.investment .c-case .c-case-item__right dl {
          font-family: "Noto Sans JP", sans-serif;
          border-bottom: 1px solid #C8D6DE;
          font-size: 16px;
          font-size: 1.6rem;
          letter-spacing: 0.05em;
          line-height: 30px;
          font-weight: 500;
          display: flex;
          min-height: 54px; }
          body.investment .c-case .c-case-item__right dl:last-child {
            border-bottom: 0; }
          body.investment .c-case .c-case-item__right dl dt {
            background-color: #42BCC6;
            width: 140px;
            color: #fff;
            text-align: center;
            padding: 10px; }
          body.investment .c-case .c-case-item__right dl dd {
            flex: 1;
            background-color: #fff;
            padding: 10px 30px;
            font-size: 15px;
            font-size: 1.5rem; }

body.manage {
  overflow-x: hidden;
  overflow-y: auto; }
  body.manage .btn-03--blank span:after {
    right: 30px;
    margin-top: -4px; }
    @media only screen and (max-width: 767px) {
      body.manage .btn-03--blank span:after {
        right: 25px;
        margin-top: -5px; } }
  @media only screen and (min-width: 768px) {
    body.manage .tith4 {
      padding-bottom: 21px; } }
  body.manage .c-layout1 {
    align-items: center; }
    @media only screen and (min-width: 768px) {
      body.manage .c-layout1 {
        flex-wrap: nowrap; } }
    @media only screen and (min-width: 768px) {
      body.manage .c-layout1 .c-layout1-cnt {
        margin-top: 2px; } }
    body.manage .c-layout1--right {
      margin-top: 112px; }
      @media only screen and (max-width: 767px) {
        body.manage .c-layout1--right {
          margin-top: 77px; } }
      @media only screen and (min-width: 768px) {
        body.manage .c-layout1--right .c-layout1-img {
          margin-top: -10px; } }
  body.manage .c-layout2 {
    margin-top: 127px; }
    @media only screen and (max-width: 767px) {
      body.manage .c-layout2 {
        margin-top: 45px; } }
    @media only screen and (max-width: 767px) {
      body.manage .c-layout2--contact {
        margin-top: 45px; } }
    body.manage .c-layout2--contact .contact-list {
      display: flex;
      margin-left: -36px;
      margin-top: 40px; }
      @media only screen and (max-width: 767px) {
        body.manage .c-layout2--contact .contact-list {
          display: block;
          margin-left: 0;
          margin-top: 30px; } }
    body.manage .c-layout2--contact .contact-item {
      font-family: "Noto Sans JP", sans-serif;
      font-weight: 500;
      width: calc(25% - 36px);
      margin-left: 36px;
      border-bottom: 1px dotted #c8d6de;
      padding-bottom: 18px; }
      @media only screen and (max-width: 767px) {
        body.manage .c-layout2--contact .contact-item {
          display: flex;
          align-items: center;
          width: 100%;
          margin-left: 0;
          margin-top: 13px;
          padding-bottom: 13px; } }
      body.manage .c-layout2--contact .contact-item__top {
        display: flex;
        align-items: center; }
        body.manage .c-layout2--contact .contact-item__top .img {
          width: 64px; }
          @media only screen and (max-width: 767px) {
            body.manage .c-layout2--contact .contact-item__top .img {
              width: 50px; } }
        body.manage .c-layout2--contact .contact-item__top .ttl {
          font-size: 16px;
          font-size: 1.6rem;
          line-height: 24px;
          font-weight: 500;
          flex: 1;
          margin-top: -4px;
          padding-left: 15px; }

@media only screen and (min-width: 768px) and (max-width: 1106px) {
  body.manage .c-layout2--contact .contact-item__top .ttl {
    font-size: 1.32812vw;
    padding-left: 1.17188vw; } }
          @media only screen and (max-width: 767px) {
            body.manage .c-layout2--contact .contact-item__top .ttl {
              margin-top: -1px;
              padding-left: 15px;
              font-size: 16px;
              font-size: 1.6rem; }
              body.manage .c-layout2--contact .contact-item__top .ttl br {
                display: none; } }
    body.manage .c-layout2--contact .c-layout2-listbtns {
      margin-top: 40px; }
      @media only screen and (max-width: 767px) {
        body.manage .c-layout2--contact .c-layout2-listbtns {
          margin-top: 36px; } }
    body.manage .c-layout2--system {
      margin-top: 120px; }
      @media only screen and (max-width: 767px) {
        body.manage .c-layout2--system {
          margin-top: 44px; } }
      @media only screen and (max-width: 767px) {
        body.manage .c-layout2--system .layout2-box1 {
          margin-top: 54px; } }
      body.manage .c-layout2--system .layout2-box1 + .layout2-box1 {
        margin-top: 50px; }
        @media only screen and (max-width: 767px) {
          body.manage .c-layout2--system .layout2-box1 + .layout2-box1 {
            margin-top: 44px; } }
      body.manage .c-layout2--system .layout2-box1 .layout2-box1-number span {
        margin-left: 8px; }
        @media only screen and (max-width: 767px) {
          body.manage .c-layout2--system .layout2-box1 .layout2-box1-number span {
            margin-left: 5px; } }
      body.manage .c-layout2--system .listbtns {
        margin-top: 28px; }
        @media only screen and (max-width: 767px) {
          body.manage .c-layout2--system .listbtns {
            margin-top: 22px; } }
        body.manage .c-layout2--system .listbtns .btn-03 {
          margin-top: 10px; }
      body.manage .c-layout2--system .note {
        font-size: 12px;
        font-size: 1.2rem;
        font-weight: 400;
        margin-left: 20px;
        display: inline-block; }
        @media only screen and (max-width: 767px) {
          body.manage .c-layout2--system .note {
            margin-left: 0; } }
      body.manage .c-layout2--system .text-note {
        font-family: "Noto Sans JP", sans-serif;
        margin-top: -23px; }
        @media only screen and (max-width: 767px) {
          body.manage .c-layout2--system .text-note {
            margin-top: 19px; } }
        body.manage .c-layout2--system .text-note li {
          display: flex;
          align-items: flex-start;
          font-size: 12px;
          font-size: 1.2rem;
          line-height: 16px;
          font-weight: 400; }
          body.manage .c-layout2--system .text-note li + li {
            margin-top: 6px; }
          body.manage .c-layout2--system .text-note li:before {
            content: "※";
            font-family: "Noto Sans JP", sans-serif;
            margin-right: 2px; }
      body.manage .c-layout2--system .box-compare {
        margin-top: 50px; }
        @media only screen and (max-width: 767px) {
          body.manage .c-layout2--system .box-compare {
            margin-top: 40px; } }
      body.manage .c-layout2--system .box-compare-list {
        margin-top: 40px; }
        @media only screen and (max-width: 767px) {
          body.manage .c-layout2--system .box-compare-list {
            margin-top: 25px; } }
        body.manage .c-layout2--system .box-compare-list .box-compare-item {
          display: flex;
          width: 100%;
          min-height: 65px;
          font-family: "Noto Sans JP", sans-serif; }
          @media only screen and (max-width: 767px) {
            body.manage .c-layout2--system .box-compare-list .box-compare-item {
              min-height: 52px; } }
          body.manage .c-layout2--system .box-compare-list .box-compare-item .ttl {
            width: 268px;
            background-color: #F8F8F8;
            display: flex;
            align-items: center;
            padding: 10px 25px;
            font-size: 16px;
            font-size: 1.6rem;
            line-height: 22px;
            font-weight: 500;
            letter-spacing: 0.05em;
            border-top: 1px solid #C8D6DE;
            border-left: 1px solid #C8D6DE; }
            @media only screen and (max-width: 767px) {
              body.manage .c-layout2--system .box-compare-list .box-compare-item .ttl {
                font-size: 15px;
                font-size: 1.5rem;
                line-height: 22px;
                width: 135px;
                padding: 14px 10px 14px 21px; } }
          body.manage .c-layout2--system .box-compare-list .box-compare-item .txt {
            width: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            border-left: 1px solid #C8D6DE;
            border-top: 1px solid #C8D6DE;
            padding: 10px;
            font-size: 15px;
            font-size: 1.5rem;
            line-height: 22px;
            font-weight: 500;
            letter-spacing: 0.05em; }
            body.manage .c-layout2--system .box-compare-list .box-compare-item .txt small {
              font-size: 12px;
              font-size: 1.2rem; }
            body.manage .c-layout2--system .box-compare-list .box-compare-item .txt:last-child {
              border-right: 1px solid #C8D6DE; }
            @media only screen and (max-width: 767px) {
              body.manage .c-layout2--system .box-compare-list .box-compare-item .txt {
                font-size: 14px;
                font-size: 1.4rem;
                line-height: 20px;
                width: calc(100% - 135px);
                text-align: center;
                border-left: 0; } }
          body.manage .c-layout2--system .box-compare-list .box-compare-item--top {
            min-height: 50px; }
            @media only screen and (max-width: 767px) {
              body.manage .c-layout2--system .box-compare-list .box-compare-item--top {
                min-height: 40px;
                padding: 0 25px; } }
            body.manage .c-layout2--system .box-compare-list .box-compare-item--top .ttl {
              background-color: transparent;
              border-top: 0; }
            body.manage .c-layout2--system .box-compare-list .box-compare-item--top .txt {
              background-color: #42BCC6;
              color: #fff;
              font-size: 16px;
              font-size: 1.6rem;
              line-height: 22px;
              font-weight: 500;
              letter-spacing: 0.05em;
              text-align: center;
              border-radius: 5px 5px 0 0;
              border-top: 0; }
              body.manage .c-layout2--system .box-compare-list .box-compare-item--top .txt:first-child {
                border-left-color: #42BCC6; }
              body.manage .c-layout2--system .box-compare-list .box-compare-item--top .txt:last-child {
                border-left-color: #fff;
                border-right-color: #42BCC6; }
              @media only screen and (max-width: 767px) {
                body.manage .c-layout2--system .box-compare-list .box-compare-item--top .txt {
                  width: 100%; } }
          body.manage .c-layout2--system .box-compare-list .box-compare-item:nth-child(2) .ttl {
            border-radius: 5px 0 0 0;
            overflow: hidden; }
          @media only screen and (max-width: 767px) {
            body.manage .c-layout2--system .box-compare-list .box-compare-item:nth-child(2) .txt {
              border-radius: 0 5px 0 0; } }
          body.manage .c-layout2--system .box-compare-list .box-compare-item:first-child .ttl {
            border-left-width: 0; }
          body.manage .c-layout2--system .box-compare-list .box-compare-item:last-child {
            border-bottom: 1px solid #C8D6DE;
            border-radius: 0 0 5px 5px;
            overflow: hidden; }
        body.manage .c-layout2--system .box-compare-list .box-compare-hidden {
          display: none; }
          body.manage .c-layout2--system .box-compare-list .box-compare-hidden .box-compare-item:first-child .ttl {
            border-left-width: 1px; }
          body.manage .c-layout2--system .box-compare-list .box-compare-hidden .box-compare-item:nth-child(2) .ttl {
            border-radius: 0; }
          body.manage .c-layout2--system .box-compare-list .box-compare-hidden .box-compare-item:nth-child(2) .txt {
            border-radius: 0; }
        body.manage .c-layout2--system .box-compare-list .btn-view-all {
          height: 70px;
          display: flex;
          justify-content: center;
          position: relative;
          z-index: 1; }
          @media only screen and (max-width: 767px) {
            body.manage .c-layout2--system .box-compare-list .btn-view-all {
              height: 37px; } }
          body.manage .c-layout2--system .box-compare-list .btn-view-all:after {
            content: '';
            position: absolute;
            width: 100%;
            background: linear-gradient(rgba(255, 255, 255, 0) 0%, #fff 100%);
            height: 70px;
            left: 0;
            top: -94px; }
          body.manage .c-layout2--system .box-compare-list .btn-view-all:before {
            content: '';
            width: 100%;
            height: 100%;
            background-color: #fff;
            position: absolute;
            left: 0;
            top: -25px; }
          body.manage .c-layout2--system .box-compare-list .btn-view-all .btn {
            font-family: "Raleway", sans-serif;
            font-size: 22px;
            font-size: 2.2rem;
            letter-spacing: 0.1em;
            font-weight: 700;
            display: flex;
            align-items: center;
            margin-top: -24px;
            cursor: pointer;
            transition: color .3s;
            position: relative;
            z-index: 1; }
            body.manage .c-layout2--system .box-compare-list .btn-view-all .btn__arrow {
              width: 36px;
              height: 36px;
              border-radius: 50%;
              border: solid 1px #C8D6DE;
              display: flex;
              align-items: center;
              justify-content: center;
              margin-left: 18px;
              transition: background-color .3s, border-color .3s;
              position: relative; }
              @media only screen and (max-width: 767px) {
                body.manage .c-layout2--system .box-compare-list .btn-view-all .btn__arrow {
                  width: 30px;
                  height: 30px;
                  margin-left: 15px; } }
              body.manage .c-layout2--system .box-compare-list .btn-view-all .btn__arrow:after {
                content: "";
                width: 100%;
                height: 100%;
                background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='12' height='12' viewBox='0 0 12 12'%3E%3Cdefs%3E%3Cstyle%3E.a%7Bclip-path:url(%23a);%7D.b%7Bfill:%2342bcc6;%7D%3C/style%3E%3CclipPath id='a'%3E%3Crect width='12' height='12'/%3E%3C/clipPath%3E%3C/defs%3E%3Cg class='a'%3E%3Cpath class='b' d='M1495.994,5406.987l9,5.987-9,6.013Z' transform='translate(5418.986 -1494.494) rotate(90)'/%3E%3C/g%3E%3C/svg%3E");
                background-repeat: no-repeat;
                background-position: center;
                position: absolute;
                top: 1px;
                left: 0; }
            @media only screen and (min-width: 768px) {
              body.manage .c-layout2--system .box-compare-list .btn-view-all .btn:hover {
                color: #42BCC6; }
                body.manage .c-layout2--system .box-compare-list .btn-view-all .btn:hover .btn__arrow {
                  background-color: #42BCC6;
                  border-color: #42BCC6; }
                  body.manage .c-layout2--system .box-compare-list .btn-view-all .btn:hover .btn__arrow:after {
                    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='12' height='12' viewBox='0 0 12 12'%3E%3Cdefs%3E%3Cstyle%3E.a%7Bclip-path:url(%23a);%7D.b%7Bfill:%23ffffff;%7D%3C/style%3E%3CclipPath id='a'%3E%3Crect width='12' height='12'/%3E%3C/clipPath%3E%3C/defs%3E%3Cg class='a'%3E%3Cpath class='b' d='M1495.994,5406.987l9,5.987-9,6.013Z' transform='translate(5418.986 -1494.494) rotate(90)'/%3E%3C/g%3E%3C/svg%3E"); } }
        body.manage .c-layout2--system .box-compare-list.is-active .btn-view-all {
          margin-top: 20px; }
          @media only screen and (max-width: 767px) {
            body.manage .c-layout2--system .box-compare-list.is-active .btn-view-all {
              margin-top: 26px; } }
          body.manage .c-layout2--system .box-compare-list.is-active .btn-view-all:after, body.manage .c-layout2--system .box-compare-list.is-active .btn-view-all:before {
            opacity: 0; }
          body.manage .c-layout2--system .box-compare-list.is-active .btn-view-all .btn__arrow:after {
            transform: rotate(-180deg);
            top: -1px; }
      body.manage .c-layout2--system .system03 {
        margin-top: 50px; }
        @media only screen and (max-width: 767px) {
          body.manage .c-layout2--system .system03 {
            margin-top: 30px; } }
  body.manage .sec-assessment {
    margin-top: 90px;
    background-color: #F8F8F8;
    padding: 98px 0 93px;
    background-image: url(/images/manage/bg01.jpg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover; }
    @media only screen and (max-width: 767px) {
      body.manage .sec-assessment {
        margin-top: 63px;
        padding: 57px 0 63px; } }
    body.manage .sec-assessment .inner {
      display: flex;
      align-items: center;
      flex-direction: row-reverse;
      width: 100%; }
      @media only screen and (max-width: 767px) {
        body.manage .sec-assessment .inner {
          display: block; } }
    @media only screen and (min-width: 768px) {
      body.manage .sec-assessment__desc {
        width: calc(100% - 500px);
        padding-left: 10px; } }
  @media only screen and (min-width: 768px) and (max-width: 1106px) {
    body.manage .sec-assessment__desc {
      width: 50%;
      padding-left: 30px; } }
    @media only screen and (min-width: 768px) {
      body.manage .sec-assessment__img {
        width: calc(50vw - 150px);
        margin-right: calc(-50vw + 540px);
        margin-left: 80px;
        margin-top: 20px;
        position: relative; } }
  @media only screen and (min-width: 768px) and (max-width: 1106px) {
    body.manage .sec-assessment__img {
      margin-right: 0;
      margin-left: 50px;
      width: 50%; } }
    @media only screen and (max-width: 767px) {
      body.manage .sec-assessment__img {
        padding-left: 15px;
        margin-top: 39px; } }
    body.manage .sec-assessment__img img {
      width: 100%; }
    body.manage .sec-assessment .sec-assessment-title {
      display: flex;
      align-items: center; }
      @media only screen and (min-width: 768px) {
        body.manage .sec-assessment .sec-assessment-title {
          white-space: nowrap; } }
      @media only screen and (max-width: 767px) {
        body.manage .sec-assessment .sec-assessment-title {
          display: block;
          padding: 0;
          text-align: center; } }
      body.manage .sec-assessment .sec-assessment-title__en {
        font-family: "Raleway", sans-serif;
        font-size: 50px;
        font-size: 5rem;
        line-height: 59px;
        letter-spacing: .1em;
        font-weight: bold;
        margin-right: 36px; }

@media only screen and (min-width: 768px) and (max-width: 1106px) {
  body.manage .sec-assessment .sec-assessment-title__en {
    font-size: 40px;
    font-size: 4rem; } }
        @media only screen and (max-width: 767px) {
          body.manage .sec-assessment .sec-assessment-title__en {
            font-size: 36px;
            font-size: 3.6rem;
            line-height: 42px;
            margin: 0;
            display: block; } }
        body.manage .sec-assessment .sec-assessment-title__en span {
          color: #42BCC6; }
      body.manage .sec-assessment .sec-assessment-title__ja {
        font-family: "Noto Sans JP", sans-serif;
        font-size: 18px;
        font-size: 1.8rem;
        line-height: 26px;
        letter-spacing: .12em;
        font-weight: bold; }
        @media only screen and (max-width: 767px) {
          body.manage .sec-assessment .sec-assessment-title__ja {
            margin-top: 8px;
            font-size: 16px;
            font-size: 1.6rem;
            line-height: 24px;
            display: block; } }
    body.manage .sec-assessment .tth4 {
      color: #42BCC6;
      font-family: "Noto Sans JP", sans-serif;
      font-size: 24px;
      font-size: 2.4rem;
      line-height: 36px;
      font-weight: 500;
      margin-top: 41px; }
      @media only screen and (max-width: 767px) {
        body.manage .sec-assessment .tth4 {
          font-size: 20px;
          font-size: 2rem;
          line-height: 32px;
          text-align: center;
          margin-top: 26px; } }
    body.manage .sec-assessment .text {
      font-size: 15px;
      font-size: 1.5rem;
      line-height: 28px;
      font-weight: 500;
      margin-top: 23px; }
      @media only screen and (max-width: 767px) {
        body.manage .sec-assessment .text {
          margin-top: 22px;
          padding: 0 25px; } }
    body.manage .sec-assessment__btn {
      margin-top: 33px; }
      @media only screen and (max-width: 767px) {
        body.manage .sec-assessment__btn {
          padding: 0 25px; } }
  body.manage .box02 .c-layout1 {
    margin-top: 122px; }
    @media only screen and (max-width: 767px) {
      body.manage .box02 .c-layout1 {
        margin-top: 64px; } }
  body.manage .c-flow {
    margin-top: 129px;
    padding-bottom: 6px; }
    @media only screen and (max-width: 767px) {
      body.manage .c-flow {
        padding-bottom: 5px;
        margin-top: 61px; } }
    @media only screen and (min-width: 768px) {
      body.manage .c-flow .c-flow-title {
        margin-left: -20px; } }
  @media only screen and (min-width: 768px) and (max-width: 1106px) {
    body.manage .c-flow .c-flow-title {
      margin-left: 0; } }
    body.manage .c-flow .flow-ico {
      position: relative;
      z-index: 1; }
    body.manage .c-flow .flow {
      position: relative; }
    body.manage .c-flow .box-bottom {
      background-color: #F8F8F8;
      margin-top: 35px;
      padding: 31px 60px;
      border-radius: 5px; }
      @media only screen and (max-width: 767px) {
        body.manage .c-flow .box-bottom {
          margin-top: 21px;
          padding: 23px 30px; } }
      body.manage .c-flow .box-bottom__item {
        border-top: 1px solid #C8D6DE;
        margin-top: 33px;
        padding-top: 27px; }
        @media only screen and (max-width: 767px) {
          body.manage .c-flow .box-bottom__item {
            margin-top: 22px;
            padding-top: 18px; } }
        body.manage .c-flow .box-bottom__item:first-child {
          border-top: 0;
          margin-top: 0;
          padding: 0; }
      body.manage .c-flow .box-bottom .title-bottom {
        display: flex;
        align-items: center; }
        body.manage .c-flow .box-bottom .title-bottom__jp {
          font-family: "Noto Sans JP", sans-serif;
          font-size: 20px;
          font-size: 2rem;
          line-height: 30px;
          font-weight: 500; }
          @media only screen and (max-width: 767px) {
            body.manage .c-flow .box-bottom .title-bottom__jp {
              font-size: 18px;
              font-size: 1.8rem;
              line-height: 26px; } }
        body.manage .c-flow .box-bottom .title-bottom__en {
          font-family: "Raleway", sans-serif;
          font-size: 14px;
          font-size: 1.4rem;
          font-weight: 700;
          letter-spacing: 0.1em;
          color: #42BCC6;
          line-height: 48px;
          padding-left: 16px; }
          @media only screen and (max-width: 767px) {
            body.manage .c-flow .box-bottom .title-bottom__en {
              padding-left: 12px;
              font-size: 12px;
              font-size: 1.2rem; } }
      body.manage .c-flow .box-bottom .text {
        font-size: 15px;
        font-size: 1.5rem;
        line-height: 28px;
        margin-top: 14px; }
        @media only screen and (max-width: 767px) {
          body.manage .c-flow .box-bottom .text {
            margin-top: 4px; } }
  @media only screen and (min-width: 768px) {
    body.manage .c-flow .c-flow-cnt {
      padding-bottom: 70px; } }
  @media only screen and (max-width: 767px) {
    body.manage .c-flow .c-flow-cnt {
      padding-bottom: 40px; } }
  @media only screen and (min-width: 768px) {
    body.manage .contact-footer {
      padding-top: 70px;
      padding-bottom: 140px; } }
  @media only screen and (max-width: 767px) {
    body.manage .contact-footer {
      padding-top: 40px;
      padding-bottom: 93px; } }

body.news .main-content {
  padding: 152px 0 121px;
  flex-direction: column-reverse; }
  @media only screen and (max-width: 767px) {
    body.news .main-content {
      padding: 59px 0 123px; } }
  @media only screen and (min-width: 768px) {
    body.news .main-content .side-cms-bar ul li:nth-child(3n) {
      margin-left: 65px;
      width: auto; } }
  body.news .main-content .side-cms-bar.frst {
    margin-bottom: 100px; }
    @media only screen and (max-width: 767px) {
      body.news .main-content .side-cms-bar.frst {
        margin-bottom: 90px; } }
  body.news .main-content .side-cms-bar.scnd {
    margin-top: 130px; }
    @media only screen and (max-width: 767px) {
      body.news .main-content .side-cms-bar.scnd {
        margin-top: 67px; } }
  body.news .main-content .article-content ul {
    -webkit-justify-content: flex-start;
    justify-content: flex-start; }
    body.news .main-content .article-content ul .imager {
      overflow: hidden;
      padding-bottom: 79.3%;
      position: relative; }
      body.news .main-content .article-content ul .imager.empty {
        border: 1px solid #e6e6e6; }
      body.news .main-content .article-content ul .imager .img {
        background-size: cover;
        background-position: center;
        margin: 0 auto;
        position: absolute;
        left: 0;
        right: 0;
        top: 50%;
        transform: translateY(-50%);
        transition: all .3s;
        height: 100%;
        width: 100%; }
    body.news .main-content .article-content ul .caption {
      background-color: #e6e6e6;
      font-size: 12px;
      font-size: 1.2rem;
      margin: 0 auto;
      text-align: center;
      height: 20px;
      display: -webkit-flex;
      display: flex;
      -webkit-align-items: center;
      align-items: center;
      -webkit-justify-content: center;
      justify-content: center; }
      body.news .main-content .article-content ul .caption .en {
        font-family: "Raleway", sans-serif; }
      body.news .main-content .article-content ul .caption .ja {
        font-weight: 500; }
    body.news .main-content .article-content ul .article-ttl {
      display: inline-block;
      font-size: 18px;
      font-size: 1.8rem;
      line-height: 1.666;
      font-weight: bold;
      margin: 20px 0; }
      @media only screen and (max-width: 767px) {
        body.news .main-content .article-content ul .article-ttl {
          font-size: 14px;
          font-size: 1.4rem;
          line-height: 1.5;
          margin: 10px 0 7px;
          text-align: justify; } }
    body.news .main-content .article-content ul .date {
      font-size: 18px;
      font-size: 1.8rem;
      font-family: "Lato", sans-serif; }
      @media only screen and (max-width: 767px) {
        body.news .main-content .article-content ul .date {
          font-size: 14px;
          font-size: 1.4rem; } }
    body.news .main-content .article-content ul li {
      margin-bottom: 40px;
      width: calc((100% - 100px)/3); }
      @media only screen and (min-width: 768px) {
        body.news .main-content .article-content ul li {
          margin-right: 50px; }
          body.news .main-content .article-content ul li:nth-child(3n) {
            margin-right: 0; }
          body.news .main-content .article-content ul li:hover .img {
            transform: translateY(-50%) scale(1.1); }
          body.news .main-content .article-content ul li:hover a {
            border-bottom: 2px solid #42bcc6; } }
      @media only screen and (max-width: 767px) {
        body.news .main-content .article-content ul li {
          margin-bottom: 20px;
          width: calc(50% - 12px); }
          body.news .main-content .article-content ul li:nth-child(even) {
            margin-left: 24px; } }
      body.news .main-content .article-content ul li a {
        border-bottom: 2px solid #e6e6e6;
        display: block;
        padding-bottom: 30px; }
        @media only screen and (max-width: 767px) {
          body.news .main-content .article-content ul li a {
            border-bottom: 1px solid #e6e6e6;
            padding-bottom: 20px; } }

body.news .pagination {
  margin-top: 40px; }
  @media only screen and (max-width: 767px) {
    body.news .pagination {
      margin-top: 20px; } }

body.news.single .side-cms-bar.frst {
  margin-top: -42px; }
  @media only screen and (max-width: 767px) {
    body.news.single .side-cms-bar.frst {
      margin-top: -12px; } }

@media only screen and (max-width: 767px) {
  body.news.single .side-cms-bar.scnd {
    margin-top: 0px; } }

body.resident .resident-content {
  padding: 0 0 177px; }
  @media only screen and (max-width: 767px) {
    body.resident .resident-content {
      padding: 50px 0 105px; } }
  body.resident .resident-content p {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 28px; }
    @media only screen and (max-width: 767px) {
      body.resident .resident-content p {
        line-height: 24px;
        text-align: justify; } }
  body.resident .resident-content .content01 .maincontent .background {
    width: 100%;
    display: flex;
    position: relative; }
  body.resident .resident-content .content01 .maincontent .textcont {
    position: relative;
    background: #f8f8f8;
    padding: 48px 70px 30px;
    max-width: 780px;
    left: -70px;
    top: -360px;
    margin: 0; }
    @media only screen and (max-width: 767px) {
      body.resident .resident-content .content01 .maincontent .textcont {
        width: 100%;
        background: #fff;
        left: 0;
        margin-bottom: -50px;
        top: -30px;
        padding: 37px 0 35px; } }
    body.resident .resident-content .content01 .maincontent .textcont .ttl-04 {
      display: flex;
      align-items: baseline;
      margin-bottom: 60px; }
      @media only screen and (max-width: 767px) {
        body.resident .resident-content .content01 .maincontent .textcont .ttl-04 {
          display: block;
          text-align: center;
          margin-bottom: 32px; }
          body.resident .resident-content .content01 .maincontent .textcont .ttl-04 .en {
            margin-bottom: 18px; } }
    body.resident .resident-content .content01 .maincontent .textcont p {
      line-height: 24px; }
      @media only screen and (max-width: 767px) {
        body.resident .resident-content .content01 .maincontent .textcont p {
          line-height: 23px;
          padding: 0 25px; } }
  body.resident .resident-content .content01 .maincontent .maincontent-color {
    width: 30%;
    background-color: #d3c0d5; }
    @media only screen and (max-width: 767px) {
      body.resident .resident-content .content01 .maincontent .maincontent-color {
        width: 15%; } }
  body.resident .resident-content .content01 .maincontent .maincontent-img {
    width: 70%;
    height: 500px;
    display: block;
    background-image: url("../images/resident/img01.jpg");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: top; }
    @media only screen and (max-width: 767px) {
      body.resident .resident-content .content01 .maincontent .maincontent-img {
        width: 85%;
        background-image: url("../images/resident/img01-sp.jpg");
        height: 200px; } }
  body.resident .resident-content .content01 .subcontent {
    background-color: #f8f8f8;
    margin-top: -360px; }
    @media only screen and (max-width: 767px) {
      body.resident .resident-content .content01 .subcontent {
        margin-top: 0; } }
    body.resident .resident-content .content01 .subcontent .subcontent-list {
      padding: 65px 0 100px; }
      @media only screen and (max-width: 767px) {
        body.resident .resident-content .content01 .subcontent .subcontent-list {
          padding: 60px 0 40px; } }
      body.resident .resident-content .content01 .subcontent .subcontent-list .box {
        border: 1px solid #d3c0d5;
        background-color: #fff;
        margin-bottom: 30px; }
        @media only screen and (max-width: 767px) {
          body.resident .resident-content .content01 .subcontent .subcontent-list .box {
            padding-bottom: 10px;
            border-top: none;
            border-right: none;
            border-left: none;
            border-bottom: 1px solid #d3c0d5;
            margin-bottom: 20px; } }
        @media only screen and (min-width: 768px) {
          body.resident .resident-content .content01 .subcontent .subcontent-list .box:first-of-type .box-cont {
            height: 313px; } }
        @media only screen and (max-width: 767px) {
          body.resident .resident-content .content01 .subcontent .subcontent-list .box:first-of-type .box-cont {
            padding-bottom: 5px; } }
        body.resident .resident-content .content01 .subcontent .subcontent-list .box:first-of-type .box-cont span {
          margin-left: 0 !important;
          margin-right: 5px !important; }
        @media only screen and (max-width: 767px) {
          body.resident .resident-content .content01 .subcontent .subcontent-list .box .btn {
            border: 1px solid #d3c0d5;
            background-color: #d3c0d5;
            margin: 30px auto 10px !important; }
            body.resident .resident-content .content01 .subcontent .subcontent-list .box .btn span::after {
              border-color: transparent transparent transparent #d3c0d5; } }
        body.resident .resident-content .content01 .subcontent .subcontent-list .box .title {
          background-color: #d3c0d5;
          color: #fff;
          font-weight: bold;
          font-family: "Raleway", sans-serif;
          height: 30px;
          font-size: 18px;
          font-size: 1.8rem;
          display: flex;
          align-items: center;
          padding-left: 20px; }
          @media only screen and (max-width: 767px) {
            body.resident .resident-content .content01 .subcontent .subcontent-list .box .title {
              font-size: 15px;
              font-size: 1.5rem;
              justify-content: center;
              padding-left: 0;
              letter-spacing: 1px; } }
          @media all and (-ms-high-contrast: none) {
            body.resident .resident-content .content01 .subcontent .subcontent-list .box .title {
              padding-top: 4px; } }
        body.resident .resident-content .content01 .subcontent .subcontent-list .box .box-cont {
          display: flex;
          align-items: center;
          height: 253px; }
          @media only screen and (max-width: 767px) {
            body.resident .resident-content .content01 .subcontent .subcontent-list .box .box-cont {
              height: auto;
              display: block; } }
          body.resident .resident-content .content01 .subcontent .subcontent-list .box .box-cont .box-cont-img {
            width: 30%;
            max-width: 290px; }
            @media only screen and (max-width: 767px) {
              body.resident .resident-content .content01 .subcontent .subcontent-list .box .box-cont .box-cont-img {
                width: 100%;
                max-width: 100%; } }
          body.resident .resident-content .content01 .subcontent .subcontent-list .box .box-cont .box-cont-text {
            width: 70%;
            max-width: 700px;
            padding: 0 40px; }
            @media only screen and (max-width: 767px) {
              body.resident .resident-content .content01 .subcontent .subcontent-list .box .box-cont .box-cont-text {
                width: 100%;
                max-width: 100%;
                padding: 0 15px; } }
            body.resident .resident-content .content01 .subcontent .subcontent-list .box .box-cont .box-cont-text .boxtith4 {
              font-size: 24px;
              font-size: 2.4rem;
              margin-bottom: 13px;
              font-family: "Noto Sans JP", sans-serif;
              line-height: 42px; }
              @media only screen and (max-width: 767px) {
                body.resident .resident-content .content01 .subcontent .subcontent-list .box .box-cont .box-cont-text .boxtith4 {
                  font-size: 17px;
                  font-size: 1.7rem;
                  line-height: 24px;
                  margin-top: 18px; } }
              body.resident .resident-content .content01 .subcontent .subcontent-list .box .box-cont .box-cont-text .boxtith4 span {
                font-size: 46px;
                font-size: 4.6rem;
                margin: 0 0 0 0px;
                font-family: "Lato", sans-serif;
                font-weight: bold; }
                @media only screen and (max-width: 767px) {
                  body.resident .resident-content .content01 .subcontent .subcontent-list .box .box-cont .box-cont-text .boxtith4 span {
                    font-size: 28px;
                    font-size: 2.8rem; } }
              body.resident .resident-content .content01 .subcontent .subcontent-list .box .box-cont .box-cont-text .boxtith4 small {
                font-size: 26px;
                font-size: 2.6rem;
                font-family: "Noto Sans JP", sans-serif;
                font-weight: bold;
                margin-right: 5px; }
                @media only screen and (max-width: 767px) {
                  body.resident .resident-content .content01 .subcontent .subcontent-list .box .box-cont .box-cont-text .boxtith4 small {
                    font-size: 18px;
                    font-size: 1.8rem; } }
            body.resident .resident-content .content01 .subcontent .subcontent-list .box .box-cont .box-cont-text .tit-but {
              display: flex;
              justify-content: space-between;
              align-items: flex-end; }
              body.resident .resident-content .content01 .subcontent .subcontent-list .box .box-cont .box-cont-text .tit-but .button {
                border: #d3c0d5 2px solid;
                border-radius: 15px;
                font-size: 15px;
                font-size: 1.5rem;
                color: #d3c0d5;
                font-weight: bold;
                margin-top: -10px;
                position: relative;
                top: -25px;
                height: 30px;
                display: flex;
                align-items: center;
                justify-content: center;
                width: 150px; }
                body.resident .resident-content .content01 .subcontent .subcontent-list .box .box-cont .box-cont-text .tit-but .button:hover {
                  color: #fff;
                  background-color: #d3c0d5; }
                @media all and (-ms-high-contrast: none) {
                  body.resident .resident-content .content01 .subcontent .subcontent-list .box .box-cont .box-cont-text .tit-but .button {
                    padding-top: 5px; } }
  body.resident .resident-content .content02 .listcont {
    border-top: 1px #e6e6e6 solid;
    margin-top: 120px;
    padding-top: 80px; }
    @media only screen and (max-width: 767px) {
      body.resident .resident-content .content02 .listcont {
        margin-top: 60px;
        padding-top: 20px; } }
    body.resident .resident-content .content02 .listcont li {
      display: flex;
      justify-content: space-between;
      align-items: center;
      border-bottom: 1px #e6e6e6 solid;
      padding-bottom: 50px;
      margin-bottom: 22px; }
      @media only screen and (max-width: 767px) {
        body.resident .resident-content .content02 .listcont li {
          display: block;
          padding-bottom: 20px;
          margin-bottom: 20px; } }
      body.resident .resident-content .content02 .listcont li .listcont-img {
        width: 43%;
        max-width: 430px; }
        @media only screen and (max-width: 767px) {
          body.resident .resident-content .content02 .listcont li .listcont-img {
            width: 100%;
            max-width: 100%; } }
      body.resident .resident-content .content02 .listcont li .listcont-text {
        width: 50%;
        max-width: 500px; }
        @media only screen and (max-width: 767px) {
          body.resident .resident-content .content02 .listcont li .listcont-text {
            width: 100%;
            max-width: 100%; } }
        body.resident .resident-content .content02 .listcont li .listcont-text h3 {
          font-size: 24px;
          font-size: 2.4rem;
          line-height: 34px;
          display: flex;
          position: relative;
          font-family: "Noto Sans JP", sans-serif;
          margin-bottom: 20px; }
          @media only screen and (max-width: 767px) {
            body.resident .resident-content .content02 .listcont li .listcont-text h3 {
              font-size: 16px;
              font-size: 1.6rem;
              margin: 10px 0 5px; } }
          body.resident .resident-content .content02 .listcont li .listcont-text h3::after {
            content: "";
            position: absolute;
            width: 12px;
            height: 14px;
            display: block;
            background-image: url("../images/manage/arw.png");
            background-repeat: no-repeat;
            background-size: contain;
            left: 0;
            top: 10px; }
            @media only screen and (max-width: 767px) {
              body.resident .resident-content .content02 .listcont li .listcont-text h3::after {
                width: 8px;
                height: 10px;
                left: 0;
                top: 12px; } }
            @media all and (-ms-high-contrast: none) {
              body.resident .resident-content .content02 .listcont li .listcont-text h3::after {
                top: 13px; } }
          body.resident .resident-content .content02 .listcont li .listcont-text h3 span {
            padding-left: 27px; }
            @media only screen and (max-width: 767px) {
              body.resident .resident-content .content02 .listcont li .listcont-text h3 span {
                padding-left: 15px; } }
  body.resident .resident-content .btn {
    width: 370px;
    max-width: 100%;
    display: block;
    margin: 33px 0 0;
    position: relative;
    overflow: hidden;
    text-decoration: none;
    border: 1px solid #42bcc6;
    background-color: #42bcc6;
    border-radius: 5px;
    text-align: center;
    outline: none;
    transition: ease 0.2s; }
    @media only screen and (max-width: 767px) {
      body.resident .resident-content .btn {
        margin: 33px auto 0; } }
    body.resident .resident-content .btn::before {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      z-index: 2;
      background: #fff;
      width: 100%;
      height: 100%;
      transition: transform 0.5s cubic-bezier(0.8, 0, 0.2, 1) 0s;
      transform: scale(0, 1);
      transform-origin: right top; }
    body.resident .resident-content .btn span {
      position: relative;
      z-index: 3;
      color: #fff;
      transition: color 0.2s;
      display: block;
      font-size: 18px;
      font-size: 1.8rem;
      font-family: "Noto Sans JP", sans-serif;
      font-weight: bold;
      line-height: 30px;
      padding: 19px 0; }
      @media only screen and (max-width: 767px) {
        body.resident .resident-content .btn span {
          font-size: 16px;
          font-size: 1.6rem;
          line-height: 24px;
          padding: 17px 0;
          letter-spacing: 0.04em; } }
      body.resident .resident-content .btn span::after, body.resident .resident-content .btn span::before {
        content: "";
        position: absolute;
        top: 50%; }
      body.resident .resident-content .btn span::before {
        z-index: 4;
        right: 24px;
        border-radius: 50%;
        width: 22px;
        height: 22px;
        background-color: #fff;
        margin-top: -11px;
        transition: background-color 0.2s; }
        @media only screen and (max-width: 767px) {
          body.resident .resident-content .btn span::before {
            right: 20px;
            width: 15px;
            height: 15px;
            margin-top: -7px; } }
      body.resident .resident-content .btn span::after {
        right: 31px;
        z-index: 5;
        margin-top: -5px;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 5px 0 5px 6px;
        border-color: transparent transparent transparent #42bcc6;
        transition: border-color 0.2s; }
        @media only screen and (max-width: 767px) {
          body.resident .resident-content .btn span::after {
            right: 25px;
            margin-top: -3px;
            border-width: 3.5px 0 3.5px 4px; } }
    @media only screen and (min-width: 768px) {
      body.resident .resident-content .btn:hover::before {
        transform-origin: left top;
        transform: scale(1, 1); }
      body.resident .resident-content .btn:hover span {
        color: #42bcc6; }
        body.resident .resident-content .btn:hover span::before {
          background-color: #42bcc6; }
        body.resident .resident-content .btn:hover span::after {
          border-color: transparent transparent transparent #fff; } }

body.resident .anima-me {
  animation-delay: .3s;
  opacity: 0; }

body.resident .mt10 {
  margin-top: 10px !important; }
  @media only screen and (max-width: 767px) {
    body.resident .mt10 {
      margin-top: 7px !important; } }

body.search .search-content {
  padding: 110px 0 200px; }
  @media only screen and (max-width: 767px) {
    body.search .search-content {
      padding: 45px 0 125px; } }
  body.search .search-content p {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 28px;
    text-align: justify; }
    @media only screen and (max-width: 767px) {
      body.search .search-content p {
        line-height: 24px; } }
  body.search .search-content .content01 .maincontent .background {
    width: 100%;
    display: flex;
    position: relative; }
  body.search .search-content .content01 .maincontent .textcont {
    position: relative;
    background: #fff;
    padding: 48px 70px 30px;
    max-width: 780px;
    left: -70px;
    top: -400px;
    margin: 0; }
    @media only screen and (max-width: 767px) {
      body.search .search-content .content01 .maincontent .textcont {
        width: 100%;
        background: #fff;
        left: 0;
        margin-bottom: -50px;
        top: -30px;
        padding: 32px 0 35px;
        z-index: 1; } }
    body.search .search-content .content01 .maincontent .textcont .ttl-04 {
      display: flex;
      align-items: baseline;
      margin-bottom: 60px; }
      @media only screen and (max-width: 767px) {
        body.search .search-content .content01 .maincontent .textcont .ttl-04 {
          display: block;
          text-align: center;
          margin-bottom: 32px;
          line-height: 24px; }
          body.search .search-content .content01 .maincontent .textcont .ttl-04 .en {
            margin-bottom: 18px; } }
    @media only screen and (max-width: 767px) and (max-width: 767px) {
      body.search .search-content .content01 .maincontent .textcont .ttl-04 .en {
        margin-bottom: 12px; }
        body.search .search-content .content01 .maincontent .textcont .ttl-04 .en::before {
          top: 27px; } }
    body.search .search-content .content01 .maincontent .textcont p {
      line-height: 24px; }
      @media only screen and (max-width: 767px) {
        body.search .search-content .content01 .maincontent .textcont p {
          line-height: 24px;
          padding: 0 25px;
          letter-spacing: -0.5px; } }
  body.search .search-content .content01 .maincontent .btn {
    margin-right: 10px;
    margin-top: 40px;
    border: 1px solid #c7cc90;
    background-color: #c7cc90; }
    @media only screen and (max-width: 767px) {
      body.search .search-content .content01 .maincontent .btn {
        margin: 25px auto 0;
        width: calc(100% - 50px); } }
    body.search .search-content .content01 .maincontent .btn span::after {
      border-color: transparent transparent transparent #c7cc90; }
    @media only screen and (min-width: 768px) {
      body.search .search-content .content01 .maincontent .btn:hover span {
        color: #c7cc90; }
        body.search .search-content .content01 .maincontent .btn:hover span::before {
          background-color: #c7cc90; }
        body.search .search-content .content01 .maincontent .btn:hover span::after {
          border-color: transparent transparent transparent #fff; } }
  body.search .search-content .content01 .maincontent .maincontent-color {
    width: 30%;
    background-color: #c7cc90; }
    @media only screen and (max-width: 767px) {
      body.search .search-content .content01 .maincontent .maincontent-color {
        width: 15%; } }
  body.search .search-content .content01 .maincontent .maincontent-img {
    width: 70%;
    height: 500px;
    display: block;
    background-image: url("../images/search/img01.jpg");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: top; }
    @media only screen and (max-width: 767px) {
      body.search .search-content .content01 .maincontent .maincontent-img {
        width: 85%;
        background-image: url("../images/search/img01-sp.jpg");
        height: 200px; } }
  body.search .search-content .content01 .subcontent {
    margin-top: -395px;
    padding: 45px 0 0; }
    @media only screen and (max-width: 767px) {
      body.search .search-content .content01 .subcontent {
        margin-top: -30px;
        padding: 0; } }
    body.search .search-content .content01 .subcontent .hataslistcont {
      padding: 40px 0 0; }
      @media only screen and (max-width: 767px) {
        body.search .search-content .content01 .subcontent .hataslistcont {
          background: #f8f8f8;
          padding: 67px 0 58px; } }
      @media only screen and (max-width: 767px) {
        body.search .search-content .content01 .subcontent .hataslistcont .tith4 {
          line-height: 24px;
          padding-bottom: 11px; }
          body.search .search-content .content01 .subcontent .hataslistcont .tith4::before {
            top: 7px; } }
      body.search .search-content .content01 .subcontent .hataslistcont .systemlist {
        margin-top: 40px; }
        @media only screen and (max-width: 767px) {
          body.search .search-content .content01 .subcontent .hataslistcont .systemlist {
            margin-top: 20px; } }
        body.search .search-content .content01 .subcontent .hataslistcont .systemlist li .box {
          display: flex;
          justify-content: space-between;
          border-bottom: 1px #e6e6e6 dotted;
          padding-bottom: 40px;
          margin-bottom: 40px; }
          @media only screen and (max-width: 767px) {
            body.search .search-content .content01 .subcontent .hataslistcont .systemlist li .box {
              display: block;
              border-bottom: none;
              padding-bottom: 0;
              margin-bottom: 37px; } }
          body.search .search-content .content01 .subcontent .hataslistcont .systemlist li .box .contleft {
            width: 65%;
            max-width: 650px; }
            @media only screen and (max-width: 767px) {
              body.search .search-content .content01 .subcontent .hataslistcont .systemlist li .box .contleft {
                width: 100%;
                max-width: 100%; } }
            body.search .search-content .content01 .subcontent .hataslistcont .systemlist li .box .contleft .title-num {
              font-size: 18px;
              font-size: 1.8rem;
              font-weight: bold;
              color: #fff;
              background: #c7cc90;
              text-align: center;
              display: flex;
              align-items: center;
              padding-left: 20px;
              height: 30px;
              font-family: "Raleway", sans-serif;
              letter-spacing: 1px;
              font-variant-numeric: lining-nums; }
              @media only screen and (max-width: 767px) {
                body.search .search-content .content01 .subcontent .hataslistcont .systemlist li .box .contleft .title-num {
                  font-size: 14px;
                  font-size: 1.4rem;
                  justify-content: center;
                  height: 25px; } }
              @media all and (-ms-high-contrast: none) {
                body.search .search-content .content01 .subcontent .hataslistcont .systemlist li .box .contleft .title-num {
                  padding-top: 4px; } }
            body.search .search-content .content01 .subcontent .hataslistcont .systemlist li .box .contleft .tith4-02 {
              margin: 30px 0 32px; }
              @media only screen and (max-width: 767px) {
                body.search .search-content .content01 .subcontent .hataslistcont .systemlist li .box .contleft .tith4-02 {
                  font-size: 18px;
                  font-size: 1.8rem;
                  line-height: 26px;
                  margin: 15px 0 14px; } }
            @media only screen and (max-width: 767px) {
              body.search .search-content .content01 .subcontent .hataslistcont .systemlist li .box .contleft .imgsp {
                margin-bottom: 12px; } }
            body.search .search-content .content01 .subcontent .hataslistcont .systemlist li .box .contleft .tith4-02lh {
              line-height: 32px;
              margin: 27px 0 29px; }
              @media only screen and (max-width: 767px) {
                body.search .search-content .content01 .subcontent .hataslistcont .systemlist li .box .contleft .tith4-02lh {
                  line-height: 26px;
                  margin: 15px 0 14px; } }
          body.search .search-content .content01 .subcontent .hataslistcont .systemlist li .box .contright {
            width: 28%;
            max-width: 280px; }
            @media only screen and (max-width: 767px) {
              body.search .search-content .content01 .subcontent .hataslistcont .systemlist li .box .contright {
                width: 100%;
                max-width: 100%; } }
        body.search .search-content .content01 .subcontent .hataslistcont .systemlist li .boxnonebor {
          border-bottom: none;
          margin-bottom: 0; }
      body.search .search-content .content01 .subcontent .hataslistcont .btn {
        margin: 60px auto 0;
        border: 1px solid #c7cc90;
        background-color: #c7cc90; }
        @media only screen and (max-width: 767px) {
          body.search .search-content .content01 .subcontent .hataslistcont .btn {
            margin: 40px auto 0; } }
        body.search .search-content .content01 .subcontent .hataslistcont .btn span::after {
          border-color: transparent transparent transparent #c7cc90; }
        @media only screen and (min-width: 768px) {
          body.search .search-content .content01 .subcontent .hataslistcont .btn:hover span {
            color: #c7cc90; }
            body.search .search-content .content01 .subcontent .hataslistcont .btn:hover span::before {
              background-color: #c7cc90; }
            body.search .search-content .content01 .subcontent .hataslistcont .btn:hover span::after {
              border-color: transparent transparent transparent #fff; } }
  body.search .search-content .content02 {
    background: #f8f8f8;
    margin-top: 100px;
    padding-bottom: 100px; }
    @media only screen and (max-width: 767px) {
      body.search .search-content .content02 {
        margin-top: 0;
        padding-bottom: 60px; } }
    body.search .search-content .content02 .subcont01 .ttl-03 {
      margin: 100px 0 90px; }
      @media only screen and (max-width: 767px) {
        body.search .search-content .content02 .subcont01 .ttl-03 {
          line-height: 24px;
          margin: 55px 0 43px; } }
      body.search .search-content .content02 .subcont01 .ttl-03 .en {
        margin-bottom: 20px; }
        @media only screen and (max-width: 767px) {
          body.search .search-content .content02 .subcont01 .ttl-03 .en {
            margin-bottom: 10px; }
            body.search .search-content .content02 .subcont01 .ttl-03 .en::before {
              top: 27px; } }
    body.search .search-content .content02 .subcont01 .stepbox {
      padding-bottom: 40px; }
      @media only screen and (max-width: 767px) {
        body.search .search-content .content02 .subcont01 .stepbox {
          padding-bottom: 25px; } }
      body.search .search-content .content02 .subcont01 .stepbox .boxcont {
        display: flex;
        position: relative; }
        @media only screen and (max-width: 767px) {
          body.search .search-content .content02 .subcont01 .stepbox .boxcont {
            margin-bottom: 20px; } }
        body.search .search-content .content02 .subcont01 .stepbox .boxcont .numberbox {
          border: 2px #5db2cc solid;
          width: 130px;
          height: 130px;
          text-align: center;
          display: flex;
          align-items: center;
          justify-content: center;
          flex-wrap: wrap;
          padding: 28px 0 16px;
          position: absolute;
          left: 0;
          z-index: 1;
          background-color: #fff;
          top: 10px;
          letter-spacing: 4px; }
          @media only screen and (max-width: 767px) {
            body.search .search-content .content02 .subcont01 .stepbox .boxcont .numberbox {
              width: 70px;
              height: 70px;
              padding: 15px 0 16px;
              left: -10px;
              border: 1px #5db2cc solid; } }
          body.search .search-content .content02 .subcont01 .stepbox .boxcont .numberbox .tit {
            font-size: 22px;
            font-size: 2.2rem;
            font-weight: bold;
            font-family: "Raleway", sans-serif;
            color: #5db2cc;
            width: 100%; }
            @media only screen and (max-width: 767px) {
              body.search .search-content .content02 .subcont01 .stepbox .boxcont .numberbox .tit {
                font-size: 12px;
                font-size: 1.2rem;
                font-weight: bold;
                letter-spacing: 2px; } }
          body.search .search-content .content02 .subcont01 .stepbox .boxcont .numberbox .num {
            font-size: 50px;
            font-size: 5rem;
            font-weight: bold;
            font-family: "Lato", sans-serif;
            color: #5db2cc;
            width: 100%; }
            @media only screen and (max-width: 767px) {
              body.search .search-content .content02 .subcont01 .stepbox .boxcont .numberbox .num {
                font-size: 27px;
                font-size: 2.7rem;
                letter-spacing: 2px;
                margin-top: 3px; } }
        body.search .search-content .content02 .subcont01 .stepbox .boxcont .contentstepbox {
          background-color: #fff;
          padding: 48px 60px 40px 80px;
          width: 89%;
          max-width: 890px;
          position: relative;
          left: 110px;
          margin-bottom: 20px; }
          @media only screen and (max-width: 767px) {
            body.search .search-content .content02 .subcont01 .stepbox .boxcont .contentstepbox {
              width: 100%;
              max-width: 100%;
              padding: 28px 15px 15px;
              left: 0;
              margin-bottom: -5px; } }
          body.search .search-content .content02 .subcont01 .stepbox .boxcont .contentstepbox .title {
            display: flex;
            justify-content: space-between;
            border-bottom: 1px #e6e6e6 dotted;
            padding-bottom: 20px;
            margin-bottom: 23px;
            position: relative;
            letter-spacing: 1px; }
            @media only screen and (max-width: 767px) {
              body.search .search-content .content02 .subcont01 .stepbox .boxcont .contentstepbox .title {
                display: block;
                width: 80%;
                position: relative;
                left: 20%;
                padding-bottom: 15px;
                margin-bottom: 15px; } }
            body.search .search-content .content02 .subcont01 .stepbox .boxcont .contentstepbox .title::after {
              content: "";
              position: absolute;
              display: block;
              width: 10px;
              height: 15px;
              background-image: url("../images/manage/arw.png");
              background-repeat: no-repeat;
              background-size: cover;
              background-position: top;
              left: -1px;
              top: 4px; }
              @media only screen and (max-width: 767px) {
                body.search .search-content .content02 .subcont01 .stepbox .boxcont .contentstepbox .title::after {
                  width: 4px;
                  height: 8px; } }
              @media all and (-ms-high-contrast: none) {
                body.search .search-content .content02 .subcont01 .stepbox .boxcont .contentstepbox .title::after {
                  top: 1px; } }
            body.search .search-content .content02 .subcont01 .stepbox .boxcont .contentstepbox .title .h4ja {
              font-size: 24px;
              font-size: 2.4rem;
              font-family: "Noto Sans JP", sans-serif; }
              body.search .search-content .content02 .subcont01 .stepbox .boxcont .contentstepbox .title .h4ja span {
                margin-left: 22px; }
                @media only screen and (max-width: 767px) {
                  body.search .search-content .content02 .subcont01 .stepbox .boxcont .contentstepbox .title .h4ja span {
                    margin-left: 11px; } }
              @media only screen and (max-width: 767px) {
                body.search .search-content .content02 .subcont01 .stepbox .boxcont .contentstepbox .title .h4ja {
                  font-size: 17px;
                  font-size: 1.7rem; } }
              @media all and (-ms-high-contrast: none) {
                body.search .search-content .content02 .subcont01 .stepbox .boxcont .contentstepbox .title .h4ja {
                  flex: 1; } }
            body.search .search-content .content02 .subcont01 .stepbox .boxcont .contentstepbox .title .h4en {
              font-size: 18px;
              font-size: 1.8rem;
              font-weight: bold;
              font-family: "Raleway", sans-serif;
              color: #5db2cc; }
              @media only screen and (max-width: 767px) {
                body.search .search-content .content02 .subcont01 .stepbox .boxcont .contentstepbox .title .h4en {
                  font-size: 12px;
                  font-size: 1.2rem;
                  margin: 8px 0 0 13px; } }
          body.search .search-content .content02 .subcont01 .stepbox .boxcont .contentstepbox .textnote {
            display: flex;
            font-size: 12px;
            font-size: 1.2rem;
            margin: 10px 0; }
    body.search .search-content .content02 .subcont01 .btn {
      margin: 0 auto; }
  body.search .search-content .content03 {
    margin: 100px 0 0; }
    @media only screen and (max-width: 767px) {
      body.search .search-content .content03 {
        margin: 55px 0 0; } }
    body.search .search-content .content03 .title {
      display: flex;
      align-items: center;
      justify-content: center;
      margin-bottom: 47px; }
      @media only screen and (max-width: 767px) {
        body.search .search-content .content03 .title {
          display: block;
          margin-bottom: 25px; } }
      body.search .search-content .content03 .title .ttl-04 {
        display: flex;
        align-items: baseline; }
        @media only screen and (max-width: 767px) {
          body.search .search-content .content03 .title .ttl-04 {
            justify-content: center;
            text-align: center;
            line-height: 24px;
            border-bottom: 1px #5db2cc dotted;
            padding-bottom: 9px; }
            body.search .search-content .content03 .title .ttl-04 .en {
              margin-bottom: 18px; } }
    @media only screen and (max-width: 767px) and (max-width: 767px) {
      body.search .search-content .content03 .title .ttl-04 .en {
        margin-bottom: 12px; }
        body.search .search-content .content03 .title .ttl-04 .en::before {
          top: 27px; } }
      body.search .search-content .content03 .title .storeh4 {
        font-size: 18px;
        font-size: 1.8rem;
        font-weight: bold;
        margin-left: 60px;
        margin-top: 25px; }
        @media only screen and (max-width: 767px) {
          body.search .search-content .content03 .title .storeh4 {
            text-align: center;
            line-height: 24px;
            margin-left: 0;
            margin-top: 15px; } }
    @media only screen and (min-width: 768px) {
      body.search .search-content .content03 .storecontent {
        border-top: 2px #5db2cc dotted;
        padding-top: 60px; } }
    body.search .search-content .content03 .storecontent .detaibox {
      display: flex;
      justify-content: space-between;
      border-bottom: 1px #e6e6e6 solid;
      padding-bottom: 40px;
      margin-bottom: 40px; }
      @media only screen and (max-width: 767px) {
        body.search .search-content .content03 .storecontent .detaibox {
          display: block;
          padding-bottom: 30px;
          margin-bottom: 30px; } }
      body.search .search-content .content03 .storecontent .detaibox .detaiboxleft {
        width: 43%;
        max-width: 430px; }
        @media only screen and (max-width: 767px) {
          body.search .search-content .content03 .storecontent .detaibox .detaiboxleft {
            width: 100%;
            max-width: 100%; } }
      body.search .search-content .content03 .storecontent .detaibox .detaiboxright {
        width: 50%;
        max-width: 500px; }
        @media only screen and (max-width: 767px) {
          body.search .search-content .content03 .storecontent .detaibox .detaiboxright {
            width: 100%;
            max-width: 100%; } }
        body.search .search-content .content03 .storecontent .detaibox .detaiboxright .cont01 {
          display: flex;
          justify-content: space-between; }
          @media only screen and (max-width: 767px) {
            body.search .search-content .content03 .storecontent .detaibox .detaiboxright .cont01 {
              display: block; } }
          body.search .search-content .content03 .storecontent .detaibox .detaiboxright .cont01 .detaiboxrightinfoleft {
            width: 80%;
            max-width: 380px; }
            @media only screen and (max-width: 767px) {
              body.search .search-content .content03 .storecontent .detaibox .detaiboxright .cont01 .detaiboxrightinfoleft {
                width: 100%;
                max-width: 100%; } }
            body.search .search-content .content03 .storecontent .detaibox .detaiboxright .cont01 .detaiboxrightinfoleft .title-name {
              display: flex;
              align-items: center;
              font-family: "Noto Sans JP", sans-serif;
              margin-bottom: 18px; }
              @media only screen and (max-width: 767px) {
                body.search .search-content .content03 .storecontent .detaibox .detaiboxright .cont01 .detaiboxrightinfoleft .title-name {
                  margin: 18px 0 13px; } }
              body.search .search-content .content03 .storecontent .detaibox .detaiboxright .cont01 .detaiboxrightinfoleft .title-name span {
                position: relative;
                font-size: 22px;
                font-size: 2.2rem;
                padding-left: 20px; }
                @media only screen and (max-width: 767px) {
                  body.search .search-content .content03 .storecontent .detaibox .detaiboxright .cont01 .detaiboxrightinfoleft .title-name span {
                    font-size: 18px;
                    font-size: 1.8rem;
                    padding-left: 12px; } }
                body.search .search-content .content03 .storecontent .detaibox .detaiboxright .cont01 .detaiboxrightinfoleft .title-name span::after {
                  content: "";
                  position: absolute;
                  display: block;
                  width: 10px;
                  height: 15px;
                  background-image: url("../images/manage/arw.png");
                  background-repeat: no-repeat;
                  background-size: cover;
                  background-position: top;
                  left: -1px;
                  top: 4px; }
                  @media only screen and (max-width: 767px) {
                    body.search .search-content .content03 .storecontent .detaibox .detaiboxright .cont01 .detaiboxrightinfoleft .title-name span::after {
                      width: 4px;
                      height: 8px; } }
                  @media all and (-ms-high-contrast: none) {
                    body.search .search-content .content03 .storecontent .detaibox .detaiboxright .cont01 .detaiboxrightinfoleft .title-name span::after {
                      top: 1px; } }
              body.search .search-content .content03 .storecontent .detaibox .detaiboxright .cont01 .detaiboxrightinfoleft .title-name small {
                font-size: 32px;
                font-size: 3.2rem; }
                @media only screen and (max-width: 767px) {
                  body.search .search-content .content03 .storecontent .detaibox .detaiboxright .cont01 .detaiboxrightinfoleft .title-name small {
                    font-size: 21px;
                    font-size: 2.1rem; } }
            body.search .search-content .content03 .storecontent .detaibox .detaiboxright .cont01 .detaiboxrightinfoleft .adress {
              font-size: 15px;
              font-size: 1.5rem;
              font-family: "Noto Sans JP", sans-serif;
              line-height: 24px; }
            body.search .search-content .content03 .storecontent .detaibox .detaiboxright .cont01 .detaiboxrightinfoleft .list {
              font-size: 15px;
              font-size: 1.5rem;
              margin-top: 25px; }
              @media only screen and (max-width: 767px) {
                body.search .search-content .content03 .storecontent .detaibox .detaiboxright .cont01 .detaiboxrightinfoleft .list {
                  margin-top: 15px; } }
              body.search .search-content .content03 .storecontent .detaibox .detaiboxright .cont01 .detaiboxrightinfoleft .list .listcont {
                position: relative;
                margin-bottom: 12px; }
                @media only screen and (max-width: 767px) {
                  body.search .search-content .content03 .storecontent .detaibox .detaiboxright .cont01 .detaiboxrightinfoleft .list .listcont {
                    margin-bottom: 10px; } }
                body.search .search-content .content03 .storecontent .detaibox .detaiboxright .cont01 .detaiboxrightinfoleft .list .listcont::before {
                  content: "";
                  position: absolute;
                  width: 12px;
                  height: 12px;
                  background-color: #f9cf00;
                  display: block;
                  top: 1px; }
                  @media all and (-ms-high-contrast: none) {
                    body.search .search-content .content03 .storecontent .detaibox .detaiboxright .cont01 .detaiboxrightinfoleft .list .listcont::before {
                      top: -1px; } }
                body.search .search-content .content03 .storecontent .detaibox .detaiboxright .cont01 .detaiboxrightinfoleft .list .listcont span {
                  padding-left: 18px; }
          body.search .search-content .content03 .storecontent .detaibox .detaiboxright .cont01 .detaiboxrightinforight {
            width: 30%;
            max-width: 100px; }
            @media only screen and (max-width: 767px) {
              body.search .search-content .content03 .storecontent .detaibox .detaiboxright .cont01 .detaiboxrightinforight {
                width: 100%;
                max-width: 100%; } }
        body.search .search-content .content03 .storecontent .detaibox .detaiboxright .cont02 {
          display: flex;
          align-items: center;
          justify-content: space-between;
          margin: 20px 0 30px; }
          @media only screen and (max-width: 767px) {
            body.search .search-content .content03 .storecontent .detaibox .detaiboxright .cont02 {
              display: block;
              margin: 25px 0 18px; } }
          body.search .search-content .content03 .storecontent .detaibox .detaiboxright .cont02 .button .tel {
            font-size: 34px;
            font-size: 3.4rem;
            font-family: "Lato", sans-serif;
            position: relative; }
            @media only screen and (max-width: 767px) {
              body.search .search-content .content03 .storecontent .detaibox .detaiboxright .cont02 .button .tel {
                font-size: 30px;
                font-size: 3rem;
                letter-spacing: 1px;
                display: flex;
                align-items: center;
                justify-content: center;
                margin-bottom: 20px; } }
            body.search .search-content .content03 .storecontent .detaibox .detaiboxright .cont02 .button .tel::after {
              content: "";
              position: absolute;
              width: 14px;
              height: 25px;
              display: block;
              background-image: url("../images/search/icn_tel.png");
              background-repeat: no-repeat;
              background-size: contain;
              left: 0;
              top: 9px; }
              @media only screen and (max-width: 767px) {
                body.search .search-content .content03 .storecontent .detaibox .detaiboxright .cont02 .button .tel::after {
                  left: 46px;
                  top: 5px; } }
            body.search .search-content .content03 .storecontent .detaibox .detaiboxright .cont02 .button .tel span {
              padding-left: 25px; }
              @media only screen and (max-width: 767px) {
                body.search .search-content .content03 .storecontent .detaibox .detaiboxright .cont02 .button .tel span {
                  padding-left: 22px; } }
            body.search .search-content .content03 .storecontent .detaibox .detaiboxright .cont02 .button .tel:hover {
              opacity: 0.6; }
          body.search .search-content .content03 .storecontent .detaibox .detaiboxright .cont02 .eigyoutime {
            display: flex;
            align-items: center; }
            body.search .search-content .content03 .storecontent .detaibox .detaiboxright .cont02 .eigyoutime .eigyou {
              font-size: 15px;
              font-size: 1.5rem;
              font-family: "Noto Sans JP", sans-serif;
              width: 80px;
              height: 30px;
              color: #fff;
              display: flex;
              align-items: center;
              justify-content: center;
              background: #5db2cc;
              margin-right: 23px; }
              @media only screen and (max-width: 767px) {
                body.search .search-content .content03 .storecontent .detaibox .detaiboxright .cont02 .eigyoutime .eigyou {
                  font-size: 13px;
                  font-size: 1.3rem;
                  width: 75px;
                  height: 20px;
                  margin-right: 12px; } }
              @media all and (-ms-high-contrast: none) {
                body.search .search-content .content03 .storecontent .detaibox .detaiboxright .cont02 .eigyoutime .eigyou {
                  padding-top: 7px; } }
            body.search .search-content .content03 .storecontent .detaibox .detaiboxright .cont02 .eigyoutime .time {
              font-size: 15px;
              font-size: 1.5rem;
              font-family: "Noto Sans JP", sans-serif;
              line-height: 20px; }
        body.search .search-content .content03 .storecontent .detaibox .detaiboxright .cont03 {
          background-color: #f8f8f8;
          padding: 25px 30px;
          border-radius: 8px; }
          @media only screen and (max-width: 767px) {
            body.search .search-content .content03 .storecontent .detaibox .detaiboxright .cont03 {
              border-radius: 5px;
              padding: 11px 15px 7px; } }
        @media only screen and (max-width: 767px) {
          body.search .search-content .content03 .storecontent .detaibox .detaiboxright .line-btn {
            margin-top: 25px;
            display: block; } }
    @media only screen and (min-width: 768px) {
      body.search .search-content .content03 .storecontent .detaiboxlast {
        border-bottom: none; } }
    body.search .search-content .content03 .btn {
      margin: 0 auto; }
      @media only screen and (max-width: 767px) {
        body.search .search-content .content03 .btn {
          margin: 40px auto 0; } }
  body.search .search-content .btn {
    width: 370px;
    max-width: 100%;
    display: block;
    position: relative;
    overflow: hidden;
    text-decoration: none;
    border: 1px solid #5db2cc;
    background-color: #5db2cc;
    text-align: center;
    outline: none;
    transition: ease 0.2s;
    letter-spacing: 1px; }
    @media only screen and (max-width: 767px) {
      body.search .search-content .btn {
        margin: 7px auto 0; } }
    body.search .search-content .btn::before {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      z-index: 2;
      background: #fff;
      width: 100%;
      height: 100%;
      transition: transform 0.5s cubic-bezier(0.8, 0, 0.2, 1) 0s;
      transform: scale(0, 1);
      transform-origin: right top; }
    body.search .search-content .btn span {
      position: relative;
      z-index: 3;
      color: #fff;
      transition: color 0.2s;
      display: block;
      font-size: 18px;
      font-size: 1.8rem;
      font-family: "Noto Sans JP", sans-serif;
      font-weight: bold;
      line-height: 30px;
      padding: 19px 0; }
      @media only screen and (max-width: 767px) {
        body.search .search-content .btn span {
          font-size: 16px;
          font-size: 1.6rem;
          line-height: 24px;
          padding: 17px 0;
          letter-spacing: 0.04em; } }
      body.search .search-content .btn span::after, body.search .search-content .btn span::before {
        content: "";
        position: absolute;
        top: 50%; }
      body.search .search-content .btn span::before {
        z-index: 4;
        right: 24px;
        border-radius: 50%;
        width: 22px;
        height: 22px;
        background-color: #fff;
        margin-top: -11px;
        transition: background-color 0.2s; }
        @media only screen and (max-width: 767px) {
          body.search .search-content .btn span::before {
            right: 20px;
            width: 15px;
            height: 15px;
            margin-top: -7px; } }
      body.search .search-content .btn span::after {
        right: 31px;
        z-index: 5;
        margin-top: -5px;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 5px 0 5px 6px;
        border-color: transparent transparent transparent #5db2cc;
        transition: border-color 0.2s; }
        @media only screen and (max-width: 767px) {
          body.search .search-content .btn span::after {
            right: 25px;
            margin-top: -3px;
            border-width: 3.5px 0 3.5px 4px; } }
    @media only screen and (min-width: 768px) {
      body.search .search-content .btn:hover::before {
        transform-origin: left top;
        transform: scale(1, 1); }
      body.search .search-content .btn:hover span {
        color: #5db2cc; }
        body.search .search-content .btn:hover span::before {
          background-color: #5db2cc; }
        body.search .search-content .btn:hover span::after {
          border-color: transparent transparent transparent #fff; } }

body.search .anima-me {
  animation-delay: .3s;
  opacity: 0; }

body.service .service-content {
  padding: 105px 0 193px; }
  @media only screen and (max-width: 767px) {
    body.service .service-content {
      padding: 45px 0 112px; } }
  body.service .service-content p {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 28px; }
    @media only screen and (max-width: 767px) {
      body.service .service-content p {
        line-height: 24px;
        text-align: justify; } }
  @media only screen and (max-width: 767px) {
    body.service .service-content .subtitsp {
      font-size: 16px;
      font-size: 1.6rem;
      font-weight: bold;
      margin-top: 15px;
      line-height: 24px; } }
  body.service .service-content .content01 .content01-cont01 {
    max-width: 880px;
    margin: 0 auto 70px; }
    @media only screen and (max-width: 767px) {
      body.service .service-content .content01 .content01-cont01 {
        margin: 0 auto 45px; } }
    body.service .service-content .content01 .content01-cont01 .ttl-01 {
      margin-bottom: 55px; }
      @media only screen and (max-width: 767px) {
        body.service .service-content .content01 .content01-cont01 .ttl-01 {
          margin-bottom: 25px; } }
  body.service .service-content .content01 .content01-cont02 .content01-cont02-list {
    margin-top: 40px; }
    @media only screen and (max-width: 767px) {
      body.service .service-content .content01 .content01-cont02 .content01-cont02-list {
        margin-top: 26px; } }
    body.service .service-content .content01 .content01-cont02 .content01-cont02-list li {
      display: flex;
      justify-content: space-between;
      margin-bottom: 40px;
      padding-bottom: 40px;
      border-bottom: 1px dotted #e6e6e6; }
      @media only screen and (max-width: 767px) {
        body.service .service-content .content01 .content01-cont02 .content01-cont02-list li {
          margin-bottom: 20px;
          padding-bottom: 19px; } }
      @media only screen and (min-width: 768px) {
        body.service .service-content .content01 .content01-cont02 .content01-cont02-list li .img-left {
          width: 28%;
          max-width: 280px; } }
      body.service .service-content .content01 .content01-cont02 .content01-cont02-list li .box-right {
        width: 67%;
        max-width: 670px; }
        @media only screen and (max-width: 767px) {
          body.service .service-content .content01 .content01-cont02 .content01-cont02-list li .box-right {
            width: 100%;
            max-width: 100%; } }
        body.service .service-content .content01 .content01-cont02 .content01-cont02-list li .box-right .title {
          background: #5db2cc;
          color: #fff;
          font-weight: bold;
          font-size: 18px;
          font-size: 1.8rem;
          font-family: "Raleway", sans-serif;
          height: 30px;
          display: flex;
          align-items: center;
          padding-left: 20px;
          margin-bottom: 30px;
          font-variant-numeric: lining-nums; }
          @media only screen and (max-width: 767px) {
            body.service .service-content .content01 .content01-cont02 .content01-cont02-list li .box-right .title {
              font-size: 14px;
              font-size: 1.4rem;
              height: 25px;
              justify-content: center;
              padding-left: 0;
              margin-bottom: 18px; } }
          @media all and (-ms-high-contrast: none) {
            body.service .service-content .content01 .content01-cont02 .content01-cont02-list li .box-right .title {
              padding-top: 2px; } }
        @media only screen and (max-width: 767px) {
          body.service .service-content .content01 .content01-cont02 .content01-cont02-list li .box-right .imgsp {
            margin-top: 20px; } }
        body.service .service-content .content01 .content01-cont02 .content01-cont02-list li .box-right .checklist {
          font-size: 18px;
          font-size: 1.8rem;
          display: block;
          margin: 27px 0 0; }
          @media only screen and (max-width: 767px) {
            body.service .service-content .content01 .content01-cont02 .content01-cont02-list li .box-right .checklist {
              font-size: 15px;
              font-size: 1.5rem;
              margin: 20px 0 0; } }
          body.service .service-content .content01 .content01-cont02 .content01-cont02-list li .box-right .checklist div {
            position: relative;
            margin-bottom: 22px; }
            @media only screen and (max-width: 767px) {
              body.service .service-content .content01 .content01-cont02 .content01-cont02-list li .box-right .checklist div {
                margin-bottom: 15px;
                display: flex; } }
            body.service .service-content .content01 .content01-cont02 .content01-cont02-list li .box-right .checklist div::after {
              content: "";
              position: absolute;
              width: 20px;
              height: 20px;
              display: block;
              background-image: url("../images/service/check.png");
              background-repeat: no-repeat;
              background-size: contain;
              left: 0;
              top: 0; }
              @media only screen and (max-width: 767px) {
                body.service .service-content .content01 .content01-cont02 .content01-cont02-list li .box-right .checklist div::after {
                  width: 15px;
                  height: 15px;
                  left: 0;
                  top: 0; } }
              @media all and (-ms-high-contrast: none) {
                body.service .service-content .content01 .content01-cont02 .content01-cont02-list li .box-right .checklist div::after {
                  top: -4px; } }
            body.service .service-content .content01 .content01-cont02 .content01-cont02-list li .box-right .checklist div span {
              padding-left: 30px; }
              @media only screen and (max-width: 767px) {
                body.service .service-content .content01 .content01-cont02 .content01-cont02-list li .box-right .checklist div span {
                  padding-left: 22px; } }
          body.service .service-content .content01 .content01-cont02 .content01-cont02-list li .box-right .checklist .last {
            margin-bottom: 0; }
          @media only screen and (max-width: 767px) {
            body.service .service-content .content01 .content01-cont02 .content01-cont02-list li .box-right .checklist .l-h {
              line-height: 24px;
              margin-top: -5px; }
              body.service .service-content .content01 .content01-cont02 .content01-cont02-list li .box-right .checklist .l-h::after {
                top: 5px; } }
        body.service .service-content .content01 .content01-cont02 .content01-cont02-list li .box-right .textnote {
          font-size: 12px;
          font-size: 1.2rem;
          margin-top: 17px; }
          @media only screen and (max-width: 767px) {
            body.service .service-content .content01 .content01-cont02 .content01-cont02-list li .box-right .textnote {
              display: flex;
              font-size: 11px;
              font-size: 1.1rem;
              line-height: 16px;
              margin-top: 10px; } }
  body.service .service-content .content01 .content01-cont03 {
    margin-top: 150px; }
    @media only screen and (max-width: 767px) {
      body.service .service-content .content01 .content01-cont03 {
        margin-top: 75px; } }
    body.service .service-content .content01 .content01-cont03 .risklist {
      display: flex;
      justify-content: space-between;
      margin-top: 40px;
      flex-wrap: wrap; }
      @media only screen and (max-width: 767px) {
        body.service .service-content .content01 .content01-cont03 .risklist {
          margin-top: 25px; } }
      body.service .service-content .content01 .content01-cont03 .risklist li {
        width: 24%;
        max-width: 235px;
        padding: 40px 0 25px;
        text-align: center;
        border-top: 1px #e6e6e6 solid;
        border-right: 1px #e6e6e6 solid;
        border-left: 1px #e6e6e6 solid;
        border-bottom: 2px #5db2cc solid; }
        @media only screen and (max-width: 767px) {
          body.service .service-content .content01 .content01-cont03 .risklist li {
            width: 48.5%;
            padding: 20px 0 18px;
            border-bottom: 1px #5db2cc solid;
            margin-bottom: 10px; } }
        body.service .service-content .content01 .content01-cont03 .risklist li .img {
          text-align: center;
          margin-bottom: 42px; }
          @media only screen and (max-width: 767px) {
            body.service .service-content .content01 .content01-cont03 .risklist li .img {
              margin-bottom: 15px;
              height: 90px; } }
        body.service .service-content .content01 .content01-cont03 .risklist li:nth-child(1) img {
          width: 120px; }
          @media only screen and (max-width: 767px) {
            body.service .service-content .content01 .content01-cont03 .risklist li:nth-child(1) img {
              width: 108px; } }
        body.service .service-content .content01 .content01-cont03 .risklist li:nth-child(2) img {
          width: 90px; }
          @media only screen and (max-width: 767px) {
            body.service .service-content .content01 .content01-cont03 .risklist li:nth-child(2) img {
              width: 80px; } }
        body.service .service-content .content01 .content01-cont03 .risklist li:nth-child(3) img {
          width: 100px; }
          @media only screen and (max-width: 767px) {
            body.service .service-content .content01 .content01-cont03 .risklist li:nth-child(3) img {
              width: 90px; } }
        body.service .service-content .content01 .content01-cont03 .risklist li:nth-child(4) img {
          width: 95px; }
          @media only screen and (max-width: 767px) {
            body.service .service-content .content01 .content01-cont03 .risklist li:nth-child(4) img {
              width: 83px; } }
        body.service .service-content .content01 .content01-cont03 .risklist li h5 {
          font-size: 24px;
          font-size: 2.4rem;
          font-family: "Noto Sans JP", sans-serif; }
          @media only screen and (max-width: 767px) {
            body.service .service-content .content01 .content01-cont03 .risklist li h5 {
              font-size: 16px;
              font-size: 1.6rem; } }
  body.service .service-content .content01 .content01-cont04 {
    margin-top: 140px; }
    @media only screen and (max-width: 767px) {
      body.service .service-content .content01 .content01-cont04 {
        margin-top: 65px; } }
    body.service .service-content .content01 .content01-cont04 .contactbox {
      display: flex;
      justify-content: space-between;
      margin-top: 40px; }
      @media only screen and (max-width: 767px) {
        body.service .service-content .content01 .content01-cont04 .contactbox {
          display: block;
          margin-top: 15px; } }
      body.service .service-content .content01 .content01-cont04 .contactbox .left {
        width: 22%;
        max-width: 220px; }
        @media only screen and (max-width: 767px) {
          body.service .service-content .content01 .content01-cont04 .contactbox .left {
            width: 100%;
            max-width: 100%; } }
        body.service .service-content .content01 .content01-cont04 .contactbox .left h5 {
          font-size: 24px;
          font-size: 2.4rem;
          line-height: 34px;
          display: flex;
          position: relative;
          font-family: "Noto Sans JP", sans-serif; }
          @media only screen and (max-width: 767px) {
            body.service .service-content .content01 .content01-cont04 .contactbox .left h5 {
              font-size: 16px;
              font-size: 1.6rem;
              margin-bottom: 10px; } }
          body.service .service-content .content01 .content01-cont04 .contactbox .left h5::after {
            content: "";
            position: absolute;
            width: 12px;
            height: 14px;
            display: block;
            background-image: url("../images/manage/arw.png");
            background-repeat: no-repeat;
            background-size: contain;
            left: 0;
            top: 10px; }
            @media only screen and (max-width: 767px) {
              body.service .service-content .content01 .content01-cont04 .contactbox .left h5::after {
                width: 8px;
                height: 10px;
                left: 0;
                top: 12px; } }
          body.service .service-content .content01 .content01-cont04 .contactbox .left h5 span {
            padding-left: 22px; }
            @media only screen and (max-width: 767px) {
              body.service .service-content .content01 .content01-cont04 .contactbox .left h5 span {
                padding-left: 15px; } }
      body.service .service-content .content01 .content01-cont04 .contactbox .buttonbox {
        width: 75%;
        max-width: 750px;
        display: flex;
        justify-content: space-between;
        align-items: center; }
        @media only screen and (max-width: 767px) {
          body.service .service-content .content01 .content01-cont04 .contactbox .buttonbox {
            width: 100%;
            max-width: 100%;
            display: block; } }
        body.service .service-content .content01 .content01-cont04 .contactbox .buttonbox .contact,
        body.service .service-content .content01 .content01-cont04 .contactbox .buttonbox .tel {
          width: 370px;
          height: 70px;
          background: #5db2cc;
          color: #fff;
          text-align: center;
          align-items: center;
          justify-content: center;
          display: flex;
          font-family: "Noto Sans JP", sans-serif; }
          @media only screen and (max-width: 767px) {
            body.service .service-content .content01 .content01-cont04 .contactbox .buttonbox .contact,
            body.service .service-content .content01 .content01-cont04 .contactbox .buttonbox .tel {
              width: 100%;
              height: 60px; } }
          body.service .service-content .content01 .content01-cont04 .contactbox .buttonbox .contact:hover,
          body.service .service-content .content01 .content01-cont04 .contactbox .buttonbox .tel:hover {
            opacity: 0.6; }
        body.service .service-content .content01 .content01-cont04 .contactbox .buttonbox .contact {
          font-size: 18px;
          font-size: 1.8rem;
          position: relative; }
          @media only screen and (max-width: 767px) {
            body.service .service-content .content01 .content01-cont04 .contactbox .buttonbox .contact {
              font-size: 16px;
              font-size: 1.6rem;
              margin-bottom: 7px; } }
          body.service .service-content .content01 .content01-cont04 .contactbox .buttonbox .contact::after {
            content: "";
            position: absolute;
            width: 22px;
            height: 16px;
            display: block;
            background-image: url("../images/service/icn_mail.png");
            background-repeat: no-repeat;
            background-size: contain;
            left: 73px;
            top: 27px; }
            @media only screen and (max-width: 767px) {
              body.service .service-content .content01 .content01-cont04 .contactbox .buttonbox .contact::after {
                width: 20px;
                height: 14px;
                left: 66px;
                top: 23px; } }
          body.service .service-content .content01 .content01-cont04 .contactbox .buttonbox .contact span {
            padding-left: 35px; }
            @media only screen and (max-width: 767px) {
              body.service .service-content .content01 .content01-cont04 .contactbox .buttonbox .contact span {
                padding-left: 25px; } }
        body.service .service-content .content01 .content01-cont04 .contactbox .buttonbox .tel {
          font-size: 28px;
          font-size: 2.8rem;
          font-family: "Lato", sans-serif;
          position: relative; }
          @media only screen and (max-width: 767px) {
            body.service .service-content .content01 .content01-cont04 .contactbox .buttonbox .tel {
              font-size: 21px;
              font-size: 2.1rem;
              letter-spacing: 1px; } }
          body.service .service-content .content01 .content01-cont04 .contactbox .buttonbox .tel::after {
            content: "";
            position: absolute;
            width: 12px;
            height: 23px;
            display: block;
            background-image: url("../images/service/icn_tel.png");
            background-repeat: no-repeat;
            background-size: contain;
            left: 77px;
            top: 25px; }
            @media only screen and (max-width: 767px) {
              body.service .service-content .content01 .content01-cont04 .contactbox .buttonbox .tel::after {
                width: 10px;
                height: 21px;
                left: 78px;
                top: 22px; } }
          body.service .service-content .content01 .content01-cont04 .contactbox .buttonbox .tel span {
            padding-left: 25px; }
            @media only screen and (max-width: 767px) {
              body.service .service-content .content01 .content01-cont04 .contactbox .buttonbox .tel span {
                padding-left: 22px; } }
  body.service .service-content .content02 .big-img {
    margin: 120px 0; }
    @media only screen and (max-width: 767px) {
      body.service .service-content .content02 .big-img {
        margin: 60px 0; } }
  body.service .service-content .content02 .moving-internet .movingbox {
    display: flex;
    justify-content: space-between;
    align-items: center; }
    @media only screen and (max-width: 767px) {
      body.service .service-content .content02 .moving-internet .movingbox {
        display: block; } }
    body.service .service-content .content02 .moving-internet .movingbox .left {
      width: 67%;
      max-width: 667px; }
      @media only screen and (max-width: 767px) {
        body.service .service-content .content02 .moving-internet .movingbox .left {
          width: 100%;
          max-width: 100%; } }
      body.service .service-content .content02 .moving-internet .movingbox .left .ttl-04 {
        display: flex;
        align-items: baseline;
        margin-bottom: 70px; }
        @media only screen and (max-width: 767px) {
          body.service .service-content .content02 .moving-internet .movingbox .left .ttl-04 {
            display: block;
            text-align: center;
            margin-bottom: 32px; }
            body.service .service-content .content02 .moving-internet .movingbox .left .ttl-04 .en {
              margin-bottom: 18px; } }
      @media only screen and (max-width: 767px) {
        body.service .service-content .content02 .moving-internet .movingbox .left .spimg {
          margin: 21px 0 0; } }
      body.service .service-content .content02 .moving-internet .movingbox .left p {
        margin: 32px 0 8px; }
        @media only screen and (max-width: 767px) {
          body.service .service-content .content02 .moving-internet .movingbox .left p {
            margin: 14px 0 8px; } }
      body.service .service-content .content02 .moving-internet .movingbox .left .textnote {
        font-size: 12px;
        font-size: 1.2rem; }
        @media only screen and (max-width: 767px) {
          body.service .service-content .content02 .moving-internet .movingbox .left .textnote {
            display: flex;
            font-size: 11px;
            font-size: 1.1rem;
            line-height: 16px; } }
    body.service .service-content .content02 .moving-internet .movingbox .right {
      width: 26%;
      max-width: 260px; }
      @media only screen and (max-width: 767px) {
        body.service .service-content .content02 .moving-internet .movingbox .right {
          width: 100%;
          max-width: 100%; } }
  body.service .service-content .content02 .moving-internet .internetbox {
    border-top: 1px dotted #e6e6e6;
    padding-top: 40px;
    margin-top: 40px; }
    @media only screen and (max-width: 767px) {
      body.service .service-content .content02 .moving-internet .internetbox {
        padding-top: 28px;
        margin-top: 28px; } }

body.service .btn-youtube {
  width: 370px;
  max-width: 100%;
  display: block;
  position: relative;
  overflow: hidden;
  text-decoration: none;
  border: 1px solid #5db2cc;
  background-color: #5db2cc;
  text-align: center;
  outline: none;
  transition: ease 0.2s;
  margin-left: auto;
  margin-right: auto;
  margin-top: 40px; }
  @media only screen and (max-width: 767px) {
    body.service .btn-youtube {
      margin-top: 20px; } }
  body.service .btn-youtube::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    background: #fff;
    width: 100%;
    height: 100%;
    transition: transform 0.5s cubic-bezier(0.8, 0, 0.2, 1) 0s;
    transform: scale(0, 1);
    transform-origin: right top; }
  body.service .btn-youtube span {
    position: relative;
    z-index: 3;
    color: #fff;
    transition: color 0.2s;
    display: block;
    font-size: 18px;
    font-size: 1.8rem;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: bold;
    line-height: 30px;
    padding: 19px 0;
    text-align: left;
    padding-left: 65px; }
    @media only screen and (max-width: 767px) {
      body.service .btn-youtube span {
        font-size: 16px;
        font-size: 1.6rem;
        line-height: 24px;
        padding: 17px 0;
        letter-spacing: 0.04em;
        padding-left: 45px; } }
    body.service .btn-youtube span:before {
      content: "";
      width: 20px;
      height: 21px;
      position: absolute;
      top: 0;
      bottom: 0;
      right: auto;
      left: 30px;
      margin: auto;
      border-radius: 0;
      background-color: transparent !important;
      background-size: cover;
      background-image: url("../images/common/icn_youtube.png"); }
      @media only screen and (max-width: 767px) {
        body.service .btn-youtube span:before {
          width: 15px;
          height: 16px;
          left: 20px;
          background-image: url("../images/common/icn_youtube_sp.png"); } }
  @media only screen and (min-width: 768px) {
    body.service .btn-youtube:hover::before {
      transform-origin: left top;
      transform: scale(1, 1); }
    body.service .btn-youtube:hover span {
      color: #5db2cc; }
      body.service .btn-youtube:hover span:before {
        background-image: url("../images/common/icn_youtube_hover.png"); } }

body.sitemap .sitemap-content .sitemap-content-pc {
  max-width: 878px;
  padding: 104px 45px 128px;
  margin: 0 auto;
  font-size: 15px;
  font-size: 1.5rem;
  font-family: "Noto Sans JP", sans-serif;
  display: flex;
  justify-content: space-between; }
  body.sitemap .sitemap-content .sitemap-content-pc ul li {
    position: relative;
    margin-bottom: 25px; }
    body.sitemap .sitemap-content .sitemap-content-pc ul li:before {
      content: "";
      position: absolute;
      width: 12px;
      height: 12px;
      background-color: #f9cf00;
      top: 2px; }
    body.sitemap .sitemap-content .sitemap-content-pc ul li a {
      padding-left: 25px; }
      body.sitemap .sitemap-content .sitemap-content-pc ul li a:hover {
        opacity: 0.6; }
  body.sitemap .sitemap-content .sitemap-content-pc ul .border {
    font-family: "游ゴシック体", "游ゴシック", "YuGothic", "Yu Gothic", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif; }
    body.sitemap .sitemap-content .sitemap-content-pc ul .border:before {
      content: "";
      position: absolute;
      width: 5px;
      height: 1px;
      background-color: #f9cf00;
      top: 6px;
      left: 4px; }
      @media all and (-ms-high-contrast: none) {
        body.sitemap .sitemap-content .sitemap-content-pc ul .border:before {
          top: 4px; } }
  body.sitemap .sitemap-content .sitemap-content-pc ul .blank {
    position: relative; }
    body.sitemap .sitemap-content .sitemap-content-pc ul .blank::after {
      content: "";
      background-image: url("../images/sitemap/icn.png");
      position: absolute;
      width: 13px;
      height: 9px;
      display: block;
      right: -24px;
      top: 6px;
      background-repeat: no-repeat;
      background-size: contain; }

body.sitemap .sitemap-content .sitemap-content-sp {
  padding: 50px 25px 108px;
  font-weight: bold;
  display: flex;
  justify-content: space-between;
  font-size: 13px;
  font-size: 1.3rem;
  font-weight: bold; }
  body.sitemap .sitemap-content .sitemap-content-sp ul {
    width: 50%; }
    body.sitemap .sitemap-content .sitemap-content-sp ul li {
      position: relative;
      margin-bottom: 19px; }
      body.sitemap .sitemap-content .sitemap-content-sp ul li:before {
        content: "";
        position: absolute;
        width: 9px;
        height: 9px;
        background-color: #f9cf00;
        top: 1px; }
      body.sitemap .sitemap-content .sitemap-content-sp ul li a {
        padding-left: 15px; }
    body.sitemap .sitemap-content .sitemap-content-sp ul .border {
      font-weight: normal;
      display: flex;
      line-height: 20px;
      margin-bottom: 12px; }
      body.sitemap .sitemap-content .sitemap-content-sp ul .border:before {
        content: "";
        position: absolute;
        width: 4px;
        height: 1px;
        background-color: #f9cf00;
        top: 6px;
        left: 2px; }
    body.sitemap .sitemap-content .sitemap-content-sp ul .blank {
      position: relative; }
      body.sitemap .sitemap-content .sitemap-content-sp ul .blank::after {
        content: "";
        background-image: url("../images/sitemap/icn.png");
        position: absolute;
        width: 13px;
        height: 9px;
        display: block;
        right: -20px;
        top: 2px;
        background-repeat: no-repeat;
        background-size: contain; }
  body.sitemap .sitemap-content .sitemap-content-sp .col02 {
    padding-left: 10px; }

body.valueup .c-layout1.mt142 {
  margin-top: 142px; }
  @media only screen and (max-width: 767px) {
    body.valueup .c-layout1.mt142 {
      margin-top: 75px; } }

body.valueup .c-layout1.mb152 {
  margin-bottom: 152px; }
  @media only screen and (max-width: 767px) {
    body.valueup .c-layout1.mb152 {
      margin-top: 65px;
      margin-bottom: 56px; } }
  body.valueup .c-layout1.mb152 .c-layout1-cnt {
    padding-top: 28px; }
    @media only screen and (max-width: 767px) {
      body.valueup .c-layout1.mb152 .c-layout1-cnt {
        padding-top: 0; } }

@media only screen and (max-width: 767px) {
  body.valueup .c-layout1.spmt73 {
    margin-top: 73px; } }

@media only screen and (max-width: 767px) {
  body.valueup .c-layout1--spleft {
    margin-top: 83px; }
    body.valueup .c-layout1--spleft .c-layout1-img {
      margin-left: -20px;
      margin-right: 0; }
      body.valueup .c-layout1--spleft .c-layout1-img .bg {
        border-radius: 0px 0px 30px 0px;
        left: 0;
        right: auto; }
      body.valueup .c-layout1--spleft .c-layout1-img img {
        border-radius: 0 10px 10px 0; } }

body.valueup .c-layout2 {
  margin-top: 126px; }
  @media only screen and (max-width: 767px) {
    body.valueup .c-layout2 {
      margin-top: 45px; } }
  body.valueup .c-layout2.mt87px {
    margin-top: 87px; }
    @media only screen and (max-width: 767px) {
      body.valueup .c-layout2.mt87px {
        margin-top: 51px; } }
  body.valueup .c-layout2 + .c-layout2 {
    margin-top: 76px; }
    @media only screen and (max-width: 767px) {
      body.valueup .c-layout2 + .c-layout2 {
        margin-top: 50px; } }
  @media only screen and (min-width: 768px) {
    body.valueup .c-layout2 .c-layout2-listicon .item {
      width: 310px;
      max-width: calc(32.5% - 50px / 3);
      margin-right: 25px; }
      body.valueup .c-layout2 .c-layout2-listicon .item:nth-child(3n) {
        width: 330px;
        max-width: calc(35% - 50px / 3);
        margin-right: 0; } }
  @media only screen and (min-width: 768px) and (max-width: 1024px) {
    body.valueup .c-layout2 .c-layout2-listicon .item .item-title {
      font-size: 17px;
      font-size: 1.7rem; } }
  body.valueup .c-layout2--strength {
    margin-top: 120px; }
    @media only screen and (max-width: 767px) {
      body.valueup .c-layout2--strength {
        margin-top: 43px; } }
    body.valueup .c-layout2--strength .layout2-box1 + .layout2-box1 {
      margin-top: 45px; }
      @media only screen and (max-width: 767px) {
        body.valueup .c-layout2--strength .layout2-box1 + .layout2-box1 {
          margin-top: 42px; } }

@media only screen and (max-width: 767px) {
  body.valueup .c-flow {
    margin-top: 57px; } }

body.valueup .c-flow .c-flow-list {
  margin-top: 95px; }
  @media only screen and (max-width: 767px) {
    body.valueup .c-flow .c-flow-list {
      margin-top: 29px; } }
  body.valueup .c-flow .c-flow-list .flow .flow-cnt {
    padding-top: 10px; }
  body.valueup .c-flow .c-flow-list .flow + .flow {
    margin-top: 45px; }

body.valueup .c-flow.mt177 {
  margin-top: 177px; }
  @media only screen and (max-width: 767px) {
    body.valueup .c-flow.mt177 {
      margin-top: 93px; }
      body.valueup .c-flow.mt177 .c-flow-list .flow:before {
        bottom: -75px; }
      body.valueup .c-flow.mt177 .c-flow-list .flow + .flow {
        margin-top: 74px; }
      body.valueup .c-flow.mt177 .c-flow-list .flow.spmt45 {
        margin-top: 45px; }
      body.valueup .c-flow.mt177 .c-flow-list .flow.bfb45:before {
        bottom: -45px; } }

body.valueup .c-case .c-case-list .case .case-cnt .case-cnt-list .item .item-boxcnt {
  background: #F8F8F8;
  margin-top: 25px;
  padding: 37px 50px 37px; }
  @media only screen and (max-width: 767px) {
    body.valueup .c-case .c-case-list .case .case-cnt .case-cnt-list .item .item-boxcnt {
      margin-top: 30px;
      padding: 26px 25px 28px; } }
  body.valueup .c-case .c-case-list .case .case-cnt .case-cnt-list .item .item-boxcnt .item-boxcnt-title {
    font-size: 0;
    line-height: 0; }
    @media only screen and (max-width: 767px) {
      body.valueup .c-case .c-case-list .case .case-cnt .case-cnt-list .item .item-boxcnt .item-boxcnt-title {
        padding-left: 10px; } }
    body.valueup .c-case .c-case-list .case .case-cnt .case-cnt-list .item .item-boxcnt .item-boxcnt-title .ja {
      display: inline-block;
      vertical-align: middle;
      font-family: "Noto Sans JP", sans-serif;
      font-size: 20px;
      font-size: 2rem;
      line-height: 30px;
      font-weight: 500;
      margin-right: 16px; }
      @media only screen and (max-width: 767px) {
        body.valueup .c-case .c-case-list .case .case-cnt .case-cnt-list .item .item-boxcnt .item-boxcnt-title .ja {
          font-size: 18px;
          font-size: 1.8rem;
          line-height: 26px;
          margin-right: 12px; } }
    body.valueup .c-case .c-case-list .case .case-cnt .case-cnt-list .item .item-boxcnt .item-boxcnt-title .en {
      display: inline-block;
      vertical-align: middle;
      font-family: "Raleway", sans-serif;
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 30px;
      letter-spacing: .1em;
      font-weight: bold;
      color: #42BCC6; }
      @media only screen and (max-width: 767px) {
        body.valueup .c-case .c-case-list .case .case-cnt .case-cnt-list .item .item-boxcnt .item-boxcnt-title .en {
          font-size: 12px;
          font-size: 1.2rem;
          line-height: 26px; } }
  body.valueup .c-case .c-case-list .case .case-cnt .case-cnt-list .item .item-boxcnt .item-boxcnt-list {
    margin-top: 17px;
    padding: 21px 0 0;
    border: 0;
    border-top: 1px solid #C8D6DE; }
    @media only screen and (max-width: 767px) {
      body.valueup .c-case .c-case-list .case .case-cnt .case-cnt-list .item .item-boxcnt .item-boxcnt-list {
        margin-top: 10px;
        padding-top: 19px; } }
    body.valueup .c-case .c-case-list .case .case-cnt .case-cnt-list .item .item-boxcnt .item-boxcnt-list li {
      position: relative;
      font-size: 16px;
      font-size: 1.6rem;
      line-height: 2;
      font-weight: 500;
      padding-left: 106px; }
      @media only screen and (max-width: 1050px) {
        body.valueup .c-case .c-case-list .case .case-cnt .case-cnt-list .item .item-boxcnt .item-boxcnt-list li {
          font-size: 14px;
          font-size: 1.4rem; } }
      @media only screen and (max-width: 767px) {
        body.valueup .c-case .c-case-list .case .case-cnt .case-cnt-list .item .item-boxcnt .item-boxcnt-list li {
          font-size: 14px;
          font-size: 1.4rem;
          line-height: 18px;
          padding-left: 86px; } }
      body.valueup .c-case .c-case-list .case .case-cnt .case-cnt-list .item .item-boxcnt .item-boxcnt-list li + li {
        margin-top: 2px; }
        @media only screen and (max-width: 767px) {
          body.valueup .c-case .c-case-list .case .case-cnt .case-cnt-list .item .item-boxcnt .item-boxcnt-list li + li {
            margin-top: 10px; } }
      body.valueup .c-case .c-case-list .case .case-cnt .case-cnt-list .item .item-boxcnt .item-boxcnt-list li .title {
        position: absolute;
        left: 0;
        top: 0;
        font-weight: bold;
        padding-left: 18px;
        background-position: center left;
        background-repeat: no-repeat;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='10' viewBox='0 0 8 10'%3E%3Cpath id='arw' d='M1551.3,6655.853l-5.8-5h-2.2l5.8,5-5.8,5h2.2Z' transform='translate(-1543.296 -6650.853)' fill='%23f9cf00'/%3E%3C/svg%3E%0A"); }
        @media only screen and (max-width: 767px) {
          body.valueup .c-case .c-case-list .case .case-cnt .case-cnt-list .item .item-boxcnt .item-boxcnt-list li .title {
            padding-left: 14px; } }

body.valueup .c-case .c-case-list .case .case-cnt .case-cnt-list .item--after .item-boxcnt {
  background: #ECF9FA; }
  @media only screen and (max-width: 767px) {
    body.valueup .c-case .c-case-list .case .case-cnt .case-cnt-list .item--after .item-boxcnt {
      margin-top: 22px; } }

@media only screen and (min-width: 768px) {
  body.valueup .c-case .c-case-list .case .case-cnt .case-cnt-list.hasbox {
    margin-bottom: 59px; }
    body.valueup .c-case .c-case-list .case .case-cnt .case-cnt-list.hasbox .item {
      position: relative;
      padding-bottom: 303px; }
      body.valueup .c-case .c-case-list .case .case-cnt .case-cnt-list.hasbox .item .item-boxcnt {
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0; } }

@media only screen and (max-width: 767px) {
  body.valueup .c-case .c-case-list .case .case-cnt .case-cnt-list.hasbox {
    margin-bottom: -6px; } }

body.valueup .val-layout1 {
  margin-top: 90px;
  padding-top: 106px;
  background: linear-gradient(90deg, #EFF9FA 0%, #FBF7F3 100%);
  overflow: hidden;
  border-bottom: 1px solid #C8D6DE; }
  @media only screen and (max-width: 767px) {
    body.valueup .val-layout1 {
      margin-top: 61px;
      padding-top: 58px; } }
  body.valueup .val-layout1 .c-layout2 {
    margin-top: 0; }
  body.valueup .val-layout1 .val-layout1-tabs {
    display: flex;
    margin-top: 73px; }
    @media only screen and (max-width: 767px) {
      body.valueup .val-layout1 .val-layout1-tabs {
        margin-top: 49px; } }
    body.valueup .val-layout1 .val-layout1-tabs .itemTab {
      width: calc(50% - 10px);
      margin-right: 20px;
      border-radius: 5px 5px 0 0;
      background: #FFFFFF;
      box-shadow: 0px 3px 8px rgba(0, 62, 77, 0.15);
      position: relative;
      overflow: hidden;
      padding: 24px 30px;
      cursor: pointer;
      transition: background .3s; }
      @media only screen and (max-width: 767px) {
        body.valueup .val-layout1 .val-layout1-tabs .itemTab {
          width: calc(50% - 7px);
          margin-right: 14px;
          display: flex;
          flex-wrap: wrap;
          padding: 16px 10px 14px; } }
      body.valueup .val-layout1 .val-layout1-tabs .itemTab:nth-child(2n) {
        margin-right: 0; }
      body.valueup .val-layout1 .val-layout1-tabs .itemTab:before {
        content: '';
        position: absolute;
        top: 0;
        bottom: 0;
        right: 30px;
        margin: auto;
        width: 36px;
        height: 36px;
        border: 1px solid #C8D6DE;
        border-radius: 20px;
        background: white;
        background-position: center;
        background-repeat: no-repeat;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='9' height='12' viewBox='0 0 9 12'%3E%3Cdefs%3E%3CclipPath id='clip-path'%3E%3Crect width='9' height='12' fill='none'/%3E%3C/clipPath%3E%3C/defs%3E%3Cg id='Repeat_Grid_3' data-name='Repeat Grid 3' clip-path='url(%23clip-path)'%3E%3Cg transform='translate(-15 -12.001)'%3E%3Cpath id='arw' d='M1495.994,5406.987l9,5.987-9,6.013Z' transform='translate(-1480.994 -5394.986)' fill='%2342bcc6'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A");
        transform: rotate(90deg); }
        @media only screen and (max-width: 767px) {
          body.valueup .val-layout1 .val-layout1-tabs .itemTab:before {
            content: none; } }
      body.valueup .val-layout1 .val-layout1-tabs .itemTab .itemTab-number {
        position: absolute;
        top: 50%;
        right: 96px;
        transform: translateY(-50%);
        font-family: "Lato", sans-serif;
        font-size: 150px;
        font-size: 15rem;
        line-height: 180px;
        font-weight: 900;
        color: #C8D6DE;
        opacity: 0.2; }
        @media only screen and (max-width: 767px) {
          body.valueup .val-layout1 .val-layout1-tabs .itemTab .itemTab-number {
            left: 0;
            right: 0;
            text-align: center;
            font-size: 100px;
            font-size: 10rem;
            line-height: 120px; } }
      body.valueup .val-layout1 .val-layout1-tabs .itemTab .itemTab-en {
        position: relative;
        font-family: "Raleway", sans-serif;
        font-size: 28px;
        font-size: 2.8rem;
        line-height: 33px;
        letter-spacing: .1em;
        font-weight: bold;
        transition: color .3s; }
        @media only screen and (max-width: 767px) {
          body.valueup .val-layout1 .val-layout1-tabs .itemTab .itemTab-en {
            margin-top: 5px;
            width: 100%;
            order: 2;
            font-size: 10px;
            font-size: 1rem;
            line-height: 11px;
            text-align: center; } }
        body.valueup .val-layout1 .val-layout1-tabs .itemTab .itemTab-en span {
          color: #42BCC6;
          transition: color .3s; }
      body.valueup .val-layout1 .val-layout1-tabs .itemTab .itemTab-ja {
        position: relative;
        margin-top: 7px;
        font-size: 12px;
        font-size: 1.2rem;
        line-height: 1;
        letter-spacing: .12em;
        font-weight: 700;
        transition: color .3s; }
        @media only screen and (max-width: 767px) {
          body.valueup .val-layout1 .val-layout1-tabs .itemTab .itemTab-ja {
            margin-top: 0;
            width: 100%;
            order: 1;
            line-height: 17px;
            text-align: center; } }
      @media only screen and (min-width: 1024px) {
        body.valueup .val-layout1 .val-layout1-tabs .itemTab:hover {
          background-color: #42BCC6; }
          body.valueup .val-layout1 .val-layout1-tabs .itemTab:hover .itemTab-en, body.valueup .val-layout1 .val-layout1-tabs .itemTab:hover .itemTab-ja {
            color: white; }
            body.valueup .val-layout1 .val-layout1-tabs .itemTab:hover .itemTab-en span, body.valueup .val-layout1 .val-layout1-tabs .itemTab:hover .itemTab-ja span {
              color: white; } }
      body.valueup .val-layout1 .val-layout1-tabs .itemTab.is-active {
        background-color: #42BCC6; }
        body.valueup .val-layout1 .val-layout1-tabs .itemTab.is-active .itemTab-en, body.valueup .val-layout1 .val-layout1-tabs .itemTab.is-active .itemTab-ja {
          color: white; }
          body.valueup .val-layout1 .val-layout1-tabs .itemTab.is-active .itemTab-en span, body.valueup .val-layout1 .val-layout1-tabs .itemTab.is-active .itemTab-ja span {
            color: white; }

body.valueup .val-tabcnt {
  display: none;
  overflow: hidden;
  padding-top: 120px; }
  @media only screen and (max-width: 767px) {
    body.valueup .val-tabcnt {
      padding-top: 48px; }
      body.valueup .val-tabcnt#tab2 {
        padding-top: 70px; }
        body.valueup .val-tabcnt#tab2 .c-case {
          padding-bottom: 55px; } }
  body.valueup .val-tabcnt.is-show {
    display: block; }
  body.valueup .val-tabcnt .val-tabcnt-title {
    display: table;
    margin: auto;
    text-align: center;
    position: relative;
    z-index: 1; }
    body.valueup .val-tabcnt .val-tabcnt-title .val-tabcnt-title-number {
      position: absolute;
      z-index: -1;
      top: -76px;
      right: -60px;
      font-family: "Lato", sans-serif;
      font-size: 180px;
      font-size: 18rem;
      line-height: 216px;
      font-weight: 900;
      color: #C8D6DE;
      opacity: 0.2; }
      @media only screen and (max-width: 767px) {
        body.valueup .val-tabcnt .val-tabcnt-title .val-tabcnt-title-number {
          top: 45%;
          transform: translateY(-50%);
          left: 0;
          right: 0;
          text-align: center; } }
    body.valueup .val-tabcnt .val-tabcnt-title .val-tabcnt-title-hd {
      position: relative; }
      body.valueup .val-tabcnt .val-tabcnt-title .val-tabcnt-title-hd__en {
        display: block;
        font-family: "Raleway", sans-serif;
        font-size: 50px;
        font-size: 5rem;
        line-height: 59px;
        letter-spacing: .1em;
        font-weight: bold; }
        @media only screen and (max-width: 767px) {
          body.valueup .val-tabcnt .val-tabcnt-title .val-tabcnt-title-hd__en {
            font-size: 36px;
            font-size: 3.6rem;
            line-height: 48px; } }
        body.valueup .val-tabcnt .val-tabcnt-title .val-tabcnt-title-hd__en span {
          color: #42BCC6; }
      body.valueup .val-tabcnt .val-tabcnt-title .val-tabcnt-title-hd__ja {
        margin-top: 10px;
        display: block;
        font-size: 18px;
        font-size: 1.8rem;
        line-height: 26px;
        letter-spacing: .12em;
        font-weight: bold; }
        @media only screen and (max-width: 767px) {
          body.valueup .val-tabcnt .val-tabcnt-title .val-tabcnt-title-hd__ja {
            margin-top: 5px;
            font-size: 16px;
            font-size: 1.6rem;
            line-height: 24px; } }

body.valueup .val-layout2 {
  margin-top: 86px; }
  @media only screen and (max-width: 767px) {
    body.valueup .val-layout2 {
      margin-top: 77px; } }
  body.valueup .val-layout2 .val-layout2-list {
    margin-top: 50px; }
    @media only screen and (max-width: 767px) {
      body.valueup .val-layout2 .val-layout2-list {
        margin-top: 41px; } }
    body.valueup .val-layout2 .val-layout2-list .item + .item {
      margin-top: 50px; }
      @media only screen and (max-width: 767px) {
        body.valueup .val-layout2 .val-layout2-list .item + .item {
          margin-top: 44px; } }
    body.valueup .val-layout2 .val-layout2-list .item .item-title {
      font-size: 0;
      line-height: 0; }
      body.valueup .val-layout2 .val-layout2-list .item .item-title__num {
        display: inline-block;
        vertical-align: middle;
        margin-right: 25px; }
        @media only screen and (max-width: 767px) {
          body.valueup .val-layout2 .val-layout2-list .item .item-title__num {
            display: block;
            font-size: 22px;
            font-size: 2.2rem;
            margin: 0; } }
        body.valueup .val-layout2 .val-layout2-list .item .item-title__num img {
          height: 24px; }
          @media only screen and (max-width: 767px) {
            body.valueup .val-layout2 .val-layout2-list .item .item-title__num img {
              height: 15px; } }
      body.valueup .val-layout2 .val-layout2-list .item .item-title__hd {
        display: inline-block;
        vertical-align: middle;
        font-family: "Noto Sans JP", sans-serif;
        font-size: 24px;
        font-size: 2.4rem;
        line-height: 32px;
        font-weight: 500; }
        @media only screen and (max-width: 767px) {
          body.valueup .val-layout2 .val-layout2-list .item .item-title__hd {
            display: block;
            margin-top: 7px;
            font-size: 20px;
            font-size: 2rem;
            line-height: 30px; } }
    body.valueup .val-layout2 .val-layout2-list .item .item-des {
      margin-top: 23px;
      font-size: 15px;
      font-size: 1.5rem;
      line-height: 28px;
      font-weight: 500; }
      @media only screen and (max-width: 767px) {
        body.valueup .val-layout2 .val-layout2-list .item .item-des {
          margin-top: 17px;
          padding-right: 2px;
          width: 100%; } }

body.valueup .val-layout3 {
  background: white;
  border: 2px solid #42BCC6;
  border-radius: 5px;
  margin-top: 80px;
  padding: 38px 58px;
  display: flex;
  flex-wrap: wrap; }
  @media only screen and (max-width: 767px) {
    body.valueup .val-layout3 {
      margin-top: 48px;
      padding: 31px 30px 57px;
      position: relative; } }
  body.valueup .val-layout3 .val-layout3-title {
    width: 355px;
    display: flex;
    align-items: center; }
    @media only screen and (max-width: 767px) {
      body.valueup .val-layout3 .val-layout3-title {
        width: 100%; } }
    body.valueup .val-layout3 .val-layout3-title .tith4 {
      line-height: 34px;
      border: 0;
      padding: 0;
      padding-left: 20px; }
      @media only screen and (max-width: 767px) {
        body.valueup .val-layout3 .val-layout3-title .tith4 {
          line-height: 26px;
          padding-left: 0; } }
      body.valueup .val-layout3 .val-layout3-title .tith4:before {
        left: 20px;
        top: 5px; }
        @media only screen and (max-width: 767px) {
          body.valueup .val-layout3 .val-layout3-title .tith4:before {
            left: 0; } }
  body.valueup .val-layout3 .val-layout3-list {
    width: calc(100% - 355px);
    border-left: 1px solid #C8D6DE;
    padding: 10px 0 10px 59px; }
    @media only screen and (max-width: 767px) {
      body.valueup .val-layout3 .val-layout3-list {
        width: 100%;
        margin-top: 21px;
        padding: 24px 0 0;
        border-left: 0;
        border-top: 1px solid #C8D6DE; } }
    body.valueup .val-layout3 .val-layout3-list li {
      font-family: "Noto Sans JP", sans-serif;
      font-size: 18px;
      font-size: 1.8rem;
      line-height: 28px;
      font-weight: 500;
      position: relative;
      padding-left: 29px; }
      @media only screen and (max-width: 1024px) {
        body.valueup .val-layout3 .val-layout3-list li {
          font-size: 17px;
          font-size: 1.7rem; } }
      @media only screen and (max-width: 767px) {
        body.valueup .val-layout3 .val-layout3-list li {
          font-size: 16px;
          font-size: 1.6rem;
          line-height: 24px; } }
      body.valueup .val-layout3 .val-layout3-list li + li {
        margin-top: 15px; }
        @media only screen and (max-width: 767px) {
          body.valueup .val-layout3 .val-layout3-list li + li {
            margin-top: 12px; } }
      body.valueup .val-layout3 .val-layout3-list li:before {
        content: '';
        position: absolute;
        top: 4px;
        left: 0;
        width: 20px;
        height: 20px;
        background-position: center;
        background-repeat: no-repeat;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Cdefs%3E%3CclipPath id='clip-path'%3E%3Crect width='20' height='20' fill='none'/%3E%3C/clipPath%3E%3C/defs%3E%3Cg id='check_box' data-name='check box' clip-path='url(%23clip-path)'%3E%3Cg id='check_box-2' data-name='check box'%3E%3Cg id='_' data-name='□' fill='%23fff' stroke='%23a8a8a8' stroke-linejoin='round' stroke-width='1'%3E%3Crect width='20' height='20' rx='2' stroke='none'/%3E%3Crect x='0.5' y='0.5' width='19' height='19' rx='1.5' fill='none'/%3E%3C/g%3E%3Cpath id='check' d='M1265.9,4521.007l-9.138,13.656a.811.811,0,0,1-.673.338h-.007a.82.82,0,0,1-.673-.329l-5.295-7.6a.616.616,0,0,1,.221-.9.877.877,0,0,1,1.057.12l4.628,4.793,8.551-10.795a.869.869,0,0,1,1.065-.192A.619.619,0,0,1,1265.9,4521.007Z' transform='translate(-1248 -4518)' fill='%2342bcc6'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A"); }
  body.valueup .val-layout3 .val-layout3-vv {
    position: absolute;
    bottom: 29px;
    right: 28px;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 24px;
    font-weight: 500; }

body.valueup .val-flow-asses {
  margin-top: 32px;
  margin-bottom: -2px;
  background: #F8F8F8;
  border-radius: 5px;
  padding: 40px 60px;
  display: flex;
  flex-wrap: wrap;
  width: 100%; }
  @media only screen and (max-width: 767px) {
    body.valueup .val-flow-asses {
      margin-top: 23px;
      margin-bottom: 5px;
      padding: 34px 30px; } }
  body.valueup .val-flow-asses .val-flow-asses-title {
    width: 100%;
    font-size: 0;
    line-height: 0; }
    body.valueup .val-flow-asses .val-flow-asses-title .ja {
      display: inline-block;
      vertical-align: middle;
      font-family: "Noto Sans JP", sans-serif;
      font-size: 20px;
      font-size: 2rem;
      line-height: 30px;
      font-weight: 500;
      margin-right: 16px; }
      @media only screen and (max-width: 767px) {
        body.valueup .val-flow-asses .val-flow-asses-title .ja {
          display: block;
          font-size: 18px;
          font-size: 1.8rem;
          line-height: 26px;
          margin: 0; } }
    body.valueup .val-flow-asses .val-flow-asses-title .en {
      display: inline-block;
      vertical-align: middle;
      font-family: "Raleway", sans-serif;
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 30px;
      letter-spacing: .1em;
      font-weight: bold;
      color: #42BCC6; }
      @media only screen and (max-width: 767px) {
        body.valueup .val-flow-asses .val-flow-asses-title .en {
          margin-top: 10px;
          display: block;
          font-size: 12px;
          font-size: 1.2rem;
          line-height: 14px; } }
  body.valueup .val-flow-asses .val-flow-asses-des {
    width: 100%;
    margin-top: 22px;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 28px;
    font-weight: 500; }
    @media only screen and (max-width: 767px) {
      body.valueup .val-flow-asses .val-flow-asses-des {
        margin-top: 13px; } }
  body.valueup .val-flow-asses .val-flow-asses-subtitle {
    margin-top: 29px;
    width: 287px;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 30px;
    font-weight: 500;
    color: #42BCC6; }
    @media only screen and (max-width: 767px) {
      body.valueup .val-flow-asses .val-flow-asses-subtitle {
        margin-top: 22px;
        width: 100%;
        font-size: 16px;
        font-size: 1.6rem;
        line-height: 26px; } }
  @media only screen and (max-width: 767px) {
    body.valueup .val-flow-asses .val-flow-asses-btn {
      width: 100%; } }
  body.valueup .val-flow-asses .btn {
    margin-top: 23px; }
    @media only screen and (max-width: 767px) {
      body.valueup .val-flow-asses .btn {
        width: 100%;
        margin-top: 19px; } }

body.valueup .notab2.is-hid {
  display: none; }

/*-- 2025/05 ---------- CTA : start on single-creations.php */
/* common cta(test)*/
.content .cta_wrap{
	margin:0 auto;
	padding:60px 0 0 0;
}
.content .cta_wrap dl{
	position:relative;
	margin:0 auto;
	width:800px;
	background-color:#e9f3f4;
	border-radius:8px;
	color:#2a7a81
}
.content .cta_wrap dt{
	font-weight:bold;
	font-size:18px;
	padding:25px 23px 12px;
	text-align:center;
	background:NONE;
	& span:before,span:after{
		content:'';
		display:inline-block;
		width:1em;
		height:1em;
		border-bottom:2px solid #2a7a81
	}
	& span:before{
		margin-right:.5em;
		-webkit-transform-origin:bottom right;
		transform-origin:bottom right;
		-webkit-transform:rotate(55deg);
		transform:rotate(55deg)
	}
	& span:after{
		margin-left:.5em;
		-webkit-transform-origin:bottom left;
		transform-origin:bottom left;
		-webkit-transform:rotate(-55deg);
		transform:rotate(-55deg)
	}
}
.content .cta_wrap dd{
	padding:12px 23px 25px;
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
	-ms-flex-pack:distribute;
	justify-content:space-around;
	-webkit-box-align:center;
	-ms-flex-align:center;
	align-items:center;
	.bytel{
		-ms-flex-preferred-size:45%;
		flex-basis:45%
	}
	.byemail{
		-ms-flex-preferred-size:45%;
		flex-basis:45%
	}
}
.content .cta_wrap dd a{
	text-decoration:none;
	color:#fff
}
.content .cta_wrap .bytel{
	
    position: relative;
    top: -12px;
		
	.t_l{
		color: #42BCC6;
		font-size:35px;
		font-weight:bold;
		/*
		display:-webkit-box;
		display:-ms-flexbox;
		display:flex;
		-webkit-box-align:center;
		-ms-flex-align:center;
		align-items:center;
		*/
		pointer-events:none;
		text-decoration:none;
		cursor:default;
		
		.dw05_tx{
			/*	display:none	*/

				display:inline-block;
				width: 100%;
				text-align: center;
				font-size:12px;
		
		}
		& figure{
			/*	margin-right:5px	*/
		}
		.number{
			color:#42BCC6;
			font-weight:800;
			/*	background:url(		) left center no-repeat;	*/
			/*	background-size:47px;	*/
			/*	padding-left:57px	*/

				display:inline-block;
				width: 100%;
				text-align: center;
		}
	}
	.note{
		color: #42BCC6;
		font-size:12px;
		font-weight:bold;
		padding:0

		display:inline-block;
		width: 100%;
		text-align: center;
	}
}
.content .cta_wrap .byemail{
	.cta_btn{
		display:block;
		background-color:#42bcc6;
		border-bottom:3px solid #2a7a81;
		border-radius:8px;
		color:#fff;
		font-weight:bold;
		letter-spacing:0.9px;
		text-decoration:none;
		padding:10px 0;
		.innerwrap{
			font-size:18px;
			display:block;
			width:11em;
			margin:0 auto;
			/*	background:url(		) left center no-repeat;	*/
			background-size:30px;
			/*	padding-left:40px;	*/
			.text{
				display:block;
				font-size:18px;
				text-align: center;
			}
			.note{
				display:block;
				font-size:12px;
				line-height:2em;
				text-align: center;
			}
		}
	}
}
.content .cta_wrap .btn_shiny{
	position:relative;
	overflow:hidden
}
.content .cta_wrap .btn_shiny:after{
	content:"";
	position:absolute;
	top:-10%;
	left:-20%;
	width:40px;
	height:100%;
	-webkit-transform:scale(2) rotate(20deg);
	transform:scale(2) rotate(20deg);
	background-image:linear-gradient(100deg,rgba(255,255,255,0) 10%,rgba(255,255,255,.05) 100%,rgba(255,255,255,0) 0%);
	-webkit-animation-duration:3s;
	animation-duration:3s;
	-webkit-animation-timing-function:ease-in-out;
	animation-timing-function:ease-in-out;
	-webkit-animation-iteration-count:infinite;
	animation-iteration-count:infinite
}
.content .cta_wrap .byemail .btn_shiny:after{
	-webkit-animation-name:shiny;
	animation-name:shiny
}
@-webkit-keyframes shiny{
	0%{
		left:-20%
	}
	20%{
		left:-20%
	}
	100%{
		left:120%
	}
}
@keyframes shiny{
	0%{
		left:-20%
	}
	20%{
		left:-20%
	}
	100%{
		left:120%
	}
}
@media (max-width:768px){
.content .cta_wrap dl{
	width:calc(100% - 30px);
	background-color:transparent
}
.content .cta_wrap dt{
	padding:0;
	font-size:14px;
	text-align:center
}
.content .cta_wrap dd{
	padding-left:0;
	padding-right:0;
	display:block;
	.bytel{
		.t_l{
			font-size:15px;
			background-color:#e95a64;
			border-radius:8px;
			border-bottom:3px solid #dc3246;
			width:100%;
			padding:15px;
			display:-webkit-box;
			display:-ms-flexbox;
			display:flex;
			-webkit-box-pack:center;
			-ms-flex-pack:center;
			justify-content:center;
			-webkit-box-align:center;
			-ms-flex-align:center;
			align-items:center;
			margin-bottom:10px;
			cursor:pointer;
			pointer-events:auto;
			.dw05_tx{
				color:#fff;
				display:inline-block;
				/*	background:url(		) left center no-repeat;	*/
				background-size:25px;
				padding:5px 0;
				padding-left:30px;
				padding-right:10px
				
				font-size:12px;
				width: 100%;
			}
			.number{
				color:#fff;
				font-size:15px;
				/*	background-image:url(	);	*/
				background-size:20px;
				padding:5px 0;
				padding-left:25px

				display:inline-block;
				width: 100%;
				text-align: center;
				
			}

			}
			.note{
				font-size:12px;
				text-align:center

				display:inline-block;
				width: 100%;
				text-align: center;
				line-height:2em;

			}
		}
		.byemail{
			margin-top:30px;
			.cta_btn{
				padding:0;
				margin:0;
				.innerwrap{
					display:block;
					width:auto;
					margin:0 auto;
					padding:0;
					background:none;
					.text{
						display:block;
						text-align:center;
						font-size:14px;
						padding:.75em 0
						}
						.text:before{
							content:'';
							display:inline-block;
							width:30px;
							height:30px;
							/*	background:url(		) left center no-repeat;	*/
							background-size:contain;
							vertical-align:middle;
							margin-right:5px
						}
						.note{
							display:block;
							width:calc(100% - 6px);
							margin-left:auto;
							margin-right:auto;
							padding:.25em 0;
							background-color:#fff;
							color:#e95a64;
							text-align:center;
							font-size:16px;
							border-radius:0 0 15px 15px
							line-height:2em;
						}
					}
				}
			}
		}
		.content .cta_wrap .bytel .btn_shiny:after{
			-webkit-animation-name:shiny;
			animation-name:shiny
		}
	}
	.content .add-limited-campaign-info+.contactBnr{
		padding-top:0
	}
	.content .cta_wrap dl{
		width:auto;
		padding:0
	}
	.content .cta_wrap dd .byemail{
		-ms-flex-preferred-size:55%;
		flex-basis:55%;
		.cta_btn{
			.innerwrap{
			width:12em
		}
	}
}
/*---------- 2025/05 -- CTA : start on single-creations.php */