@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; } }

html {
  font-size: 62.5%;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif; }

* {
  font-size: 14px;
  font-size: 1.4rem;
  box-sizing: border-box; }

img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom; }

a {
  color: inherit;
  text-decoration: none; }

html,
#body {
  scrollbar-width: none !important; }

body {
  -ms-overflow-style: none; }

body::-webkit-scrollbar,
#body::-webkit-scrollbar {
  width: 0 !important;
  height: 0 !important; }

html {
  font-family: 'fot-tsukuardgothic-std', sans-serif;
  font-size: 62.5%; }

html,
body {
  width: 100%;
  height: 100%; }

.inner2 {
  max-width: 685px;
  margin: 0 auto; }

[inview] {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 0.7s, transform 0.7s; }
  [inview].is-inview {
    opacity: 1;
    transform: translateY(0); }

.scroll-hint-icon {
  top: 50% !important;
  transform: translateY(-50%) !important; }

.scroll-hint-text {
  display: none !important; }

.footer {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  background: #111799;
  color: #fff;
  padding: 24px 40px 20px;
  font-size: 14px;
  font-size: 1.4rem; }
  @media only screen and (max-width: 767px) {
    .footer {
      display: block;
      font-size: 10px;
      font-size: 1rem;
      text-align: center;
      padding: 20px 5px 22px; } }
  .footer__logo {
    width: 108px; }
    @media only screen and (max-width: 767px) {
      .footer__logo {
        margin: 0 auto 14px; } }
  .footer .copyright {
    font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif; }

body.subpage {
  height: auto;
  overflow: initial; }
  body.subpage.lb-disable-scrolling {
    overflow: hidden !important; }
  body.subpage .lb-close {
    background: none;
    position: relative;
    width: 100px; }
    body.subpage .lb-close:after {
      content: '[ 閉じる ]';
      position: absolute;
      right: 0;
      top: 0;
      font-size: 19.2px;
      font-size: 1.92rem;
      font-weight: 700;
      color: #0061d5;
      padding-top: 16px;
      font-family: sans-serif; }
  body.subpage .inner {
    max-width: 755px;
    width: 100%;
    padding: 0 35px;
    margin: 0 auto; }
  body.subpage .icon-head {
    display: block;
    height: 66px;
    width: 66px;
    margin: 0 auto; }
    @media only screen and (max-width: 767px) {
      body.subpage .icon-head {
        margin-bottom: 10px; } }

.blobshape {
  display: block;
  position: absolute;
  animation: updown 3s infinite linear;
  transform: scale(1.2); }
  .blobshape .svg-shape2 {
    display: none; }
  .blobshape .svg-shape3 {
    display: none; }
  .blobshape.has-offset {
    animation-delay: 1s; }

#yellow-blob-1 {
  width: 287px;
  left: 200px;
  top: 120px;
  filter: blur(16px) brightness(1.15);
  visibility: hidden; }

#yellow-blob-2 {
  width: 351px;
  right: 127px;
  bottom: 147px;
  filter: blur(16px) brightness(1.05);
  visibility: hidden; }

#blue-blob-1 {
  width: 763px;
  left: 30px;
  top: -136px;
  filter: blur(50px) brightness(1.08);
  visibility: hidden; }
  @media only screen and (max-width: 767px) {
    #blue-blob-1 {
      width: 632px;
      transform: translate(-50%, -50%);
      left: 0;
      right: 0; } }

#blue-blob-2 {
  width: 215px;
  right: 73px;
  bottom: 187px;
  filter: blur(50px) brightness(1.08);
  visibility: hidden; }
  @media only screen and (max-width: 767px) {
    #blue-blob-2 {
      width: 137px;
      right: 13px;
      bottom: 16px; } }

#purple-blob-1 {
  width: 327px;
  bottom: 142px;
  left: 60px;
  visibility: hidden;
  filter: blur(16px) brightness(1.15); }

#by-blob-1 {
  width: 307px;
  top: 37px;
  right: 225px;
  visibility: hidden;
  filter: blur(16px) brightness(1.15); }

@keyframes updown {
  0% {
    transform: translateY(0) scale(1.2); }
  25% {
    transform: translateY(-20px) scale(1.2); }
  50% {
    transform: translateY(0) scale(1.2); }
  75% {
    transform: translateY(20px) scale(1.2); }
  100% {
    transform: translateY(0) scale(1.2); } }

.btn {
  appearance: none;
  border: none;
  background: none;
  margin: 0;
  padding: 0;
  font-family: "fot-tsukuardgothic-std", sans-serif;
  max-width: 244px;
  width: 100%;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 24px;
  background-color: #034ea3;
  color: #fff;
  font-size: 2rem;
  font-weight: 700;
  margin-bottom: 24px;
  cursor: pointer; }
  .btn:last-child {
    margin-bottom: 0; }

.sec-title {
  font-size: 30px;
  font-size: 3rem;
  font-weight: 700;
  margin-bottom: 32px;
  text-align: center;
  line-height: 1.7;
  color: #122E81; }
  @media only screen and (max-width: 767px) {
    .sec-title {
      font-size: 24px;
      font-size: 2.4rem; } }

.link {
  font-size: 1.6rem;
  text-decoration: none;
  color: #034ea3; }
  .link:last-child {
    margin-bottom: 0; }

.back-link {
  border: 1px solid #122E81;
  background-color: #FFF;
  width: 170px;
  height: 35px;
  border-radius: 18px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: 700;
  color: #122E81;
  margin: 0 0 0 19px;
  cursor: pointer; }
  @media only screen and (max-width: 767px) {
    .back-link {
      margin-left: 0; } }

body.subpage .modal-wrapper {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  opacity: 0;
  pointer-events: none;
  z-index: 5;
  transition: opacity 0.5s; }
  body.subpage .modal-wrapper.is-open {
    pointer-events: all;
    opacity: 1; }
  body.subpage .modal-wrapper .modal-wrapper-bg {
    background-color: rgba(0, 0, 0, 0.39);
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0; }
  body.subpage .modal-wrapper .modal {
    max-width: 674px;
    width: 100%;
    background-color: #FFF;
    margin: 0 auto;
    opacity: 0;
    transition: opacity 0.5s;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    padding: 22px;
    border-radius: 10px;
    overflow: hidden;
    -ms-overflow-style: none;
    /* IE, Edge 対応 */
    scrollbar-width: none;
    /* Firefox 対応 */ }
    body.subpage .modal-wrapper .modal::-webkit-scrollbar {
      /* Chrome, Safari 対応 */
      display: none; }
    @media only screen and (max-width: 767px) {
      body.subpage .modal-wrapper .modal {
        max-width: calc(100% - 24px);
        padding: 25px 12px;
        pointer-events: none; } }
    body.subpage .modal-wrapper .modal:after {
      content: '';
      width: 100%;
      position: absolute;
      bottom: 0;
      left: 0;
      height: 130px;
      pointer-events: none;
      background: linear-gradient(0deg, white 0%, white 40%, rgba(255, 255, 255, 0) 100%); }
    body.subpage .modal-wrapper .modal.is-open {
      pointer-events: all;
      opacity: 1; }
    body.subpage .modal-wrapper .modal__inner {
      position: relative;
      height: 100%;
      width: 100%;
      padding-bottom: 80px;
      padding-right: 20px; }
      @media only screen and (max-width: 767px) {
        body.subpage .modal-wrapper .modal__inner {
          overflow-y: scroll; } }
    body.subpage .modal-wrapper .modal__image {
      margin-bottom: 10px;
      padding-bottom: 20px; }
      @media only screen and (max-width: 767px) {
        body.subpage .modal-wrapper .modal__image {
          width: 100%;
          overflow-x: scroll; } }
      body.subpage .modal-wrapper .modal__image > img {
        width: 100%; }
        @media only screen and (max-width: 767px) {
          body.subpage .modal-wrapper .modal__image > img {
            width: auto; } }
      @media only screen and (max-width: 767px) {
        body.subpage .modal-wrapper .modal__image.sp-type1 > img {
          max-width: none;
          height: 90px; } }
      body.subpage .modal-wrapper .modal__image.sp-type2 {
        overflow-y: visible !important; }
        @media only screen and (max-width: 767px) {
          body.subpage .modal-wrapper .modal__image.sp-type2 > img {
            max-width: none;
            height: 60px; } }
    body.subpage .modal-wrapper .modal__text {
      font-size: 16px;
      font-size: 1.6rem;
      font-weight: 700;
      margin-bottom: 20px;
      line-height: 1.7; }
    body.subpage .modal-wrapper .modal__info {
      display: flex;
      margin-bottom: 20px;
      font-size: 12px;
      font-size: 1.2rem;
      font-weight: 700;
      line-height: 1.7; }
      @media only screen and (max-width: 767px) {
        body.subpage .modal-wrapper .modal__info {
          display: block; } }
      body.subpage .modal-wrapper .modal__info__info {
        flex: 0 0 162px;
        display: -webkit-flex;
        display: flex;
        justify-content: space-between;
        margin-right: 9px; }
        @media only screen and (max-width: 767px) {
          body.subpage .modal-wrapper .modal__info__info {
            flex: 0 0 142px;
            max-width: 142px;
            margin-bottom: 16px; } }
        body.subpage .modal-wrapper .modal__info__info:after {
          content: '';
          width: 40px;
          height: 20px;
          background: url(../images/tax/tab-arrow.svg) center/40px 20px no-repeat; }
      body.subpage .modal-wrapper .modal__info__text {
        flex: 1 1 auto; }
    body.subpage .modal-wrapper .modal .btn {
      position: absolute;
      bottom: 20px;
      left: 50%;
      transform: translateX(-50%);
      height: 56px;
      border-radius: 28px;
      font-size: 30px;
      font-size: 3rem;
      z-index: 2;
      max-width: 161px; }

.modals .modal-yoro-01 header {
  background: url(../images/manki/yoro/bg-head.jpg) center center/cover no-repeat !important; }

.modals .modal-gaksi-02 header {
  background: url(../images/manki/gaksi/bg-head02.jpg) center center/cover no-repeat !important; }

.modals .modal-gaksi-01 header {
  background: url(../images/manki/gaksi/bg-head03.jpg) center center/cover no-repeat !important; }

.modals .modal {
  max-width: 680px !important;
  font-weight: 300;
  color: #151515;
  overflow-y: scroll !important; }
  @media only screen and (max-width: 767px) {
    .modals .modal {
      border-radius: 5px; } }
  .modals .modal header {
    -webkit-flex-direction: column;
    flex-direction: column; }
    @media only screen and (max-width: 767px) {
      .modals .modal header {
        height: 169px !important; } }
  .modals .modal__catch {
    font-size: 20px;
    font-size: 2rem;
    font-weight: bold;
    color: #fff;
    display: inline-block;
    margin: 0 0 25px;
    font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif; }
    @media only screen and (max-width: 767px) {
      .modals .modal__catch {
        font-size: 16px;
        font-size: 1.6rem;
        margin: 0 0 12px; } }
    .modals .modal__catch:before {
      content: "";
      width: 2px;
      height: 40px;
      display: inline-block;
      background: #fff;
      -webkit-transform: rotate(-25deg);
      -moz-transform: rotate(-25deg);
      -ms-transform: rotate(-25deg);
      -o-transform: rotate(-25deg);
      transform: rotate(-25deg);
      margin: 0 20px;
      position: relative;
      top: 15px; }
      @media only screen and (max-width: 767px) {
        .modals .modal__catch:before {
          height: 24px;
          margin: 0 10px;
          top: 5px; } }
    .modals .modal__catch:after {
      content: "";
      width: 2px;
      height: 40px;
      display: inline-block;
      background: #fff;
      -webkit-transform: rotate(25deg);
      -moz-transform: rotate(25deg);
      -ms-transform: rotate(25deg);
      -o-transform: rotate(25deg);
      transform: rotate(25deg);
      margin: 0 20px;
      position: relative;
      top: 15px; }
      @media only screen and (max-width: 767px) {
        .modals .modal__catch:after {
          height: 24px;
          margin: 0 10px;
          top: 5px; } }
  .modals .modal__title {
    font-size: 30px;
    font-size: 3rem;
    line-height: 1.7; }
    @media only screen and (max-width: 767px) {
      .modals .modal__title {
        font-size: 20px;
        font-size: 2rem; } }
  .modals .modal__body {
    padding: 30px 40px 107px !important;
    height: auto !important; }
    @media only screen and (max-width: 767px) {
      .modals .modal__body {
        padding: 15px 16px 167px !important;
        height: auto !important; } }
  .modals .modal__text {
    overflow-y: visible !important; }
    @media only screen and (max-width: 767px) {
      .modals .modal__text {
        height: auto !important; } }
    .modals .modal__text__inner .read {
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 1.4;
      margin: 0 0 32px;
      font-weight: 300; }
      @media only screen and (max-width: 767px) {
        .modals .modal__text__inner .read {
          font-size: 14px;
          font-size: 1.4rem;
          line-height: 1.93; } }
    .modals .modal__text__inner small {
      display: block;
      font-size: 10px;
      font-size: 1rem;
      line-height: 1.7;
      margin: 12px 0 0; }
      @media only screen and (max-width: 767px) {
        .modals .modal__text__inner small {
          margin: 5px 0 0; } }
    .modals .modal__text__inner .bottom-text {
      padding: 20px 0 0;
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 1.4;
      border-top: 3px solid #034EA3;
      font-weight: 300; }
      @media only screen and (max-width: 767px) {
        .modals .modal__text__inner .bottom-text {
          font-size: 14px;
          font-size: 1.4rem;
          line-height: 1.93;
          border-top: 2px solid #034EA3; } }
    .modals .modal__text__inner .ttl04 {
      font-size: 20px;
      font-size: 2rem;
      padding: 0 0 15px;
      border-bottom: 3px solid #034EA3;
      color: #034EA3;
      margin: 0 0 28px;
      line-height: 1; }
      @media only screen and (max-width: 767px) {
        .modals .modal__text__inner .ttl04 {
          font-size: 16px;
          font-size: 1.6rem;
          padding: 0 0 7px;
          border-bottom: 2px solid #034EA3;
          margin: 0 0 16px; } }
    .modals .modal__text__inner .item-list {
      margin: 0 0 22px; }
      @media only screen and (max-width: 767px) {
        .modals .modal__text__inner .item-list {
          margin: 0 0 30px; } }
      .modals .modal__text__inner .item-list li {
        display: -webkit-flex;
        display: flex;
        -webkit-align-items: center;
        align-items: center;
        -webkit-justify-content: space-between;
        justify-content: space-between;
        padding: 20px 0;
        border-bottom: 1px solid #FFD1D1; }
        @media only screen and (max-width: 767px) {
          .modals .modal__text__inner .item-list li {
            padding: 30px 0 24px;
            -webkit-flex-direction: column;
            flex-direction: column;
            -webkit-justify-content: flex-start;
            justify-content: flex-start; } }
        @media only screen and (max-width: 767px) {
          .modals .modal__text__inner .item-list li:first-of-type {
            padding-top: 0; } }
        .modals .modal__text__inner .item-list li:last-of-type {
          border: none; }
        .modals .modal__text__inner .item-list li .img {
          width: 200px;
          height: 200px;
          display: -webkit-flex;
          display: flex;
          -webkit-align-items: center;
          align-items: center;
          -webkit-justify-content: center;
          justify-content: center; }
          @media only screen and (max-width: 767px) {
            .modals .modal__text__inner .item-list li .img {
              width: 180px;
              height: 180px;
              margin: 0 0 14px; } }
          .modals .modal__text__inner .item-list li .img span {
            font-size: 24px;
            font-size: 2.4rem;
            line-height: 1.375;
            font-weight: bold;
            color: #fff;
            text-align: center;
            text-shadow: 0px 2px 3px #0000004D; }
            @media only screen and (max-width: 767px) {
              .modals .modal__text__inner .item-list li .img span {
                font-size: 23px;
                font-size: 2.3rem;
                line-height: 1.26; } }
        .modals .modal__text__inner .item-list li .text {
          width: calc(100% - 222px); }
          @media only screen and (max-width: 767px) {
            .modals .modal__text__inner .item-list li .text {
              width: 100%; } }
          .modals .modal__text__inner .item-list li .text p {
            font-size: 16px;
            font-size: 1.6rem;
            line-height: 1.6875;
            font-weight: bold; }
            @media only screen and (max-width: 767px) {
              .modals .modal__text__inner .item-list li .text p {
                font-size: 14px;
                font-size: 1.4rem;
                line-height: 1.714; } }
            .modals .modal__text__inner .item-list li .text p a {
              text-decoration: underline;
              color: #034EA3; }
          .modals .modal__text__inner .item-list li .text .list {
            margin: 25px 0 0; }
            .modals .modal__text__inner .item-list li .text .list li {
              border: none;
              padding: 0;
              padding-left: 25px;
              position: relative;
              font-size: 14px;
              font-size: 1.4rem;
              line-height: 1.714;
              font-weight: 300;
              display: block; }
              .modals .modal__text__inner .item-list li .text .list li:before {
                content: "・";
                position: absolute;
                top: 0;
                left: 0; }
              @media only screen and (max-width: 767px) {
                .modals .modal__text__inner .item-list li .text .list li span {
                  display: block;
                  text-align: right; } }
    .modals .modal__text__inner .box {
      margin: 0 0 48px; }
      .modals .modal__text__inner .box .img-text {
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: space-between;
        justify-content: space-between;
        -webkit-align-items: center;
        align-items: center;
        margin: 0 0 20px; }
        @media only screen and (max-width: 767px) {
          .modals .modal__text__inner .box .img-text {
            -webkit-flex-direction: column;
            flex-direction: column;
            -webkit-justify-content: flex-start;
            justify-content: flex-start;
            margin: 0 0 28px; } }
        .modals .modal__text__inner .box .img-text .img {
          width: 200px; }
          @media only screen and (max-width: 767px) {
            .modals .modal__text__inner .box .img-text .img {
              width: 180px;
              margin: 0 auto 12px; } }
        .modals .modal__text__inner .box .img-text .text {
          width: calc(100% - 222px); }
          @media only screen and (max-width: 767px) {
            .modals .modal__text__inner .box .img-text .text {
              width: 100%; } }
          .modals .modal__text__inner .box .img-text .text p {
            font-size: 16px;
            font-size: 1.6rem;
            line-height: 1.6875;
            font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
            font-weight: bold; }
            @media only screen and (max-width: 767px) {
              .modals .modal__text__inner .box .img-text .text p {
                font-size: 14px;
                font-size: 1.4rem;
                line-height: 1.714; } }
            .modals .modal__text__inner .box .img-text .text p a {
              text-decoration: underline;
              color: #034EA3; }
      .modals .modal__text__inner .box .box-box {
        font-size: 16px;
        font-size: 1.6rem;
        line-height: 1.6875;
        margin: 0 0 24px;
        font-weight: 300; }
        @media only screen and (max-width: 767px) {
          .modals .modal__text__inner .box .box-box {
            font-size: 14px;
            font-size: 1.4rem;
            line-height: 1.714;
            margin: 0 0 22px; } }
        .modals .modal__text__inner .box .box-box strong {
          display: block;
          font-weight: bold; }
        .modals .modal__text__inner .box .box-box p a {
          text-decoration: underline;
          color: #034EA3; }
    .modals .modal__text__inner .ranking {
      margin: 32px 0 0; }
      @media only screen and (max-width: 767px) {
        .modals .modal__text__inner .ranking {
          margin: 16px 0 0; } }
      .modals .modal__text__inner .ranking em {
        display: block;
        font-size: 16px;
        font-size: 1.6rem;
        font-weight: 600;
        line-height: 1.6875;
        margin: 0 0 18px; }
        @media only screen and (max-width: 767px) {
          .modals .modal__text__inner .ranking em {
            font-size: 14px;
            font-size: 1.4rem;
            line-height: 1.714;
            margin: 0 0 25px; } }
      .modals .modal__text__inner .ranking .list-wrap {
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: space-between;
        justify-content: space-between; }
        @media only screen and (max-width: 767px) {
          .modals .modal__text__inner .ranking .list-wrap {
            display: block;
            margin: 0 0 40px; } }
      .modals .modal__text__inner .ranking__list {
        width: calc((100% - 11px) / 2);
        counter-reset: rank 0;
        margin: 0 0 52px; }
        @media only screen and (max-width: 767px) {
          .modals .modal__text__inner .ranking__list {
            width: 100%;
            margin: 0; } }
        .modals .modal__text__inner .ranking__list:nth-of-type(2) {
          counter-reset: rank 5; }
        .modals .modal__text__inner .ranking__list li {
          height: 52px;
          border-bottom: 1px solid #FFD1D1;
          padding-left: 80px;
          position: relative;
          font-size: 20px;
          font-size: 2rem;
          display: -webkit-flex;
          display: flex;
          -webkit-align-items: center;
          align-items: center; }
          .modals .modal__text__inner .ranking__list li:before {
            counter-increment: rank;
            content: counter(rank) ".";
            position: absolute;
            top: 50%;
            left: 0;
            -webkit-transform: translate(0, -50%);
            -moz-transform: translate(0, -50%);
            -ms-transform: translate(0, -50%);
            -o-transform: translate(0, -50%);
            transform: translate(0, -50%);
            font-size: 20px;
            font-size: 2rem; }
          .modals .modal__text__inner .ranking__list li.big {
            font-weight: bold; }
            .modals .modal__text__inner .ranking__list li.big:before {
              font-size: 30px;
              font-size: 3rem;
              color: #034EA3;
              font-weight: normal; }

.scroll-down {
  position: absolute;
  display: -webkit-flex;
  display: flex;
  height: 76px;
  width: 100px;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  align-items: flex-start;
  z-index: 102; }
  @media only screen and (max-width: 767px) {
    .scroll-down {
      width: 32px;
      height: 60px;
      flex-direction: column;
      align-items: center; } }
  .scroll-down .icon {
    animation: scrollAnim 1s ease-out -1s infinite alternate forwards; }
    @media only screen and (min-width: 768px) {
      .scroll-down .icon {
        width: 50%;
        height: 100%;
        background: url(../images/common/arrow-scroll.svg) center right 6px/18px 100% no-repeat; } }
    @media only screen and (max-width: 767px) {
      .scroll-down .icon {
        width: 13px;
        height: 42px;
        background: url(../images/common/arrow-scroll-sp.svg) center center/13px 42px no-repeat;
        margin-bottom: 2px; } }
  @media only screen and (min-width: 768px) {
    .scroll-down .text {
      width: 50%;
      transform-origin: 0 100%;
      transform: rotateZ(90deg) translate(-17px, -4px);
      color: #FFF;
      font-size: 16px;
      font-size: 1.6rem;
      font-weight: 700; } }
  @media only screen and (max-width: 767px) {
    .scroll-down .text {
      font-size: 10px;
      font-size: 1rem;
      font-weight: 700;
      text-align: center;
      color: #FFF;
      letter-spacing: 0.01em; } }

@keyframes scrollAnim {
  0% {
    transform: translateY(0); }
  100% {
    transform: translateY(-15px); } }

/* 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#new-consult section.intro {
  background-color: #F7DCDC;
  display: flex;
  height: 100vh;
  position: relative; }
  @media only screen and (max-width: 767px) {
    body#new-consult section.intro {
      flex-direction: column;
      overflow: hidden; } }
  body#new-consult section.intro:after {
    content: '';
    position: absolute;
    top: 30px;
    width: 102px;
    height: 3px;
    background-color: #FFF;
    left: 50%;
    transform: translateX(-50%);
    z-index: 101; }
    @media only screen and (max-width: 767px) {
      body#new-consult section.intro:after {
        background-color: #358FC9;
        top: auto;
        bottom: 31px;
        width: 32px;
        height: 5px; } }
  body#new-consult section.intro > div {
    flex: 0 0 50%;
    position: relative; }
  body#new-consult section.intro .left:before {
    content: '';
    position: absolute;
    top: 30px;
    right: 50px;
    bottom: 30px;
    left: 30px;
    border: 3px solid #FFF;
    pointer-events: none;
    z-index: +1; }
    @media only screen and (min-width: 768px) {
      body#new-consult section.intro .left:before {
        border-right: none; } }
    @media only screen and (max-width: 767px) {
      body#new-consult section.intro .left:before {
        top: 22px;
        left: 8px;
        right: 8px;
        bottom: 0;
        border-bottom: none;
        z-index: 90; } }
  body#new-consult section.intro .left > div {
    position: absolute; }
    body#new-consult section.intro .left > div img {
      display: block;
      width: 100%;
      height: auto; }
      @media only screen and (max-width: 767px) {
        body#new-consult section.intro .left > div img {
          width: 100%;
          height: 100%; } }
  body#new-consult section.intro .left .text-bubble > img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1; }
  body#new-consult section.intro .left .man1 {
    width: 11.32vw;
    width: 13.8vw;
    right: 31.5vw;
    top: 6.2%; }
    @media only screen and (max-width: 767px) {
      body#new-consult section.intro .left .man1 {
        display: none; } }
    body#new-consult section.intro .left .man1-bubble {
      width: 16vw;
      height: 12.18vw;
      right: 38.6vw;
      bottom: 91.8vh;
      color: #fff; }
      @media only screen and (max-width: 767px) {
        body#new-consult section.intro .left .man1-bubble {
          width: 24.2vh;
          height: 18.4vh;
          bottom: -11vh;
          right: -12vh; } }
  body#new-consult section.intro .left .man2 {
    width: 11.87vw;
    width: 13.9vw;
    right: 32.6vw;
    right: 35vw;
    top: 37%;
    top: 38%; }
    @media only screen and (max-width: 767px) {
      body#new-consult section.intro .left .man2 {
        width: 14.55vh;
        right: -1vw;
        top: 21vh;
        z-index: +3; } }
    body#new-consult section.intro .left .man2-bubble {
      width: 16vw;
      height: 12.18vw;
      right: 20.78vw;
      right: 24vw;
      bottom: 57vh;
      bottom: 54vh;
      display: -webkit-flex;
      display: flex;
      padding: 1.17vw 1.77vw;
      font-size: 1.56vw;
      font-weight: 700;
      line-height: 1.7;
      color: #122E81;
      transition-delay: .4s; }
      @media only screen and (max-width: 767px) {
        body#new-consult section.intro .left .man2-bubble {
          width: 24.2vh;
          height: 15vh;
          font-size: 1.89vh;
          padding: 2.9vh 2.5vh;
          bottom: auto;
          right: auto;
          top: 18.5vh;
          top: 16.4vh;
          right: 10vh;
          z-index: +4; } }
  body#new-consult section.intro .left .man3 {
    width: 11.87vw;
    width: 14.6vw;
    left: 58%;
    bottom: 5%;
    z-index: +2; }
    @media only screen and (max-width: 767px) {
      body#new-consult section.intro .left .man3 {
        width: 27.28vw;
        right: -5.12vw;
        bottom: 14.2222%;
        left: auto; } }
    body#new-consult section.intro .left .man3-bubble {
      width: 15.7vw;
      height: 8.9vw;
      right: -20%;
      bottom: 14%;
      display: -webkit-flex;
      display: flex;
      font-size: 1.25vw;
      font-weight: 700;
      line-height: 1.7;
      padding: 1.5vw 1.5vw;
      color: #F8E5E5;
      z-index: +2;
      transition-delay: 1s; }
      @media only screen and (max-width: 767px) {
        body#new-consult section.intro .left .man3-bubble {
          width: 41vw;
          height: 23.58vw;
          font-size: 3.28vw;
          padding: 3.68vw 3.5vw;
          bottom: 39.111%;
          right: 15.79vw; } }
  body#new-consult section.intro .left .boy1 {
    width: 8.82vw;
    width: 10.3vw;
    left: 11%;
    bottom: 6.125%;
    z-index: +1; }
    @media only screen and (max-width: 767px) {
      body#new-consult section.intro .left .boy1 {
        display: none; } }
    body#new-consult section.intro .left .boy1-bubble {
      width: 15.46vw;
      height: 11.4vw;
      left: -15%;
      bottom: 17%;
      display: -webkit-flex;
      display: flex;
      font-size: 1.25vw;
      font-weight: 700;
      line-height: 1.7;
      padding: 2.7vw 0.7vw 2.1vw 2.4vw;
      color: #122E81;
      transition-delay: .8s; }
  body#new-consult section.intro .left .woman1 {
    width: 11.17vw;
    width: 13.6vw;
    right: 0;
    top: 8vh; }
    @media only screen and (max-width: 767px) {
      body#new-consult section.intro .left .woman1 {
        width: 14.3vh;
        right: auto;
        left: -2%;
        top: 28%; } }
    body#new-consult section.intro .left .woman1-bubble {
      width: 16.32vw;
      height: 12.5vw;
      right: 11.5vw;
      top: 2vh;
      display: -webkit-flex;
      display: flex;
      font-size: 1.56vw;
      font-weight: 700;
      line-height: 1.7;
      padding: 2.4vw 1vw 2vw 1.2vw;
      margin-bottom: 4%;
      color: #FFF;
      transition-delay: .2s;
      z-index: +1; }
      @media only screen and (max-width: 767px) {
        body#new-consult section.intro .left .woman1-bubble {
          right: auto;
          top: 1.4vh;
          left: 12vw;
          width: 22.72vh;
          height: 15vh;
          padding: 5vw 2.8vw 2vw 3.3vw;
          font-size: 1.89vh;
          z-index: +103; } }
  body#new-consult section.intro .left .woman2 {
    width: 10.39vw;
    width: 12.1vw;
    right: 20.5vw;
    right: 22vw;
    bottom: 22vh;
    bottom: 21vh; }
    @media only screen and (max-width: 767px) {
      body#new-consult section.intro .left .woman2 {
        width: 13.25vh;
        bottom: 1.5vh;
        left: 0;
        right: auto; } }
    body#new-consult section.intro .left .woman2-bubble {
      width: 15.62vw;
      height: 8.98vw;
      right: 12vw;
      right: 10.5vw;
      bottom: 47vh;
      bottom: 42vh;
      display: -webkit-flex;
      display: flex;
      font-size: 1.56vw;
      font-weight: 700;
      line-height: 1.7;
      padding: 1vw 1.4vw;
      color: #FFF;
      transition-delay: .6s; }
      @media only screen and (max-width: 767px) {
        body#new-consult section.intro .left .woman2-bubble {
          width: 22.48vh;
          height: 12.89vh;
          font-size: 1.89vh;
          padding: 3.8vw 4.5vw;
          bottom: 12.2222%;
          left: 11vh;
          right: auto;
          z-index: +4; } }
  body#new-consult section.intro .left .woman3 {
    width: 11.64vw;
    width: 14.5vw;
    right: -1vw;
    bottom: 30%;
    z-index: +1; }
    @media only screen and (max-width: 767px) {
      body#new-consult section.intro .left .woman3 {
        width: 15.14vh;
        top: 3.111%;
        right: -1.2vw;
        bottom: auto; } }
    body#new-consult section.intro .left .woman3-bubble {
      width: 16vw;
      height: 12.18vw;
      right: -12.5vw;
      bottom: 43vh; }
  body#new-consult section.intro .right {
    background-color: #358FC9;
    display: flex;
    justify-content: center;
    flex-direction: column;
    color: #FFF;
    padding-left: 38px;
    font-family: "fot-tsukuardgothic-std", sans-serif;
    position: relative;
    z-index: +99; }
    @media only screen and (max-width: 767px) {
      body#new-consult section.intro .right {
        padding: 28px 0 0;
        justify-content: flex-start;
        overflow: hidden; } }
    body#new-consult section.intro .right:before {
      content: '';
      position: absolute;
      top: 30px;
      right: 30px;
      bottom: 30px;
      left: 50px;
      border: 3px solid #FFF;
      pointer-events: none; }
      @media only screen and (min-width: 768px) {
        body#new-consult section.intro .right:before {
          border-left: none; } }
      @media only screen and (max-width: 767px) {
        body#new-consult section.intro .right:before {
          left: 8px;
          right: 8px;
          top: 0;
          bottom: 32px;
          border-top: none; } }
    body#new-consult section.intro .right .sub-title {
      font-size: 2.3vw;
      font-weight: bold;
      margin-bottom: 3.43vw; }
      @media only screen and (max-width: 767px) {
        body#new-consult section.intro .right .sub-title {
          padding-left: 34px;
          font-size: 14px;
          font-size: 1.4rem; } }
    body#new-consult section.intro .right .main-title {
      font-size: 3.125vw;
      font-weight: 700;
      line-height: 1.7;
      margin-bottom: 20px;
      transition: font-size 0.4s; }
      @media only screen and (max-width: 767px) {
        body#new-consult section.intro .right .main-title {
          font-size: 20px;
          font-size: 2rem;
          margin-right: -21px;
          padding: 0 17px 0 34px;
          margin-bottom: 10px; } }
    body#new-consult section.intro .right .text {
      line-height: 1.7;
      font-weight: 700;
      font-size: 1.25vw;
      padding-right: 3vw; }
      @media only screen and (max-width: 767px) {
        body#new-consult section.intro .right .text {
          font-size: 12px;
          font-size: 1.2rem;
          padding: 0 28px 0 34px; } }

body#new-consult section.options {
  padding-top: 18px;
  padding-bottom: 72px; }
  @media only screen and (max-width: 767px) {
    body#new-consult section.options {
      padding: 16px 16px 38px; } }
  body#new-consult section.options .sec-title {
    margin-bottom: 20px; }
    @media only screen and (max-width: 767px) {
      body#new-consult section.options .sec-title {
        margin-bottom: 12px; } }
  body#new-consult section.options .subsections {
    display: flex; }
    @media only screen and (max-width: 767px) {
      body#new-consult section.options .subsections {
        display: block; } }
    body#new-consult section.options .subsections > div {
      width: calc(50% - 5px);
      background-color: #F7DCDC;
      border-radius: 10px;
      padding: 14px 14px 22px; }
      @media only screen and (max-width: 767px) {
        body#new-consult section.options .subsections > div {
          width: 100%;
          margin-top: 16px;
          padding: 14px 24px 22px; } }
      body#new-consult section.options .subsections > div:first-child {
        margin-right: 10px; }
        @media only screen and (max-width: 767px) {
          body#new-consult section.options .subsections > div:first-child {
            margin-top: 0; } }
      body#new-consult section.options .subsections > div .btn {
        font-size: 26px;
        font-size: 2.6rem;
        margin: 0 auto;
        max-width: none;
        border-radius: 28px; }
    body#new-consult section.options .subsections .subsection {
      font-family: "fot-tsukuardgothic-std", sans-serif;
      color: #122E81; }
      body#new-consult section.options .subsections .subsection__title {
        width: 100%;
        display: -webkit-flex;
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: center;
        height: 68px;
        border-radius: 10px;
        background-color: #FFF;
        font-size: 26px;
        font-size: 2.6rem;
        font-weight: 700;
        margin-bottom: 18px; }
      body#new-consult section.options .subsections .subsection__list {
        margin-right: -12px;
        padding-left: 12px;
        margin-bottom: 40px; }
        @media only screen and (max-width: 767px) {
          body#new-consult section.options .subsections .subsection__list {
            margin-bottom: 32px; } }
        body#new-consult section.options .subsections .subsection__list > li {
          font-size: 18px;
          font-size: 1.8rem;
          font-weight: 700;
          line-height: 1.7222; }
          body#new-consult section.options .subsections .subsection__list > li.spacer {
            opacity: 0;
            pointer-events: none; }
      body#new-consult section.options .subsections .subsection__subtitle {
        font-size: 16px;
        font-size: 1.6rem;
        font-weight: 700;
        position: relative;
        display: -webkit-flex;
        display: flex;
        align-items: center;
        margin-bottom: 20px; }
        body#new-consult section.options .subsections .subsection__subtitle:after {
          content: '';
          flex: 1;
          height: 1px;
          background-color: #034EA3;
          margin-left: 10px; }
      body#new-consult section.options .subsections .subsection__points {
        margin-bottom: 22px; }
      body#new-consult section.options .subsections .subsection .point {
        display: -webkit-flex;
        display: flex;
        align-items: center;
        margin-bottom: 22px; }
        body#new-consult section.options .subsections .subsection .point:last-child {
          margin-bottom: 0; }
        body#new-consult section.options .subsections .subsection .point__icon {
          flex: 0 0 50px;
          margin-right: 11px; }
        body#new-consult section.options .subsections .subsection .point__text {
          flex: 1 1 auto;
          font-size: 18px;
          font-size: 1.8rem;
          font-weight: 700;
          line-height: 1.722; }
          @media only screen and (min-width: 768px) {
            body#new-consult section.options .subsections .subsection .point__text {
              min-height: 62px;
              display: -webkit-flex;
              display: flex;
              -webkit-align-items: center;
              align-items: center; } }
      body#new-consult section.options .subsections .subsection .btn {
        height: 56px; }

body#new-consult section.voice {
  background-color: #F7DCDC;
  padding-top: 38px;
  padding-bottom: 24px; }
  @media only screen and (max-width: 767px) {
    body#new-consult section.voice {
      padding: 20px 10px 19px; } }
  body#new-consult section.voice .sec-title {
    position: relative;
    margin-bottom: 10px; }
    @media only screen and (max-width: 767px) {
      body#new-consult section.voice .sec-title {
        margin-bottom: 14px; } }
    body#new-consult section.voice .sec-title:before {
      content: '';
      width: 100%;
      height: 1px;
      background-color: #034EA3;
      position: absolute;
      left: 0;
      top: 50%; }
    body#new-consult section.voice .sec-title span {
      background-color: #F7DCDC;
      display: inline-block;
      padding: 0 20px;
      position: relative; }
  body#new-consult section.voice .text {
    font-size: 1.6rem;
    font-weight: 700;
    text-align: center;
    margin-top: -22px;
    margin-bottom: 33px;
    color: #122E81; }
    @media only screen and (max-width: 767px) {
      body#new-consult section.voice .text {
        font-size: 12px;
        font-size: 1.2rem;
        margin: -20px 0 26px; } }
  body#new-consult section.voice .slider {
    margin-bottom: 62px;
    position: relative; }
    @media only screen and (max-width: 767px) {
      body#new-consult section.voice .slider {
        margin-bottom: 60px; } }
    body#new-consult section.voice .slider .slide {
      background-color: #FFF;
      border: 3px solid #034EA3;
      border-radius: 10px;
      display: -webkit-flex;
      display: flex;
      padding: 30px 24px 20px 10px;
      align-items: center;
      min-height: 257px; }
      @media only screen and (max-width: 767px) {
        body#new-consult section.voice .slider .slide {
          display: block;
          padding: 18px 22px 24px 26px; } }
      body#new-consult section.voice .slider .slide__avatar {
        flex: 0 0 144px;
        margin-right: 20px; }
        @media only screen and (max-width: 767px) {
          body#new-consult section.voice .slider .slide__avatar {
            display: -webkit-flex;
            display: flex;
            margin-right: 0;
            flex: 0 0 100%;
            align-items: center; }
            body#new-consult section.voice .slider .slide__avatar img {
              width: 147px;
              height: 147px;
              flex: 0 0 147px;
              margin-right: 15px; } }
    @media only screen and (max-width: 767px) and (max-width: 767px) {
      body#new-consult section.voice .slider .slide__avatar img {
        width: 121px;
        height: 146px;
        flex: 0 0 121px;
        margin-right: 20px; } }
      body#new-consult section.voice .slider .slide__content {
        flex: 1 1 auto;
        font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
        padding-top: 5px; }
        body#new-consult section.voice .slider .slide__content__title {
          font-size: 18px;
          font-size: 1.8rem;
          font-weight: 600;
          margin-bottom: 10px; }
          @media only screen and (max-width: 767px) {
            body#new-consult section.voice .slider .slide__content__title {
              line-height: 1.7222;
              margin-bottom: 0px; } }
        body#new-consult section.voice .slider .slide__content__text {
          font-size: 16px;
          font-size: 1.6rem;
          line-height: 1.68;
          font-weight: normal;
          min-height: 134px; }
          @media only screen and (max-width: 767px) {
            body#new-consult section.voice .slider .slide__content__text {
              padding: 0 0px;
              margin-top: 10px;
              min-height: 188px; } }
        body#new-consult section.voice .slider .slide__content__attribute {
          font-size: 18px;
          font-size: 1.8rem;
          text-align: right;
          display: block;
          font-weight: 600;
          margin: 0px 0 0; }
          @media only screen and (max-width: 767px) {
            body#new-consult section.voice .slider .slide__content__attribute {
              margin: 6px 5px 0 0; } }
    body#new-consult section.voice .slider .glide__arrows {
      position: absolute;
      top: 0;
      left: -50px;
      width: calc(100% + 100px);
      height: 100%;
      pointer-events: none;
      display: -webkit-flex;
      display: flex;
      align-items: center;
      justify-content: space-between; }
      @media only screen and (max-width: 767px) {
        body#new-consult section.voice .slider .glide__arrows {
          left: -10px;
          width: calc(100% + 20px); } }
    body#new-consult section.voice .slider .glide__arrow {
      width: 33px;
      height: 33px;
      border-radius: 50%;
      appearance: none;
      border: none;
      outline: none;
      overflow: hidden;
      text-indent: -100px;
      background: url(../images/consultation/slider-arrow.svg) center/33px no-repeat;
      cursor: pointer;
      transition: opacity 0.3s;
      pointer-events: all; }
      @media only screen and (max-width: 767px) {
        body#new-consult section.voice .slider .glide__arrow {
          background-image: url(../images/consultation/slider-arrow-sp.svg); } }
      body#new-consult section.voice .slider .glide__arrow--left {
        transform: rotateZ(180deg); }
      body#new-consult section.voice .slider .glide__arrow:hover {
        opacity: 0.7; }
      body#new-consult section.voice .slider .glide__arrow.disabled {
        opacity: 0;
        pointer-events: none; }
    body#new-consult section.voice .slider .glide__bullets {
      position: absolute;
      top: 100%;
      width: 100%;
      display: -webkit-flex;
      display: flex;
      justify-content: center;
      height: 45px;
      align-items: center; }
      @media only screen and (max-width: 767px) {
        body#new-consult section.voice .slider .glide__bullets {
          height: 60px;
          align-items: flex-start;
          padding-top: 13px; } }
    body#new-consult section.voice .slider .glide__bullet {
      border-radius: 0;
      padding: 0;
      -webkit-box-sizing: content-box;
      -webkit-appearance: button;
      appearance: button;
      border: none;
      box-sizing: border-box;
      cursor: pointer;
      width: 16px;
      height: 16px;
      background-color: #FFF;
      margin: 0 4px;
      appearance: none;
      border-radius: 50%;
      outline: none;
      border: none;
      transition: background-color 0.3s;
      cursor: pointer; }
      body#new-consult section.voice .slider .glide__bullet--active {
        background-color: #122E81; }
  body#new-consult section.voice .btn {
    margin: 0 auto 42px;
    font-size: 26px;
    font-size: 2.6rem;
    max-width: 313px;
    height: 56px;
    border-radius: 28px; }
    @media only screen and (max-width: 767px) {
      body#new-consult section.voice .btn {
        margin-bottom: 50px; } }

.endowment .line-wrapper {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none; }
  .endowment .line-wrapper .line-speech path {
    stroke-dasharray: 100;
    stroke-dashoffset: 100; }
  .endowment .line-wrapper .dots {
    opacity: 0;
    width: 14.296875%;
    position: absolute;
    bottom: 11.4vw;
    right: 8.5%;
    filter: blur(7px) brightness(1.15);
    animation: dotsMove 1.5s infinite ease-out alternate; }
    @media only screen and (max-width: 767px) {
      .endowment .line-wrapper .dots {
        width: 22.56410256%;
        bottom: 17.4vw;
        right: 7%; } }

@keyframes dotsMove {
  0% {
    transform: translateY(0); }
  100% {
    transform: translateY(1.2vw); } }

.endowment section {
  max-width: 640px;
  width: 100%;
  margin: 0 auto; }
  .endowment section.endowment-top {
    position: relative;
    max-width: none; }
    .endowment section.endowment-top .inner-content {
      max-width: 520px;
      padding: 140px 35px 120px;
      margin: 0 auto; }
      @media only screen and (max-width: 767px) {
        .endowment section.endowment-top .inner-content {
          padding: 194px 0 274px;
          text-align: center; } }
    .endowment section.endowment-top .text {
      font-size: 3rem;
      font-weight: 700;
      color: #122E81;
      line-height: 1.7;
      margin-bottom: 100px; }
      @media only screen and (max-width: 767px) {
        .endowment section.endowment-top .text {
          text-align: left;
          display: inline-block;
          font-size: 5vw;
          margin: 0 auto 45px; } }
    .endowment section.endowment-top .image {
      max-width: 335px;
      width: 100%; }
      @media only screen and (max-width: 767px) {
        .endowment section.endowment-top .image {
          display: inline-block;
          max-width: none;
          width: 66.666%; } }
  .endowment section.consult {
    max-width: none;
    padding: 50px 64px 80px;
    display: flex;
    flex-direction: column;
    align-items: center;
    background: #F7DCDC;
    width: 100%; }
    @media only screen and (max-width: 767px) {
      .endowment section.consult {
        padding: 38px 8px 43px; } }
    .endowment section.consult .inner {
      max-width: 1282px;
      margin: 0 auto; }
      @media only screen and (max-width: 767px) {
        .endowment section.consult .inner .sec-title {
          font-size: 2.3rem;
          margin-bottom: 16px; } }
      .endowment section.consult .inner .link-consult {
        display: block;
        position: relative;
        max-width: 1152px;
        margin: 0 auto; }
        .endowment section.consult .inner .link-consult .speech-box {
          position: absolute;
          top: 4.5%;
          width: 14.3105%;
          visibility: hidden;
          transform: translateY(15px); }
          .endowment section.consult .inner .link-consult .speech-box__01 {
            left: 1.2142%; }
            @media only screen and (max-width: 767px) {
              .endowment section.consult .inner .link-consult .speech-box__01 {
                width: 44.11764706%;
                top: 2.06489676%;
                left: 2.94117647%; } }
          .endowment section.consult .inner .link-consult .speech-box__02 {
            left: 17.8664%; }
            @media only screen and (max-width: 767px) {
              .endowment section.consult .inner .link-consult .speech-box__02 {
                width: 44.38502674%;
                top: 12.97935103%;
                left: 28.60962567%;
                z-index: 5; } }
          .endowment section.consult .inner .link-consult .speech-box__03 {
            left: 33.8248%; }
            @media only screen and (max-width: 767px) {
              .endowment section.consult .inner .link-consult .speech-box__03 {
                width: 40.90909091%;
                top: 2.06489676%;
                left: auto;
                right: 2.13903743%; } }
          .endowment section.consult .inner .link-consult .speech-box-sptext {
            text-decoration: underline;
            font-size: 4vw;
            font-weight: 700;
            position: absolute;
            bottom: 3%;
            color: #FFF;
            left: 5%;
            bottom: 7%; }
  .endowment section.info {
    /* padding: 70px 65px 25px; */
        padding: 70px 65px 0px;
    max-width: none; }
    @media only screen and (max-width: 767px) {
      .endowment section.info {
        padding: 16px 8px 42px; } }
    .endowment section.info .info-box {
      max-width: 685px;
      width: 100%;
      margin: 0 auto;
      border-radius: 10px;
      overflow: hidden;
      position: relative;
      display: -webkit-flex;
      display: flex; }
      .endowment section.info .info-box .btn {
        max-width: 222px;
        position: absolute;
        bottom: 22px;
        right: 25px; }
        @media only screen and (max-width: 767px) {
          .endowment section.info .info-box .btn {
            bottom: 4.52342488%;
            right: 50%;
            transform: translateX(50%); } }

body.index {
  height: auto; }
  body.index .main .container {
    background: #FAFAFA; }
    body.index .main .container .player-wrap {
      position: relative;
      cursor: pointer;
      height: calc(100vh - 195px);
      display: -webkit-flex;
      display: flex;
      -webkit-justify-content: center;
      justify-content: center;
      -webkit-align-items: center;
      align-items: center;
      background: #F7DCDC;
      min-height: 360px; }
      @media only screen and (max-width: 767px) {
        body.index .main .container .player-wrap {
          min-height: 0;
          height: 478px; } }
    body.index .main .container #player {
      width: 100vw;
      display: -webkit-flex;
      display: flex;
      -webkit-justify-content: center;
      justify-content: center;
      -webkit-align-items: center;
      align-items: center;
      cursor: pointer; }
      @media only screen and (max-width: 767px) {
        body.index .main .container #player {
          height: auto; } }
      body.index .main .container #player #sskyplayer {
        cursor: pointer; }
  body.index .main .bottom {
    padding: 30px 18px 20px;
    text-align: center; }
    @media only screen and (max-width: 767px) {
      body.index .main .bottom {
        padding: 12px 12px 16px;
        min-height: calc(100vh - 478px - 84px); } }
    body.index .main .bottom__box {
      display: inline-block;
      text-align: left;
      margin: 0 0 30px;
      width: 478px; }
      @media only screen and (max-width: 767px) {
        body.index .main .bottom__box {
          width: 100%;
          margin: 0 0 20px; } }
    body.index .main .bottom p {
      font-size: 12px;
      font-size: 1.2rem;
      font-weight: 600;
      color: #262626;
      font-family: "fot-tsukuardgothic-std", sans-serif;
      margin: 0 0 8px;
      line-height: 1.4; }
    body.index .main .bottom .click {
      font-size: 12px;
      font-size: 1.2rem;
      font-weight: 600;
      position: relative;
      color: #262626;
      cursor: pointer;
      font-family: "fot-tsukuardgothic-std", sans-serif; }
      body.index .main .bottom .click.is-active:after {
        opacity: 0; }
      body.index .main .bottom .click:before {
        content: "";
        width: 10px;
        height: 2px;
        display: block;
        background: #262626;
        position: absolute;
        right: -12px;
        transition: .3s;
        top: 50%;
        -webkit-transform: translate(0, -50%);
        -moz-transform: translate(0, -50%);
        -ms-transform: translate(0, -50%);
        -o-transform: translate(0, -50%);
        transform: translate(0, -50%); }
      body.index .main .bottom .click:after {
        content: "";
        width: 2px;
        height: 10px;
        display: block;
        background: #262626;
        position: absolute;
        right: -8px;
        transition: .3s;
        opacity: 1;
        top: 50%;
        -webkit-transform: translate(0, -50%);
        -moz-transform: translate(0, -50%);
        -ms-transform: translate(0, -50%);
        -o-transform: translate(0, -50%);
        transform: translate(0, -50%); }
    body.index .main .bottom .des {
      font-size: 10px;
      font-size: 1rem;
      line-height: 1.7;
      color: #707070;
      margin-top: 10px;
      display: none;
      font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif; }
    body.index .main .bottom .top-link {
      display: -webkit-flex;
      display: flex;
      -webkit-justify-content: center;
      justify-content: center;
      -webkit-align-items: center;
      align-items: center;
      width: 164px;
      height: 35px;
      border: 1px solid #122E81;
      border-radius: 36px;
      font-size: 14px;
      font-size: 1.4rem;
      font-weight: 600;
      color: #122E81; }
  body.index .main .footer {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    background: #111799;
    color: #fff;
    padding: 24px 40px 20px;
    font-size: 14px;
    font-size: 1.4rem; }
    @media only screen and (max-width: 767px) {
      body.index .main .footer {
        display: block;
        font-size: 10px;
        font-size: 1rem;
        text-align: center;
        padding: 20px 5px 22px; } }
    body.index .main .footer__logo {
      width: 108px; }
      @media only screen and (max-width: 767px) {
        body.index .main .footer__logo {
          margin: 0 auto 14px; } }

@media only screen and (max-width: 767px) {
  html {
    height: calc(100vh - env(safe-area-inset-bottom)); } }

@media only screen and (max-width: 767px) {
  body.knowledge {
    position: absolute;
    top: 0;
    left: 0;
    height: calc(100vh - env(safe-area-inset-bottom));
    width: 100%; } }

body.knowledge span.loader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #FFF;
  z-index: 1000;
  opacity: 1;
  transition: opacity 0.5s; }
  body.knowledge span.loader.loaded {
    opacity: 0;
    pointer-events: none; }

body.knowledge #body {
  height: 100%;
  position: relative; }
  @media only screen and (max-width: 767px) {
    body.knowledge #body {
      height: 100vh !important;
      overflow: hidden !important; } }
  body.knowledge #body > div {
    height: 100vh; }
    @media only screen and (max-width: 767px) {
      body.knowledge #body > div {
        height: calc(100vh - env(safe-area-inset-bottom)); } }

body.knowledge .wrapper {
  font-family: 'fot-tsukuardgothic-std', sans-serif;
  font-weight: 700;
  overflow: hidden;
  height: 100vh;
  position: relative; }
  @media only screen and (max-width: 767px) {
    body.knowledge .wrapper {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: calc(100vh - env(safe-area-inset-bottom));
      overflow: visible; } }

body.knowledge .blob-wrapper {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }
  @media only screen and (max-width: 767px) {
    body.knowledge .blob-wrapper {
      height: calc(100vh - env(safe-area-inset-bottom)); } }

body.knowledge .is-a-line {
  width: 100%;
  height: auto;
  position: absolute;
  bottom: 0;
  left: 0;
  display: inline-block; }

body.knowledge .lines-container {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 2;
  vertical-align: middle;
  overflow: hidden; }
  @media only screen and (max-width: 767px) {
    body.knowledge .lines-container {
      height: calc(100vh - env(safe-area-inset-bottom)); } }
  body.knowledge .lines-container.has-blend-mode {
    mix-blend-mode: color-dodge; }

body.knowledge .wavy-line {
  transform: translateY(120px); }
  @media only screen and (max-width: 767px) {
    body.knowledge .wavy-line {
      top: 50%;
      bottom: auto;
      transform: translateY(-50%); } }
  body.knowledge .wavy-line path {
    stroke-dasharray: 100;
    stroke-dashoffset: 100; }

body.knowledge .line-circle {
  visibility: hidden; }
  body.knowledge .line-circle path {
    stroke-dasharray: 100;
    stroke-dashoffset: 100; }
  @media only screen and (min-width: 768px) {
    body.knowledge .line-circle {
      margin-bottom: -3%; } }
  @media only screen and (max-width: 1380px) {
    body.knowledge .line-circle {
      margin-bottom: 0; } }
  body.knowledge .line-circle.sp {
    transform: scaleX(-1) translateY(-50%);
    top: 50%; }

body.knowledge .line-question path {
  stroke-dasharray: 100;
  stroke-dashoffset: 100; }

body.knowledge #line04 {
  isolation: isolate; }
  body.knowledge #line04 path {
    stroke-dasharray: 100;
    stroke-dashoffset: 100; }

body.knowledge #line05 {
  position: absolute;
  top: auto;
  bottom: 0; }
  body.knowledge #line05 path {
    stroke-dasharray: 100;
    stroke-dashoffset: 100; }

body.knowledge #line06 path {
  stroke-dasharray: 100;
  stroke-dashoffset: 100; }

body.knowledge .wrapper .envelope {
  width: 100%;
  height: 100vh;
  position: relative;
  background-color: #FFF; }
  @media only screen and (max-width: 767px) {
    body.knowledge .wrapper .envelope {
      width: 100%;
      position: absolute;
      top: 0;
      left: 0; } }
  body.knowledge .wrapper .envelope-wrapper {
    transform-origin: 50% 0;
    box-shadow: 0 0 16px rgba(0, 0, 0, 0.16); }
    @media only screen and (min-width: 768px) {
      body.knowledge .wrapper .envelope-wrapper {
        height: 100%; } }
    @media only screen and (max-width: 767px) {
      body.knowledge .wrapper .envelope-wrapper {
        position: absolute;
        top: 50%;
        left: 0;
        transform: translateY(-50%); } }
  body.knowledge .wrapper .envelope__bg {
    width: 100%;
    height: 100%; }
  body.knowledge .wrapper .envelope__flap {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 61.25%;
    transform-origin: 50% 0; }
    body.knowledge .wrapper .envelope__flap > img {
      width: 100%;
      height: 100%; }
    body.knowledge .wrapper .envelope__flap--inner {
      position: absolute;
      bottom: calc(100% - 1px);
      left: 0;
      width: 100%;
      transform-origin: 50% 100%;
      transform: rotateX(90deg); }

body.knowledge .wrapper .text:not(.nofloat) {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0; }
  @media only screen and (max-width: 767px) {
    body.knowledge .wrapper .text:not(.nofloat) {
      height: calc(100vh - env(safe-area-inset-bottom)); } }

body.knowledge .wrapper .text > div {
  position: absolute;
  width: 88.125%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  visibility: hidden; }

@media only screen and (max-width: 767px) {
  body.knowledge .wrapper .text__filled svg {
    width: 100%;
    height: auto; } }

@media only screen and (max-width: 767px) {
  body.knowledge .wrapper .text__outline svg {
    width: 100%;
    height: auto; } }

body.knowledge .wrapper .text__outline svg path {
  stroke-miterlimit: 10;
  stroke-linejoin: round;
  stroke-linecap: round;
  stroke-width: 2px;
  stroke-dasharray: 100;
  stroke-dashoffset: 0; }
  @media only screen and (max-width: 767px) {
    body.knowledge .wrapper .text__outline svg path {
      stroke-width: 1px; } }

body.knowledge .wrapper .moretext-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1; }
  @media only screen and (max-width: 767px) {
    body.knowledge .wrapper .moretext-wrapper {
      height: calc(100vh - env(safe-area-inset-bottom)); } }
  body.knowledge .wrapper .moretext-wrapper .arrow-scroll {
    visibility: hidden;
    position: absolute;
    bottom: calc(50% - 240px);
    transform: translateX(-50%);
    left: 50%; }
    @media only screen and (max-width: 767px) {
      body.knowledge .wrapper .moretext-wrapper .arrow-scroll {
        bottom: calc(50% - 160px); } }
    body.knowledge .wrapper .moretext-wrapper .arrow-scroll .arrow {
      width: 28px;
      height: 8px;
      animation: arrowBounce 0.8s infinite ease-out alternate;
      margin: 0 auto; }
      @media only screen and (max-width: 767px) {
        body.knowledge .wrapper .moretext-wrapper .arrow-scroll .arrow {
          width: 28px;
          height: 28px;
          border-radius: 50%;
          border: 1px solid #122E81;
          position: relative;
          animation: none;
          display: -webkit-flex;
          display: flex;
          -webkit-align-items: center;
          align-items: center;
          -webkit-justify-content: center;
          justify-content: center;
          padding-bottom: 4px; } }
      @media only screen and (max-width: 767px) {
        body.knowledge .wrapper .moretext-wrapper .arrow-scroll .arrow img {
          width: 11px;
          position: relative;
          display: block;
          animation: arrowBounceSp 0.8s infinite ease-out alternate; } }
    body.knowledge .wrapper .moretext-wrapper .arrow-scroll .arrow-text {
      display: block;
      text-align: center;
      margin-top: 8px;
      font-size: 15px;
      font-size: 1.5rem;
      color: #122e81;
      text-transform: uppercase; }
      @media only screen and (max-width: 767px) {
        body.knowledge .wrapper .moretext-wrapper .arrow-scroll .arrow-text {
          margin-top: 10px; } }

@keyframes arrowBounce {
  0% {
    transform: translate(0, 0); }
  100% {
    transform: translate(0, -8px); } }

@keyframes arrowBounceSp {
  0% {
    bottom: 0; }
  100% {
    bottom: -6px; } }

body.knowledge .wrapper .moretext {
  font-size: 3rem;
  line-height: 1.7;
  position: absolute;
  top: calc((50%) - 13rem);
  left: 0;
  width: 100%;
  visibility: hidden; }
  @media only screen and (max-width: 767px) {
    body.knowledge .wrapper .moretext {
      font-size: 6vw; } }
  body.knowledge .wrapper .moretext > p {
    color: #122e81;
    text-align: center;
    margin-bottom: 50px; }
    @media only screen and (max-width: 767px) {
      body.knowledge .wrapper .moretext > p {
        margin-bottom: 30px; } }
    body.knowledge .wrapper .moretext > p:last-child {
      margin-bottom: 0; }

body.knowledge .wrapper .bigimg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 5; }
  @media only screen and (max-width: 767px) {
    body.knowledge .wrapper .bigimg {
      height: calc(100vh - env(safe-area-inset-bottom)); } }
  body.knowledge .wrapper .bigimg__mask {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    overflow: hidden;
    clip-path: polygon(50% 0%, 50% 0%, 50% 100%, 50% 100%); }
    @media only screen and (max-width: 767px) {
      body.knowledge .wrapper .bigimg__mask {
        height: calc(100vh - env(safe-area-inset-bottom)); } }
    body.knowledge .wrapper .bigimg__mask img {
      width: 100%;
      height: 100%;
      object-fit: cover; }
      @media only screen and (max-width: 767px) {
        body.knowledge .wrapper .bigimg__mask img {
          height: calc(100vh - env(safe-area-inset-bottom)); } }
  body.knowledge .wrapper .bigimg__text {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    height: 64.875%;
    visibility: hidden; }
    @media only screen and (max-width: 767px) {
      body.knowledge .wrapper .bigimg__text {
        height: 61.9668%; } }
    body.knowledge .wrapper .bigimg__text svg {
      height: 100%; }

body.knowledge .startbox {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding-bottom: 20px; }
  @media only screen and (max-width: 767px) {
    body.knowledge .startbox {
      justify-content: flex-start;
      padding: 122px 16px 0;
      height: calc(100vh - env(safe-area-inset-bottom)); } }
  @media only screen and (max-width: 767px) {
    body.knowledge .startbox.startbox-gaksi {
      padding-top: 20px; } }
  body.knowledge .startbox__content {
    visibility: hidden;
    max-width: 650px;
    position: relative;
    z-index: 5; }
    @media only screen and (max-width: 767px) {
      body.knowledge .startbox__content {
        max-width: none;
        margin: 0 auto; } }
  body.knowledge .startbox__text {
    font-size: 3rem;
    line-height: 1.7;
    color: #122e81;
    margin-bottom: 35px; }
    @media only screen and (max-width: 767px) {
      body.knowledge .startbox__text {
        font-size: 18px;
        font-size: 1.8rem;
        margin-bottom: 16px; } }
  body.knowledge .startbox__linksbox {
    width: 100%; }
    body.knowledge .startbox__linksbox .startbox-link {
      appearance: none;
      border-radius: 0;
      background: none;
      margin: 0;
      padding: 0;
      outline: none;
      border: none;
      cursor: pointer; }
      body.knowledge .startbox__linksbox .startbox-link > img {
        border-radius: 10px; }
      body.knowledge .startbox__linksbox .startbox-link .banner {
        overflow: hidden;
        border-radius: 10px;
        position: relative; }
        body.knowledge .startbox__linksbox .startbox-link .banner:before {
          content: "";
          display: block;
          position: absolute;
          top: 0;
          left: 0;
          right: 0;
          bottom: 0;
          background: rgba(0, 0, 0, 0.15); }
        body.knowledge .startbox__linksbox .startbox-link .banner .con {
          position: absolute;
          top: 0;
          left: 0;
          right: 0;
          bottom: 0;
          display: -webkit-flex;
          display: flex;
          -webkit-align-items: center;
          align-items: center;
          -webkit-justify-content: center;
          justify-content: center;
          -webkit-flex-direction: column;
          flex-direction: column; }
        body.knowledge .startbox__linksbox .startbox-link .banner__catch {
          font-size: 20px;
          font-size: 2rem;
          font-weight: bold;
          color: #fff;
          display: inline-block;
          margin: 0 0 25px;
          font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
          text-shadow: 1px 1px 4px rgba(0, 0, 0, 0.5); }
          @media only screen and (max-width: 767px) {
            body.knowledge .startbox__linksbox .startbox-link .banner__catch {
              font-size: 16px;
              font-size: 1.6rem;
              margin: 0 0 12px; } }
          body.knowledge .startbox__linksbox .startbox-link .banner__catch:before {
            content: "";
            width: 2px;
            height: 40px;
            display: inline-block;
            background: #fff;
            -webkit-transform: rotate(-25deg);
            -moz-transform: rotate(-25deg);
            -ms-transform: rotate(-25deg);
            -o-transform: rotate(-25deg);
            transform: rotate(-25deg);
            margin: 0 20px;
            position: relative;
            top: 15px;
            text-shadow: 1px 1px 4px rgba(0, 0, 0, 0.5); }
            @media only screen and (max-width: 767px) {
              body.knowledge .startbox__linksbox .startbox-link .banner__catch:before {
                height: 24px;
                margin: 0 10px;
                top: 5px; } }
          body.knowledge .startbox__linksbox .startbox-link .banner__catch:after {
            content: "";
            width: 2px;
            height: 40px;
            display: inline-block;
            background: #fff;
            -webkit-transform: rotate(25deg);
            -moz-transform: rotate(25deg);
            -ms-transform: rotate(25deg);
            -o-transform: rotate(25deg);
            transform: rotate(25deg);
            margin: 0 20px;
            position: relative;
            top: 15px;
            text-shadow: 1px 1px 4px rgba(0, 0, 0, 0.5); }
            @media only screen and (max-width: 767px) {
              body.knowledge .startbox__linksbox .startbox-link .banner__catch:after {
                height: 24px;
                margin: 0 10px;
                top: 5px; } }
        body.knowledge .startbox__linksbox .startbox-link .banner__title {
          font-size: 30px;
          font-size: 3rem;
          line-height: 1.7;
          color: #fff;
          font-weight: bold;
          text-shadow: 2px 3px 5px rgba(0, 0, 0, 0.5); }
          @media only screen and (max-width: 767px) {
            body.knowledge .startbox__linksbox .startbox-link .banner__title {
              font-size: 20px;
              font-size: 2rem;
              text-shadow: 0px 2px 6px rgba(0, 0, 0, 0.5); } }
        body.knowledge .startbox__linksbox .startbox-link .banner__title02 {
          font-size: 22px;
          font-size: 2.2rem;
          line-height: 1.7;
          color: #fff;
          font-weight: bold;
          text-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16); }
          @media only screen and (max-width: 767px) {
            body.knowledge .startbox__linksbox .startbox-link .banner__title02 {
              font-size: 20px;
              font-size: 2rem;
              text-shadow: 0px 2px 6px rgba(0, 0, 0, 0.16); } }
      body.knowledge .startbox__linksbox .startbox-link > p {
        font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
        font-size: 18px;
        font-size: 1.8rem;
        font-weight: 700;
        text-align: right;
        color: #034EA3;
        margin-top: 6px; }
        @media only screen and (max-width: 767px) {
          body.knowledge .startbox__linksbox .startbox-link > p {
            font-size: 16px;
            font-size: 1.6rem; } }
    body.knowledge .startbox__linksbox.linksbox-gaksi {
      display: -webkit-flex;
      display: flex; }
      @media only screen and (max-width: 767px) {
        body.knowledge .startbox__linksbox.linksbox-gaksi {
          display: block; } }
      body.knowledge .startbox__linksbox.linksbox-gaksi .startbox-link {
        width: calc(50% - 15px);
        margin-right: 30px; }
        @media only screen and (max-width: 767px) {
          body.knowledge .startbox__linksbox.linksbox-gaksi .startbox-link {
            width: 100%;
            margin-bottom: 20px; } }
        body.knowledge .startbox__linksbox.linksbox-gaksi .startbox-link:last-child {
          margin-right: 0; }
          @media only screen and (max-width: 767px) {
            body.knowledge .startbox__linksbox.linksbox-gaksi .startbox-link:last-child {
              margin-bottom: 0; } }

body.knowledge .normal-content {
  padding-top: 0; }
  body.knowledge .normal-content.is-loaded {
    padding-top: 0; }

body.knowledge .quiz-container {
  position: absolute;
  bottom: 0;
  left: 100%;
  height: 100vh;
  width: 500%;
  display: flex;
  pointer-events: all; }
  body.knowledge .quiz-container-wrapper {
    width: 100%;
    overflow: hidden;
    height: 100vh;
    position: absolute;
    bottom: 0;
    left: 0;
    pointer-events: none; }
    body.knowledge .quiz-container-wrapper.is-active {
      top: 100%; }
    body.knowledge .quiz-container-wrapper.is-hidden {
      display: none; }
  body.knowledge .quiz-container .btn-question-back {
    appearance: none;
    border: 1px solid #034ea3;
    background-color: #034ea3;
    color: #FFF;
    position: absolute;
    left: 10px;
    bottom: 10px;
    outline: none;
    margin: 0;
    padding: 0;
    font-size: 1.2rem;
    font-family: "Hiragino Pro", sans-serif;
    padding: 0 10px 0 6px;
    display: inline-flex;
    align-items: center;
    height: 24px;
    cursor: pointer;
    border-radius: 12px;
    z-index: 5; }
  body.knowledge .quiz-container .question {
    width: 100%;
    height: 100%;
    display: flex;
    position: relative;
    overflow: hidden; }
    @media only screen and (max-width: 767px) {
      body.knowledge .quiz-container .question {
        flex-direction: column;
        height: 100vh; } }
    body.knowledge .quiz-container .question .left {
      flex: 0 0 50%;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      position: relative; }
    body.knowledge .quiz-container .question .right {
      flex: 0 0 50%;
      background-color: #f7dcdc;
      display: flex;
      align-items: center;
      justify-content: center; }
      body.knowledge .quiz-container .question .right .button-wrapper {
        max-width: 370px;
        width: 100%; }
        @media only screen and (max-width: 767px) {
          body.knowledge .quiz-container .question .right .button-wrapper {
            max-width: 260px; } }
      body.knowledge .quiz-container .question .right .btn {
        max-width: 370px;
        background-color: #fff;
        color: #707070;
        transition: background-color 0.3s, color 0.3s; }
        @media only screen and (max-width: 767px) {
          body.knowledge .quiz-container .question .right .btn {
            font-size: 21px;
            font-size: 2.1rem; } }
        body.knowledge .quiz-container .question .right .btn:hover {
          background-color: #034ea3;
          color: #fff; }
    body.knowledge .quiz-container .question__no {
      font-size: 30vw;
      z-index: -1;
      position: absolute;
      top: -0.15em;
      left: -0.05em;
      color: #F8F8F8;
      mix-blend-mode: multiply;
      font-family: "Hiragino Pro", sans-serif; }
      @media only screen and (max-width: 767px) {
        body.knowledge .quiz-container .question__no {
          font-size: 74vw; } }
    body.knowledge .quiz-container .question__title {
      font-size: 40px;
      font-size: 4rem;
      line-height: 1.7;
      text-align: center;
      margin-bottom: 4.5%; }
      @media only screen and (max-width: 767px) {
        body.knowledge .quiz-container .question__title {
          font-size: 30px;
          font-size: 3rem;
          margin-bottom: 12px; } }
    body.knowledge .quiz-container .question__img {
      max-width: 43.75%;
      width: 100%;
      margin-bottom: 4.5%; }
      @media only screen and (max-width: 767px) {
        body.knowledge .quiz-container .question__img {
          max-width: 162px;
          margin-bottom: 12px; } }
    body.knowledge .quiz-container .question__text {
      font-size: 1.6rem;
      line-height: 1.6875;
      max-width: 60.625%;
      width: 100%;
      color: #707070; }
      @media only screen and (max-width: 767px) {
        body.knowledge .quiz-container .question__text {
          font-size: 14px;
          font-size: 1.4rem;
          max-width: none;
          padding: 0 30px; } }

body.knowledge .quiz-results {
  position: relative;
  left: auto;
  top: auto; }
  body.knowledge .quiz-results__text, body.knowledge .quiz-results__links {
    visibility: visible; }
  body.knowledge .quiz-results .btn-question-back {
    background-color: #FFF;
    color: #034ea3; }

body.knowledge .modals {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  visibility: hidden;
  z-index: 11; }
  @media only screen and (max-width: 767px) {
    body.knowledge .modals {
      height: calc(100vh - env(safe-area-inset-bottom)); } }
  body.knowledge .modals .modals-bg {
    background-color: rgba(0, 0, 0, 0.39);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0; }
  body.knowledge .modals #btn-close-modals {
    position: absolute;
    width: 37px;
    top: 22px;
    left: calc(50vw + 280px);
    appearance: none;
    border: none;
    border-radius: 0;
    outline: none;
    background: none;
    cursor: pointer;
    z-index: 10;
    padding: 0; }
    @media only screen and (max-width: 767px) {
      body.knowledge .modals #btn-close-modals {
        z-index: 10;
        top: 50px;
        right: 10px;
        left: auto; } }
  body.knowledge .modals .modal {
    max-width: 650px;
    width: 100%;
    background-color: #fff;
    position: absolute;
    left: 50%;
    top: 15px;
    height: calc(100% - 30px);
    transform: translateX(-50%);
    overflow: hidden;
    visibility: hidden; }
    @media only screen and (max-width: 767px) {
      body.knowledge .modals .modal {
        height: calc(100% - 80px);
        top: 40px; } }
    body.knowledge .modals .modal.is-open {
      z-index: +1; }
    body.knowledge .modals .modal header {
      width: 100%;
      height: 219px;
      display: flex;
      align-items: center;
      justify-content: center; }
    body.knowledge .modals .modal__title {
      font-family: "Hiragino Sans", sans-serif;
      font-weight: 600;
      line-height: 1.6452;
      padding: 0 20px;
      text-align: center;
      color: #fff; }
      @media only screen and (max-width: 767px) {
        body.knowledge .modals .modal__title {
          padding: 0; } }
      body.knowledge .modals .modal__title__no {
        display: block;
        font-size: 4rem;
        letter-spacing: 0.04em;
        margin-bottom: 10px; }
    body.knowledge .modals .modal__body {
      position: relative;
      padding: 31px 35px 107px;
      height: calc(100% - 219px); }
      @media only screen and (max-width: 767px) {
        body.knowledge .modals .modal__body {
          padding-left: 16px;
          padding-right: 16px; } }
    body.knowledge .modals .modal__text {
      font-family: "Hiragino Sans", sans-serif;
      font-size: 1.6rem;
      line-height: 1.6875;
      font-weight: 400;
      height: 100%;
      overflow-y: scroll; }
      body.knowledge .modals .modal__text__question {
        font-size: 1.6rem;
        font-weight: 700;
        margin-bottom: 6px; }
      body.knowledge .modals .modal__text__answer {
        font-size: 1.4rem;
        font-weight: 500;
        margin-bottom: 20px;
        line-height: 1.7; }
        body.knowledge .modals .modal__text__answer:last-child {
          margin-bottom: 0; }
    body.knowledge .modals .modal__paging {
      position: absolute;
      bottom: 44px;
      left: 0;
      width: 100%; }
      @media only screen and (max-width: 767px) {
        body.knowledge .modals .modal__paging {
          bottom: 90px; } }
      body.knowledge .modals .modal__paging .page-link {
        position: absolute;
        bottom: 0;
        left: 50%;
        transform: translateX(-50%);
        max-width: 125px; }
        @media only screen and (max-width: 767px) {
          body.knowledge .modals .modal__paging .page-link {
            height: 44px; } }
  body.knowledge .modals #modal-content header {
    background: url("../images/manki/yoro/bg-head.jpg") center top/cover; }

body.knowledge .btn-back {
  border: 1px solid #122E81;
  color: #122E81;
  width: 147px;
  height: 36px;
  border-radius: 18px;
  font-size: 1.4rem;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  margin: 0 0 25px 20px; }

@media only screen and (max-width: 767px) {
  body.knowledge .pin-spacer {
    position: relative !important; } }

body#tax-consult {
  overflow-x: hidden; }
  body#tax-consult section.info {
    padding: 44px 65px 18px;
    background-color: #F7DCDC; }
    @media only screen and (max-width: 767px) {
      body#tax-consult section.info {
        padding: 37px 10px 20px; } }
    body#tax-consult section.info .top {
      text-align: center;
      margin: 0 0 14px; }
      @media only screen and (max-width: 767px) {
        body#tax-consult section.info .top {
          margin: 0 0 18px; } }
      body#tax-consult section.info .top .bubble {
        font-size: 28px;
        font-size: 2.8rem;
        color: #fff;
        font-weight: bold;
        display: inline-block;
        background: #034EA3;
        border-radius: 10px;
        padding: 10px 14px;
        position: relative;
        margin-bottom: 28px; }
        @media only screen and (max-width: 767px) {
          body#tax-consult section.info .top .bubble {
            font-size: 21px;
            font-size: 2.1rem;
            padding: 12px 14px; } }
        body#tax-consult section.info .top .bubble:after {
          content: "";
          border-top: 5px solid #034EA3;
          border-right: 8px solid #034EA3;
          border-bottom: 5px solid transparent;
          border-left: 8px solid transparent;
          display: inline-block;
          position: absolute;
          left: 21px;
          bottom: -10px; }
      body#tax-consult section.info .top h2 {
        font-size: 38px;
        font-size: 3.8rem;
        font-weight: bold;
        color: #122E81; }
        @media only screen and (max-width: 767px) {
          body#tax-consult section.info .top h2 {
            font-size: 23px;
            font-size: 2.3rem;
            padding: 0 0 0 12px; } }
    body#tax-consult section.info .info-box {
      max-width: 685px;
      width: 100%;
      margin: 0 auto;
      display: -webkit-flex;
      display: flex;
      -webkit-justify-content: space-between;
      justify-content: space-between; }
      @media only screen and (max-width: 767px) {
        body#tax-consult section.info .info-box {
          display: block;
          max-width: none; } }
      body#tax-consult section.info .info-box > .info-title {
        font-size: 2rem;
        line-height: 1.7;
        font-weight: 700;
        color: #122E81;
        margin-bottom: 17px; }
        @media only screen and (max-width: 767px) {
          body#tax-consult section.info .info-box > .info-title {
            text-align: center; } }
      body#tax-consult section.info .info-box .image {
        width: 45%;
        margin-left: -15px; }
        @media only screen and (max-width: 767px) {
          body#tax-consult section.info .info-box .image {
            margin-left: 0;
            width: 308px;
            margin: 0 auto; } }
      body#tax-consult section.info .info-box .content {
        width: 54.6%;
        margin: 68px 0 0;
        margin-right: -10px; }
        @media only screen and (max-width: 767px) {
          body#tax-consult section.info .info-box .content {
            margin: 25px 0 0;
            padding: 0 6px;
            width: 100%; } }
        body#tax-consult section.info .info-box .content__text {
          font-size: 22px;
          font-size: 2.2rem;
          line-height: 1.68;
          font-weight: bold;
          color: #122E81;
          display: inline;
          padding: 0 0 3px;
          background: linear-gradient(transparent 40%, #F5E596 0%); }
        body#tax-consult section.info .info-box .content .info-title {
          font-size: 2rem;
          line-height: 1.7;
          font-weight: 700;
          color: #122E81;
          margin-right: -30px; }
        body#tax-consult section.info .info-box .content .text {
          font-size: 1.6rem;
          color: #122E81;
          line-height: 1.7;
          font-weight: 700;
          margin: 16px 0 30px; }
          @media only screen and (max-width: 767px) {
            body#tax-consult section.info .info-box .content .text {
              margin-bottom: 10px; } }
        body#tax-consult section.info .info-box .content dl div {
          display: -webkit-flex;
          display: flex;
          border-top: 1px solid #034EA3;
          padding: 5px 0; }
          body#tax-consult section.info .info-box .content dl div dt {
            width: 54px;
            height: 54px;
            border-radius: 50%;
            background-color: #034EA3;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 1.6rem;
            line-height: 1.1875;
            color: #FFF;
            letter-spacing: 0.016em;
            font-weight: 700;
            flex: 0 0 54px; }
          body#tax-consult section.info .info-box .content dl div dd {
            margin-left: 21px;
            font-size: 1.6rem;
            line-height: 1.7;
            color: #122E81;
            font-weight: 700; }
        body#tax-consult section.info .info-box .content .footnote {
          font-size: 1.2rem;
          line-height: 1.6667;
          font-weight: 700;
          margin-top: 15px;
          color: #122E81; }
  body#tax-consult section.maturity-insurance {
    padding-top: 47px;
    padding-bottom: 57px; }
    @media only screen and (max-width: 767px) {
      body#tax-consult section.maturity-insurance {
        padding: 30px 16px 40px; } }
    @media only screen and (max-width: 767px) {
      body#tax-consult section.maturity-insurance .sec-title {
        margin-right: -10px; } }
    body#tax-consult section.maturity-insurance .note {
      font-size: 1.2rem;
      font-weight: 700;
      line-height: 1.6667;
      margin: -25px 0 20px;
      text-align: center;
      color: #122E81; }
      @media only screen and (max-width: 767px) {
        body#tax-consult section.maturity-insurance .note {
          margin: -15px 0 15px; } }
    body#tax-consult section.maturity-insurance .subsections {
      display: -webkit-flex;
      display: flex; }
      @media only screen and (max-width: 767px) {
        body#tax-consult section.maturity-insurance .subsections {
          display: block; }
          body#tax-consult section.maturity-insurance .subsections:last-child {
            margin-bottom: 0; } }
      body#tax-consult section.maturity-insurance .subsections > div {
        width: calc(50% - 5px);
        position: relative; }
        @media only screen and (max-width: 767px) {
          body#tax-consult section.maturity-insurance .subsections > div {
            width: 100%;
            margin: 0 0 14px; } }
        body#tax-consult section.maturity-insurance .subsections > div img {
          width: 100%; }
        body#tax-consult section.maturity-insurance .subsections > div .btn {
          position: absolute;
          left: 22px;
          right: 22px;
          bottom: 17px;
          height: 56px;
          max-width: none;
          width: calc(100% - 44px);
          border-radius: 28px;
          font-size: 3rem; }
        body#tax-consult section.maturity-insurance .subsections > div:first-child {
          margin-right: 10px; }
          body#tax-consult section.maturity-insurance .subsections > div:first-child .btn {
            font-size: 1.9rem; }

.detail {
  background-color: #F0F0F0;
  padding: 58px 0 26px; }
  @media only screen and (max-width: 767px) {
    .detail {
      padding: 18px 8px 16px; } }
  .detail__title {
    text-align: center;
    color: #003570;
    font-weight: bold;
    max-width: 680px;
    margin: 0 auto; }
    .detail__title small {
      display: block;
      font-size: 18px;
      font-size: 1.8rem;
      margin: 0 0 18px; }
      @media only screen and (max-width: 767px) {
        .detail__title small {
          line-height: 1.7222;
          margin: 0 0 10px; } }
    .detail__title .accordion-btn {
      border-top: 1px solid #fff;
      border-bottom: 1px solid #fff;
      padding: 9px 0;
      display: -webkit-flex;
      display: flex;
      -webkit-align-items: center;
      align-items: center;
      -webkit-justify-content: center;
      justify-content: center;
      cursor: pointer; }
      .detail__title .accordion-btn.is-active i:after {
        opacity: 0; }
    .detail__title span {
      font-size: 24px;
      font-size: 2.4rem;
      display: block; }
      @media only screen and (max-width: 767px) {
        .detail__title span {
          font-size: 19px;
          font-size: 1.9rem; } }
    .detail__title i {
      width: 33px;
      height: 33px;
      border-radius: 50%;
      background: #034EA3;
      position: relative;
      margin-left: 12px; }
      .detail__title i:before {
        content: "";
        width: 24px;
        height: 3px;
        display: block;
        background: #fff;
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
        -moz-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        -o-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        transition: .3s; }
      .detail__title i:after {
        content: "";
        width: 3px;
        height: 24px;
        display: block;
        background: #fff;
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
        -moz-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        -o-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        transition: .3s; }
  .detail .inner2 {
    max-width: 857px; }
  .detail .bg-white {
    background: #fff;
    padding: 30px 85px 34px;
    display: none; }
    @media only screen and (max-width: 767px) {
      .detail .bg-white {
        padding: 26px 10px 21px; } }
    .detail .bg-white .des {
      text-align: center;
      font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
      font-size: 16px;
      font-size: 1.6rem;
      line-height: 1.68;
      color: #3C3C3C; }
      @media only screen and (max-width: 767px) {
        .detail .bg-white .des {
          font-size: 14px;
          font-size: 1.4rem; } }
    .detail .bg-white .sub-title {
      font-size: 24px;
      font-size: 2.4rem;
      color: #003570;
      font-weight: bold;
      display: block;
      text-align: center;
      margin: 34px 0 25px; }
      @media only screen and (max-width: 767px) {
        .detail .bg-white .sub-title {
          font-size: 21px;
          font-size: 2.1rem; } }
    .detail .bg-white dl {
      max-width: 368px;
      margin: 0 auto; }
      .detail .bg-white dl div {
        display: -webkit-flex;
        display: flex;
        border-top: 1px solid #034EA3;
        padding: 5px 0; }
        .detail .bg-white dl div dt {
          width: 54px;
          height: 54px;
          border-radius: 50%;
          background-color: #034EA3;
          display: flex;
          align-items: center;
          justify-content: center;
          font-size: 1.6rem;
          line-height: 1.1875;
          color: #FFF;
          letter-spacing: 0.016em;
          font-weight: 700;
          flex: 0 0 54px; }
        .detail .bg-white dl div dd {
          margin-left: 21px;
          font-size: 1.6rem;
          line-height: 1.7;
          color: #122E81;
          font-weight: 700; }
    .detail .bg-white .footnote {
      font-size: 1.2rem;
      line-height: 1.6667;
      font-weight: 700;
      color: #122E81;
      max-width: 368px;
      margin: 12px auto 0; }

.mobile {
  padding-top: 56px;
  padding-bottom: 43px;
  overflow: Hidden; }
  @media only screen and (max-width: 767px) {
    .mobile {
      padding: 16px 10px 95px; } }
  .mobile .sec-title {
    margin-bottom: 54px; }
    @media only screen and (max-width: 767px) {
      .mobile .sec-title {
        width: calc(100% + 20px);
        position: relative;
        left: -10px;
        margin-bottom: 14px;
        font-size: 21px;
        font-size: 2.1rem; }
        .mobile .sec-title > span {
          display: inline-block;
          margin: 0 -3px; } }
  .mobile .container {
    display: -webkit-flex;
    display: flex; }
    @media only screen and (max-width: 767px) {
      .mobile .container {
        display: block; } }
    .mobile .container .left {
      flex: 0 0 322px;
      position: relative; }
      @media only screen and (max-width: 767px) {
        .mobile .container .left {
          width: 100%;
          margin: 0 auto 20px; } }
      @media only screen and (min-width: 768px) {
        .mobile .container .left ul {
          padding-top: 17px; } }
      .mobile .container .left ul li {
        background-color: #FFF;
        border-radius: 14px;
        margin-bottom: 6px;
        position: relative;
        height: 136px;
        font-size: 2rem;
        line-height: 1.7;
        font-weight: 700;
        display: flex;
        align-items: center;
        padding: 20px;
        color: #122E81;
        border: 4px solid #F8E5E5; }
        @media only screen and (max-width: 767px) {
          .mobile .container .left ul li {
            border-radius: 10px;
            margin-bottom: 7px;
            padding: 20px 20px;
            font-size: 1.9rem; } }
        .mobile .container .left ul li:last-of-type {
          border: none; }
          .mobile .container .left ul li:last-of-type:after {
            content: none; }
        .mobile .container .left ul li:after {
          content: '';
          width: 28px;
          height: 24px;
          display: inline-block;
          background: url(../images/tax/bubble-arrow.svg) center center/cover no-repeat;
          position: absolute;
          left: 50%;
          -webkit-transform: translate(-50%, 0);
          -moz-transform: translate(-50%, 0);
          -ms-transform: translate(-50%, 0);
          -o-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
          bottom: -24px;
          z-index: +1; }
        .mobile .container .left ul li:first-child:before {
          display: none; }
        .mobile .container .left ul li:last-child {
          margin-bottom: 0; }
          .mobile .container .left ul li:last-child:after {
            display: none; }
    .mobile .container .right {
      margin-left: -8px;
      flex: 1 1 auto;
      position: relative; }
      @media only screen and (max-width: 767px) {
        .mobile .container .right {
          padding: 0 0 0; } }

.faq {
  padding-top: 37px;
  padding-bottom: 35px; }
  @media only screen and (max-width: 767px) {
    .faq {
      padding: 0 0px 20px;
      margin-top: -46px; } }
  .faq .sec-title {
    color: #034EA3;
    margin-bottom: 18px; }
    @media only screen and (max-width: 767px) {
      .faq .sec-title {
        margin-right: 0; } }
  @media only screen and (max-width: 767px) {
    .faq ul {
      margin-bottom: 10px; } }
  .faq ul li {
    padding-left: 93px;
    min-height: 38px;
    color: #034EA3;
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.7;
    margin-bottom: 20px;
    position: relative;
    text-decoration: underline; }
    @media only screen and (max-width: 767px) {
      .faq ul li {
        padding-left: 65px;
        font-size: 16px;
        font-size: 1.6rem;
        margin-bottom: 20px; } }
    .faq ul li:last-child {
      margin-bottom: 0; }
    .faq ul li:before {
      content: '';
      width: 47px;
      height: 38px;
      background: url(../images/tax/q.svg) center/100% 100% no-repeat;
      position: absolute;
      top: 50%;
      left: 23px;
      transform: translateY(-50%); }
      @media only screen and (max-width: 767px) {
        .faq ul li:before {
          left: 0; } }

.precaution {
  padding-bottom: 13px; }
  @media only screen and (max-width: 767px) {
    .precaution {
      padding: 0 10px 16px; } }
  .precaution .sec-title {
    position: relative;
    color: #034EA3; }
    @media only screen and (max-width: 767px) {
      .precaution .sec-title {
        margin: 0 -20px 0;
        margin-bottom: 12px; } }
    .precaution .sec-title:before {
      content: '';
      width: 100%;
      height: 1px;
      background-color: #034EA3;
      position: absolute;
      left: 0;
      top: 50%; }
      @media only screen and (max-width: 767px) {
        .precaution .sec-title:before {
          left: 0; } }
    .precaution .sec-title span {
      background-color: #FFF;
      display: inline-block;
      padding: 0 20px;
      position: relative; }
      @media only screen and (max-width: 767px) {
        .precaution .sec-title span {
          padding: 0 5px; } }
  .precaution .frame-precaution {
    width: 100%;
    height: 400px;
    background-color: #F8F8F8;
    border-radius: 10px;
    padding: 17px 0 14px 24px;
    margin-bottom: 26px; }
    @media only screen and (max-width: 767px) {
      .precaution .frame-precaution {
        margin: 0 -10px 28px;
        width: calc(100% + 20px); } }
    .precaution .frame-precaution .frame-inner {
      width: 100%;
      height: 100%;
      overflow-y: scroll;
      padding-right: 10px;
      font-family: "Hiragino Sans", sans-serif;
      font-size: 14px;
      line-height: 1.7143;
      font-weight: 400; }
      .precaution .frame-precaution .frame-inner p a {
        text-decoration: underline;
        color: #034EA3; }
  .precaution form .agree-wrapper {
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    align-items: center;
    margin-bottom: 20px;
    transition: opacity 0.4s; }
    .precaution form .agree-wrapper.is-enabled {
      opacity: 1; }
    @media only screen and (max-width: 767px) {
      .precaution form .agree-wrapper {
        margin: 0 -10px 0;
        margin-bottom: 20px;
        align-items: flex-start; } }
    .precaution form .agree-wrapper .checkbox {
      width: 22px;
      height: 22px;
      border: 2px solid #034EA3;
      overflow: hidden;
      position: relative;
      cursor: pointer; }
      .precaution form .agree-wrapper .checkbox input {
        position: absolute;
        opacity: 0;
        width: 1px;
        height: 1px;
        top: 0;
        left: 0; }
        .precaution form .agree-wrapper .checkbox input ~ span {
          position: absolute;
          top: 0;
          left: 0; }
          .precaution form .agree-wrapper .checkbox input ~ span:before {
            content: '✓';
            font-size: 1.8rem;
            color: #122E81;
            opacity: 0;
            transition: opacity 0.3s;
            font-weight: 700; }
        .precaution form .agree-wrapper .checkbox input:checked ~ span:before {
          opacity: 1; }
    .precaution form .agree-wrapper small {
      display: block;
      width: 100%;
      padding-left: 28px;
      color: #122E81;
      font-size: 12px;
      font-size: 1.2rem;
      line-height: 1.6666;
      font-weight: bold;
      margin: 10px 0 0; }
    .precaution form .agree-wrapper > span {
      font-size: 1.6rem;
      color: #122E81;
      margin-left: 8px;
      font-weight: 700; }
      @media only screen and (max-width: 767px) {
        .precaution form .agree-wrapper > span {
          font-size: 14px;
          font-size: 1.4rem;
          line-height: 1.7;
          width: calc(100% - 30px);
          margin-top: -4px; } }
  .precaution form .btn {
    max-width: 395px;
    height: 56px;
    font-size: 2.6rem;
    margin: 0 auto 10px;
    opacity: 0.5;
    transition: opacity 0.4s;
    border-radius: 28px;
    pointer-events: none; }
    @media only screen and (max-width: 767px) {
      .precaution form .btn {
        margin: 0 -10px 0;
        font-size: 24px;
        font-size: 2.4rem;
        border-radius: 26px;
        height: 52px;
        width: calc(100% + 20px); } }
    .precaution form .btn.is-enabled {
      opacity: 1;
      pointer-events: auto; }

.back-link {
  margin-top: 26px; }

/* 2023 added */
.whm80p {
  max-width: 685px;
}
.mgb-conts {
  margin-bottom: 60px;
}
@media only screen and (max-width: 767px) {
  .whm80p {
    padding: 0px 14px;
  }
  .mgb-conts {
    margin-bottom: 40px;
  }
}
.healthcare-ttl .bg {
  background-color: #F7DCDC;
  padding-top: 44px;
  padding-bottom: 16px;
  
}
.d-flex-center2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  
          align-items: center !important;

          justify-content: center;
}

.mgb-hcttl {
 margin-bottom: 12px;
}

.healthcare-speech-l {
  max-width: 281px;
}
.healthcare-ttl-pict {
  max-width: 264px;
  margin-right: 40px;
}
@media only screen and (max-width: 767px) {
  .healthcare-speech-l {
    max-width: 240px;
  }
  .healthcare-ttl-pict {
    max-width: 100%;
    margin-right: 0px;
  }
}
.healthcare-ttl-words {
  font-size: 38px;
  font-weight: 700;
  margin-bottom: 32px;
  text-align: center;
  line-height: 1.7;
  color: #122E81; }
@media only screen and (max-width: 767px) {
  .healthcare-ttl-words {
      font-size: 24px;
  } 
}
.healthcare-subttl-words {
  font-size: 20px;
  font-weight: 700;
  /* text-align: center; */
  line-height: 1.7;
  color: #122E81; }
@media only screen and (max-width: 767px) {
    .healthcare-ttl-words {
      font-size: 24px;
      font-size: 2.4rem; } 
}
.yellow-mark {
  background:linear-gradient(transparent 10%, #F5E597 40%);
}
.dfc-hc {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center !important;
  justify-content: center;
}
.dfc-hcttl {
  width: 100%;
}
@media only screen and (max-width: 767px) {
  .dfc-hcttl {
    width: 100%;
  }
}
.dfc-hcttl2 {
  display: flex;
  align-items: center !important;
  justify-content: center;
}
@media only screen and (max-width: 767px) {
  .pict-center-sp {
    text-align: center;
  }
  .dfc-hcttl2 {
    display: inline-block;
  }
}
.healthcare-sec {
  display: flex;
  align-items: center !important;
  justify-content: center;
  padding-top: 18px;
  padding-bottom: 72px;
}
.text-center {
  text-align: center;
}
.healthcare-sec .title {
  font-size: 35px;
  font-weight: 700;
  margin-bottom: 20px;
  text-align: center;
  line-height: 1.7;
  color: #122E81;
}
.healthcare-sec .subtitle {
  font-size: 19px;
  font-weight: 700;
  margin-bottom: 40px;
  text-align: center;
  line-height: 1.7;
  color: #122E81;
}
.healthcare-sec .hc-icon {
  height: 66px;
  width: 66px;
}
.healthcare-sec .mgt {
  margin-top: 20px;
}
.healthcare-sec .indent {
  font-size: 12px;
  padding-left: 2.5em;
  text-indent: -2.5em;
  line-height: 1.7;
  text-align: left;
}
@media only screen and (max-width: 767px) {
  .healthcare-sec {
    padding-bottom: 38px;
  }
  .healthcare-sec .title {
    font-size: 24px;
  }
  .healthcare-sec .subtitle {
    text-align: left;
  }
}
.healthcare-risk {
  background-color: #F7DCDC;
  display: flex;
  align-items: center !important;
  justify-content: center;
  padding-top: 38px;
  padding-bottom: 72px;
}

.healthcare-risk .title {
  font-size: 35px;
  font-weight: 700;
  margin-bottom: 20px;
  text-align: center;
  line-height: 1.7;
  color: #122E81;
}
.healthcare-risk .mgb-speech {
  margin-bottom: 40px;
}
.healthcare-risk .text {
  font-size: 18px;
  color: #122E81;
  text-align: left;
  margin-top: 20px;
}
.healthcare-risk .subtitle {
  font-size: 19px;
  font-weight: 700;
  margin-bottom: 40px;
  text-align: center;
  line-height: 1.7;
  color: #122E81;
}
.healthcare-risk .hc-icon {
  height: 66px;
  width: 66px;
}
@media only screen and (max-width: 767px) {
  .healthcare-risk {
    padding-top: 20px;
    padding-bottom: 38px;
  }
  .healthcare-risk .title {
    font-size: 24px;
  }
  .healthcare-risk .mgb-speech {
    margin-bottom: 24px;
  }
  .healthcare-risk .text {
    font-size: 16px;
  }
  .healthcare-risk .subtitle {
    text-align: left;
  }
}
.healthcare-prevention {
  display: flex;
  align-items: center !important;
  justify-content: center;
  padding-top: 38px;
  padding-bottom: 72px;
}
.healthcare-prevention .title {
  font-size: 35px;
  font-weight: 700;
  margin-bottom: 20px;
  text-align: center;
  line-height: 1.7;
  color: #122E81;
}
.blue-box {
  border: 2px solid #064DA2;
  border-radius: 28px ;
  padding: 30px;
  margin-bottom: 40px;
}
.blue-box_inner {
  margin-bottom: 30px;
  display: flex;
  /* align-items: center !important; */
  justify-content: center;
}
.blue-box_inner-pict {
  font-size: 20px;
  font-weight: 700;
  color: #122E81;
  width: 40%;
}
.blue-box_inner-pictimg {
  padding: 0px 10px;
}
.blue-box_inner-textarea {
  font-size: 16px;
  line-height: 1.5em;
  padding-left: 20px;
  width: 60%;
  text-align: left;
}
.blue-box_inner-textpict {
  max-width: 73px;
  margin-right: 10px;
}
.blue-box_inner-textbox {
  margin-bottom: 16px ;
  display: flex;
  align-items: center !important;
}
.blue-box_btn {
  display: flex;
  align-items: center !important;
  justify-content: center;
}
.blue-box_subttl {
  font-size: 20px;
  font-weight: 700;
  color: #122E81;
  margin-bottom: 16px;
  display: flex;
  align-items: center !important;
  justify-content: center;
}
.blue-box_subttlimg {
  width: 22px;
}
.blue-box_subttlwords {
  margin: 0px 8px;
}
.blue-box_ttl {
  /* font-family; */
  margin-bottom: 16px;
  font-size: 48px;
  color: #0061D5;
  display: flex;
  align-items: center !important;
  justify-content: center;
}
.blue-box_ttlimg {
  height: 53px;
  width: 53px;
  margin-right: 16px;
}
.blue-box_words {
  margin-bottom: 16px;
}
.blue-box2 {
  border: 2px solid #064DA2;
  border-radius: 28px ;
  padding: 30px 60px;
}
.blue-box2_pict {
  width: 350px;
}
.blue-box2_inner-textarea {
  text-align: left;
  font-size: 16px;
  line-height: 1.5em;
  margin-bottom: 20px;
}
.blue-box2_inner {
  display: flex;
 justify-content: space-between;
 margin-bottom: 30px;
}
.blue-box2_inner .apple{
  width: 239px;
}
.blue-box2_inner .google{
  width: 269px;
}
.blue-box_inner-pictl {
  margin-bottom: 0px;
}
@media only screen and (max-width: 767px) {
  .blue-box {
    padding: 30px 16px;
  }
  .healthcare-prevention {
    padding-top: 20px;
    padding-bottom: 38px;
  }
  .healthcare-prevention .title {
    font-size: 24px;
  }
  .blue-box_inner {
    display: inline-block;
  }
  .blue-box_inner-pict {
    font-size: 22px;
  }
  .blue-box_inner-pict {
    width: 100%;
    margin-bottom: 20px;
    padding: 0px 40px;
  }
  .blue-box_inner-textarea {
    width: 100%;
    padding-left: 0px;
  }
  .blue-box_ttl {
  font-size: 30px;
  }
  .blue-box_ttlimg {
    height: 44px;
    width: 44px;
  }
  .blue-box2 {
    padding: 30px 16px;
  }
  .blue-box2_inner .apple{
    width: 150px;
  }
  .blue-box2_inner .google{
    width: 167px;
  }
  .blue-box_inner-pictl {
    margin-bottom: 20px;
  }
}
.mgb0 {
  margin-bottom: 0px !important;
}
.pd0 {
  padding: 0px !important;
}
.cu-po {
  cursor: pointer;
}
.player-back {
  background-color: #F7DCDC;
  width: 100%;
	min-width: 100px;
}
.editNo {
  font-size: 14px;
  margin-left: 20px;
}
.blue-box_inner-picttext {
  font-size: 16px;
  /* font-weight: 700; */
  color: #122E81;
  margin-bottom: 16px;
  text-align: left;
}
.reference-ttl {
  font-size: 12px;
  text-align: left;
}

.nomal-box {
  border: 2px solid #fff;
  background-color: #FFF;
  border-radius: 28px ;
  padding: 30px;
  margin-bottom: 40px;
}
.nomal-box_inner {
  margin-bottom: 30px;
  display: flex;
  /* align-items: center !important; */
  justify-content: center;
}
.nomal-box_inner-pict {
  font-size: 20px;
  font-weight: 700;
  color: #122E81;
  margin-bottom: 20px;
}
.nomal-box_inner-pictimg {
  padding: 0px 10px;
}
.nomal-box_inner-textarea {
  font-size: 16px;
  line-height: 1.5em;
  text-align: left;
  margin-bottom: 20px;
}
.nomal-box_inner-textpict {
  max-width: 73px;
  margin-right: 10px;
}
.nomal-box_inner-textbox {
  margin-bottom: 16px ;
  display: flex;
  align-items: center !important;
}
.nomal-box_btn {
  display: flex;
  align-items: center !important;
  justify-content: center;
}
.nomal-box_subttl {
  font-size: 20px;
  font-weight: 700;
  color: #122E81;
  margin-bottom: 16px;
  display: flex;
  align-items: center !important;
  justify-content: center;
}
.nomal-box_subttlimg {
  width: 22px;
}
.nomal-box_subttlwords {
  margin: 0px 8px;
}
.nomal-box_ttl {
  /* font-family; */
  margin-bottom: 16px;
  font-size: 48px;
  color: #0061D5;
  display: flex;
  align-items: center !important;
  justify-content: center;
}
.nomal-box_ttlimg {
  height: 53px;
  width: 53px;
  margin-right: 16px;
}
@media only screen and (max-width: 767px) {
  .nomal-box {
    padding: 30px 16px;
  }
  .healthcare-prevention {
    padding-top: 20px;
    padding-bottom: 38px;
  }
  .healthcare-prevention .title {
    font-size: 24px;
  }
  .nomal-box_inner {
    display: inline-block;
  }
  .nomal-box_inner-pict {
    font-size: 22px;
  }
  .nomal-box_inner-pict {
    width: 100%;
    margin-bottom: 20px;
    padding: 0px 40px;
  }
  .nomal-box_inner-textarea {
    width: 100%;
    padding-left: 0px;
  }
  .nomal-box_ttl {
  font-size: 30px;
  }
  .nomal-box_ttlimg {
    height: 44px;
    width: 44px;
  }
}

.mgb20 {
  margin-bottom: 20px;
}