@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: 15px 15px;
  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: 0.7; }

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

.hamburger-inner {
  display: block;
  top: 50%;
  margin-top: -2px; }
  .hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
    width: 40px;
    height: 4px;
    background-color: #000;
    border-radius: 4px;
    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: -10px; }
  .hamburger-inner::after {
    bottom: -10px; }

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

.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, 10px, 0) rotate(45deg); }
  .hamburger--3dx.is-active .hamburger-inner::after {
    transform: translate3d(0, -10px, 0) rotate(-45deg); }

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

.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, 10px, 0) rotate(45deg); }
  .hamburger--3dx-r.is-active .hamburger-inner::after {
    transform: translate3d(0, -10px, 0) rotate(-45deg); }

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

.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, 10px, 0) rotate(45deg); }
  .hamburger--3dy.is-active .hamburger-inner::after {
    transform: translate3d(0, -10px, 0) rotate(-45deg); }

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

.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, 10px, 0) rotate(45deg); }
  .hamburger--3dy-r.is-active .hamburger-inner::after {
    transform: translate3d(0, -10px, 0) rotate(-45deg); }

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

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

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

.hamburger--arrow-r.is-active .hamburger-inner::after {
  transform: translate3d(8px, 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(-8px, -10px, 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(-8px, 10px, 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(8px, -10px, 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(8px, 10px, 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: -20px;
    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, -10px, 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: -20px;
    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, -10px, 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: 2px;
  transition-duration: 0.275s;
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55); }
  .hamburger--elastic .hamburger-inner::before {
    top: 10px;
    transition: opacity 0.125s 0.275s ease; }
  .hamburger--elastic .hamburger-inner::after {
    top: 20px;
    transition: transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55); }

.hamburger--elastic.is-active .hamburger-inner {
  transform: translate3d(0, 10px, 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, -20px, 0) rotate(-270deg);
    transition-delay: 0.075s; }

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

.hamburger--elastic-r.is-active .hamburger-inner {
  transform: translate3d(0, 10px, 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, -20px, 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: 10px;
      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: -80px;
      top: -80px;
      transform: translate3d(80px, 80px, 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: -80px;
      top: -80px;
      transform: translate3d(-80px, 80px, 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: 10px;
      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: -80px;
      top: 80px;
      transform: translate3d(80px, -80px, 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: -80px;
      top: 80px;
      transform: translate3d(-80px, -80px, 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: 2px; }
  .hamburger--slider .hamburger-inner::before {
    top: 10px;
    transition-property: transform, opacity;
    transition-timing-function: ease;
    transition-duration: 0.15s; }
  .hamburger--slider .hamburger-inner::after {
    top: 20px; }

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

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

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

/*
   * Spring
   */
.hamburger--spring .hamburger-inner {
  top: 2px;
  transition: background-color 0s 0.13s linear; }
  .hamburger--spring .hamburger-inner::before {
    top: 10px;
    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: 20px;
    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, 10px, 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, 10px, 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: -20px;
    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, -10px, 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; } }

.show_540 {
  display: none; }
  @media only screen and (max-width: 540px) {
    .show_540 {
      display: block; } }

@media only screen and (max-width: 540px) {
  .hide_540 {
    display: none; } }

html {
  font-size: 62.5%;
  font-family: YakuHanJP, "Noto Sans JP", sans-serif;
  color: #1E1C1C;
  font-feature-settings: "palt";
  letter-spacing: 0.07em; }

html * {
  visibility: hidden; }

html.wf-active * {
  visibility: visible; }

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

.inner {
  width: 100%;
  max-width: 1440px;
  margin-left: auto;
  margin-right: auto; }
  @media only screen and (max-width: 767px) {
    .inner {
      width: calc(100% - 60px); } }

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

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

.trans,
.trans::before,
.trans::after {
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all  0.3s ease; }

.trans_slow,
.trans_slow::before,
.trans_slow::after {
  -webkit-transition: all 1.0s ease;
  -moz-transition: all 1.0s ease;
  -o-transition: all 1.0s ease;
  transition: all  1.0s ease; }

.round {
  border-radius: 20px;
  overflow: hidden; }
  @media only screen and (max-width: 767px) {
    .round {
      border-radius: 15px; } }

.fitin {
  position: relative;
  z-index: 1;
  overflow: hidden;
  background: white; }
  .fitin img {
    transition: 3s;
    transform: scale(1.2);
    opacity: 0.9;
    z-index: 2; }
  .fitin.active img {
    transform: none;
    opacity: 1; }

.footer {
  position: relative; }
  @media screen and (min-width: 768px) {
    .footer {
      padding-top: calc((100vw / 1440) * 68); } }
  @media screen and (min-width: 1440px) {
    .footer {
      padding-top: 68px; } }
  @media screen and (min-width: 768px) {
    .footer {
      padding-bottom: calc((100vw / 1440) * 68); } }
  @media screen and (min-width: 1440px) {
    .footer {
      padding-bottom: 68px; } }
  @media only screen and (max-width: 767px) {
    .footer {
      padding: 40px 0; } }
  @media only screen and (max-width: 540px) {
    .footer {
      padding: 60px 0 40px; } }
  .footer .ftr_flex {
    margin-left: auto;
    margin-right: auto;
    display: flex;
    justify-content: space-between;
    align-items: center; }
    @media screen and (min-width: 768px) {
      .footer .ftr_flex {
        width: calc((100vw / 1440) * 1296); } }
    @media screen and (min-width: 1440px) {
      .footer .ftr_flex {
        width: 1296px; } }
    @media only screen and (max-width: 767px) {
      .footer .ftr_flex {
        display: block; } }
    @media screen and (min-width: 768px) {
      .footer .ftr_flex .left {
        width: calc((100vw / 1440) * 440); } }
    @media screen and (min-width: 1440px) {
      .footer .ftr_flex .left {
        width: 440px; } }
    @media only screen and (max-width: 767px) {
      .footer .ftr_flex .left {
        width: 100%;
        max-width: 280px;
        margin-bottom: 22px; } }
    @media only screen and (max-width: 540px) {
      .footer .ftr_flex .left {
        max-width: 217px; } }
    .footer .ftr_flex .right {
      display: flex;
      justify-content: space-between; }
      @media only screen and (max-width: 767px) {
        .footer .ftr_flex .right {
          justify-content: flex-start; } }
      @media only screen and (max-width: 540px) {
        .footer .ftr_flex .right {
          display: block; } }
      .footer .ftr_flex .right .box {
        line-height: 1.5; }
        @media screen and (max-width: 767px) {
          .footer .ftr_flex .right .box {
            font-size: 14px; } }
        @media screen and (min-width: 768px) {
          .footer .ftr_flex .right .box {
            font-size: calc((100vw / 1440) * 12); } }
        @media screen and (min-width: 1440px) {
          .footer .ftr_flex .right .box {
            font-size: 12px; } }
        @media only screen and (max-width: 767px) {
          .footer .ftr_flex .right .box {
            font-size: 11px;
            font-size: 1.1rem; } }
        @media screen and (min-width: 768px) {
          .footer .ftr_flex .right .box:first-of-type {
            margin-right: calc((100vw / 1440) * 55); } }
        @media screen and (min-width: 1440px) {
          .footer .ftr_flex .right .box:first-of-type {
            margin-right: 55px; } }
        @media only screen and (max-width: 767px) {
          .footer .ftr_flex .right .box:first-of-type {
            margin-right: 30px; } }
        @media only screen and (max-width: 540px) {
          .footer .ftr_flex .right .box:first-of-type {
            margin-bottom: 20px;
            margin-right: 0; } }
        .footer .ftr_flex .right .box .blue {
          color: #1AA2E6;
          display: block; }
          @media screen and (min-width: 768px) {
            .footer .ftr_flex .right .box .blue {
              margin-bottom: calc((100vw / 1440) * 3); } }
          @media screen and (min-width: 1440px) {
            .footer .ftr_flex .right .box .blue {
              margin-bottom: 3px; } }
          @media only screen and (max-width: 767px) {
            .footer .ftr_flex .right .box .blue {
              margin-bottom: 2px; } }
        .footer .ftr_flex .right .box .animation_line, .footer .ftr_flex .right .box .animation_line2 {
          position: relative; }
          @media screen and (min-width: 768px) {
            .footer .ftr_flex .right .box .animation_line, .footer .ftr_flex .right .box .animation_line2 {
              padding-bottom: calc((100vw / 1440) * 5); } }
          @media screen and (min-width: 1440px) {
            .footer .ftr_flex .right .box .animation_line, .footer .ftr_flex .right .box .animation_line2 {
              padding-bottom: 5px; } }

.circlelink_float {
  position: fixed;
  display: none;
  z-index: 3; }
  @media screen and (min-width: 768px) {
    .circlelink_float {
      right: calc((100vw / 1440) * 40); } }
  @media screen and (min-width: 1440px) {
    .circlelink_float {
      right: 40px; } }
  @media screen and (min-width: 768px) {
    .circlelink_float {
      bottom: calc((100vw / 1440) * 40); } }
  @media screen and (min-width: 1440px) {
    .circlelink_float {
      bottom: 40px; } }
  @media screen and (min-width: 768px) {
    .circlelink_float {
      width: calc((100vw / 1440) * 176); } }
  @media screen and (min-width: 1440px) {
    .circlelink_float {
      width: 176px; } }
  @media screen and (min-width: 768px) {
    .circlelink_float {
      height: calc((100vw / 1440) * 176); } }
  @media screen and (min-width: 1440px) {
    .circlelink_float {
      height: 176px; } }
  @media only screen and (max-width: 767px) {
    .circlelink_float {
      left: 50%;
      transform: translateX(-50%);
      width: calc(100% - 60px);
      height: 70px;
      bottom: 30px; } }
  .circlelink_float .circlelink_float_inner {
    justify-content: center;
    align-items: center;
    line-height: 1.5;
    text-align: center;
    border-radius: 50%;
    background: #1AA2E6;
    color: white;
    display: flex;
    border: 2px solid #1AA2E6;
    font-weight: 500; }
    @media screen and (max-width: 767px) {
      .circlelink_float .circlelink_float_inner {
        font-size: 14px; } }
    @media screen and (min-width: 768px) {
      .circlelink_float .circlelink_float_inner {
        font-size: calc((100vw / 1440) * 16); } }
    @media screen and (min-width: 1440px) {
      .circlelink_float .circlelink_float_inner {
        font-size: 16px; } }
    @media screen and (min-width: 768px) {
      .circlelink_float .circlelink_float_inner {
        width: calc((100vw / 1440) * 176); } }
    @media screen and (min-width: 1440px) {
      .circlelink_float .circlelink_float_inner {
        width: 176px; } }
    @media screen and (min-width: 768px) {
      .circlelink_float .circlelink_float_inner {
        height: calc((100vw / 1440) * 176); } }
    @media screen and (min-width: 1440px) {
      .circlelink_float .circlelink_float_inner {
        height: 176px; } }
    @media only screen and (max-width: 767px) {
      .circlelink_float .circlelink_float_inner {
        height: 70px;
        font-size: 13px;
        font-size: 1.3rem;
        border-radius: 35px;
        border-width: 1px; }
        .circlelink_float .circlelink_float_inner br {
          display: none; } }
  .circlelink_float.absolute {
    position: absolute;
    bottom: calc(100% + 40px); }
    @media only screen and (max-width: 1440px) {
      .circlelink_float.absolute {
        bottom: calc(100% + 2.7vw); } }
    @media only screen and (max-width: 767px) {
      .circlelink_float.absolute {
        width: calc(100% - 60px);
        left: 50%;
        transform: translateX(-50%);
        bottom: calc(100% + 60px); } }
  .circlelink_float:hover .circlelink_float_inner {
    background: white;
    color: #1AA2E6; }

.header {
  opacity: 0; }
  .header.active {
    opacity: 1; }
  @media screen and (min-width: 768px) {
    .header {
      padding-top: calc((100vw / 1440) * 1); } }
  @media screen and (min-width: 1440px) {
    .header {
      padding-top: 1px; } }
  .header .inner {
    width: 88.88vw;
    max-width: none;
    margin-left: auto;
    margin-right: auto;
    display: flex;
    justify-content: space-between;
    align-items: top; }
    @media screen and (min-width: 768px) {
      .header .inner {
        margin-top: calc((100vw / 1440) * 110); } }
    @media screen and (min-width: 1440px) {
      .header .inner {
        margin-top: 110px; } }
    @media screen and (min-width: 768px) {
      .header .inner {
        margin-bottom: calc((100vw / 1440) * 96); } }
    @media screen and (min-width: 1440px) {
      .header .inner {
        margin-bottom: 96px; } }
    @media only screen and (max-width: 767px) {
      .header .inner {
        padding: 42px 0 34px; } }
    @media only screen and (max-width: 540px) {
      .header .inner {
        padding: 37px 0 28px; } }
    .header .inner .titlelogo {
      width: 56.94vw; }
      @media only screen and (max-width: 767px) {
        .header .inner .titlelogo {
          width: calc(100% - 175px); } }
      @media only screen and (max-width: 540px) {
        .header .inner .titlelogo {
          width: 100%; } }

.circlelink {
  border-radius: 50%;
  background: #1AA2E6;
  color: white;
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1.5;
  text-align: center;
  border: 2px solid #1AA2E6;
  font-weight: 500; }
  @media screen and (min-width: 768px) {
    .circlelink {
      width: calc((100vw / 1440) * 218); } }
  @media screen and (min-width: 1440px) {
    .circlelink {
      width: 218px; } }
  @media screen and (min-width: 768px) {
    .circlelink {
      height: calc((100vw / 1440) * 218); } }
  @media screen and (min-width: 1440px) {
    .circlelink {
      height: 218px; } }
  @media screen and (max-width: 767px) {
    .circlelink {
      font-size: 14px; } }
  @media screen and (min-width: 768px) {
    .circlelink {
      font-size: calc((100vw / 1440) * 18); } }
  @media screen and (min-width: 1440px) {
    .circlelink {
      font-size: 18px; } }
  .circlelink:hover {
    background: white;
    color: #1AA2E6; }
  @media only screen and (max-width: 767px) {
    .circlelink {
      position: absolute;
      top: 30px;
      right: 30px;
      width: 135px;
      height: 135px;
      border-width: 1px; } }
  @media only screen and (max-width: 540px) {
    .circlelink {
      display: none; } }

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

body.index .bodycvr {
  position: fixed;
  top: 0;
  left: 0;
  background: white;
  z-index: 10;
  width: 100%;
  height: 140%; }

body.index .fadeinimg {
  opacity: 0; }
  body.index .fadeinimg.active {
    opacity: 1; }

body.index #wrap {
  overflow: hidden;
  position: relative; }
  body.index #wrap .circle1 {
    opacity: 0;
    background: url("../images/bg_obj.svg") no-repeat center center;
    background-size: contain;
    right: 0;
    position: absolute;
    z-index: -1; }
    @media screen and (min-width: 768px) {
      body.index #wrap .circle1 {
        width: calc((100vw / 1440) * 688); } }
    @media screen and (min-width: 1440px) {
      body.index #wrap .circle1 {
        width: 688px; } }
    @media screen and (min-width: 768px) {
      body.index #wrap .circle1 {
        height: calc((100vw / 1440) * 688); } }
    @media screen and (min-width: 1440px) {
      body.index #wrap .circle1 {
        height: 688px; } }
    @media screen and (min-width: 768px) {
      body.index #wrap .circle1 {
        top: calc((100vw / 1440) * -435); } }
    @media screen and (min-width: 1440px) {
      body.index #wrap .circle1 {
        top: -435px; } }
    @media only screen and (max-width: 767px) {
      body.index #wrap .circle1 {
        width: 68.8vw;
        height: 68.8vw;
        top: -41.33vw;
        right: -21.6vw; } }
    body.index #wrap .circle1.active {
      opacity: 1; }
  body.index #wrap .circle2 {
    content: '';
    background: url("../images/bg_obj.svg") no-repeat center center;
    background-size: contain;
    position: absolute;
    z-index: -1; }
    @media screen and (min-width: 768px) {
      body.index #wrap .circle2 {
        width: calc((100vw / 1440) * 1370); } }
    @media screen and (min-width: 1440px) {
      body.index #wrap .circle2 {
        width: 1370px; } }
    @media screen and (min-width: 768px) {
      body.index #wrap .circle2 {
        height: calc((100vw / 1440) * 1370); } }
    @media screen and (min-width: 1440px) {
      body.index #wrap .circle2 {
        height: 1370px; } }
    @media screen and (min-width: 768px) {
      body.index #wrap .circle2 {
        left: calc((100vw / 1440) * -257); } }
    @media screen and (min-width: 1440px) {
      body.index #wrap .circle2 {
        left: -257px; } }
    @media screen and (min-width: 768px) {
      body.index #wrap .circle2 {
        bottom: calc((100vw / 1440) * -736); } }
    @media screen and (min-width: 1440px) {
      body.index #wrap .circle2 {
        bottom: -736px; } }
    @media only screen and (max-width: 767px) {
      body.index #wrap .circle2 {
        width: 162.53vw;
        height: 162.53vw;
        bottom: -48.93vw;
        left: -79.2vw; } }
  body.index #wrap main {
    /* value */
    /* ponts */
    /* facility */
    /* price */
    /* howtostart */
    /* note_link */
    /* close */ }
    body.index #wrap main .blue_title {
      font-family: "Quicksand", sans-serif;
      font-weight: 600;
      color: #1AA2E6;
      line-height: 1; }
      @media screen and (max-width: 767px) {
        body.index #wrap main .blue_title {
          font-size: 14px; } }
      @media screen and (min-width: 768px) {
        body.index #wrap main .blue_title {
          font-size: calc((100vw / 1440) * 80); } }
      @media screen and (min-width: 1440px) {
        body.index #wrap main .blue_title {
          font-size: 80px; } }
      @media only screen and (max-width: 767px) {
        body.index #wrap main .blue_title {
          font-size: 44px;
          font-size: 4.4rem; } }
    body.index #wrap main #mv {
      width: 88.88vw;
      margin: 0 auto; }
      body.index #wrap main #mv .mv_cvr {
        position: relative; }
        body.index #wrap main #mv .mv_cvr .fitin {
          opacity: 0; }
          body.index #wrap main #mv .mv_cvr .fitin.active {
            opacity: 1; }
        body.index #wrap main #mv .mv_cvr p {
          position: absolute;
          transform: rotate(-90deg);
          line-height: 1.5;
          transform-origin: bottom left;
          color: #797979;
          bottom: 0; }
          @media screen and (max-width: 767px) {
            body.index #wrap main #mv .mv_cvr p {
              font-size: 14px; } }
          @media screen and (min-width: 768px) {
            body.index #wrap main #mv .mv_cvr p {
              font-size: calc((100vw / 1440) * 12); } }
          @media screen and (min-width: 1440px) {
            body.index #wrap main #mv .mv_cvr p {
              font-size: 12px; } }
          @media screen and (min-width: 768px) {
            body.index #wrap main #mv .mv_cvr p {
              left: calc((100vw / 1440) * -28); } }
          @media screen and (min-width: 1440px) {
            body.index #wrap main #mv .mv_cvr p {
              left: -28px; } }
          @media only screen and (max-width: 767px) {
            body.index #wrap main #mv .mv_cvr p {
              font-size: 10px;
              font-size: 1rem;
              transform: rotate(-90deg) scale(0.6);
              left: -6px; } }
    body.index #wrap main #lead {
      position: relative; }
      @media screen and (min-width: 768px) {
        body.index #wrap main #lead {
          padding-bottom: calc((100vw / 1440) * 132); } }
      @media screen and (min-width: 1440px) {
        body.index #wrap main #lead {
          padding-bottom: 132px; } }
      @media only screen and (max-width: 767px) {
        body.index #wrap main #lead {
          padding-bottom: 80px;
          z-index: -4; } }
      body.index #wrap main #lead .circle5 {
        content: '';
        background: url("../images/bg_obj.svg") no-repeat center center;
        background-size: contain;
        position: absolute;
        z-index: -1; }
        @media screen and (min-width: 768px) {
          body.index #wrap main #lead .circle5 {
            width: calc((100vw / 1440) * 1078); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #lead .circle5 {
            width: 1078px; } }
        @media screen and (min-width: 768px) {
          body.index #wrap main #lead .circle5 {
            height: calc((100vw / 1440) * 1078); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #lead .circle5 {
            height: 1078px; } }
        @media screen and (min-width: 768px) {
          body.index #wrap main #lead .circle5 {
            top: calc((100vw / 1440) * -482); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #lead .circle5 {
            top: -482px; } }
        @media screen and (min-width: 768px) {
          body.index #wrap main #lead .circle5 {
            left: calc((100vw / 1440) * -255); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #lead .circle5 {
            left: -255px; } }
        @media only screen and (max-width: 767px) {
          body.index #wrap main #lead .circle5 {
            width: 182.66vw;
            height: 182.66vw;
            top: -26.5vw;
            left: -94.8vw;
            z-index: -3; } }
      @media screen and (min-width: 768px) {
        body.index #wrap main #lead .lead {
          padding-top: calc((100vw / 1440) * 160); } }
      @media screen and (min-width: 1440px) {
        body.index #wrap main #lead .lead {
          padding-top: 160px; } }
      body.index #wrap main #lead .lead .lead_flex_first {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        margin-right: auto;
        margin-left: auto; }
        @media screen and (min-width: 768px) {
          body.index #wrap main #lead .lead .lead_flex_first {
            width: calc((100vw / 1440) * 1064); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #lead .lead .lead_flex_first {
            width: 1064px; } }
        @media only screen and (max-width: 767px) {
          body.index #wrap main #lead .lead .lead_flex_first {
            display: block; } }
        @media screen and (min-width: 768px) {
          body.index #wrap main #lead .lead .lead_flex_first .textbox {
            width: calc((100vw / 1440) * 505); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #lead .lead .lead_flex_first .textbox {
            width: 505px; } }
        body.index #wrap main #lead .lead .lead_flex_first .textbox .title_underline {
          font-weight: bold;
          line-height: 1.5; }
          @media screen and (min-width: 768px) {
            body.index #wrap main #lead .lead .lead_flex_first .textbox .title_underline {
              margin-bottom: calc((100vw / 1440) * 41); } }
          @media screen and (min-width: 1440px) {
            body.index #wrap main #lead .lead .lead_flex_first .textbox .title_underline {
              margin-bottom: 41px; } }
          @media screen and (max-width: 767px) {
            body.index #wrap main #lead .lead .lead_flex_first .textbox .title_underline {
              font-size: 14px; } }
          @media screen and (min-width: 768px) {
            body.index #wrap main #lead .lead .lead_flex_first .textbox .title_underline {
              font-size: calc((100vw / 1440) * 56); } }
          @media screen and (min-width: 1440px) {
            body.index #wrap main #lead .lead .lead_flex_first .textbox .title_underline {
              font-size: 56px; } }
          @media only screen and (max-width: 767px) {
            body.index #wrap main #lead .lead .lead_flex_first .textbox .title_underline {
              font-size: 28px;
              font-size: 2.8rem;
              margin-bottom: 18px;
              margin-top: 30px; } }
          @media only screen and (max-width: 540px) {
            body.index #wrap main #lead .lead .lead_flex_first .textbox .title_underline {
              margin-top: 46px; } }
          body.index #wrap main #lead .lead .lead_flex_first .textbox .title_underline span {
            border-bottom: 4px #1E1C1C solid;
            display: inline-block; }
            @media screen and (min-width: 768px) {
              body.index #wrap main #lead .lead .lead_flex_first .textbox .title_underline span {
                padding-bottom: calc((100vw / 1440) * 0); } }
            @media screen and (min-width: 1440px) {
              body.index #wrap main #lead .lead .lead_flex_first .textbox .title_underline span {
                padding-bottom: 0px; } }
            @media only screen and (max-width: 767px) {
              body.index #wrap main #lead .lead .lead_flex_first .textbox .title_underline span {
                border-width: 2px; } }
        body.index #wrap main #lead .lead .lead_flex_first .textbox p {
          display: block;
          color: #797979;
          line-height: 2; }
          @media screen and (max-width: 767px) {
            body.index #wrap main #lead .lead .lead_flex_first .textbox p {
              font-size: 14px; } }
          @media screen and (min-width: 768px) {
            body.index #wrap main #lead .lead .lead_flex_first .textbox p {
              font-size: calc((100vw / 1440) * 18); } }
          @media screen and (min-width: 1440px) {
            body.index #wrap main #lead .lead .lead_flex_first .textbox p {
              font-size: 18px; } }
          @media screen and (min-width: 768px) {
            body.index #wrap main #lead .lead .lead_flex_first .textbox p {
              padding-bottom: calc((100vw / 1440) * 150); } }
          @media screen and (min-width: 1440px) {
            body.index #wrap main #lead .lead .lead_flex_first .textbox p {
              padding-bottom: 150px; } }
          @media only screen and (max-width: 767px) {
            body.index #wrap main #lead .lead .lead_flex_first .textbox p {
              color: #1E1C1C;
              font-size: 13px;
              font-size: 1.3rem; } }
        @media screen and (min-width: 768px) {
          body.index #wrap main #lead .lead .lead_flex_first .lead_img1 {
            width: calc((100vw / 1440) * 450); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #lead .lead .lead_flex_first .lead_img1 {
            width: 450px; } }
        @media screen and (min-width: 768px) {
          body.index #wrap main #lead .lead .lead_flex_first .lead_img1 {
            margin-top: calc((100vw / 1440) * 91); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #lead .lead .lead_flex_first .lead_img1 {
            margin-top: 91px; } }
        @media only screen and (max-width: 767px) {
          body.index #wrap main #lead .lead .lead_flex_first .lead_img1 {
            width: 55.39%;
            margin-left: 44.61%;
            margin-top: 40px; } }
      body.index #wrap main #lead .lead .lead_flex_end {
        margin-left: auto;
        margin-right: auto;
        display: flex;
        justify-content: space-between;
        align-items: flex-start; }
        @media screen and (min-width: 768px) {
          body.index #wrap main #lead .lead .lead_flex_end {
            width: calc((100vw / 1440) * 1320); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #lead .lead .lead_flex_end {
            width: 1320px; } }
        @media only screen and (max-width: 767px) {
          body.index #wrap main #lead .lead .lead_flex_end {
            disolay: block;
            position: relative;
            margin-top: 30px; } }
        @media screen and (min-width: 768px) {
          body.index #wrap main #lead .lead .lead_flex_end .lead_img2 {
            width: calc((100vw / 1440) * 458); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #lead .lead .lead_flex_end .lead_img2 {
            width: 458px; } }
        @media screen and (min-width: 768px) {
          body.index #wrap main #lead .lead .lead_flex_end .lead_img2 {
            margin-top: calc((100vw / 1440) * -12); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #lead .lead .lead_flex_end .lead_img2 {
            margin-top: -12px; } }
        @media only screen and (max-width: 767px) {
          body.index #wrap main #lead .lead .lead_flex_end .lead_img2 {
            width: 44.76%;
            left: -30px;
            position: absolute;
            bottom: calc(100% + 30px);
            border-radius: 0 15px 15px 0; } }
        @media screen and (min-width: 768px) {
          body.index #wrap main #lead .lead .lead_flex_end .lead_img3 {
            width: calc((100vw / 1440) * 751); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #lead .lead .lead_flex_end .lead_img3 {
            width: 751px; } }
        @media screen and (min-width: 768px) {
          body.index #wrap main #lead .lead .lead_flex_end .lead_img3 {
            margin-top: calc((100vw / 1440) * 120); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #lead .lead .lead_flex_end .lead_img3 {
            margin-top: 120px; } }
        @media only screen and (max-width: 767px) {
          body.index #wrap main #lead .lead .lead_flex_end .lead_img3 {
            width: 86.34%;
            margin-right: 13.66%; } }
    body.index #wrap main #forwhom {
      background: #FFFDEC;
      position: relative;
      z-index: -2; }
      @media screen and (min-width: 768px) {
        body.index #wrap main #forwhom {
          padding-bottom: calc((100vw / 1440) * 132); } }
      @media screen and (min-width: 1440px) {
        body.index #wrap main #forwhom {
          padding-bottom: 132px; } }
      @media screen and (min-width: 768px) {
        body.index #wrap main #forwhom {
          padding-top: calc((100vw / 1440) * 130); } }
      @media screen and (min-width: 1440px) {
        body.index #wrap main #forwhom {
          padding-top: 130px; } }
      @media only screen and (max-width: 767px) {
        body.index #wrap main #forwhom {
          padding-top: 76px;
          padding-bottom: 60px; } }
      @media only screen and (max-width: 540px) {
        body.index #wrap main #forwhom {
          padding-bottom: 20px; } }
      body.index #wrap main #forwhom .illust1 {
        position: absolute; }
        @media screen and (min-width: 768px) {
          body.index #wrap main #forwhom .illust1 {
            top: calc((100vw / 1440) * -27); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #forwhom .illust1 {
            top: -27px; } }
        @media screen and (min-width: 768px) {
          body.index #wrap main #forwhom .illust1 {
            width: calc((100vw / 1440) * 256); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #forwhom .illust1 {
            width: 256px; } }
        @media screen and (min-width: 768px) {
          body.index #wrap main #forwhom .illust1 {
            right: calc((100vw / 1440) * 258); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #forwhom .illust1 {
            right: 258px; } }
        @media only screen and (max-width: 767px) {
          body.index #wrap main #forwhom .illust1 {
            width: 27%;
            top: -46.5px;
            right: 2%; } }
        @media only screen and (max-width: 540px) {
          body.index #wrap main #forwhom .illust1 {
            width: 125px;
            top: -46.5px;
            right: 19px; } }
      body.index #wrap main #forwhom .sectionindex {
        color: #1E1C1C; }
        @media screen and (min-width: 768px) {
          body.index #wrap main #forwhom .sectionindex {
            width: calc((100vw / 1440) * 450); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #forwhom .sectionindex {
            width: 450px; } }
        @media screen and (min-width: 768px) {
          body.index #wrap main #forwhom .sectionindex {
            margin-left: calc((100vw / 1440) * 202); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #forwhom .sectionindex {
            margin-left: 202px; } }
        @media screen and (min-width: 768px) {
          body.index #wrap main #forwhom .sectionindex {
            margin-bottom: calc((100vw / 1440) * 67); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #forwhom .sectionindex {
            margin-bottom: 67px; } }
        @media screen and (max-width: 767px) {
          body.index #wrap main #forwhom .sectionindex {
            font-size: 14px; } }
        @media screen and (min-width: 768px) {
          body.index #wrap main #forwhom .sectionindex {
            font-size: calc((100vw / 1440) * 20); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #forwhom .sectionindex {
            font-size: 20px; } }
        @media only screen and (max-width: 767px) {
          body.index #wrap main #forwhom .sectionindex {
            text-align: center;
            font-size: 13px;
            font-size: 1.3rem;
            margin-bottom: 35px; } }
        @media screen and (min-width: 768px) {
          body.index #wrap main #forwhom .sectionindex .blue_title {
            margin-bottom: calc((100vw / 1440) * 20); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #forwhom .sectionindex .blue_title {
            margin-bottom: 20px; } }
        @media only screen and (max-width: 767px) {
          body.index #wrap main #forwhom .sectionindex .blue_title {
            margin-bottom: 10px; } }
      body.index #wrap main #forwhom .forwhom_flex {
        margin-left: auto;
        margin-right: auto;
        display: flex;
        justify-content: space-between;
        align-items: flex-start; }
        @media screen and (min-width: 768px) {
          body.index #wrap main #forwhom .forwhom_flex {
            width: calc((100vw / 1440) * 1089); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #forwhom .forwhom_flex {
            width: 1089px; } }
        @media only screen and (max-width: 540px) {
          body.index #wrap main #forwhom .forwhom_flex {
            display: block; } }
        body.index #wrap main #forwhom .forwhom_flex .box {
          opacity: 0; }
          @media screen and (min-width: 768px) {
            body.index #wrap main #forwhom .forwhom_flex .box {
              width: calc((100vw / 1440) * 340); } }
          @media screen and (min-width: 1440px) {
            body.index #wrap main #forwhom .forwhom_flex .box {
              width: 340px; } }
          body.index #wrap main #forwhom .forwhom_flex .box.active {
            opacity: 1; }
          @media only screen and (max-width: 767px) {
            body.index #wrap main #forwhom .forwhom_flex .box {
              width: 30%; } }
          @media only screen and (max-width: 540px) {
            body.index #wrap main #forwhom .forwhom_flex .box {
              width: 265px;
              margin: 0 auto 60px;
              padding: 0; } }
          body.index #wrap main #forwhom .forwhom_flex .box .forwhom_img {
            position: relative; }
            @media screen and (min-width: 768px) {
              body.index #wrap main #forwhom .forwhom_flex .box .forwhom_img {
                width: calc((100vw / 1440) * 340); } }
            @media screen and (min-width: 1440px) {
              body.index #wrap main #forwhom .forwhom_flex .box .forwhom_img {
                width: 340px; } }
            @media screen and (min-width: 768px) {
              body.index #wrap main #forwhom .forwhom_flex .box .forwhom_img {
                height: calc((100vw / 1440) * 330); } }
            @media screen and (min-width: 1440px) {
              body.index #wrap main #forwhom .forwhom_flex .box .forwhom_img {
                height: 330px; } }
            @media screen and (min-width: 768px) {
              body.index #wrap main #forwhom .forwhom_flex .box .forwhom_img {
                padding-right: calc((100vw / 1440) * 10); } }
            @media screen and (min-width: 1440px) {
              body.index #wrap main #forwhom .forwhom_flex .box .forwhom_img {
                padding-right: 10px; } }
            @media screen and (min-width: 768px) {
              body.index #wrap main #forwhom .forwhom_flex .box .forwhom_img {
                padding-bottom: calc((100vw / 1440) * 10); } }
            @media screen and (min-width: 1440px) {
              body.index #wrap main #forwhom .forwhom_flex .box .forwhom_img {
                padding-bottom: 10px; } }
            @media only screen and (max-width: 767px) {
              body.index #wrap main #forwhom .forwhom_flex .box .forwhom_img {
                width: 100%;
                padding: 0 15px 15px 0; } }
            body.index #wrap main #forwhom .forwhom_flex .box .forwhom_img::after {
              content: '';
              background: #EAF8FF;
              border-radius: 50%;
              position: absolute;
              bottom: 0;
              right: 0;
              z-index: -1; }
              @media screen and (min-width: 768px) {
                body.index #wrap main #forwhom .forwhom_flex .box .forwhom_img::after {
                  width: calc((100vw / 1440) * 315); } }
              @media screen and (min-width: 1440px) {
                body.index #wrap main #forwhom .forwhom_flex .box .forwhom_img::after {
                  width: 315px; } }
              @media screen and (min-width: 768px) {
                body.index #wrap main #forwhom .forwhom_flex .box .forwhom_img::after {
                  height: calc((100vw / 1440) * 315); } }
              @media screen and (min-width: 1440px) {
                body.index #wrap main #forwhom .forwhom_flex .box .forwhom_img::after {
                  height: 315px; } }
              @media only screen and (max-width: 767px) {
                body.index #wrap main #forwhom .forwhom_flex .box .forwhom_img::after {
                  width: calc(100% - 15px);
                  height: calc(100% - 15px); } }
            body.index #wrap main #forwhom .forwhom_flex .box .forwhom_img .cvr {
              display: block;
              border-radius: 50%; }
              @media screen and (min-width: 768px) {
                body.index #wrap main #forwhom .forwhom_flex .box .forwhom_img .cvr {
                  width: calc((100vw / 1440) * 310); } }
              @media screen and (min-width: 1440px) {
                body.index #wrap main #forwhom .forwhom_flex .box .forwhom_img .cvr {
                  width: 310px; } }
          body.index #wrap main #forwhom .forwhom_flex .box p {
            color: #1E1C1C;
            text-align: center;
            display: flex;
            justify-content: center;
            align-items: center;
            line-height: 1.5;
            font-weight: 500; }
            @media screen and (max-width: 767px) {
              body.index #wrap main #forwhom .forwhom_flex .box p {
                font-size: 14px; } }
            @media screen and (min-width: 768px) {
              body.index #wrap main #forwhom .forwhom_flex .box p {
                font-size: calc((100vw / 1440) * 18); } }
            @media screen and (min-width: 1440px) {
              body.index #wrap main #forwhom .forwhom_flex .box p {
                font-size: 18px; } }
            @media screen and (min-width: 768px) {
              body.index #wrap main #forwhom .forwhom_flex .box p {
                margin-top: calc((100vw / 1440) * 17); } }
            @media screen and (min-width: 1440px) {
              body.index #wrap main #forwhom .forwhom_flex .box p {
                margin-top: 17px; } }
            @media screen and (min-width: 768px) {
              body.index #wrap main #forwhom .forwhom_flex .box p {
                height: calc((100vw / 1440) * 89); } }
            @media screen and (min-width: 1440px) {
              body.index #wrap main #forwhom .forwhom_flex .box p {
                height: 89px; } }
            @media only screen and (max-width: 767px) {
              body.index #wrap main #forwhom .forwhom_flex .box p {
                margin-top: 5px;
                font-size: 13px;
                font-size: 1.3rem; } }
            body.index #wrap main #forwhom .forwhom_flex .box p span {
              display: block; }
              body.index #wrap main #forwhom .forwhom_flex .box p span span {
                line-height: 1.40; }
    body.index #wrap main #value {
      position: relative;
      margin-left: auto;
      margin-right: auto; }
      @media screen and (min-width: 768px) {
        body.index #wrap main #value {
          width: calc((100vw / 1440) * 1440); } }
      @media screen and (min-width: 1440px) {
        body.index #wrap main #value {
          width: 1440px; } }
      @media only screen and (max-width: 767px) {
        body.index #wrap main #value {
          width: 85%; } }
      @media only screen and (max-width: 540px) {
        body.index #wrap main #value {
          width: 100%; } }
      body.index #wrap main #value .illust2 {
        position: absolute; }
        @media screen and (min-width: 768px) {
          body.index #wrap main #value .illust2 {
            bottom: calc((100vw / 1440) * 132); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #value .illust2 {
            bottom: 132px; } }
        @media screen and (min-width: 768px) {
          body.index #wrap main #value .illust2 {
            left: calc((100vw / 1440) * 111); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #value .illust2 {
            left: 111px; } }
        @media screen and (min-width: 768px) {
          body.index #wrap main #value .illust2 {
            width: calc((100vw / 1440) * 227); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #value .illust2 {
            width: 227px; } }
        @media only screen and (max-width: 767px) {
          body.index #wrap main #value .illust2 {
            width: 98.5px;
            left: 20px;
            top: 291px; } }
      body.index #wrap main #value #float_text {
        font-family: "Quicksand", sans-serif;
        line-height: 1;
        opacity: 0.05;
        color: #1AA2E6;
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        z-index: -1;
        width: 3700px; }
        @media screen and (max-width: 767px) {
          body.index #wrap main #value #float_text {
            font-size: 14px; } }
        @media screen and (min-width: 768px) {
          body.index #wrap main #value #float_text {
            font-size: calc((100vw / 1440) * 250); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #value #float_text {
            font-size: 250px; } }
        @media screen and (min-width: 768px) {
          body.index #wrap main #value #float_text {
            bottom: calc((100vw / 1440) * 115); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #value #float_text {
            bottom: 115px; } }
        @media only screen and (max-width: 767px) {
          body.index #wrap main #value #float_text {
            top: 24.8%;
            font-size: 150px;
            font-size: 15rem; } }
      body.index #wrap main #value .flex {
        margin-left: auto;
        margin-right: auto;
        display: flex;
        justify-content: space-between;
        align-items: flex-start; }
        @media screen and (min-width: 768px) {
          body.index #wrap main #value .flex {
            padding-top: calc((100vw / 1440) * 170); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #value .flex {
            padding-top: 170px; } }
        @media screen and (min-width: 768px) {
          body.index #wrap main #value .flex {
            padding-bottom: calc((100vw / 1440) * 140); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #value .flex {
            padding-bottom: 140px; } }
        @media screen and (min-width: 768px) {
          body.index #wrap main #value .flex {
            width: calc((100vw / 1440) * 1060); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #value .flex {
            width: 1060px; } }
        @media only screen and (max-width: 767px) {
          body.index #wrap main #value .flex {
            padding: 65px 0 60px; } }
        body.index #wrap main #value .flex .left {
          position: relative; }
          @media screen and (min-width: 768px) {
            body.index #wrap main #value .flex .left {
              width: calc((100vw / 1440) * 82); } }
          @media screen and (min-width: 1440px) {
            body.index #wrap main #value .flex .left {
              width: 82px; } }
          @media only screen and (max-width: 767px) {
            body.index #wrap main #value .flex .left {
              width: 100px; } }
          body.index #wrap main #value .flex .left .vertical {
            -ms-writing-mode: tb-rl;
            writing-mode: vertical-rl;
            font-weight: bold;
            line-height: 1.3; }
            @media screen and (max-width: 767px) {
              body.index #wrap main #value .flex .left .vertical {
                font-size: 14px; } }
            @media screen and (min-width: 768px) {
              body.index #wrap main #value .flex .left .vertical {
                font-size: calc((100vw / 1440) * 36); } }
            @media screen and (min-width: 1440px) {
              body.index #wrap main #value .flex .left .vertical {
                font-size: 36px; } }
            @media only screen and (max-width: 767px) {
              body.index #wrap main #value .flex .left .vertical {
                font-size: 26px;
                font-size: 2.6rem; } }
        @media screen and (min-width: 768px) {
          body.index #wrap main #value .flex .right {
            width: calc((100vw / 1440) * 878); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #value .flex .right {
            width: 878px; } }
        @media only screen and (max-width: 767px) {
          body.index #wrap main #value .flex .right {
            width: calc(100% - 100px); } }
        body.index #wrap main #value .flex .right ol {
          display: flex;
          flex-wrap: wrap;
          justify-content: flex-start;
          flex-direction: column;
          align-items: flex-start; }
          @media screen and (min-width: 768px) {
            body.index #wrap main #value .flex .right ol {
              height: calc((100vw / 1440) * 535); } }
          @media screen and (min-width: 1440px) {
            body.index #wrap main #value .flex .right ol {
              height: 535px; } }
          body.index #wrap main #value .flex .right ol li {
            display: flex;
            justify-content: space-between;
            align-items: flex-start;
            border-bottom: 1px solid #ddd; }
            @media screen and (min-width: 768px) {
              body.index #wrap main #value .flex .right ol li {
                width: calc((100vw / 1440) * 404); } }
            @media screen and (min-width: 1440px) {
              body.index #wrap main #value .flex .right ol li {
                width: 404px; } }
            @media screen and (min-width: 768px) {
              body.index #wrap main #value .flex .right ol li {
                margin-bottom: calc((100vw / 1440) * 36); } }
            @media screen and (min-width: 1440px) {
              body.index #wrap main #value .flex .right ol li {
                margin-bottom: 36px; } }
            @media screen and (min-width: 768px) {
              body.index #wrap main #value .flex .right ol li {
                padding-bottom: calc((100vw / 1440) * 42); } }
            @media screen and (min-width: 1440px) {
              body.index #wrap main #value .flex .right ol li {
                padding-bottom: 42px; } }
            @media only screen and (max-width: 767px) {
              body.index #wrap main #value .flex .right ol li {
                padding-bottom: 22px;
                margin-bottom: 20px;
                width: 100%;
                align-items: center; } }
            @media screen and (min-width: 768px) {
              body.index #wrap main #value .flex .right ol li:first-of-type {
                margin-right: calc((100vw / 1440) * 80); } }
            @media screen and (min-width: 1440px) {
              body.index #wrap main #value .flex .right ol li:first-of-type {
                margin-right: 80px; } }
            body.index #wrap main #value .flex .right ol li .num {
              letter-spacing: 0.05em;
              font-family: "Quicksand", sans-serif;
              text-shadow: 1px 1px 0 #1AA2E6, -1px -1px 0 #1AA2E6, -1px 1px 0 #1AA2E6, 1px -1px 0 #1AA2E6, 0px 1px 0 #1AA2E6, -1px 0 #1AA2E6, -1px 0 0 #1AA2E6, 1px 0 0 #1AA2E6;
              color: white;
              font-weight: 600;
              padding-top: 1px;
              display: inline-block; }
              @media screen and (min-width: 768px) {
                body.index #wrap main #value .flex .right ol li .num {
                  width: calc((100vw / 1440) * 108); } }
              @media screen and (min-width: 1440px) {
                body.index #wrap main #value .flex .right ol li .num {
                  width: 108px; } }
              @media screen and (max-width: 767px) {
                body.index #wrap main #value .flex .right ol li .num {
                  font-size: 14px; } }
              @media screen and (min-width: 768px) {
                body.index #wrap main #value .flex .right ol li .num {
                  font-size: calc((100vw / 1440) * 52); } }
              @media screen and (min-width: 1440px) {
                body.index #wrap main #value .flex .right ol li .num {
                  font-size: 52px; } }
              @media only screen and (max-width: 767px) {
                body.index #wrap main #value .flex .right ol li .num {
                  font-size: 30px;
                  font-size: 3rem;
                  width: 63px; } }
            body.index #wrap main #value .flex .right ol li p {
              display: block;
              line-height: 1.5;
              color: #1E1C1C; }
              @media screen and (max-width: 767px) {
                body.index #wrap main #value .flex .right ol li p {
                  font-size: 14px; } }
              @media screen and (min-width: 768px) {
                body.index #wrap main #value .flex .right ol li p {
                  font-size: calc((100vw / 1440) * 16); } }
              @media screen and (min-width: 1440px) {
                body.index #wrap main #value .flex .right ol li p {
                  font-size: 16px; } }
              @media screen and (min-width: 768px) {
                body.index #wrap main #value .flex .right ol li p {
                  width: calc((100vw / 1440) * 350); } }
              @media screen and (min-width: 1440px) {
                body.index #wrap main #value .flex .right ol li p {
                  width: 350px; } }
              @media only screen and (max-width: 767px) {
                body.index #wrap main #value .flex .right ol li p {
                  width: calc(100% - 63px);
                  font-size: 12px;
                  font-size: 1.2rem; } }
    body.index #wrap main #points {
      position: relative;
      margin-left: auto;
      margin-right: auto; }
      @media screen and (min-width: 768px) {
        body.index #wrap main #points {
          padding-top: calc((100vw / 1440) * 99); } }
      @media screen and (min-width: 1440px) {
        body.index #wrap main #points {
          padding-top: 99px; } }
      @media screen and (min-width: 768px) {
        body.index #wrap main #points {
          width: calc((100vw / 1440) * 1440); } }
      @media screen and (min-width: 1440px) {
        body.index #wrap main #points {
          width: 1440px; } }
      @media only screen and (max-width: 767px) {
        body.index #wrap main #points {
          padding: 50px 0 30px; } }
      @media only screen and (max-width: 540px) {
        body.index #wrap main #points {
          padding: 78px 0 30px; } }
      body.index #wrap main #points .circle3 {
        content: '';
        background: url("../images/bg_obj.svg") no-repeat center center;
        background-size: contain;
        position: absolute;
        z-index: -1; }
        @media screen and (min-width: 768px) {
          body.index #wrap main #points .circle3 {
            width: calc((100vw / 1440) * 1370); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #points .circle3 {
            width: 1370px; } }
        @media screen and (min-width: 768px) {
          body.index #wrap main #points .circle3 {
            height: calc((100vw / 1440) * 1370); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #points .circle3 {
            height: 1370px; } }
        @media screen and (min-width: 768px) {
          body.index #wrap main #points .circle3 {
            top: calc((100vw / 1440) * -576); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #points .circle3 {
            top: -576px; } }
        @media screen and (min-width: 768px) {
          body.index #wrap main #points .circle3 {
            right: calc((100vw / 1440) * -711); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #points .circle3 {
            right: -711px; } }
        @media only screen and (max-width: 767px) {
          body.index #wrap main #points .circle3 {
            width: 123.73vw;
            height: 123.73vw;
            left: 25.33%;
            top: -48.53vw; } }
      body.index #wrap main #points .illust3 {
        position: absolute; }
        @media screen and (min-width: 768px) {
          body.index #wrap main #points .illust3 {
            bottom: calc((100vw / 1440) * -90); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #points .illust3 {
            bottom: -90px; } }
        @media screen and (min-width: 768px) {
          body.index #wrap main #points .illust3 {
            left: calc((100vw / 1440) * 35); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #points .illust3 {
            left: 35px; } }
        @media screen and (min-width: 768px) {
          body.index #wrap main #points .illust3 {
            width: calc((100vw / 1440) * 315); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #points .illust3 {
            width: 315px; } }
        @media only screen and (max-width: 767px) {
          body.index #wrap main #points .illust3 {
            position: static;
            display: block;
            margin: -15px 30px 0 auto;
            width: 180px;
            display: block; } }
        @media only screen and (max-width: 540px) {
          body.index #wrap main #points .illust3 {
            margin: 28.5px auto 0;
            width: 52.72%; } }
      body.index #wrap main #points .points_inner {
        margin-right: auto;
        margin-left: auto;
        position: relative; }
        @media screen and (min-width: 768px) {
          body.index #wrap main #points .points_inner {
            width: calc((100vw / 1440) * 1064); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #points .points_inner {
            width: 1064px; } }
        body.index #wrap main #points .points_inner .sectionindex {
          position: absolute; }
          @media screen and (min-width: 768px) {
            body.index #wrap main #points .points_inner .sectionindex {
              top: calc((100vw / 1440) * 60); } }
          @media screen and (min-width: 1440px) {
            body.index #wrap main #points .points_inner .sectionindex {
              top: 60px; } }
          @media screen and (min-width: 768px) {
            body.index #wrap main #points .points_inner .sectionindex {
              right: calc((100vw / 1440) * 0); } }
          @media screen and (min-width: 1440px) {
            body.index #wrap main #points .points_inner .sectionindex {
              right: 0px; } }
          @media screen and (min-width: 768px) {
            body.index #wrap main #points .points_inner .sectionindex {
              width: calc((100vw / 1440) * 318); } }
          @media screen and (min-width: 1440px) {
            body.index #wrap main #points .points_inner .sectionindex {
              width: 318px; } }
          @media only screen and (max-width: 767px) {
            body.index #wrap main #points .points_inner .sectionindex {
              position: static;
              margin-bottom: 40px; } }
          @media only screen and (max-width: 540px) {
            body.index #wrap main #points .points_inner .sectionindex {
              margin-bottom: 60px; } }
          body.index #wrap main #points .points_inner .sectionindex .subtitle {
            display: block;
            line-height: 1.5;
            color: #1E1C1C; }
            @media screen and (max-width: 767px) {
              body.index #wrap main #points .points_inner .sectionindex .subtitle {
                font-size: 14px; } }
            @media screen and (min-width: 768px) {
              body.index #wrap main #points .points_inner .sectionindex .subtitle {
                font-size: calc((100vw / 1440) * 20); } }
            @media screen and (min-width: 1440px) {
              body.index #wrap main #points .points_inner .sectionindex .subtitle {
                font-size: 20px; } }
            @media screen and (min-width: 768px) {
              body.index #wrap main #points .points_inner .sectionindex .subtitle {
                margin-top: calc((100vw / 1440) * 20); } }
            @media screen and (min-width: 1440px) {
              body.index #wrap main #points .points_inner .sectionindex .subtitle {
                margin-top: 20px; } }
            @media screen and (min-width: 768px) {
              body.index #wrap main #points .points_inner .sectionindex .subtitle {
                margin-bottom: calc((100vw / 1440) * 20); } }
            @media screen and (min-width: 1440px) {
              body.index #wrap main #points .points_inner .sectionindex .subtitle {
                margin-bottom: 20px; } }
            @media screen and (max-width: 767px) {
              body.index #wrap main #points .points_inner .sectionindex .subtitle {
                font-size: 14px; } }
            @media screen and (min-width: 768px) {
              body.index #wrap main #points .points_inner .sectionindex .subtitle {
                font-size: calc((100vw / 1440) * 20); } }
            @media screen and (min-width: 1440px) {
              body.index #wrap main #points .points_inner .sectionindex .subtitle {
                font-size: 20px; } }
            @media only screen and (max-width: 767px) {
              body.index #wrap main #points .points_inner .sectionindex .subtitle {
                margin: 10px 0 12px;
                font-size: 13px;
                font-size: 1.3rem; }
                body.index #wrap main #points .points_inner .sectionindex .subtitle br {
                  display: none; } }
          body.index #wrap main #points .points_inner .sectionindex p {
            color: #797979;
            line-height: 1.75;
            display: block; }
            @media screen and (max-width: 767px) {
              body.index #wrap main #points .points_inner .sectionindex p {
                font-size: 14px; } }
            @media screen and (min-width: 768px) {
              body.index #wrap main #points .points_inner .sectionindex p {
                font-size: calc((100vw / 1440) * 16); } }
            @media screen and (min-width: 1440px) {
              body.index #wrap main #points .points_inner .sectionindex p {
                font-size: 16px; } }
            @media only screen and (max-width: 767px) {
              body.index #wrap main #points .points_inner .sectionindex p {
                font-size: 13px;
                font-size: 1.3rem; } }
        body.index #wrap main #points .points_inner .flex .first_half, body.index #wrap main #points .points_inner .flex .end_half {
          display: flex;
          justify-content: space-between;
          align-items: flex-start; }
          @media only screen and (max-width: 767px) {
            body.index #wrap main #points .points_inner .flex .first_half, body.index #wrap main #points .points_inner .flex .end_half {
              display: block; } }
          @media screen and (min-width: 768px) {
            body.index #wrap main #points .points_inner .flex .first_half .box, body.index #wrap main #points .points_inner .flex .end_half .box {
              width: calc((100vw / 1440) * 315); } }
          @media screen and (min-width: 1440px) {
            body.index #wrap main #points .points_inner .flex .first_half .box, body.index #wrap main #points .points_inner .flex .end_half .box {
              width: 315px; } }
          @media only screen and (max-width: 767px) {
            body.index #wrap main #points .points_inner .flex .first_half .box, body.index #wrap main #points .points_inner .flex .end_half .box {
              display: flex;
              width: 100%; }
              body.index #wrap main #points .points_inner .flex .first_half .box:not(:last-child), body.index #wrap main #points .points_inner .flex .end_half .box:not(:last-child) {
                margin-bottom: 30px; } }
          @media only screen and (max-width: 540px) {
            body.index #wrap main #points .points_inner .flex .first_half .box, body.index #wrap main #points .points_inner .flex .end_half .box {
              display: block; }
              body.index #wrap main #points .points_inner .flex .first_half .box:not(:last-child), body.index #wrap main #points .points_inner .flex .end_half .box:not(:last-child) {
                margin-bottom: 60px; } }
          @media screen and (min-width: 768px) {
            body.index #wrap main #points .points_inner .flex .first_half .box:nth-child(2), body.index #wrap main #points .points_inner .flex .end_half .box:nth-child(2) {
              margin-top: calc((100vw / 1440) * 226); } }
          @media screen and (min-width: 1440px) {
            body.index #wrap main #points .points_inner .flex .first_half .box:nth-child(2), body.index #wrap main #points .points_inner .flex .end_half .box:nth-child(2) {
              margin-top: 226px; } }
          @media screen and (min-width: 768px) {
            body.index #wrap main #points .points_inner .flex .first_half .box:nth-child(3), body.index #wrap main #points .points_inner .flex .end_half .box:nth-child(3) {
              margin-top: calc((100vw / 1440) * 452); } }
          @media screen and (min-width: 1440px) {
            body.index #wrap main #points .points_inner .flex .first_half .box:nth-child(3), body.index #wrap main #points .points_inner .flex .end_half .box:nth-child(3) {
              margin-top: 452px; } }
          @media only screen and (max-width: 767px) {
            body.index #wrap main #points .points_inner .flex .first_half .box .text, body.index #wrap main #points .points_inner .flex .end_half .box .text {
              padding-left: 30px;
              width: 60%; } }
          @media only screen and (max-width: 540px) {
            body.index #wrap main #points .points_inner .flex .first_half .box .text, body.index #wrap main #points .points_inner .flex .end_half .box .text {
              padding-left: 0;
              width: 100%; } }
          @media only screen and (max-width: 767px) {
            body.index #wrap main #points .points_inner .flex .first_half .box .round, body.index #wrap main #points .points_inner .flex .end_half .box .round {
              width: 40%; } }
          @media only screen and (max-width: 540px) {
            body.index #wrap main #points .points_inner .flex .first_half .box .round, body.index #wrap main #points .points_inner .flex .end_half .box .round {
              width: 100%; } }
          body.index #wrap main #points .points_inner .flex .first_half .box .boxtitle, body.index #wrap main #points .points_inner .flex .end_half .box .boxtitle {
            line-height: 1.5;
            font-weight: bold;
            display: block; }
            @media screen and (max-width: 767px) {
              body.index #wrap main #points .points_inner .flex .first_half .box .boxtitle, body.index #wrap main #points .points_inner .flex .end_half .box .boxtitle {
                font-size: 14px; } }
            @media screen and (min-width: 768px) {
              body.index #wrap main #points .points_inner .flex .first_half .box .boxtitle, body.index #wrap main #points .points_inner .flex .end_half .box .boxtitle {
                font-size: calc((100vw / 1440) * 22); } }
            @media screen and (min-width: 1440px) {
              body.index #wrap main #points .points_inner .flex .first_half .box .boxtitle, body.index #wrap main #points .points_inner .flex .end_half .box .boxtitle {
                font-size: 22px; } }
            @media screen and (min-width: 768px) {
              body.index #wrap main #points .points_inner .flex .first_half .box .boxtitle, body.index #wrap main #points .points_inner .flex .end_half .box .boxtitle {
                margin-bottom: calc((100vw / 1440) * 20); } }
            @media screen and (min-width: 1440px) {
              body.index #wrap main #points .points_inner .flex .first_half .box .boxtitle, body.index #wrap main #points .points_inner .flex .end_half .box .boxtitle {
                margin-bottom: 20px; } }
            @media screen and (min-width: 768px) {
              body.index #wrap main #points .points_inner .flex .first_half .box .boxtitle, body.index #wrap main #points .points_inner .flex .end_half .box .boxtitle {
                margin-top: calc((100vw / 1440) * 40); } }
            @media screen and (min-width: 1440px) {
              body.index #wrap main #points .points_inner .flex .first_half .box .boxtitle, body.index #wrap main #points .points_inner .flex .end_half .box .boxtitle {
                margin-top: 40px; } }
            @media only screen and (max-width: 767px) {
              body.index #wrap main #points .points_inner .flex .first_half .box .boxtitle, body.index #wrap main #points .points_inner .flex .end_half .box .boxtitle {
                font-size: 18px;
                font-size: 1.8rem;
                margin-bottom: 15px;
                margin-top: 0; }
                body.index #wrap main #points .points_inner .flex .first_half .box .boxtitle br, body.index #wrap main #points .points_inner .flex .end_half .box .boxtitle br {
                  display: none; } }
            @media only screen and (max-width: 540px) {
              body.index #wrap main #points .points_inner .flex .first_half .box .boxtitle, body.index #wrap main #points .points_inner .flex .end_half .box .boxtitle {
                margin-top: 30px; } }
          body.index #wrap main #points .points_inner .flex .first_half .box p, body.index #wrap main #points .points_inner .flex .end_half .box p {
            color: #797979;
            line-height: 1.75; }
            @media screen and (max-width: 767px) {
              body.index #wrap main #points .points_inner .flex .first_half .box p, body.index #wrap main #points .points_inner .flex .end_half .box p {
                font-size: 14px; } }
            @media screen and (min-width: 768px) {
              body.index #wrap main #points .points_inner .flex .first_half .box p, body.index #wrap main #points .points_inner .flex .end_half .box p {
                font-size: calc((100vw / 1440) * 14); } }
            @media screen and (min-width: 1440px) {
              body.index #wrap main #points .points_inner .flex .first_half .box p, body.index #wrap main #points .points_inner .flex .end_half .box p {
                font-size: 14px; } }
            @media only screen and (max-width: 767px) {
              body.index #wrap main #points .points_inner .flex .first_half .box p, body.index #wrap main #points .points_inner .flex .end_half .box p {
                font-size: 13px;
                font-size: 1.3rem; } }
        @media screen and (min-width: 768px) {
          body.index #wrap main #points .points_inner .flex .end_half {
            margin-top: calc((100vw / 1440) * -300); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #points .points_inner .flex .end_half {
            margin-top: -300px; } }
        @media only screen and (max-width: 767px) {
          body.index #wrap main #points .points_inner .flex .end_half {
            margin-top: 30px; } }
        @media only screen and (max-width: 540px) {
          body.index #wrap main #points .points_inner .flex .end_half {
            margin-top: 60px; } }
    body.index #wrap main #facility {
      position: relative; }
      @media screen and (min-width: 768px) {
        body.index #wrap main #facility {
          padding-top: calc((100vw / 1440) * 160); } }
      @media screen and (min-width: 1440px) {
        body.index #wrap main #facility {
          padding-top: 160px; } }
      body.index #wrap main #facility .circle4 {
        content: '';
        background: url("../images/bg_obj.svg") no-repeat center center;
        background-size: contain;
        position: absolute;
        z-index: -1; }
        @media screen and (min-width: 768px) {
          body.index #wrap main #facility .circle4 {
            width: calc((100vw / 1440) * 1370); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #facility .circle4 {
            width: 1370px; } }
        @media screen and (min-width: 768px) {
          body.index #wrap main #facility .circle4 {
            height: calc((100vw / 1440) * 1370); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #facility .circle4 {
            height: 1370px; } }
        @media screen and (min-width: 768px) {
          body.index #wrap main #facility .circle4 {
            top: calc((100vw / 1440) * -188); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #facility .circle4 {
            top: -188px; } }
        @media screen and (min-width: 768px) {
          body.index #wrap main #facility .circle4 {
            left: calc((100vw / 1440) * -305); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #facility .circle4 {
            left: -305px; } }
        @media only screen and (max-width: 767px) {
          body.index #wrap main #facility .circle4 {
            top: -44.93vw;
            left: -74.93vw;
            width: 160vw;
            height: 160vw; } }
        @media only screen and (max-width: 540px) {
          body.index #wrap main #facility .circle4 {
            width: 224.4vw;
            height: 224.4vw; } }
      body.index #wrap main #facility .facility_inner {
        margin-left: auto;
        margin-right: auto;
        position: relative;
        display: flex;
        justify-content: space-between;
        align-items: stretch;
        flex-wrap: wrap; }
        @media screen and (min-width: 768px) {
          body.index #wrap main #facility .facility_inner {
            width: calc((100vw / 1440) * 1077); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #facility .facility_inner {
            width: 1077px; } }
        body.index #wrap main #facility .facility_inner .sectiontitle {
          position: relative; }
          @media screen and (min-width: 768px) {
            body.index #wrap main #facility .facility_inner .sectiontitle {
              width: calc((100vw / 1440) * 146); } }
          @media screen and (min-width: 1440px) {
            body.index #wrap main #facility .facility_inner .sectiontitle {
              width: 146px; } }
          @media only screen and (max-width: 767px) {
            body.index #wrap main #facility .facility_inner .sectiontitle {
              width: 74px; } }
          body.index #wrap main #facility .facility_inner .sectiontitle .blue_title {
            position: absolute;
            transform: rotate(90deg);
            transform-origin: top left; }
            @media screen and (min-width: 768px) {
              body.index #wrap main #facility .facility_inner .sectiontitle .blue_title {
                top: calc((100vw / 1440) * -6); } }
            @media screen and (min-width: 1440px) {
              body.index #wrap main #facility .facility_inner .sectiontitle .blue_title {
                top: -6px; } }
            @media screen and (min-width: 768px) {
              body.index #wrap main #facility .facility_inner .sectiontitle .blue_title {
                left: calc((100vw / 1440) * 160); } }
            @media screen and (min-width: 1440px) {
              body.index #wrap main #facility .facility_inner .sectiontitle .blue_title {
                left: 160px; } }
            @media only screen and (max-width: 767px) {
              body.index #wrap main #facility .facility_inner .sectiontitle .blue_title {
                left: 107%;
                top: 0; } }
          body.index #wrap main #facility .facility_inner .sectiontitle .vertical {
            -ms-writing-mode: tb-rl;
            writing-mode: vertical-rl;
            line-height: 1.5; }
            @media screen and (max-width: 767px) {
              body.index #wrap main #facility .facility_inner .sectiontitle .vertical {
                font-size: 14px; } }
            @media screen and (min-width: 768px) {
              body.index #wrap main #facility .facility_inner .sectiontitle .vertical {
                font-size: calc((100vw / 1440) * 20); } }
            @media screen and (min-width: 1440px) {
              body.index #wrap main #facility .facility_inner .sectiontitle .vertical {
                font-size: 20px; } }
            @media only screen and (max-width: 767px) {
              body.index #wrap main #facility .facility_inner .sectiontitle .vertical {
                font-size: 13px;
                font-size: 1.3rem;
                line-height: 1.3;
                margin-left: -5px; } }
        body.index #wrap main #facility .facility_inner .imgbox {
          position: relative; }
          @media screen and (min-width: 768px) {
            body.index #wrap main #facility .facility_inner .imgbox {
              width: calc((100vw / 1440) * 838); } }
          @media screen and (min-width: 1440px) {
            body.index #wrap main #facility .facility_inner .imgbox {
              width: 838px; } }
          @media only screen and (max-width: 767px) {
            body.index #wrap main #facility .facility_inner .imgbox {
              width: calc(100% - 74px - 26px); } }
          body.index #wrap main #facility .facility_inner .imgbox p {
            position: absolute;
            color: white;
            line-height: 1.75;
            z-index: 4; }
            @media screen and (min-width: 768px) {
              body.index #wrap main #facility .facility_inner .imgbox p {
                bottom: calc((100vw / 1440) * 35); } }
            @media screen and (min-width: 1440px) {
              body.index #wrap main #facility .facility_inner .imgbox p {
                bottom: 35px; } }
            @media screen and (min-width: 768px) {
              body.index #wrap main #facility .facility_inner .imgbox p {
                left: calc((100vw / 1440) * 35); } }
            @media screen and (min-width: 1440px) {
              body.index #wrap main #facility .facility_inner .imgbox p {
                left: 35px; } }
            @media screen and (min-width: 768px) {
              body.index #wrap main #facility .facility_inner .imgbox p {
                width: calc((100vw / 1440) * 330); } }
            @media screen and (min-width: 1440px) {
              body.index #wrap main #facility .facility_inner .imgbox p {
                width: 330px; } }
            @media screen and (max-width: 767px) {
              body.index #wrap main #facility .facility_inner .imgbox p {
                font-size: 14px; } }
            @media screen and (min-width: 768px) {
              body.index #wrap main #facility .facility_inner .imgbox p {
                font-size: calc((100vw / 1440) * 14); } }
            @media screen and (min-width: 1440px) {
              body.index #wrap main #facility .facility_inner .imgbox p {
                font-size: 14px; } }
        @media only screen and (max-width: 767px) {
          body.index #wrap main #facility .facility_inner .text {
            font-size: 13px;
            font-size: 1.3rem;
            color: #797979;
            line-height: 1.75;
            margin-top: 30px;
            margin-bottom: 35px; } }
        @media only screen and (max-width: 540px) {
          body.index #wrap main #facility .facility_inner .text {
            margin-bottom: 46px; } }
        body.index #wrap main #facility .facility_inner .animationlink {
          display: flex;
          justify-content: space-between;
          align-items: center;
          color: #1AA2E6;
          position: absolute;
          line-height: 1.75; }
          @media screen and (min-width: 768px) {
            body.index #wrap main #facility .facility_inner .animationlink {
              width: calc((100vw / 1440) * 160); } }
          @media screen and (min-width: 1440px) {
            body.index #wrap main #facility .facility_inner .animationlink {
              width: 160px; } }
          @media screen and (min-width: 768px) {
            body.index #wrap main #facility .facility_inner .animationlink {
              bottom: calc((100vw / 1440) * 0); } }
          @media screen and (min-width: 1440px) {
            body.index #wrap main #facility .facility_inner .animationlink {
              bottom: 0px; } }
          @media screen and (min-width: 768px) {
            body.index #wrap main #facility .facility_inner .animationlink {
              left: calc((100vw / 1440) * 0); } }
          @media screen and (min-width: 1440px) {
            body.index #wrap main #facility .facility_inner .animationlink {
              left: 0px; } }
          @media screen and (max-width: 767px) {
            body.index #wrap main #facility .facility_inner .animationlink {
              font-size: 14px; } }
          @media screen and (min-width: 768px) {
            body.index #wrap main #facility .facility_inner .animationlink {
              font-size: calc((100vw / 1440) * 16); } }
          @media screen and (min-width: 1440px) {
            body.index #wrap main #facility .facility_inner .animationlink {
              font-size: 16px; } }
          @media only screen and (max-width: 767px) {
            body.index #wrap main #facility .facility_inner .animationlink {
              font-size: 11px;
              font-size: 1.1rem;
              margin: 20px 0 0;
              position: relative;
              letter-spacing: 0.05em;
              width: 112px; } }
          @media only screen and (max-width: 540px) {
            body.index #wrap main #facility .facility_inner .animationlink {
              margin: 30px 0 0; } }
          body.index #wrap main #facility .facility_inner .animationlink .txtcvr {
            line-height: 1; }
          body.index #wrap main #facility .facility_inner .animationlink img {
            display: block; }
            @media screen and (min-width: 768px) {
              body.index #wrap main #facility .facility_inner .animationlink img {
                width: calc((100vw / 1440) * 41); } }
            @media screen and (min-width: 1440px) {
              body.index #wrap main #facility .facility_inner .animationlink img {
                width: 41px; } }
            @media only screen and (max-width: 767px) {
              body.index #wrap main #facility .facility_inner .animationlink img {
                width: 20px;
                margin-left: 10px; } }
      @media screen and (min-width: 768px) {
        body.index #wrap main #facility #slider {
          margin-top: calc((100vw / 1440) * 89); } }
      @media screen and (min-width: 1440px) {
        body.index #wrap main #facility #slider {
          margin-top: 89px; } }
      @media screen and (min-width: 768px) {
        body.index #wrap main #facility #slider {
          width: calc((100vw / 1440) * 1845); } }
      @media screen and (min-width: 1440px) {
        body.index #wrap main #facility #slider {
          width: 1845px; } }
      @media only screen and (max-width: 767px) {
        body.index #wrap main #facility #slider {
          width: 922px; } }
      body.index #wrap main #facility #slider .slick-list {
        overflow: unset; }
      @media only screen and (max-width: 767px) {
        body.index #wrap main #facility #slider li {
          width: 307vw; } }
    @media only screen and (max-width: 767px) {
      body.index #wrap main #price {
        padding: 50px 0; } }
    @media only screen and (max-width: 540px) {
      body.index #wrap main #price {
        padding: 70px 0 110px; } }
    body.index #wrap main #price .price_inner {
      margin-left: auto;
      margin-right: auto;
      display: flex;
      justify-content: space-between;
      align-items: stretch;
      flex-direction: row-reverse; }
      @media screen and (min-width: 768px) {
        body.index #wrap main #price .price_inner {
          width: calc((100vw / 1440) * 704); } }
      @media screen and (min-width: 1440px) {
        body.index #wrap main #price .price_inner {
          width: 704px; } }
      @media screen and (min-width: 768px) {
        body.index #wrap main #price .price_inner {
          padding-top: calc((100vw / 1440) * 160); } }
      @media screen and (min-width: 1440px) {
        body.index #wrap main #price .price_inner {
          padding-top: 160px; } }
      @media screen and (min-width: 768px) {
        body.index #wrap main #price .price_inner {
          padding-bottom: calc((100vw / 1440) * 160); } }
      @media screen and (min-width: 1440px) {
        body.index #wrap main #price .price_inner {
          padding-bottom: 160px; } }
      @media only screen and (max-width: 540px) {
        body.index #wrap main #price .price_inner {
          display: block; } }
      body.index #wrap main #price .price_inner .sectiontitle {
        position: relative; }
        @media screen and (min-width: 768px) {
          body.index #wrap main #price .price_inner .sectiontitle {
            width: calc((100vw / 1440) * 146); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #price .price_inner .sectiontitle {
            width: 146px; } }
        @media only screen and (max-width: 767px) {
          body.index #wrap main #price .price_inner .sectiontitle {
            width: 68px; }
            body.index #wrap main #price .price_inner .sectiontitle br {
              display: none; } }
        @media only screen and (max-width: 540px) {
          body.index #wrap main #price .price_inner .sectiontitle {
            width: 100%;
            margin-bottom: 32px; } }
        body.index #wrap main #price .price_inner .sectiontitle .blue_title {
          position: absolute;
          transform: rotate(90deg);
          transform-origin: top left; }
          @media screen and (min-width: 768px) {
            body.index #wrap main #price .price_inner .sectiontitle .blue_title {
              top: calc((100vw / 1440) * -6); } }
          @media screen and (min-width: 1440px) {
            body.index #wrap main #price .price_inner .sectiontitle .blue_title {
              top: -6px; } }
          @media screen and (min-width: 768px) {
            body.index #wrap main #price .price_inner .sectiontitle .blue_title {
              left: calc((100vw / 1440) * 160); } }
          @media screen and (min-width: 1440px) {
            body.index #wrap main #price .price_inner .sectiontitle .blue_title {
              left: 160px; } }
          @media only screen and (max-width: 767px) {
            body.index #wrap main #price .price_inner .sectiontitle .blue_title {
              left: 103%; } }
          @media only screen and (max-width: 540px) {
            body.index #wrap main #price .price_inner .sectiontitle .blue_title {
              left: auto;
              position: static;
              top: auto;
              transform: none; } }
        body.index #wrap main #price .price_inner .sectiontitle .vertical {
          -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
          line-height: 1.5; }
          @media screen and (max-width: 767px) {
            body.index #wrap main #price .price_inner .sectiontitle .vertical {
              font-size: 14px; } }
          @media screen and (min-width: 768px) {
            body.index #wrap main #price .price_inner .sectiontitle .vertical {
              font-size: calc((100vw / 1440) * 20); } }
          @media screen and (min-width: 1440px) {
            body.index #wrap main #price .price_inner .sectiontitle .vertical {
              font-size: 20px; } }
          @media only screen and (max-width: 767px) {
            body.index #wrap main #price .price_inner .sectiontitle .vertical {
              font-size: 13px;
              font-size: 1.3rem; } }
          @media only screen and (max-width: 540px) {
            body.index #wrap main #price .price_inner .sectiontitle .vertical {
              -ms-writing-mode: unset;
              writing-mode: unset;
              line-height: 1.5;
              width: 100%;
              display: block;
              margin-top: 11px; } }
      @media screen and (min-width: 768px) {
        body.index #wrap main #price .price_inner .pricelist {
          width: calc((100vw / 1440) * 503); } }
      @media screen and (min-width: 1440px) {
        body.index #wrap main #price .price_inner .pricelist {
          width: 503px; } }
      @media only screen and (max-width: 767px) {
        body.index #wrap main #price .price_inner .pricelist {
          width: calc(100% - 98px); } }
      @media only screen and (max-width: 540px) {
        body.index #wrap main #price .price_inner .pricelist {
          width: 100%; } }
      body.index #wrap main #price .price_inner .pricelist .atc {
        color: #797979;
        line-height: 1.5;
        text-align: right;
        display: block; }
        @media screen and (max-width: 767px) {
          body.index #wrap main #price .price_inner .pricelist .atc {
            font-size: 14px; } }
        @media screen and (min-width: 768px) {
          body.index #wrap main #price .price_inner .pricelist .atc {
            font-size: calc((100vw / 1440) * 10); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #price .price_inner .pricelist .atc {
            font-size: 10px; } }
        @media only screen and (max-width: 767px) {
          body.index #wrap main #price .price_inner .pricelist .atc {
            font-size: 9px;
            font-size: 0.9rem; } }
        @media only screen and (max-width: 540px) {
          body.index #wrap main #price .price_inner .pricelist .atc {
            margin-top: 3px;
            text-align: left; } }
      body.index #wrap main #price .price_inner .pricelist ul {
        display: flex;
        flex-wrap: wrap;
        align-items: flex-start; }
        body.index #wrap main #price .price_inner .pricelist ul li {
          width: 100%;
          display: flex;
          justify-content: space-between;
          align-items: flex-start;
          border-bottom: 1px solid #ddd; }
          @media screen and (min-width: 768px) {
            body.index #wrap main #price .price_inner .pricelist ul li {
              margin-bottom: calc((100vw / 1440) * 36); } }
          @media screen and (min-width: 1440px) {
            body.index #wrap main #price .price_inner .pricelist ul li {
              margin-bottom: 36px; } }
          @media screen and (min-width: 768px) {
            body.index #wrap main #price .price_inner .pricelist ul li {
              padding-bottom: calc((100vw / 1440) * 42); } }
          @media screen and (min-width: 1440px) {
            body.index #wrap main #price .price_inner .pricelist ul li {
              padding-bottom: 42px; } }
          @media only screen and (max-width: 767px) {
            body.index #wrap main #price .price_inner .pricelist ul li {
              padding-bottom: 17px;
              margin-bottom: 19px; } }
          @media only screen and (max-width: 540px) {
            body.index #wrap main #price .price_inner .pricelist ul li {
              padding-bottom: 20px;
              margin-bottom: 19px; } }
          body.index #wrap main #price .price_inner .pricelist ul li.in_ul {
            padding-bottom: 0; }
            @media only screen and (max-width: 767px) {
              body.index #wrap main #price .price_inner .pricelist ul li.in_ul {
                border-top: 1px solid #ddd;
                padding-top: 17.5px; } }
          @media screen and (min-width: 768px) {
            body.index #wrap main #price .price_inner .pricelist ul li:last-child {
              margin-bottom: calc((100vw / 1440) * 20); } }
          @media screen and (min-width: 1440px) {
            body.index #wrap main #price .price_inner .pricelist ul li:last-child {
              margin-bottom: 20px; } }
          @media screen and (min-width: 768px) {
            body.index #wrap main #price .price_inner .pricelist ul li .pricebox {
              width: calc((100vw / 1440) * 268); } }
          @media screen and (min-width: 1440px) {
            body.index #wrap main #price .price_inner .pricelist ul li .pricebox {
              width: 268px; } }
          @media only screen and (max-width: 767px) {
            body.index #wrap main #price .price_inner .pricelist ul li .pricebox {
              width: 64.28%; } }
          body.index #wrap main #price .price_inner .pricelist ul li .pricebox li {
            align-items: center; }
            body.index #wrap main #price .price_inner .pricelist ul li .pricebox li:last-child {
              border: none;
              margin-bottom: 0; }
            body.index #wrap main #price .price_inner .pricelist ul li .pricebox li .li_title {
              color: #1E1C1C; }
              @media screen and (max-width: 767px) {
                body.index #wrap main #price .price_inner .pricelist ul li .pricebox li .li_title {
                  font-size: 14px; } }
              @media screen and (min-width: 768px) {
                body.index #wrap main #price .price_inner .pricelist ul li .pricebox li .li_title {
                  font-size: calc((100vw / 1440) * 14); } }
              @media screen and (min-width: 1440px) {
                body.index #wrap main #price .price_inner .pricelist ul li .pricebox li .li_title {
                  font-size: 14px; } }
              body.index #wrap main #price .price_inner .pricelist ul li .pricebox li .li_title small {
                display: block;
                font-size: 10px;
                font-size: 1rem;
                color: #797979; }
                @media screen and (min-width: 768px) {
                  body.index #wrap main #price .price_inner .pricelist ul li .pricebox li .li_title small {
                    margin-top: calc((100vw / 1440) * 10); } }
                @media screen and (min-width: 1440px) {
                  body.index #wrap main #price .price_inner .pricelist ul li .pricebox li .li_title small {
                    margin-top: 10px; } }
                @media only screen and (max-width: 767px) {
                  body.index #wrap main #price .price_inner .pricelist ul li .pricebox li .li_title small {
                    margin-top: 8px;
                    font-size: 9px;
                    font-size: 0.9rem; } }
          body.index #wrap main #price .price_inner .pricelist ul li .blue {
            line-height: 1.5;
            color: #1AA2E6; }
            @media screen and (max-width: 767px) {
              body.index #wrap main #price .price_inner .pricelist ul li .blue {
                font-size: 14px; } }
            @media screen and (min-width: 768px) {
              body.index #wrap main #price .price_inner .pricelist ul li .blue {
                font-size: calc((100vw / 1440) * 18); } }
            @media screen and (min-width: 1440px) {
              body.index #wrap main #price .price_inner .pricelist ul li .blue {
                font-size: 18px; } }
            @media screen and (min-width: 768px) {
              body.index #wrap main #price .price_inner .pricelist ul li .blue {
                width: calc((100vw / 1440) * 210); } }
            @media screen and (min-width: 1440px) {
              body.index #wrap main #price .price_inner .pricelist ul li .blue {
                width: 210px; } }
            @media only screen and (max-width: 767px) {
              body.index #wrap main #price .price_inner .pricelist ul li .blue {
                font-size: 14.5px;
                font-size: 1.45rem;
                display: block;
                width: 120px;
                margin-bottom: 4px; } }
            body.index #wrap main #price .price_inner .pricelist ul li .blue small {
              color: #797979;
              display: block; }
              @media screen and (max-width: 767px) {
                body.index #wrap main #price .price_inner .pricelist ul li .blue small {
                  font-size: 14px; } }
              @media screen and (min-width: 768px) {
                body.index #wrap main #price .price_inner .pricelist ul li .blue small {
                  font-size: calc((100vw / 1440) * 10); } }
              @media screen and (min-width: 1440px) {
                body.index #wrap main #price .price_inner .pricelist ul li .blue small {
                  font-size: 10px; } }
              @media screen and (min-width: 768px) {
                body.index #wrap main #price .price_inner .pricelist ul li .blue small {
                  margin-top: calc((100vw / 1440) * 3); } }
              @media screen and (min-width: 1440px) {
                body.index #wrap main #price .price_inner .pricelist ul li .blue small {
                  margin-top: 3px; } }
              @media only screen and (max-width: 767px) {
                body.index #wrap main #price .price_inner .pricelist ul li .blue small {
                  margin-top: 3px;
                  font-size: 9px;
                  font-size: 0.9rem; } }
          body.index #wrap main #price .price_inner .pricelist ul li .pricetext {
            font-weight: 500; }
            @media screen and (min-width: 768px) {
              body.index #wrap main #price .price_inner .pricelist ul li .pricetext {
                width: calc((100vw / 1440) * 100); } }
            @media screen and (min-width: 1440px) {
              body.index #wrap main #price .price_inner .pricelist ul li .pricetext {
                width: 100px; } }
            @media screen and (max-width: 767px) {
              body.index #wrap main #price .price_inner .pricelist ul li .pricetext {
                font-size: 14px; } }
            @media screen and (min-width: 768px) {
              body.index #wrap main #price .price_inner .pricelist ul li .pricetext {
                font-size: calc((100vw / 1440) * 26); } }
            @media screen and (min-width: 1440px) {
              body.index #wrap main #price .price_inner .pricelist ul li .pricetext {
                font-size: 26px; } }
            @media only screen and (max-width: 767px) {
              body.index #wrap main #price .price_inner .pricelist ul li .pricetext {
                font-size: 22px;
                font-size: 2.2rem;
                display: block; } }
            body.index #wrap main #price .price_inner .pricelist ul li .pricetext small {
              font-weight: 400; }
              @media screen and (max-width: 767px) {
                body.index #wrap main #price .price_inner .pricelist ul li .pricetext small {
                  font-size: 14px; } }
              @media screen and (min-width: 768px) {
                body.index #wrap main #price .price_inner .pricelist ul li .pricetext small {
                  font-size: calc((100vw / 1440) * 14); } }
              @media screen and (min-width: 1440px) {
                body.index #wrap main #price .price_inner .pricelist ul li .pricetext small {
                  font-size: 14px; } }
              @media screen and (min-width: 768px) {
                body.index #wrap main #price .price_inner .pricelist ul li .pricetext small {
                  margin-left: calc((100vw / 1440) * 5); } }
              @media screen and (min-width: 1440px) {
                body.index #wrap main #price .price_inner .pricelist ul li .pricetext small {
                  margin-left: 5px; } }
              @media only screen and (max-width: 767px) {
                body.index #wrap main #price .price_inner .pricelist ul li .pricetext small {
                  font-size: 13px;
                  font-size: 1.3rem;
                  margin-left: 3px; } }
    body.index #wrap main #howtostart {
      background: #FFFDEC;
      position: relative; }
      body.index #wrap main #howtostart .inner {
        position: relative; }
        @media only screen and (max-width: 767px) {
          body.index #wrap main #howtostart .inner {
            padding: 85px 0 80px; } }
        body.index #wrap main #howtostart .inner .illust4 {
          position: absolute; }
          @media screen and (min-width: 768px) {
            body.index #wrap main #howtostart .inner .illust4 {
              width: calc((100vw / 1440) * 331); } }
          @media screen and (min-width: 1440px) {
            body.index #wrap main #howtostart .inner .illust4 {
              width: 331px; } }
          @media screen and (min-width: 768px) {
            body.index #wrap main #howtostart .inner .illust4 {
              right: calc((100vw / 1440) * 156); } }
          @media screen and (min-width: 1440px) {
            body.index #wrap main #howtostart .inner .illust4 {
              right: 156px; } }
          @media screen and (min-width: 768px) {
            body.index #wrap main #howtostart .inner .illust4 {
              top: calc((100vw / 1440) * -100); } }
          @media screen and (min-width: 1440px) {
            body.index #wrap main #howtostart .inner .illust4 {
              top: -100px; } }
          @media only screen and (max-width: 767px) {
            body.index #wrap main #howtostart .inner .illust4 {
              width: 200px;
              left: 50%;
              transform: translateX(-50%);
              top: -62px; } }
          @media only screen and (max-width: 540px) {
            body.index #wrap main #howtostart .inner .illust4 {
              width: 59.4%;
              max-width: 200px; } }
        body.index #wrap main #howtostart .inner .howtostart_inner {
          margin-left: auto;
          margin-right: auto;
          position: relative; }
          @media screen and (min-width: 768px) {
            body.index #wrap main #howtostart .inner .howtostart_inner {
              padding-top: calc((100vw / 1440) * 132); } }
          @media screen and (min-width: 1440px) {
            body.index #wrap main #howtostart .inner .howtostart_inner {
              padding-top: 132px; } }
          @media screen and (min-width: 768px) {
            body.index #wrap main #howtostart .inner .howtostart_inner {
              padding-bottom: calc((100vw / 1440) * 144); } }
          @media screen and (min-width: 1440px) {
            body.index #wrap main #howtostart .inner .howtostart_inner {
              padding-bottom: 144px; } }
          @media screen and (min-width: 768px) {
            body.index #wrap main #howtostart .inner .howtostart_inner {
              width: calc((100vw / 1440) * 744); } }
          @media screen and (min-width: 1440px) {
            body.index #wrap main #howtostart .inner .howtostart_inner {
              width: 744px; } }
          body.index #wrap main #howtostart .inner .howtostart_inner .sectiontitle {
            text-align: center;
            width: 100%; }
            @media screen and (min-width: 768px) {
              body.index #wrap main #howtostart .inner .howtostart_inner .sectiontitle {
                margin-bottom: calc((100vw / 1440) * 40); } }
            @media screen and (min-width: 1440px) {
              body.index #wrap main #howtostart .inner .howtostart_inner .sectiontitle {
                margin-bottom: 40px; } }
            @media screen and (min-width: 768px) {
              body.index #wrap main #howtostart .inner .howtostart_inner .sectiontitle .blue_title {
                margin-bottom: calc((100vw / 1440) * 25); } }
            @media screen and (min-width: 1440px) {
              body.index #wrap main #howtostart .inner .howtostart_inner .sectiontitle .blue_title {
                margin-bottom: 25px; } }
            @media only screen and (max-width: 767px) {
              body.index #wrap main #howtostart .inner .howtostart_inner .sectiontitle .blue_title {
                margin-bottom: 10px; } }
            body.index #wrap main #howtostart .inner .howtostart_inner .sectiontitle span {
              line-height: 1.5; }
              @media screen and (max-width: 767px) {
                body.index #wrap main #howtostart .inner .howtostart_inner .sectiontitle span {
                  font-size: 14px; } }
              @media screen and (min-width: 768px) {
                body.index #wrap main #howtostart .inner .howtostart_inner .sectiontitle span {
                  font-size: calc((100vw / 1440) * 20); } }
              @media screen and (min-width: 1440px) {
                body.index #wrap main #howtostart .inner .howtostart_inner .sectiontitle span {
                  font-size: 20px; } }
              @media only screen and (max-width: 767px) {
                body.index #wrap main #howtostart .inner .howtostart_inner .sectiontitle span {
                  font-size: 13px;
                  font-size: 1.3rem; } }
          @media only screen and (max-width: 767px) {
            body.index #wrap main #howtostart .inner .howtostart_inner .howtostart_ul {
              margin-top: 30px; } }
          body.index #wrap main #howtostart .inner .howtostart_inner .howtostart_ul li {
            background: white;
            display: flex;
            justify-content: space-between;
            align-items: center; }
            @media screen and (min-width: 768px) {
              body.index #wrap main #howtostart .inner .howtostart_inner .howtostart_ul li {
                padding-bottom: calc((100vw / 1440) * 58); } }
            @media screen and (min-width: 1440px) {
              body.index #wrap main #howtostart .inner .howtostart_inner .howtostart_ul li {
                padding-bottom: 58px; } }
            @media screen and (min-width: 768px) {
              body.index #wrap main #howtostart .inner .howtostart_inner .howtostart_ul li {
                padding-top: calc((100vw / 1440) * 34); } }
            @media screen and (min-width: 1440px) {
              body.index #wrap main #howtostart .inner .howtostart_inner .howtostart_ul li {
                padding-top: 34px; } }
            @media screen and (min-width: 768px) {
              body.index #wrap main #howtostart .inner .howtostart_inner .howtostart_ul li {
                padding-left: calc((100vw / 1440) * 32); } }
            @media screen and (min-width: 1440px) {
              body.index #wrap main #howtostart .inner .howtostart_inner .howtostart_ul li {
                padding-left: 32px; } }
            @media screen and (min-width: 768px) {
              body.index #wrap main #howtostart .inner .howtostart_inner .howtostart_ul li {
                padding-right: calc((100vw / 1440) * 84); } }
            @media screen and (min-width: 1440px) {
              body.index #wrap main #howtostart .inner .howtostart_inner .howtostart_ul li {
                padding-right: 84px; } }
            @media only screen and (max-width: 767px) {
              body.index #wrap main #howtostart .inner .howtostart_inner .howtostart_ul li {
                flex-wrap: wrap;
                padding: 25px 22px 30px 25px; }
                body.index #wrap main #howtostart .inner .howtostart_inner .howtostart_ul li:not(:last-child) {
                  margin-bottom: 30px; } }
            @media screen and (min-width: 768px) {
              body.index #wrap main #howtostart .inner .howtostart_inner .howtostart_ul li:not(:last-child) {
                margin-bottom: calc((100vw / 1440) * 40); } }
            @media screen and (min-width: 1440px) {
              body.index #wrap main #howtostart .inner .howtostart_inner .howtostart_ul li:not(:last-child) {
                margin-bottom: 40px; } }
            @media screen and (min-width: 768px) {
              body.index #wrap main #howtostart .inner .howtostart_inner .howtostart_ul li .stepnum {
                width: calc((100vw / 1440) * 149); } }
            @media screen and (min-width: 1440px) {
              body.index #wrap main #howtostart .inner .howtostart_inner .howtostart_ul li .stepnum {
                width: 149px; } }
            @media only screen and (max-width: 767px) {
              body.index #wrap main #howtostart .inner .howtostart_inner .howtostart_ul li .stepnum {
                display: flex;
                justify-content: space-between;
                align-items: center;
                margin-bottom: 15px;
                width: 100%; }
                body.index #wrap main #howtostart .inner .howtostart_inner .howtostart_ul li .stepnum img {
                  width: 75px;
                  margin: -5px 0 0 -5px; }
                body.index #wrap main #howtostart .inner .howtostart_inner .howtostart_ul li .stepnum span {
                  width: calc(100% - 90px);
                  font-size: 18px;
                  font-size: 1.8rem;
                  line-height: 1.5;
                  color: #1AA2E6; } }
            @media screen and (min-width: 768px) {
              body.index #wrap main #howtostart .inner .howtostart_inner .howtostart_ul li .steptext {
                width: calc((100vw / 1440) * 439); } }
            @media screen and (min-width: 1440px) {
              body.index #wrap main #howtostart .inner .howtostart_inner .howtostart_ul li .steptext {
                width: 439px; } }
            @media only screen and (max-width: 767px) {
              body.index #wrap main #howtostart .inner .howtostart_inner .howtostart_ul li .steptext {
                width: 100%; } }
            body.index #wrap main #howtostart .inner .howtostart_inner .howtostart_ul li .steptext span {
              color: #1AA2E6;
              font-weight: 500;
              line-height: 1.5;
              display: block; }
              @media screen and (max-width: 767px) {
                body.index #wrap main #howtostart .inner .howtostart_inner .howtostart_ul li .steptext span {
                  font-size: 14px; } }
              @media screen and (min-width: 768px) {
                body.index #wrap main #howtostart .inner .howtostart_inner .howtostart_ul li .steptext span {
                  font-size: calc((100vw / 1440) * 22); } }
              @media screen and (min-width: 1440px) {
                body.index #wrap main #howtostart .inner .howtostart_inner .howtostart_ul li .steptext span {
                  font-size: 22px; } }
              @media screen and (min-width: 768px) {
                body.index #wrap main #howtostart .inner .howtostart_inner .howtostart_ul li .steptext span {
                  margin-bottom: calc((100vw / 1440) * 18); } }
              @media screen and (min-width: 1440px) {
                body.index #wrap main #howtostart .inner .howtostart_inner .howtostart_ul li .steptext span {
                  margin-bottom: 18px; } }
            body.index #wrap main #howtostart .inner .howtostart_inner .howtostart_ul li .steptext p {
              color: #797979;
              line-height: 1.75;
              display: block; }
              @media screen and (max-width: 767px) {
                body.index #wrap main #howtostart .inner .howtostart_inner .howtostart_ul li .steptext p {
                  font-size: 14px; } }
              @media screen and (min-width: 768px) {
                body.index #wrap main #howtostart .inner .howtostart_inner .howtostart_ul li .steptext p {
                  font-size: calc((100vw / 1440) * 14); } }
              @media screen and (min-width: 1440px) {
                body.index #wrap main #howtostart .inner .howtostart_inner .howtostart_ul li .steptext p {
                  font-size: 14px; } }
              @media only screen and (max-width: 767px) {
                body.index #wrap main #howtostart .inner .howtostart_inner .howtostart_ul li .steptext p {
                  font-size: 13px;
                  font-size: 1.3rem; } }
    body.index #wrap main .note_link {
      border: 2px solid #1AA2E6;
      color: #1AA2E6;
      display: block;
      margin-left: auto;
      margin-right: auto;
      display: flex;
      justify-content: center;
      align-items: center;
      letter-spacing: 0.005em;
      font-weight: 400;
      letter-spacing: 0.1em;
      background: white;
      text-align: center; }
      @media screen and (min-width: 768px) {
        body.index #wrap main .note_link {
          width: calc((100vw / 1440) * 1062); } }
      @media screen and (min-width: 1440px) {
        body.index #wrap main .note_link {
          width: 1062px; } }
      @media screen and (min-width: 768px) {
        body.index #wrap main .note_link {
          margin-top: calc((100vw / 1440) * 120); } }
      @media screen and (min-width: 1440px) {
        body.index #wrap main .note_link {
          margin-top: 120px; } }
      @media screen and (min-width: 768px) {
        body.index #wrap main .note_link {
          margin-bottom: calc((100vw / 1440) * 120); } }
      @media screen and (min-width: 1440px) {
        body.index #wrap main .note_link {
          margin-bottom: 120px; } }
      @media screen and (min-width: 768px) {
        body.index #wrap main .note_link {
          height: calc((100vw / 1440) * 128); } }
      @media screen and (min-width: 1440px) {
        body.index #wrap main .note_link {
          height: 128px; } }
      @media screen and (min-width: 768px) {
        body.index #wrap main .note_link {
          border-radius: calc((100vw / 1440) * 64); } }
      @media screen and (min-width: 1440px) {
        body.index #wrap main .note_link {
          border-radius: 64px; } }
      @media screen and (max-width: 767px) {
        body.index #wrap main .note_link {
          font-size: 14px; } }
      @media screen and (min-width: 768px) {
        body.index #wrap main .note_link {
          font-size: calc((100vw / 1440) * 22); } }
      @media screen and (min-width: 1440px) {
        body.index #wrap main .note_link {
          font-size: 22px; } }
      @media only screen and (max-width: 767px) {
        body.index #wrap main .note_link {
          font-size: 13px;
          font-size: 1.3rem;
          width: calc(100% - 60px);
          height: 83px;
          border-radius: 42px;
          line-height: 1.5;
          margin: 60px auto;
          border-width: 1px; } }
      body.index #wrap main .note_link:hover, body.index #wrap main .note_link.hover {
        background: #1AA2E6;
        color: white; }
    body.index #wrap main #close .close_inner {
      text-align: center;
      margin-left: auto;
      margin-right: auto;
      border-top: 1px solid #ddd;
      border-bottom: 1px solid #ddd; }
      @media screen and (min-width: 768px) {
        body.index #wrap main #close .close_inner {
          width: calc((100vw / 1440) * 1296); } }
      @media screen and (min-width: 1440px) {
        body.index #wrap main #close .close_inner {
          width: 1296px; } }
      @media screen and (min-width: 768px) {
        body.index #wrap main #close .close_inner {
          padding-top: calc((100vw / 1440) * 120); } }
      @media screen and (min-width: 1440px) {
        body.index #wrap main #close .close_inner {
          padding-top: 120px; } }
      @media screen and (min-width: 768px) {
        body.index #wrap main #close .close_inner {
          padding-bottom: calc((100vw / 1440) * 120); } }
      @media screen and (min-width: 1440px) {
        body.index #wrap main #close .close_inner {
          padding-bottom: 120px; } }
      @media only screen and (max-width: 767px) {
        body.index #wrap main #close .close_inner {
          padding: 40px 0 60px; } }
      @media only screen and (max-width: 540px) {
        body.index #wrap main #close .close_inner {
          padding: 60px 0; } }
      @media screen and (min-width: 768px) {
        body.index #wrap main #close .close_inner .sectiontitle .blue_title {
          margin-bottom: calc((100vw / 1440) * 25); } }
      @media screen and (min-width: 1440px) {
        body.index #wrap main #close .close_inner .sectiontitle .blue_title {
          margin-bottom: 25px; } }
      @media screen and (max-width: 767px) {
        body.index #wrap main #close .close_inner .sectiontitle span {
          font-size: 14px; } }
      @media screen and (min-width: 768px) {
        body.index #wrap main #close .close_inner .sectiontitle span {
          font-size: calc((100vw / 1440) * 20); } }
      @media screen and (min-width: 1440px) {
        body.index #wrap main #close .close_inner .sectiontitle span {
          font-size: 20px; } }
      @media only screen and (max-width: 767px) {
        body.index #wrap main #close .close_inner .sectiontitle span {
          font-size: 13px;
          font-size: 1.3rem;
          margin-top: 10px;
          display: block; } }
      body.index #wrap main #close .close_inner .roundlink {
        background: #1AA2E6;
        color: white;
        display: flex;
        justify-content: center;
        align-items: center;
        margin-left: auto;
        margin-right: auto;
        border: 2px solid #1AA2E6;
        font-weight: 500;
        letter-spacing: 0.1em; }
        @media screen and (min-width: 768px) {
          body.index #wrap main #close .close_inner .roundlink {
            width: calc((100vw / 1440) * 290); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #close .close_inner .roundlink {
            width: 290px; } }
        @media screen and (min-width: 768px) {
          body.index #wrap main #close .close_inner .roundlink {
            height: calc((100vw / 1440) * 70); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #close .close_inner .roundlink {
            height: 70px; } }
        @media screen and (min-width: 768px) {
          body.index #wrap main #close .close_inner .roundlink {
            margin-top: calc((100vw / 1440) * 60); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #close .close_inner .roundlink {
            margin-top: 60px; } }
        @media screen and (max-width: 767px) {
          body.index #wrap main #close .close_inner .roundlink {
            font-size: 14px; } }
        @media screen and (min-width: 768px) {
          body.index #wrap main #close .close_inner .roundlink {
            font-size: calc((100vw / 1440) * 14); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #close .close_inner .roundlink {
            font-size: 14px; } }
        @media screen and (min-width: 768px) {
          body.index #wrap main #close .close_inner .roundlink {
            border-radius: calc((100vw / 1440) * 35); } }
        @media screen and (min-width: 1440px) {
          body.index #wrap main #close .close_inner .roundlink {
            border-radius: 35px; } }
        @media only screen and (max-width: 767px) {
          body.index #wrap main #close .close_inner .roundlink {
            width: 100%;
            height: 70px;
            font-size: 13px;
            font-size: 1.3rem;
            border-radius: 35px;
            margin-top: 35px;
            border-width: 1px; } }
        @media only screen and (max-width: 540px) {
          body.index #wrap main #close .close_inner .roundlink {
            margin-top: 20px; } }
        body.index #wrap main #close .close_inner .roundlink:hover, body.index #wrap main #close .close_inner .roundlink.hover {
          color: #1AA2E6;
          background: white; }

.anmtxt {
  transition: .2s; }
  .anmtxt .txtcvr {
    overflow: hidden;
    position: relative;
    display: block; }
    .anmtxt .txtcvr .txt1 span, .anmtxt .txtcvr .txt2 span {
      display: inline-block; }
    .anmtxt .txtcvr .txt2 {
      position: absolute;
      top: 100%;
      left: 0; }
  .anmtxt:hover .txtcvr .txt1 span, .anmtxt:hover .txtcvr .txt2 span, .anmtxt.hover .txtcvr .txt1 span, .anmtxt.hover .txtcvr .txt2 span {
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
    transition: .4s; }
    .anmtxt:hover .txtcvr .txt1 span:nth-of-type(1), .anmtxt:hover .txtcvr .txt2 span:nth-of-type(1), .anmtxt.hover .txtcvr .txt1 span:nth-of-type(1), .anmtxt.hover .txtcvr .txt2 span:nth-of-type(1) {
      -webkit-transition-delay: .02s;
      transition-delay: .05s; }
    .anmtxt:hover .txtcvr .txt1 span:nth-of-type(2), .anmtxt:hover .txtcvr .txt2 span:nth-of-type(2), .anmtxt.hover .txtcvr .txt1 span:nth-of-type(2), .anmtxt.hover .txtcvr .txt2 span:nth-of-type(2) {
      -webkit-transition-delay: .04s;
      transition-delay: .10s; }
    .anmtxt:hover .txtcvr .txt1 span:nth-of-type(3), .anmtxt:hover .txtcvr .txt2 span:nth-of-type(3), .anmtxt.hover .txtcvr .txt1 span:nth-of-type(3), .anmtxt.hover .txtcvr .txt2 span:nth-of-type(3) {
      -webkit-transition-delay: .06s;
      transition-delay: .15s; }
    .anmtxt:hover .txtcvr .txt1 span:nth-of-type(4), .anmtxt:hover .txtcvr .txt2 span:nth-of-type(4), .anmtxt.hover .txtcvr .txt1 span:nth-of-type(4), .anmtxt.hover .txtcvr .txt2 span:nth-of-type(4) {
      -webkit-transition-delay: .08s;
      transition-delay: .20s; }
    .anmtxt:hover .txtcvr .txt1 span:nth-of-type(5), .anmtxt:hover .txtcvr .txt2 span:nth-of-type(5), .anmtxt.hover .txtcvr .txt1 span:nth-of-type(5), .anmtxt.hover .txtcvr .txt2 span:nth-of-type(5) {
      -webkit-transition-delay: .10s;
      transition-delay: .25s; }
    .anmtxt:hover .txtcvr .txt1 span:nth-of-type(6), .anmtxt:hover .txtcvr .txt2 span:nth-of-type(6), .anmtxt.hover .txtcvr .txt1 span:nth-of-type(6), .anmtxt.hover .txtcvr .txt2 span:nth-of-type(6) {
      -webkit-transition-delay: .12s;
      transition-delay: .30s; }
    .anmtxt:hover .txtcvr .txt1 span:nth-of-type(7), .anmtxt:hover .txtcvr .txt2 span:nth-of-type(7), .anmtxt.hover .txtcvr .txt1 span:nth-of-type(7), .anmtxt.hover .txtcvr .txt2 span:nth-of-type(7) {
      -webkit-transition-delay: .14s;
      transition-delay: .35s; }
    .anmtxt:hover .txtcvr .txt1 span:nth-of-type(8), .anmtxt:hover .txtcvr .txt2 span:nth-of-type(8), .anmtxt.hover .txtcvr .txt1 span:nth-of-type(8), .anmtxt.hover .txtcvr .txt2 span:nth-of-type(8) {
      -webkit-transition-delay: .16s;
      transition-delay: .40s; }
    .anmtxt:hover .txtcvr .txt1 span:nth-of-type(9), .anmtxt:hover .txtcvr .txt2 span:nth-of-type(9), .anmtxt.hover .txtcvr .txt1 span:nth-of-type(9), .anmtxt.hover .txtcvr .txt2 span:nth-of-type(9) {
      -webkit-transition-delay: .18s;
      transition-delay: .45s; }
    .anmtxt:hover .txtcvr .txt1 span:nth-of-type(10), .anmtxt:hover .txtcvr .txt2 span:nth-of-type(10), .anmtxt.hover .txtcvr .txt1 span:nth-of-type(10), .anmtxt.hover .txtcvr .txt2 span:nth-of-type(10) {
      -webkit-transition-delay: .20s;
      transition-delay: .50s; }

.animation_line, .animation_line2 {
  position: relative;
  display: inline-block;
  text-decoration: none; }
  .animation_line::after, .animation_line2::after {
    position: absolute;
    bottom: 0;
    left: 0;
    content: '';
    width: 100%;
    height: 1px;
    background: #333; }

.animation_line::after {
  transform: scale(1, 1);
  transform-origin: left top;
  transition: transform .3s; }

.animation_line:hover::after, .animation_line.hover::after {
  transform-origin: right top;
  transform: scale(0, 1); }

.animation_line2::after {
  transform: scale(0, 1);
  transform-origin: right top;
  transition: transform .3s; }

.animation_line2:hover::after, .animation_line2.hover::after {
  transform-origin: left top;
  transform: scale(1, 1); }
