@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; }

@font-face {
  font-family: 'こぶりなゴシック';
  src: url("../fonts/こぶりなゴシック StdN W3.otf") format("opentype");
  font-weight: 300; }

@font-face {
  font-family: 'こぶりなゴシック';
  src: url("../fonts/こぶりなゴシック StdN W6.otf") format("opentype");
  font-weight: 600; }

@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: "こぶりなゴシック", 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;
  transition: .3s; }
  a:hover {
    opacity: .8; }

.inner {
  max-width: 1040px;
  padding: 0 60px;
  margin: 0 auto; }
  @media only screen and (max-width: 767px) {
    .inner {
      padding: 0 20px; } }

.footer {
  background: #00A5E3;
  color: #fff;
  padding: 19px 0;
  font-feature-settings: "palt"; }
  @media only screen and (max-width: 767px) {
    .footer {
      padding: 10px 0; } }
  .footer .inner {
    position: relative;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center; }
    @media only screen and (max-width: 767px) {
      .footer .inner {
        -webkit-align-items: flex-start;
        align-items: flex-start; } }
  .footer .page-top {
    position: absolute;
    top: -19px;
    right: 60px;
    display: block;
    width: 32px;
    height: 32px;
    border-radius: 0 0 10px 10px;
    background: url(../images/common/bg.jpg) center center/cover no-repeat; }
    @media only screen and (max-width: 767px) {
      .footer .page-top {
        right: 20px;
        top: -19px;
        border-radius: 50%;
        width: 40px;
        height: 40px;
        background: #fff; } }
    .footer .page-top:before {
      content: "";
      display: inline-block;
      width: 13px;
      height: 13px;
      border-top: 3px solid #00A5E3;
      border-right: 3px solid #00A5E3;
      position: absolute;
      top: 60%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%) rotate(-45deg);
      -moz-transform: translate(-50%, -50%) rotate(-45deg);
      -ms-transform: translate(-50%, -50%) rotate(-45deg);
      -o-transform: translate(-50%, -50%) rotate(-45deg);
      transform: translate(-50%, -50%) rotate(-45deg); }
  .footer strong {
    display: block;
    padding: 6px 17px;
    border-left: 2px solid #fff;
    border-right: 2px solid #fff;
    width: 250px; }
    @media only screen and (max-width: 767px) {
      .footer strong {
        padding: 3px 0 0;
        border: none;
        width: 120px; } }
  .footer address {
    padding: 8px 18px;
    font-size: 13px;
    font-size: 1.3rem;
    border-right: 2px solid #fff;
    line-height: 1.5; }
    @media only screen and (max-width: 767px) {
      .footer address {
        padding: 0;
        font-size: 10px;
        font-size: 1rem;
        border: none;
        margin-left: -5px;
        -webkit-transform: scale(0.85);
        -moz-transform: scale(0.85);
        -ms-transform: scale(0.85);
        -o-transform: scale(0.85);
        transform: scale(0.85);
        line-height: 1.29; } }

@media all and (-ms-high-contrast: none) {
  .footer address {
    padding: 12px 18px 4px; } }

.header {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 114px;
  z-index: 99; }
  @media only screen and (max-width: 767px) {
    .header {
      height: 57px; } }
  .header:before {
    content: "";
    width: 100%;
    height: 7px;
    display: block;
    background: #00A5E3;
    position: absolute;
    top: 0;
    left: 0; }
    @media only screen and (max-width: 767px) {
      .header:before {
        height: 4px; } }
  .header .inner {
    position: relative;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
    -webkit-align-items: flex-end;
    align-items: flex-end; }
  .header .title {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 336px;
    height: 114px;
    padding: 24px 46px 18px;
    background: url(../images/common/title-bg.png) center center/cover no-repeat; }
    @media only screen and (max-width: 767px) {
      .header .title {
        left: 20px;
        width: 165px;
        height: 56px;
        padding: 11px 21px 0; } }
    .header .title .logo {
      width: 160px; }
      @media only screen and (max-width: 767px) {
        .header .title .logo {
          width: 80px; } }
  .header .gnav {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
    -webkit-align-items: center;
    align-items: center;
    margin-top: 21px; }
    @media only screen and (max-width: 767px) {
      .header .gnav {
        position: fixed;
        width: 100%;
        height: calc(100% - 57px);
        background: #fff;
        top: 57px;
        left: -100%;
        margin: 0;
        -webkit-flex-direction: column;
        flex-direction: column;
        -webkit-justify-content: center;
        justify-content: center;
        padding: 0 20px;
        transition: .6s;
        opacity: 0;
        visibility: hidden; } }
    @media only screen and (max-width: 767px) {
      .header .gnav.is-active {
        left: 0;
        opacity: 1;
        visibility: visible; } }
    .header .gnav ul {
      display: -webkit-flex;
      display: flex;
      border-right: 1px solid #00A5E3;
      margin-right: 18px; }
      @media only screen and (max-width: 767px) {
        .header .gnav ul {
          display: block;
          margin: 0;
          border-right: none;
          border-bottom: 1px solid #00A5E3;
          width: 100%; } }
      .header .gnav ul li {
        width: 125px;
        border-left: 1px solid #00A5E3; }
        @media only screen and (max-width: 767px) {
          .header .gnav ul li {
            width: 100%;
            margin: 0 0 0px;
            border-left: none;
            border-top: 1px solid #00A5E3; } }
        .header .gnav ul li a {
          display: block;
          font-size: 13px;
          font-size: 1.3rem;
          line-height: 1.4;
          text-align: center; }
          @media only screen and (max-width: 767px) {
            .header .gnav ul li a {
              font-size: 14px;
              font-size: 1.4rem;
              padding: 20px 0;
              width: 100%; } }
    .header .gnav .link-box {
      display: -webkit-flex;
      display: flex; }
      @media only screen and (max-width: 767px) {
        .header .gnav .link-box {
          margin-top: 50px; } }
      .header .gnav .link-box .left {
        margin-right: 5px; }
        .header .gnav .link-box .left .link-btn {
          display: block;
          border: 1px solid #00A5E3;
          border-radius: 3px;
          padding: 3px 4px 3px 18px;
          font-size: 11px;
          font-size: 1.1rem;
          width: 70px;
          position: relative; }
          .header .gnav .link-box .left .link-btn:nth-of-type(1) {
            letter-spacing: .5em;
            margin-bottom: 4px;
            padding-left: 19px;
            white-space: nowrap; }
            .header .gnav .link-box .left .link-btn:nth-of-type(1):before {
              content: "";
              width: 12px;
              height: 11px;
              display: inline-block;
              background: url(../images/common/icon-home.svg) center center/cover no-repeat;
              position: absolute;
              top: 3px;
              left: 3px; }
          .header .gnav .link-box .left .link-btn:nth-of-type(2):before {
            content: "";
            width: 11px;
            height: 11px;
            display: inline-block;
            background: url(../images/common/icon-link.svg) center center/cover no-repeat;
            position: absolute;
            top: 3px;
            left: 4px; }
      .header .gnav .link-box .btn-login {
        width: 68px;
        border-radius: 3px;
        color: #fff;
        font-size: 12px;
        font-size: 1.2rem;
        line-height: 1.2;
        padding: 6px 10px 6px 33px;
        background: linear-gradient(180deg, #24ABE0, #0272AE);
        display: block;
        position: relative; }
        .header .gnav .link-box .btn-login:before {
          content: "";
          width: 15px;
          height: 17px;
          display: inline-block;
          position: absolute;
          top: 50%;
          left: 11px;
          -webkit-transform: translate(0, -50%);
          -moz-transform: translate(0, -50%);
          -ms-transform: translate(0, -50%);
          -o-transform: translate(0, -50%);
          transform: translate(0, -50%);
          background: url(../images/common/icon-login.svg) center center/cover no-repeat; }
  .header .date {
    font-size: 12px;
    font-size: 1.2rem;
    letter-spacing: .05em;
    margin-top: 12px; }
    @media only screen and (max-width: 767px) {
      .header .date {
        margin-top: 15px;
        font-size: 10px;
        font-size: 1rem;
        letter-spacing: 0;
        margin-right: 43px; } }
  .header .hamburger {
    position: absolute;
    top: 15px;
    right: 20px;
    padding: 0;
    width: 30px;
    height: 28px; }
    .header .hamburger .hamburger-box {
      width: 30px;
      height: 28px; }
      .header .hamburger .hamburger-box .hamburger-inner {
        width: 30px;
        height: 5px;
        border-radius: 0;
        background: #00A5E3; }
        .header .hamburger .hamburger-box .hamburger-inner:before {
          width: 30px;
          height: 5px;
          border-radius: 0;
          background: #00A5E3;
          top: -11px; }
        .header .hamburger .hamburger-box .hamburger-inner:after {
          width: 30px;
          height: 5px;
          border-radius: 0;
          background: #00A5E3;
          bottom: -11px; }
    .header .hamburger.is-active .hamburger-box .hamburger-inner {
      background: transparent; }
      .header .hamburger.is-active .hamburger-box .hamburger-inner:before {
        top: 0; }
      .header .hamburger.is-active .hamburger-box .hamburger-inner:after {
        bottom: 0; }

@media all and (-ms-high-contrast: none) {
  .header .gnav .link-box .left .link-btn {
    padding: 6px 4px 0px 18px !important; }
  .header .gnav .link-box .btn-login {
    padding: 7px 10px 5px 33px !important; } }

.mv-sub {
  height: 210px;
  background: url(../images/common/mv-sub.jpg) center center/auto 100% no-repeat;
  overflow-x: hidden;
  position: relative; }
  @media only screen and (max-width: 767px) {
    .mv-sub {
      height: 105px; } }
  .mv-sub:after {
    content: "";
    width: 100%;
    height: 16px;
    display: block;
    position: absolute;
    left: 0;
    bottom: 0;
    background: rgba(0, 102, 169, 0.8); }
    @media only screen and (max-width: 767px) {
      .mv-sub:after {
        height: 7px; } }
  .mv-sub .inner {
    position: relative;
    height: 100%; }
  .mv-sub .mv-title {
    width: 935px;
    height: 96px;
    background: url(../images/common/mv-bar.png) center center/cover no-repeat;
    color: #fff;
    position: absolute;
    bottom: 0;
    left: 244px;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    padding: 0 88px 15px;
    font-weight: 600; }
    @media only screen and (max-width: 767px) {
      .mv-sub .mv-title {
        width: 467px;
        height: 48px;
        left: 117px;
        padding: 0 44px 6px; } }
    .mv-sub .mv-title i {
      width: 61px;
      display: block;
      margin-right: 16px; }
      @media only screen and (max-width: 767px) {
        .mv-sub .mv-title i {
          width: 30px;
          margin-right: 8px; } }
    .mv-sub .mv-title small {
      font-size: 17px;
      font-size: 1.7rem;
      display: inline-block;
      margin-right: 5px; }
    .mv-sub .mv-title .small {
      font-size: 12px;
      font-size: 1.2rem;
      line-height: 1.28; }
    .mv-sub .mv-title span {
      display: inline-block;
      font-size: 25px;
      font-size: 2.5rem;
      letter-spacing: .05em;
      margin-right: 24px; }
      @media only screen and (max-width: 767px) {
        .mv-sub .mv-title span {
          font-size: 12px;
          font-size: 1.2rem; } }

@media all and (-ms-high-contrast: none) {
  .mv-sub .mv-title span {
    padding-top: 7px; }
  .mv-sub .mv-title small {
    padding-top: 7px; }
  .head .head-title span {
    padding-top: 7px !important; }
  .head .head-title small {
    padding-top: 7px !important; } }

/* 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.about main .content {
  background: url(../images/common/bg.jpg) center center/cover no-repeat;
  padding: 50px 0; }
  @media only screen and (max-width: 767px) {
    body.about main .content {
      padding: 25px 0; } }
  body.about main .content .ttl03 {
    font-size: 22px;
    font-size: 2.2rem;
    position: relative;
    font-weight: 600; }
    @media only screen and (max-width: 767px) {
      body.about main .content .ttl03 {
        font-size: 17px;
        font-size: 1.7rem; } }
    body.about main .content .ttl03:after {
      content: "";
      width: calc(100% + 120px);
      height: 1px;
      background: #EB6EA5;
      position: absolute;
      bottom: -10px;
      left: -60px; }
      @media only screen and (max-width: 767px) {
        body.about main .content .ttl03:after {
          width: calc(100% + 40px);
          left: -20px; } }
  body.about main .content .text-img {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    margin-top: 24px;
    margin-bottom: 34px;
    position: relative;
    z-index: +1; }
    @media only screen and (max-width: 767px) {
      body.about main .content .text-img {
        display: block;
        margin-top: 15px;
        margin-bottom: 18px; } }
    @media only screen and (max-width: 767px) {
      body.about main .content .text-img .text {
        *zoom: 1; }
        body.about main .content .text-img .text:after {
          content: "";
          display: table;
          clear: both; } }
    body.about main .content .text-img .text::before {
      content: '';
      width: 246px;
      float: right;
      height: 42vw;
      max-height: 400px; }
      @media only screen and (max-width: 767px) {
        body.about main .content .text-img .text::before {
          width: 135px;
          height: 210px; } }
    body.about main .content .text-img .text p {
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 1.55;
      text-align: justify;
      border-bottom: 1px dashed #EB6EA5;
      padding: 0 0 20px;
      font-feature-settings: "palt"; }
      @media only screen and (max-width: 767px) {
        body.about main .content .text-img .text p {
          font-size: 11px;
          font-size: 1.1rem;
          line-height: 1.57;
          padding: 0 0 11px; } }
      body.about main .content .text-img .text p span {
        display: block;
        text-align: right; }
    body.about main .content .text-img .text .box {
      display: -webkit-flex;
      display: flex;
      font-size: 12px;
      font-size: 1.2rem;
      line-height: 1.7272;
      margin: 15px 0 0; }
      @media only screen and (max-width: 767px) {
        body.about main .content .text-img .text .box {
          flex-direction: column;
          align-items: center;
          font-feature-settings: "palt";
          margin: 14px 0 0; } }
      body.about main .content .text-img .text .box .left {
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: center;
        justify-content: center;
        -webkit-align-items: center;
        align-items: center;
        margin-right: 20px;
        width: 175px;
        height: 58px;
        padding-left: 5px;
        position: relative; }
        @media only screen and (max-width: 767px) {
          body.about main .content .text-img .text .box .left {
            font-size: 12px;
            font-size: 1.2rem;
            width: 100%;
            max-width: 285px;
            margin: 0 auto 8px auto;
            padding: 0 5px 0 8px;
            height: 26px; } }
        body.about main .content .text-img .text .box .left::before, body.about main .content .text-img .text .box .left::after {
          content: '';
          border: 1px solid #EB6EA5;
          display: block;
          width: 15px;
          height: 100%;
          top: 0;
          position: absolute; }
          @media only screen and (max-width: 767px) {
            body.about main .content .text-img .text .box .left::before, body.about main .content .text-img .text .box .left::after {
              width: 12px; } }
        body.about main .content .text-img .text .box .left::before {
          left: 0;
          border-right: none; }
        body.about main .content .text-img .text .box .left::after {
          right: 0;
          border-left: none; }
      @media only screen and (min-width: 768px) {
        body.about main .content .text-img .text .box .right.last {
          margin-left: 7px; } }
      @media only screen and (max-width: 767px) {
        body.about main .content .text-img .text .box .right {
          font-size: 11px;
          font-size: 1.1rem;
          width: 100%;
          max-width: 250px;
          line-height: 1.5; } }
    body.about main .content .text-img .img-box {
      width: 210px;
      position: absolute;
      top: -50px;
      right: 13px; }
      @media only screen and (max-width: 767px) {
        body.about main .content .text-img .img-box {
          width: 127px;
          top: -33px;
          right: 0; } }
      body.about main .content .text-img .img-box .img {
        box-shadow: 2px 2px 0 #898989; }
      body.about main .content .text-img .img-box .name {
        width: 132px;
        margin: 13px 0 0;
        margin-left: auto; }
        @media only screen and (max-width: 767px) {
          body.about main .content .text-img .img-box .name {
            width: 95px;
            margin: 6px 0 0;
            margin-left: auto; } }
        body.about main .content .text-img .img-box .name small {
          font-size: 12.4px;
          font-size: 1.24rem;
          line-height: 1.2;
          letter-spacing: 0.075em; }
          @media only screen and (max-width: 767px) {
            body.about main .content .text-img .img-box .name small {
              font-size: 10px;
              font-size: 1rem; } }
        body.about main .content .text-img .img-box .name strong {
          display: block;
          font-size: 18px;
          font-size: 1.8rem;
          letter-spacing: 0.6em;
          margin: 8px 0 0; }
          @media only screen and (max-width: 767px) {
            body.about main .content .text-img .img-box .name strong {
              font-size: 14px;
              font-size: 1.4rem;
              letter-spacing: .45em; } }
  body.about main .content .active {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    width: calc(100% - 13px); }
    @media only screen and (max-width: 767px) {
      body.about main .content .active {
        width: 100%;
        display: block; } }
    body.about main .content .active h4 {
      writing-mode: vertical-rl;
      padding: 28px;
      border-radius: 10px 0 0 10px;
      background: linear-gradient(90deg, #24ABE0, #0272AE);
      font-size: 14px;
      font-size: 1.4rem;
      letter-spacing: .15em;
      color: #fff;
      box-shadow: 2px 2px 0 #898989;
      font-weight: 600; }
      @media only screen and (max-width: 767px) {
        body.about main .content .active h4 {
          writing-mode: horizontal-tb;
          background: linear-gradient(180deg, #24ABE0, #0272AE);
          border-radius: 6px 6px 0 0;
          padding: 10px 25px;
          display: inline-block;
          font-size: 15px;
          font-size: 1.5rem;
          letter-spacing: .1em;
          position: relative; } }
    body.about main .content .active .box {
      background: #fff;
      box-shadow: 2px 2px 0 #898989;
      padding: 7px 26px; }
      @media only screen and (max-width: 767px) {
        body.about main .content .active .box {
          padding: 5px 10px 5px 8px;
          position: relative;
          z-index: +1; } }
      body.about main .content .active .box ul li {
        padding: 10px 0;
        border-bottom: 1px dashed #EB6EA5;
        line-height: 1.7272;
        text-align: justify; }
        @media only screen and (max-width: 767px) {
          body.about main .content .active .box ul li {
            padding: 5px 3px 2px;
            line-height: 1.7;
            font-feature-settings: "palt"; } }
        body.about main .content .active .box ul li:last-of-type {
          border: none; }
        body.about main .content .active .box ul li p {
          font-size: 12px;
          font-size: 1.2rem; }
          @media only screen and (max-width: 767px) {
            body.about main .content .active .box ul li p {
              font-size: 11px;
              font-size: 1.1rem; } }
        body.about main .content .active .box ul li .pink {
          color: #EB6EA5; }

@media all and (-ms-high-contrast: none) {
  body.about main .content .active h4 {
    height: 192px !important;
    white-space: nowrap;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    -o-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
    padding: 24px 18px 24px 30px; } }

body.guidance main .content {
  background: url(../images/common/bg.jpg) center center/cover no-repeat;
  padding: 50px 0; }
  @media only screen and (max-width: 767px) {
    body.guidance main .content {
      padding: 25px 0; } }
  body.guidance main .content .inner {
    position: relative; }
    @media only screen and (max-width: 767px) {
      body.guidance main .content .inner {
        *zoom: 1; }
        body.guidance main .content .inner:after {
          content: "";
          display: table;
          clear: both; } }
  body.guidance main .content .ttl03 {
    font-size: 22px;
    font-size: 2.2rem;
    position: relative;
    margin: 24px 0 20px;
    font-weight: 600; }
    @media only screen and (max-width: 767px) {
      body.guidance main .content .ttl03 {
        font-size: 17px;
        font-size: 1.7rem;
        margin: 15px 0 10px; } }
    body.guidance main .content .ttl03:after {
      content: "";
      width: calc(100% + 120px);
      height: 1px;
      background: #EB6EA5;
      position: absolute;
      bottom: -10px;
      left: -60px; }
      @media only screen and (max-width: 767px) {
        body.guidance main .content .ttl03:after {
          width: calc(100% + 40px);
          left: -20px;
          bottom: -5px; } }
  body.guidance main .content address {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.4; }
    @media only screen and (max-width: 767px) {
      body.guidance main .content address {
        font-size: 10px;
        font-size: 1rem; } }
  body.guidance main .content .tel {
    line-height: 1.4; }
    @media only screen and (max-width: 767px) {
      body.guidance main .content .tel {
        display: block; } }
    body.guidance main .content .tel small {
      font-size: 18px;
      font-size: 1.8rem;
      letter-spacing: .05em; }
      @media only screen and (max-width: 767px) {
        body.guidance main .content .tel small {
          font-size: 10px;
          font-size: 1rem; } }
    body.guidance main .content .tel span {
      font-size: 27px;
      font-size: 2.7rem;
      letter-spacing: .05em; }
      @media only screen and (max-width: 767px) {
        body.guidance main .content .tel span {
          font-size: 20px;
          font-size: 2rem; } }
  body.guidance main .content .img-list {
    width: 362px;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    margin: 18px 0 22px;
    margin-left: -60px;
    position: relative;
    z-index: +1; }
    @media only screen and (max-width: 767px) {
      body.guidance main .content .img-list {
        width: 88px;
        display: block;
        margin-left: 0;
        float: left;
        margin-right: 10px;
        margin-bottom: 8px; } }
    body.guidance main .content .img-list li {
      width: 48.9%;
      text-align: right; }
      @media only screen and (max-width: 767px) {
        body.guidance main .content .img-list li {
          width: 100%;
          margin-bottom: 7px; } }
      body.guidance main .content .img-list li small {
        display: inline-block;
        margin-top: 6px;
        font-size: 10px;
        font-size: 1rem; }
        @media only screen and (max-width: 767px) {
          body.guidance main .content .img-list li small {
            margin-top: 3px; } }
  body.guidance main .content .bg-img {
    position: absolute;
    top: -10px;
    right: 0;
    height: 483px;
    width: auto; }
    @media only screen and (max-width: 767px) {
      body.guidance main .content .bg-img {
        height: 200px;
        right: 10px;
        top: 65px; } }
    body.guidance main .content .bg-img img {
      max-height: 100%; }
  body.guidance main .content .box-link {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px;
    width: 100%;
    max-width: 840px;
    margin: 0 auto 40px; }
    @media only screen and (max-width: 767px) {
      body.guidance main .content .box-link {
        gap: 10px;
        margin-bottom: 30px; } }
    body.guidance main .content .box-link__item {
      width: 100%;
      display: flex;
      justify-content: center;
      align-items: center;
      height: 58px;
      border-radius: 5px;
      font-size: 18px;
      padding-right: 20px;
      position: relative;
      color: #fff;
      font-feature-settings: "palt"; }
      @media only screen and (max-width: 935px) {
        body.guidance main .content .box-link__item {
          font-size: 16px;
          height: 40px;
          padding-right: 10px; } }
      @media only screen and (max-width: 767px) {
        body.guidance main .content .box-link__item {
          font-size: 13px; } }
      body.guidance main .content .box-link__item:after {
        content: '';
        display: block;
        background-image: url("../images/top/ico_arrow_white.svg");
        background-size: contain;
        background-position: center center;
        background-repeat: no-repeat;
        width: 16px;
        height: 24px;
        position: absolute;
        right: 16px;
        top: 50%;
        transform: translateY(-50%); }
        @media only screen and (max-width: 935px) {
          body.guidance main .content .box-link__item:after {
            height: 13px;
            right: 3px; } }
      body.guidance main .content .box-link__item:before {
        content: '';
        display: block;
        background-size: contain;
        background-position: center center;
        background-repeat: no-repeat;
        width: 34px;
        height: 45px;
        position: absolute;
        right: 70px;
        top: calc(100% - 30px); }
        @media only screen and (max-width: 935px) {
          body.guidance main .content .box-link__item:before {
            width: 20px;
            height: 24px;
            top: calc(100% - 4px); } }
        @media only screen and (max-width: 767px) {
          body.guidance main .content .box-link__item:before {
            right: 10px; } }
      body.guidance main .content .box-link__item.download {
        background: linear-gradient(to bottom, #f6bcc3, #e50065); }
        body.guidance main .content .box-link__item.download:before {
          background-image: url("../images/top/ico_hand_pink.svg"); }
      body.guidance main .content .box-link__item.yoyaku {
        background: linear-gradient(to bottom, #00a4e3, #0071b2); }
        body.guidance main .content .box-link__item.yoyaku:before {
          background-image: url("../images/top/ico_hand_blue.svg"); }
  body.guidance main .content .box-box {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between; }
    @media only screen and (max-width: 767px) {
      body.guidance main .content .box-box {
        position: relative;
        margin-top: 155px;
        width: 100%; } }
    body.guidance main .content .box-box .info-list {
      width: 30%; }
      @media only screen and (max-width: 767px) {
        body.guidance main .content .box-box .info-list {
          width: 100%;
          display: -webkit-flex;
          display: flex;
          -webkit-flex-wrap: wrap;
          flex-wrap: wrap;
          -webkit-justify-content: space-between;
          justify-content: space-between; } }
      body.guidance main .content .box-box .info-list li {
        margin: 0 0 14px;
        border: 8px 0 0 8px;
        display: -webkit-flex;
        display: flex; }
        @media only screen and (max-width: 767px) {
          body.guidance main .content .box-box .info-list li {
            width: 49%;
            margin: 0 0 6px; } }
        body.guidance main .content .box-box .info-list li h4 {
          writing-mode: vertical-rl;
          text-align: center;
          padding: 9px 12px;
          height: 74px;
          border-radius: 10px 0 0 10px;
          background: linear-gradient(90deg, #24ABE0, #0272AE);
          font-size: 14px;
          font-size: 1.4rem;
          letter-spacing: 0;
          color: #fff;
          box-shadow: 2px 2px 0 #898989;
          font-weight: 600; }
          @media only screen and (max-width: 767px) {
            body.guidance main .content .box-box .info-list li h4 {
              border-radius: 6px 0px 0 6px;
              padding: 2px 6px;
              height: 60px;
              display: inline-block;
              font-size: 12px;
              font-size: 1.2rem;
              letter-spacing: .1em;
              position: relative; } }
        body.guidance main .content .box-box .info-list li .box {
          background: #fff;
          box-shadow: 2px 2px 0 #898989;
          width: 100%;
          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; }
          @media only screen and (max-width: 767px) {
            body.guidance main .content .box-box .info-list li .box {
              text-align: center;
              position: relative;
              padding: 10px; } }
          body.guidance main .content .box-box .info-list li .box span {
            font-size: 16px;
            font-size: 1.6rem;
            line-height: 1.2;
            display: inline-block; }
            @media only screen and (max-width: 767px) {
              body.guidance main .content .box-box .info-list li .box span {
                font-size: 12px;
                font-size: 1.2rem;
                text-align: right; } }
            body.guidance main .content .box-box .info-list li .box span:nth-of-type(2) {
              margin-top: 6px; }
          body.guidance main .content .box-box .info-list li .box small {
            font-size: 12px;
            font-size: 1.2rem;
            line-height: 1.6; }
            @media only screen and (max-width: 767px) {
              body.guidance main .content .box-box .info-list li .box small {
                font-size: 12px;
                font-size: 1.2rem; } }
    body.guidance main .content .box-box .info-faq {
      border: 2px solid #eb6ea5;
      border-radius: 4px;
      background: #fff;
      width: 100%;
      padding: 6px;
      position: relative; }
      body.guidance main .content .box-box .info-faq:before {
        content: '';
        display: block;
        background-image: url("../images/guidance/img_faq.png");
        background-size: contain;
        background-position: center bottom;
        background-repeat: no-repeat;
        width: 61px;
        height: 92px;
        position: absolute;
        bottom: 0;
        left: 8px; }
        @media only screen and (max-width: 767px) {
          body.guidance main .content .box-box .info-faq:before {
            width: 46px;
            height: 68px;
            left: -10px; } }
      body.guidance main .content .box-box .info-faq__link {
        margin: 0 0 0 auto;
        width: calc(100% - 68px);
        background: linear-gradient(180deg, #f7c9dd, #e85298);
        position: relative;
        height: 56px;
        display: flex;
        align-items: center;
        padding-left: 20px;
        border-radius: 4px; }
        @media only screen and (max-width: 767px) {
          body.guidance main .content .box-box .info-faq__link {
            width: calc(100% - 40px);
            padding-left: 12px;
            height: 100%; } }
        body.guidance main .content .box-box .info-faq__link:after {
          content: '';
          display: block;
          background-image: url("../images/guidance/arrow.svg");
          background-size: contain;
          background-position: center center;
          background-repeat: no-repeat;
          width: 15px;
          height: 23px;
          position: absolute;
          right: 10px;
          top: calc(50% - 12px); }
          @media only screen and (max-width: 767px) {
            body.guidance main .content .box-box .info-faq__link:after {
              width: 8px;
              right: 8px; } }
        body.guidance main .content .box-box .info-faq__link span {
          font-size: 18px;
          font-weight: bold;
          color: #fff; }
          @media only screen and (max-width: 767px) {
            body.guidance main .content .box-box .info-faq__link span {
              font-size: 14px;
              line-height: 1.3; } }
    body.guidance main .content .box-box .map-area {
      width: 66.42%;
      display: -webkit-flex;
      display: flex; }
      body.guidance main .content .box-box .map-area h4 {
        writing-mode: vertical-rl;
        text-align: center;
        padding: 9px 12px;
        height: 122px;
        border-radius: 10px 0 0 10px;
        background: linear-gradient(90deg, #24ABE0, #0272AE);
        font-size: 14px;
        font-size: 1.4rem;
        letter-spacing: 0;
        color: #fff;
        box-shadow: 2px 2px 0 #898989;
        font-weight: 600; }
        @media only screen and (max-width: 767px) {
          body.guidance main .content .box-box .map-area h4 {
            writing-mode: horizontal-tb;
            background: linear-gradient(180deg, #24ABE0, #0272AE);
            border-radius: 6px 6px 0 0;
            padding: 10px 25px;
            display: inline-block;
            font-size: 15px;
            font-size: 1.5rem;
            letter-spacing: .1em;
            position: relative; } }
      body.guidance main .content .box-box .map-area .box {
        background: #fff;
        padding: 10px 10px 10px 0;
        display: -webkit-flex;
        display: flex; }
        body.guidance main .content .box-box .map-area .box .text {
          padding: 20px;
          width: 138px;
          text-align: center; }
          body.guidance main .content .box-box .map-area .box .text strong {
            text-align: center;
            display: block;
            display: -webkit-flex;
            display: flex;
            -webkit-justify-content: center;
            justify-content: center;
            -webkit-align-items: center;
            align-items: center;
            border: 2px dotted #0066A9;
            border-radius: 6px;
            height: 50px;
            font-size: 14px;
            font-size: 1.4rem;
            line-height: 1.2;
            color: #0066A9;
            margin: 0 0 10px; }
          body.guidance main .content .box-box .map-area .box .text p {
            font-size: 13px;
            font-size: 1.3rem;
            line-height: 1.3;
            margin: 0 0 18px;
            text-align: left;
            display: inline-block; }
            body.guidance main .content .box-box .map-area .box .text p img {
              display: inline-block;
              width: 35px; }
            body.guidance main .content .box-box .map-area .box .text p span {
              display: inline-block;
              margin-left: 5px; }
        body.guidance main .content .box-box .map-area .box .map {
          width: calc(100% - 138px); }
  body.guidance main .content .map-area {
    width: 66.42%;
    display: -webkit-flex;
    display: flex; }
    @media only screen and (max-width: 767px) {
      body.guidance main .content .map-area {
        width: 100%; } }
    body.guidance main .content .map-area h4 {
      writing-mode: vertical-rl;
      text-align: center;
      padding: 9px 12px;
      height: 122px;
      border-radius: 10px 0 0 10px;
      background: linear-gradient(90deg, #24ABE0, #0272AE);
      font-size: 14px;
      font-size: 1.4rem;
      letter-spacing: 0;
      color: #fff;
      box-shadow: 2px 2px 0 #898989; }
      @media only screen and (max-width: 767px) {
        body.guidance main .content .map-area h4 {
          border-radius: 6px 0 0 6px;
          padding: 7px 7px;
          height: 80px;
          display: inline-block;
          font-size: 12px;
          font-size: 1.2rem;
          letter-spacing: 0;
          position: relative; } }
    body.guidance main .content .map-area .box {
      background: #fff;
      padding: 10px 10px 10px 0;
      display: -webkit-flex;
      display: flex; }
      @media only screen and (max-width: 767px) {
        body.guidance main .content .map-area .box {
          position: relative;
          box-shadow: 2px 2px 0 #898989;
          display: block;
          padding: 10px 6px 6px; } }
      body.guidance main .content .map-area .box .text {
        padding: 20px;
        width: 138px;
        text-align: center; }
        @media only screen and (max-width: 767px) {
          body.guidance main .content .map-area .box .text {
            width: 100%;
            display: -webkit-flex;
            display: flex;
            -webkit-justify-content: space-between;
            justify-content: space-between;
            padding: 0 6px; } }
        @media only screen and (max-width: 767px) {
          body.guidance main .content .map-area .box .text .text-text {
            width: 48%; } }
        body.guidance main .content .map-area .box .text strong {
          text-align: center;
          display: block;
          display: -webkit-flex;
          display: flex;
          -webkit-justify-content: center;
          justify-content: center;
          -webkit-align-items: center;
          align-items: center;
          border: 2px dotted #0066A9;
          border-radius: 6px;
          height: 50px;
          font-size: 14px;
          font-size: 1.4rem;
          line-height: 1.2;
          color: #0066A9;
          margin: 0 0 10px; }
          @media only screen and (max-width: 767px) {
            body.guidance main .content .map-area .box .text strong {
              height: 25px;
              border: 1px dotted #0066A9;
              border-radius: 3px;
              margin: 0 0 8px; } }
        body.guidance main .content .map-area .box .text p {
          font-size: 13px;
          font-size: 1.3rem;
          line-height: 1.3;
          margin: 0 0 18px;
          text-align: left;
          display: inline-block;
          font-feature-settings: "palt"; }
          @media only screen and (max-width: 767px) {
            body.guidance main .content .map-area .box .text p {
              font-size: 12px;
              font-size: 1.2rem;
              line-height: 1.2;
              margin: 0 0 9px; } }
          body.guidance main .content .map-area .box .text p img {
            display: inline-block;
            width: 35px; }
            @media only screen and (max-width: 767px) {
              body.guidance main .content .map-area .box .text p img {
                width: 27px;
                vertical-align: middle; } }
          body.guidance main .content .map-area .box .text p span {
            display: inline-block;
            margin-left: 5px; }
      body.guidance main .content .map-area .box .map {
        width: calc(100% - 138px); }
        @media only screen and (max-width: 767px) {
          body.guidance main .content .map-area .box .map {
            width: 100%; } }
  body.guidance main .content .time-list {
    background: #fff;
    padding: 0 60px;
    display: -webkit-flex;
    display: flex;
    margin: 0 -60px;
    font-weight: 600; }
    @media only screen and (max-width: 767px) {
      body.guidance main .content .time-list {
        margin: 0;
        padding: 0; } }
    body.guidance main .content .time-list li {
      width: 110px;
      height: 32px;
      font-size: 11px;
      font-size: 1.1rem;
      background: #B5B5B6;
      color: #fff;
      display: -webkit-flex;
      display: flex;
      -webkit-justify-content: center;
      justify-content: center;
      -webkit-align-items: center;
      align-items: center;
      border-left: 2px solid #fff;
      font-feature-settings: "palt"; }
      @media only screen and (max-width: 767px) {
        body.guidance main .content .time-list li {
          width: 25%;
          height: 25px;
          font-size: 10px;
          font-size: 1rem; } }
      @media only screen and (max-width: 767px) {
        body.guidance main .content .time-list li:nth-of-type(1) {
          border-left: none; } }
      body.guidance main .content .time-list li span {
        line-height: 14px;
        vertical-align: middle; }
        body.guidance main .content .time-list li span:after {
          content: "";
          width: 14px;
          height: 14px;
          display: inline-block;
          margin: -2px 0 0 6px;
          position: relative;
          vertical-align: middle;
          background: url(../images/guidance/batsu.svg) center center/cover no-repeat; }
          @media only screen and (max-width: 767px) {
            body.guidance main .content .time-list li span:after {
              width: 11px;
              height: 11px;
              margin: 0 0 2px 5px; } }
      body.guidance main .content .time-list li.ok {
        background: #EE87B4; }
        body.guidance main .content .time-list li.ok span:after {
          width: 15px;
          height: 15px;
          background: url(../images/guidance/maru.svg) center center/cover no-repeat; }
          @media only screen and (max-width: 767px) {
            body.guidance main .content .time-list li.ok span:after {
              width: 12px;
              height: 12px;
              margin: 0 0 2px 5px; } }
  body.guidance main .content .title {
    font-feature-settings: "palt";
    margin: 25px 0 15px;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center; }
    @media only screen and (max-width: 767px) {
      body.guidance main .content .title {
        margin: 18px 0 10px; } }
    body.guidance main .content .title h3 {
      font-size: 22px;
      font-size: 2.2rem;
      margin-right: 14px;
      font-weight: 600; }
      @media only screen and (max-width: 767px) {
        body.guidance main .content .title h3 {
          font-size: 15px;
          font-size: 1.5rem; } }
    body.guidance main .content .title small {
      font-size: 12px;
      font-size: 1.2rem;
      line-height: 1.2; }
  body.guidance main .content .detail-box {
    background: #E7EFE9;
    box-shadow: 2px 2px 0 #898989;
    margin: 16px 0 0; }
    @media only screen and (max-width: 767px) {
      body.guidance main .content .detail-box {
        margin: 6px 0 0; } }
    body.guidance main .content .detail-box h4 {
      padding: 14px 42px;
      background: #008B9C;
      color: #fff;
      font-size: 21px;
      font-size: 2.1rem;
      font-weight: 600; }
      @media only screen and (max-width: 767px) {
        body.guidance main .content .detail-box h4 {
          font-size: 13px;
          font-size: 1.3rem;
          padding: 10px 12px; } }
    body.guidance main .content .detail-box .box {
      padding: 18px 42px 25px; }
      @media only screen and (max-width: 767px) {
        body.guidance main .content .detail-box .box {
          padding: 10px 12px 12px; } }
      body.guidance main .content .detail-box .box .text-img {
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: space-between;
        justify-content: space-between; }
        body.guidance main .content .detail-box .box .text-img .text {
          width: calc(100% - 215px); }
          @media only screen and (max-width: 767px) {
            body.guidance main .content .detail-box .box .text-img .text {
              width: calc(100% - 100px); } }
          body.guidance main .content .detail-box .box .text-img .text ul li {
            display: -webkit-flex;
            display: flex;
            -webkit-justify-content: space-between;
            justify-content: space-between;
            -webkit-align-items: center;
            align-items: center;
            margin: 0 0 12px;
            font-feature-settings: "palt"; }
            @media only screen and (max-width: 767px) {
              body.guidance main .content .detail-box .box .text-img .text ul li {
                margin: 0 0 5px; } }
            body.guidance main .content .detail-box .box .text-img .text ul li span {
              display: block;
              width: 58px;
              height: 58px;
              background: #fff;
              border-radius: 8px;
              box-shadow: 2px 2px 0 #A0B0A7;
              display: -webkit-flex;
              display: flex;
              -webkit-align-items: center;
              align-items: center;
              -webkit-justify-content: center;
              justify-content: center;
              font-size: 13px;
              font-size: 1.3rem;
              color: #008B9C;
              line-height: 1.2;
              font-weight: 600; }
              @media only screen and (max-width: 767px) {
                body.guidance main .content .detail-box .box .text-img .text ul li span {
                  width: 37px;
                  height: 37px;
                  border-radius: 4px;
                  font-size: 10px;
                  font-size: 1rem;
                  box-shadow: 1px 1px 0 #A0B0A7; } }
            body.guidance main .content .detail-box .box .text-img .text ul li p {
              width: calc(100% - 75px);
              font-size: 16px;
              font-size: 1.6rem;
              line-height: 1.5; }
              @media only screen and (max-width: 767px) {
                body.guidance main .content .detail-box .box .text-img .text ul li p {
                  width: calc(100% - 46px);
                  font-size: 10px;
                  font-size: 1rem; } }
              body.guidance main .content .detail-box .box .text-img .text ul li p small {
                font-size: 15px;
                font-size: 1.5rem;
                display: block; }
                @media only screen and (max-width: 767px) {
                  body.guidance main .content .detail-box .box .text-img .text ul li p small {
                    font-size: 10px;
                    font-size: 1rem; } }
              body.guidance main .content .detail-box .box .text-img .text ul li p .tel {
                font-size: 18px;
                font-size: 1.8rem;
                letter-spacing: .05em; }
                @media only screen and (max-width: 767px) {
                  body.guidance main .content .detail-box .box .text-img .text ul li p .tel {
                    font-size: 10px;
                    font-size: 1rem; } }
                body.guidance main .content .detail-box .box .text-img .text ul li p .tel strong {
                  font-size: 27px;
                  font-size: 2.7rem;
                  line-height: 1.2; }
                  @media only screen and (max-width: 767px) {
                    body.guidance main .content .detail-box .box .text-img .text ul li p .tel strong {
                      font-size: 20px;
                      font-size: 2rem; } }
            @media only screen and (max-width: 767px) {
              body.guidance main .content .detail-box .box .text-img .text ul li:nth-of-type(2) {
                -webkit-align-items: flex-start;
                align-items: flex-start; } }
        body.guidance main .content .detail-box .box .text-img .img {
          width: 280px;
          margin-top: -57px;
          margin-right: -24px; }
          @media only screen and (max-width: 767px) {
            body.guidance main .content .detail-box .box .text-img .img {
              width: 140px;
              margin-top: -10px;
              margin-right: -12px; } }
      body.guidance main .content .detail-box .box .link-box {
        max-width: 624px;
        background: #fff;
        border-radius: 15px;
        height: 77px;
        margin: 18px auto 0;
        padding: 7px;
        display: -webkit-flex;
        display: flex;
        font-weight: 600; }
        @media only screen and (max-width: 767px) {
          body.guidance main .content .detail-box .box .link-box {
            border-radius: 7px;
            padding: 3px;
            height: 53px;
            margin: 0 auto 0; } }
        body.guidance main .content .detail-box .box .link-box p {
          display: -webkit-flex;
          display: flex;
          -webkit-align-items: center;
          align-items: center;
          font-size: 11px;
          font-size: 1.1rem;
          line-height: 1.545;
          width: 48%;
          padding: 0 14px;
          color: #008B9C; }
          @media only screen and (max-width: 767px) {
            body.guidance main .content .detail-box .box .link-box p {
              font-size: 10px;
              font-size: 1rem;
              line-height: 1.3;
              padding: 0 3px; } }
        body.guidance main .content .detail-box .box .link-box a {
          width: 52%;
          border-radius: 8px;
          color: #fff;
          display: -webkit-flex;
          display: flex;
          -webkit-align-items: center;
          align-items: center;
          -webkit-justify-content: center;
          justify-content: center;
          background: linear-gradient(180deg, #26B3CE, #0195A6);
          text-align: center;
          font-size: 16px;
          font-size: 1.6rem;
          line-height: 1.34375;
          position: relative; }
          @media only screen and (max-width: 767px) {
            body.guidance main .content .detail-box .box .link-box a {
              font-size: 10px;
              font-size: 1rem;
              line-height: 1.3;
              border-radius: 5px;
              padding-right: 20px; } }
          body.guidance main .content .detail-box .box .link-box a:after {
            content: "";
            width: 12px;
            height: 12px;
            border-top: 3px solid #fff;
            border-right: 3px solid #fff;
            display: block;
            position: absolute;
            top: 50%;
            right: 20px;
            -webkit-transform: translate(0, -50%) rotate(45deg);
            -moz-transform: translate(0, -50%) rotate(45deg);
            -ms-transform: translate(0, -50%) rotate(45deg);
            -o-transform: translate(0, -50%) rotate(45deg);
            transform: translate(0, -50%) rotate(45deg); }
            @media only screen and (max-width: 767px) {
              body.guidance main .content .detail-box .box .link-box a:after {
                width: 10px;
                height: 10px;
                right: 11px; } }
    body.guidance main .content .detail-box.purple h4 {
      background: #6D3B85; }
    body.guidance main .content .detail-box.purple .box {
      background: #E8E3F1; }
      @media only screen and (max-width: 767px) {
        body.guidance main .content .detail-box.purple .box .text-img .text {
          width: 100%; } }
      body.guidance main .content .detail-box.purple .box .text-img .text ul li span {
        color: #6D3B85;
        box-shadow: 2px 2px 0 #A59CB2; }
      body.guidance main .content .detail-box.purple .box .link-box p {
        color: #6D3B85; }
      body.guidance main .content .detail-box.purple .box .link-box a {
        background: linear-gradient(180deg, #9E85B8, #764F90); }
  body.guidance main .content.content02 {
    padding-top: 1px; }

body.guidance main .head {
  height: 106px;
  overflow-x: hidden;
  position: relative; }
  @media only screen and (max-width: 767px) {
    body.guidance main .head {
      height: 53px; } }
  body.guidance main .head:after {
    content: "";
    width: 100%;
    height: 16px;
    display: block;
    position: absolute;
    left: 0;
    bottom: 0;
    background: rgba(0, 102, 169, 0.8); }
    @media only screen and (max-width: 767px) {
      body.guidance main .head:after {
        height: 7px; } }
  body.guidance main .head .inner {
    position: relative;
    height: 100%; }
  body.guidance main .head .head-title {
    width: 935px;
    height: 96px;
    background: url(../images/common/mv-bar.png) center center/cover no-repeat;
    color: #fff;
    position: absolute;
    bottom: 0;
    left: 244px;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    padding: 0 88px 15px; }
    @media only screen and (max-width: 767px) {
      body.guidance main .head .head-title {
        width: 467px;
        height: 48px;
        left: 117px;
        padding: 0 44px 6px; } }
    body.guidance main .head .head-title i {
      width: 61px;
      display: block;
      margin-right: 16px; }
      @media only screen and (max-width: 767px) {
        body.guidance main .head .head-title i {
          width: 30px;
          margin-right: 8px; } }
    body.guidance main .head .head-title span {
      display: inline-block;
      font-size: 25px;
      font-size: 2.5rem;
      letter-spacing: .05em; }
      @media only screen and (max-width: 767px) {
        body.guidance main .head .head-title span {
          font-size: 12px;
          font-size: 1.2rem; } }

@media all and (-ms-high-contrast: none) {
  body.guidance main .content .time-list li {
    padding-top: 5px !important; }
  body.guidance main .content .box-box .info-list li h4 {
    white-space: nowrap;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    -o-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
    width: 38px; }
  body.guidance main .content .box-box .map-area h4 {
    white-space: nowrap;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    -o-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
    width: 60px;
    padding: 9px 15px 9px 24px !important; }
  body.guidance main .content .detail-box .box .link-box a {
    padding-top: 6px; }
  body.guidance main .content .detail-box h4 {
    padding: 18px 42px 10px; } }

body.index main {
  margin-top: 114px; }
  @media only screen and (max-width: 767px) {
    body.index main {
      margin-top: 57px; } }
  body.index main .mv {
    height: 418px;
    background: url(../images/top/mv.jpg) center left/cover no-repeat;
    position: relative;
    overflow: hidden; }
    @media only screen and (max-width: 767px) {
      body.index main .mv {
        height: 146px; } }
    body.index main .mv:after {
      content: "";
      width: 100%;
      height: 64px;
      background: rgba(0, 102, 169, 0.8);
      display: block;
      position: absolute;
      left: 0;
      bottom: 0; }
      @media only screen and (max-width: 767px) {
        body.index main .mv:after {
          height: 22px; } }
    body.index main .mv .inner {
      position: relative; }
    body.index main .mv .catch {
      font-size: 25px;
      font-size: 2.5rem;
      letter-spacing: .25em;
      line-height: 1.545;
      display: inline-block;
      text-shadow: 1px 1px 8px #fff;
      position: absolute;
      top: 55px;
      left: 90px;
      z-index: +1; }
      @media only screen and (max-width: 767px) {
        body.index main .mv .catch {
          font-size: 13px;
          font-size: 1.3rem;
          line-height: 1.92;
          top: 27px;
          left: 20px; } }
    body.index main .mv .slider {
      width: 1112px;
      margin-right: -300px; }
      @media only screen and (max-width: 767px) {
        body.index main .mv .slider {
          width: 384px;
          margin-left: 48px; } }
      body.index main .mv .slider .slick-slide {
        outline: none; }
  body.index main .content {
    background: url(../images/common/bg.jpg) center center/cover no-repeat;
    padding: 0 0 50px; }
    @media only screen and (max-width: 767px) {
      body.index main .content {
        padding: 25px 0; } }
    body.index main .content .menu-list {
      display: -webkit-flex;
      display: flex;
      -webkit-justify-content: center;
      justify-content: center;
      margin: -32px 0 34px;
      position: relative;
      z-index: +1; }
      @media only screen and (max-width: 767px) {
        body.index main .content .menu-list {
          -webkit-flex-wrap: wrap;
          flex-wrap: wrap;
          margin: 0 0 10px; } }
      body.index main .content .menu-list li {
        width: 148px;
        height: 148px;
        margin: 0 5px; }
        @media only screen and (max-width: 767px) {
          body.index main .content .menu-list li {
            width: 130px;
            height: 130px;
            margin: 0 4px 8px; } }
        body.index main .content .menu-list li a {
          display: block;
          height: 100%;
          background: linear-gradient(180deg, #24ABE0, #0272AE);
          border-radius: 10px;
          color: #fff;
          text-align: center;
          font-weight: bold;
          padding: 14px 14px 12px; }
          @media only screen and (max-width: 767px) {
            body.index main .content .menu-list li a {
              padding: 13px 6px 11px; } }
          body.index main .content .menu-list li a i {
            display: block;
            width: 76px;
            margin: 0 auto 11px; }
            @media only screen and (max-width: 767px) {
              body.index main .content .menu-list li a i {
                width: 67px;
                margin: 0 auto 5px; } }
          body.index main .content .menu-list li a span {
            font-size: 14px;
            font-size: 1.4rem;
            line-height: 1.4; }
            @media only screen and (max-width: 767px) {
              body.index main .content .menu-list li a span {
                font-size: 13px;
                font-size: 1.3rem;
                letter-spacing: .05em;
                line-height: 1.296; } }
    body.index main .content .box {
      display: -webkit-flex;
      display: flex;
      -webkit-justify-content: space-between;
      justify-content: space-between;
      width: 100%;
      max-width: 840px;
      margin-left: auto;
      margin-right: auto;
      flex-wrap: wrap; }
      @media only screen and (max-width: 767px) {
        body.index main .content .box {
          -webkit-flex-direction: column;
          flex-direction: column; } }
      @media only screen and (max-width: 767px) {
        body.index main .content .box #left {
          display: -webkit-flex;
          display: flex;
          -webkit-flex-direction: column;
          flex-direction: column; } }
      body.index main .content .box .left {
        width: 68%; }
        @media only screen and (max-width: 767px) {
          body.index main .content .box .left {
            width: 100%; } }
        body.index main .content .box .left .box-information {
          border: 1px solid #EB6EA5;
          background: #fff;
          box-shadow: 3px 3px 0px #898989;
          padding: 16px 32px 14px; }
          @media only screen and (max-width: 767px) {
            body.index main .content .box .left .box-information {
              padding: 16px; } }
          body.index main .content .box .left .box-information__document {
            display: flex;
            justify-content: space-between;
            margin-top: 15px; }
            @media only screen and (max-width: 767px) {
              body.index main .content .box .left .box-information__document {
                flex-direction: column;
                gap: 10px; } }
            body.index main .content .box .left .box-information__document__link {
              width: 100%;
              display: flex;
              justify-content: center;
              align-items: center;
              height: 58px;
              border-radius: 5px;
              font-size: 19px;
              padding-right: 20px;
              position: relative;
              color: #fff;
              font-feature-settings: "palt"; }
              @media only screen and (max-width: 935px) {
                body.index main .content .box .left .box-information__document__link {
                  font-size: 14px;
                  height: 36px;
                  padding-right: 10px; } }
              body.index main .content .box .left .box-information__document__link:after {
                content: '';
                display: block;
                background-image: url("../images/top/ico_arrow_white.svg");
                background-size: contain;
                background-position: center center;
                background-repeat: no-repeat;
                width: 13px;
                height: 18px;
                position: absolute;
                right: 8px;
                top: 50%;
                transform: translateY(-50%); }
                @media only screen and (max-width: 935px) {
                  body.index main .content .box .left .box-information__document__link:after {
                    font-size: 10px;
                    height: 13px;
                    right: 3px; } }
              body.index main .content .box .left .box-information__document__link:before {
                content: '';
                display: block;
                background-size: contain;
                background-position: center center;
                background-repeat: no-repeat;
                width: 34px;
                height: 45px;
                position: absolute;
                right: -2px;
                top: calc(100% - 10px); }
                @media only screen and (max-width: 935px) {
                  body.index main .content .box .left .box-information__document__link:before {
                    width: 20px;
                    height: 24px;
                    top: calc(100% - 4px); } }
            body.index main .content .box .left .box-information__document__text {
              font-size: 14.5px;
              line-height: 1.37931034;
              margin-top: 10px;
              display: flex;
              align-items: flex-start; }
              @media only screen and (max-width: 935px) {
                body.index main .content .box .left .box-information__document__text {
                  font-size: 11px; } }
              @media only screen and (max-width: 767px) {
                body.index main .content .box .left .box-information__document__text {
                  padding-right: 20px; } }
              body.index main .content .box .left .box-information__document__text img {
                width: 61px;
                margin: 0 auto;
                height: auto; }
            body.index main .content .box .left .box-information__document__item {
              padding: 15px 15px 10px;
              width: 49%; }
              @media only screen and (max-width: 767px) {
                body.index main .content .box .left .box-information__document__item {
                  width: 100%; } }
              body.index main .content .box .left .box-information__document__item.download {
                background: #bae3f9; }
                body.index main .content .box .left .box-information__document__item.download .box-information__document__link {
                  background: linear-gradient(to bottom, #f6bcc3, #e50065); }
                  body.index main .content .box .left .box-information__document__item.download .box-information__document__link:before {
                    background-image: url("../images/top/ico_hand_pink.svg"); }
                body.index main .content .box .left .box-information__document__item.download .box-information__document__text {
                  color: #e50065; }
              body.index main .content .box .left .box-information__document__item.yoyaku {
                background: #f9d4d8; }
                @media only screen and (max-width: 767px) {
                  body.index main .content .box .left .box-information__document__item.yoyaku {
                    padding-bottom: 15px; } }
                body.index main .content .box .left .box-information__document__item.yoyaku .box-information__document__link {
                  background: linear-gradient(to bottom, #00a4e3, #0071b2); }
                  body.index main .content .box .left .box-information__document__item.yoyaku .box-information__document__link:before {
                    background-image: url("../images/top/ico_hand_blue.svg"); }
                body.index main .content .box .left .box-information__document__item.yoyaku .box-information__document__text {
                  color: #0066a9; }
          body.index main .content .box .left .box-information__list {
            display: flex;
            justify-content: space-between; }
            @media only screen and (max-width: 767px) {
              body.index main .content .box .left .box-information__list {
                flex-wrap: wrap;
                gap: 8px; } }
          body.index main .content .box .left .box-information__link {
            width: 30%;
            max-width: 148px;
            aspect-ratio: 1;
            display: flex;
            flex-direction: column;
            justify-content: center;
            background: linear-gradient(to bottom, #fbe6ef, #ec7aac);
            border-radius: 8.5px; }
            @media only screen and (max-width: 935px) {
              body.index main .content .box .left .box-information__link {
                aspect-ratio: auto;
                padding: 2vw 0 1vw; } }
            @media only screen and (max-width: 767px) {
              body.index main .content .box .left .box-information__link {
                width: calc(50% - 4px);
                max-width: none;
                padding: 14px 10px 12px; } }
            @media only screen and (min-width: 768px) {
              body.index main .content .box .left .box-information__link._mynumber .box-information__title {
                font-size: 16px;
                letter-spacing: -0.05em;
                line-height: 1.25; } }
  @media only screen and (min-width: 768px) and (max-width: 935px) {
    body.index main .content .box .left .box-information__link._mynumber .box-information__title {
      font-size: 1.6vw; } }
            @media only screen and (min-width: 768px) {
                body.index main .content .box .left .box-information__link._mynumber .box-information__title span {
                  width: 130%;
                  margin: 0 -15%;
                  transform: scale(0.9, 1);
                  display: block; }
              body.index main .content .box .left .box-information__link._mynumber .box-information__search {
                letter-spacing: -0.05em;
                padding: 0 47px 0 10px;
                position: relative;
                display: block; } }
  @media only screen and (min-width: 768px) and (max-width: 935px) {
    body.index main .content .box .left .box-information__link._mynumber .box-information__search {
      padding: 0 5.2vw 0 1vw; } }
            @media only screen and (min-width: 768px) {
                body.index main .content .box .left .box-information__link._mynumber .box-information__search::after {
                  right: 10px;
                  position: absolute;
                  top: 0; } }
            @media only screen and (max-width: 767px) {
              body.index main .content .box .left .box-information__link._mynumber {
                width: 100%; }
                body.index main .content .box .left .box-information__link._mynumber .box-information__search {
                  max-width: 180px;
                  padding-right: 32px;
                  position: relative;
                  margin: 6px auto 0; }
                  body.index main .content .box .left .box-information__link._mynumber .box-information__search::after {
                    position: absolute;
                    top: 0;
                    right: 0; } }
          body.index main .content .box .left .box-information__title {
            font-size: 18px;
            line-height: 1.3333;
            text-align: center;
            padding: 0 10px; }
            @media only screen and (max-width: 935px) {
              body.index main .content .box .left .box-information__title {
                font-size: 1.8vw;
                padding: 0 1vw; } }
            @media only screen and (max-width: 767px) {
              body.index main .content .box .left .box-information__title {
                font-size: 14px; } }
          body.index main .content .box .left .box-information__search {
            color: #fff;
            font-size: 11px;
            line-height: 1.2727;
            width: 100%;
            padding: 0 15px;
            margin-top: 10px;
            display: flex;
            justify-content: center;
            align-items: flex-start;
            gap: 10px; }
            @media only screen and (max-width: 935px) {
              body.index main .content .box .left .box-information__search {
                padding: 0 1vw;
                font-size: 10px;
                margin-top: 1vw;
                gap: 1vw; } }
            @media only screen and (max-width: 767px) {
              body.index main .content .box .left .box-information__search {
                font-size: 11px;
                margin-top: 6px;
                gap: 6px; } }
            body.index main .content .box .left .box-information__search::after {
              content: '';
              display: block;
              background-image: url("../images/top/ico_search.svg");
              background-size: contain;
              background-position: center center;
              background-repeat: no-repeat;
              width: 32px;
              height: 32px; }
              @media only screen and (max-width: 935px) {
                body.index main .content .box .left .box-information__search::after {
                  width: 3.4vw;
                  height: 3.4vw; } }
              @media only screen and (max-width: 767px) {
                body.index main .content .box .left .box-information__search::after {
                  width: 26px;
                  height: 26px; } }
          body.index main .content .box .left .box-information__line {
            margin-top: 22px;
            display: block;
            width: 100%;
            height: 2px;
            background: #898989; }
          body.index main .content .box .left .box-information__foot {
            width: max-content;
            max-width: 100%;
            display: flex;
            justify-content: center;
            position: relative;
            margin: 8px auto 0;
            padding-left: 48px;
            gap: 10px; }
            @media only screen and (max-width: 767px) {
              body.index main .content .box .left .box-information__foot {
                margin-top: 18px; } }
          body.index main .content .box .left .box-information__foottext {
            display: flex;
            flex-direction: column; }
          body.index main .content .box .left .box-information__foottitle {
            font-size: 14px;
            font-weight: 600; }
          body.index main .content .box .left .box-information__footindex {
            font-size: 11px;
            line-height: 1.45454545;
            font-weight: 400;
            margin-top: 5px; }
            @media only screen and (max-width: 767px) {
              body.index main .content .box .left .box-information__footindex {
                font-size: 12px;
                margin-top: 10px;
                letter-spacing: 0;
                font-feature-settings: "palt";
                padding-right: 45px; } }
          body.index main .content .box .left .box-information__footlink {
            display: flex;
            flex-direction: row-reverse;
            align-items: flex-end;
            gap: 5px; }
            @media only screen and (max-width: 767px) {
              body.index main .content .box .left .box-information__footlink {
                position: absolute;
                bottom: 0;
                right: 0; } }
            body.index main .content .box .left .box-information__footlink span {
              font-size: 9px;
              line-height: 1.2222;
              width: max-content;
              letter-spacing: 0; }
              @media only screen and (max-width: 767px) {
                body.index main .content .box .left .box-information__footlink span {
                  display: none; } }
            body.index main .content .box .left .box-information__footlink:after {
              content: '';
              display: block;
              background-image: url(../images/top/ico_search.svg);
              background-size: contain;
              background-position: center center;
              background-repeat: no-repeat;
              width: 32px;
              height: 32px; }
          body.index main .content .box .left .box-information__footimg {
            width: 34px;
            position: absolute;
            left: 0;
            bottom: 0; }
          body.index main .content .box .left .box-information__download {
            background: #bae3f9;
            margin-top: 10px;
            display: flex;
            justify-content: space-between;
            align-items: flex-start;
            padding: 17px 15px 24px 19px; }
            @media only screen and (max-width: 767px) {
              body.index main .content .box .left .box-information__download {
                padding: 10px;
                flex-direction: column-reverse;
                gap: 15px; } }
          body.index main .content .box .left .box-information__downloadlink {
            width: 56%;
            position: relative; }
            @media only screen and (max-width: 767px) {
              body.index main .content .box .left .box-information__downloadlink {
                width: 100%;
                max-width: 200px; } }
            body.index main .content .box .left .box-information__downloadlink:after {
              content: '';
              width: 33px;
              aspect-ratio: 32 / 42;
              background-image: url("../images/top/btn_download_hand.png");
              background-size: contain;
              background-position: center center;
              background-repeat: no-repeat;
              display: block;
              position: absolute;
              top: calc(100% - 10px);
              right: 24px; }
              @media only screen and (max-width: 767px) {
                body.index main .content .box .left .box-information__downloadlink:after {
                  width: 22px;
                  top: calc(100% - 7px);
                  right: 15px; } }
          body.index main .content .box .left .box-information__downloadlinktext {
            width: 41.5%;
            transform: translateY(3px); }
            @media only screen and (max-width: 767px) {
              body.index main .content .box .left .box-information__downloadlinktext {
                width: 100%;
                max-width: 200px; } }
        body.index main .content .box .left .corona {
          margin: 22px 0 0;
          padding: 0 27px 0 78px;
          height: 77px;
          background: url(../images/top/bg-corona.png) center center/cover no-repeat;
          display: -webkit-flex;
          display: flex;
          -webkit-align-items: center;
          align-items: center;
          -webkit-justify-content: space-between;
          justify-content: space-between; }
          @media only screen and (max-width: 767px) {
            body.index main .content .box .left .corona {
              display: block;
              height: auto;
              padding: 20px;
              margin: 20px 0;
              text-align: center;
              background: #fadbdf;
              border: 1px solid #e50065;
              box-shadow: 3px 3px 0px #898989; } }
          body.index main .content .box .left .corona p {
            font-size: 13px;
            font-size: 1.3rem;
            line-height: 1.46;
            color: #e50065; }
          body.index main .content .box .left .corona a {
            width: 180px;
            height: 42px;
            display: block;
            border-radius: 8px;
            color: #fff;
            font-size: 15px;
            font-size: 1.5rem;
            position: relative;
            padding: 12px 25px;
            background: linear-gradient(#efb0b8, #e50065); }
            @media only screen and (max-width: 767px) {
              body.index main .content .box .left .corona a {
                margin: 14px auto 0; } }
            body.index main .content .box .left .corona a:after {
              content: "";
              display: block;
              width: 12px;
              height: 12px;
              border-top: 3px solid #fff;
              border-right: 3px solid #fff;
              -webkit-transform: translate(0, -50%) rotate(45deg);
              -moz-transform: translate(0, -50%) rotate(45deg);
              -ms-transform: translate(0, -50%) rotate(45deg);
              -o-transform: translate(0, -50%) rotate(45deg);
              transform: translate(0, -50%) rotate(45deg);
              position: absolute;
              top: 50%;
              right: 19px; }
        body.index main .content .box .left .info-small {
          display: block;
          background: #fadbdf;
          border-top: 1px solid #e50065;
          border-bottom: 1px solid #e50065;
          box-shadow: 3px 3px 0px #898989;
          margin-top: 18px;
          padding: 5px 0 10px; }
          @media only screen and (max-width: 767px) {
            body.index main .content .box .left .info-small {
              order: 2;
              margin-top: 0;
              padding: 10px 0 10px; } }
          body.index main .content .box .left .info-small .row {
            display: flex;
            align-items: center;
            width: calc(100% - 40px);
            max-width: 500px;
            margin: 0 auto;
            gap: 15px; }
            @media only screen and (max-width: 767px) {
              body.index main .content .box .left .info-small .row {
                width: calc(100% - 20px);
                flex-direction: column;
                gap: 5px; } }
          body.index main .content .box .left .info-small .info-small_ttl {
            color: #fff;
            background: #e50065;
            border-radius: 6px;
            display: flex;
            justify-content: center;
            align-items: center;
            width: 80px;
            height: 30px;
            font-size: 16px; }
            @media only screen and (max-width: 767px) {
              body.index main .content .box .left .info-small .info-small_ttl {
                width: 70px;
                height: 26px;
                font-size: 13px; } }
          body.index main .content .box .left .info-small .info-small_txt {
            font-size: 13px;
            line-height: 1.5;
            font-weight: bold; }
            @media only screen and (max-width: 767px) {
              body.index main .content .box .left .info-small .info-small_txt {
                text-align: center; } }
            body.index main .content .box .left .info-small .info-small_txt .pink {
              color: #e50065; }
            body.index main .content .box .left .info-small .info-small_txt .large {
              font-size: 16px; }
              @media only screen and (max-width: 767px) {
                body.index main .content .box .left .info-small .info-small_txt .large {
                  font-size: 13px; } }
          body.index main .content .box .left .info-small .info-small_white {
            width: calc(100% - 40px);
            max-width: 500px;
            margin: 5px auto 0;
            background: #fff;
            display: flex;
            justify-content: center;
            align-items: center;
            font-size: 13px;
            height: 20px;
            font-weight: bold; }
            body.index main .content .box .left .info-small .info-small_white .pink {
              color: #e50065; }
      body.index main .content .box .side-bar {
        width: 29.76%; }
        @media only screen and (max-width: 767px) {
          body.index main .content .box .side-bar {
            width: 100%;
            order: 2;
            margin: 18px 0 8px; } }
        body.index main .content .box .side-bar .link-list li {
          height: 96px;
          padding: 6px;
          background: #fff;
          margin: 0 0 12px; }
          @media only screen and (max-width: 767px) {
            body.index main .content .box .side-bar .link-list li {
              border: 1px solid #00A5E3;
              box-shadow: 2px 2px 0 #898989; } }
          body.index main .content .box .side-bar .link-list li a {
            display: block;
            height: 100%;
            position: relative; }
            body.index main .content .box .side-bar .link-list li a span {
              font-size: 18px;
              font-size: 1.8rem;
              color: #0066A9;
              display: block;
              text-align: right;
              position: absolute;
              top: 18px;
              right: 0;
              letter-spacing: .333em; }
              @media only screen and (max-width: 767px) {
                body.index main .content .box .side-bar .link-list li a span {
                  top: 15px;
                  font-size: 22px;
                  font-size: 2.2rem; } }
            body.index main .content .box .side-bar .link-list li a .lsp {
              letter-spacing: 0; }
            body.index main .content .box .side-bar .link-list li a i {
              display: block;
              width: 32px;
              height: 32px;
              position: absolute;
              right: 0;
              bottom: 0; }
      body.index main .content .box .news {
        background: #fff;
        border-top: 1px solid #B5B5B6;
        border-left: 1px solid #B5B5B6;
        margin: 24px 0 0; }
        @media only screen and (max-width: 767px) {
          body.index main .content .box .news {
            order: 3;
            margin: 0; } }
        body.index main .content .box .news h3 {
          padding: 10px 24px;
          color: #0066A9;
          font-size: 20px;
          font-size: 2rem;
          letter-spacing: .025em;
          text-align: center;
          background: linear-gradient(180deg, #FBFDFD, #C9CFDB); }
          @media only screen and (max-width: 767px) {
            body.index main .content .box .news h3 {
              letter-spacing: .1em;
              padding: 14px 15px; } }
        body.index main .content .box .news .news-list {
          padding: 18px 20px 0; }
          @media only screen and (max-width: 767px) {
            body.index main .content .box .news .news-list {
              padding: 13px 15px 0; } }
          body.index main .content .box .news .news-list ul {
            height: 200px;
            overflow-y: scroll;
            padding: 0 0 18px; }
          body.index main .content .box .news .news-list li {
            border-top: 1px dashed #000;
            display: block;
            padding: 0px 5px;
            display: -webkit-flex;
            display: flex;
            -webkit-align-items: center;
            align-items: center;
            font-size: 12px;
            font-size: 1.2rem;
            min-height: 29px; }
            body.index main .content .box .news .news-list li:last-of-type {
              border-bottom: 1px dashed #000; }
            body.index main .content .box .news .news-list li .off {
              pointer-events: none; }
            body.index main .content .box .news .news-list li .date {
              width: 94px;
              color: #898989; }
              @media only screen and (max-width: 767px) {
                body.index main .content .box .news .news-list li .date {
                  width: 82px; } }
            body.index main .content .box .news .news-list li .title {
              width: calc(100% - 94px);
              display: -webkit-flex;
              display: flex;
              -webkit-align-items: center;
              align-items: center;
              padding: 5px 0; }
              @media only screen and (max-width: 767px) {
                body.index main .content .box .news .news-list li .title {
                  width: calc(100% - 82px);
                  display: block;
                  padding: 5px 0; } }
              body.index main .content .box .news .news-list li .title p {
                line-height: 1.5;
                color: #0081cc; }
                @media only screen and (min-width: 768px) {
                  body.index main .content .box .news .news-list li .title p {
                    width: calc(100% - 84px); } }
                @media only screen and (max-width: 767px) {
                  body.index main .content .box .news .news-list li .title p {
                    display: inline; } }
                body.index main .content .box .news .news-list li .title p.red {
                  color: #e50065; }
              body.index main .content .box .news .news-list li .title:hover p {
                text-decoration: underline; }
            body.index main .content .box .news .news-list li .cate {
              display: inline-block;
              background: #898989;
              color: #fff;
              text-align: center;
              padding: 4px 8px;
              margin-right: 10px;
              width: 64px; }
              body.index main .content .box .news .news-list li .cate.red {
                background: #e50065; }

@media all and (-ms-high-contrast: none) {
  body.index main .content .box .left .box-top .right h4 strong {
    padding: 7px 9px 1px !important; } }

body.link main .content {
  background: url(../images/common/bg.jpg) center center/cover no-repeat;
  padding: 50px 0; }
  @media only screen and (max-width: 767px) {
    body.link main .content {
      padding: 25px 0; } }
  body.link main .content .inner {
    position: relative; }
    @media only screen and (max-width: 767px) {
      body.link main .content .inner {
        *zoom: 1; }
        body.link main .content .inner:after {
          content: "";
          display: table;
          clear: both; } }
  body.link main .content .ttl03 {
    font-size: 22px;
    font-size: 2.2rem;
    position: relative;
    margin: 24px 0 20px; }
    @media only screen and (max-width: 767px) {
      body.link main .content .ttl03 {
        font-size: 17px;
        font-size: 1.7rem;
        margin: 15px 0 10px; } }
    body.link main .content .ttl03:after {
      content: "";
      width: calc(100% + 120px);
      height: 1px;
      background: #EB6EA5;
      position: absolute;
      bottom: -10px;
      left: -60px; }
      @media only screen and (max-width: 767px) {
        body.link main .content .ttl03:after {
          width: calc(100% + 40px);
          left: -20px;
          bottom: -5px; } }
  body.link main .content .link-list {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    padding: 0 56px; }
    @media only screen and (max-width: 767px) {
      body.link main .content .link-list {
        padding: 0; } }
    body.link main .content .link-list li {
      width: 46.68%;
      border-bottom: 2px solid #fff; }
      body.link main .content .link-list li:last-of-type {
        border: none; }
      body.link main .content .link-list li a {
        display: block;
        padding: 19px 35px;
        position: relative; }
        @media only screen and (max-width: 767px) {
          body.link main .content .link-list li a {
            padding: 0 0 0 25px;
            height: 52px;
            display: -webkit-flex;
            display: flex;
            -webkit-align-items: center;
            align-items: center;
            font-size: 12px;
            font-size: 1.2rem;
            line-height: 1.2;
            font-feature-settings: "palt"; } }
        body.link main .content .link-list li a:before {
          content: "";
          width: 25px;
          height: 25px;
          border-radius: 5px;
          display: block;
          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%);
          background: linear-gradient(180deg, #24ABE0, #0272AE); }
          @media only screen and (max-width: 767px) {
            body.link main .content .link-list li a:before {
              width: 17px;
              height: 17px;
              border-radius: 3px; } }
        body.link main .content .link-list li a:after {
          content: "";
          width: 9px;
          height: 9px;
          border-top: 3px solid #fff;
          border-right: 3px solid #fff;
          display: block;
          position: absolute;
          top: 50%;
          left: 5px;
          -webkit-transform: translate(0, -50%) rotate(45deg);
          -moz-transform: translate(0, -50%) rotate(45deg);
          -ms-transform: translate(0, -50%) rotate(45deg);
          -o-transform: translate(0, -50%) rotate(45deg);
          transform: translate(0, -50%) rotate(45deg); }
          @media only screen and (max-width: 767px) {
            body.link main .content .link-list li a:after {
              width: 6px;
              height: 6px;
              border-top: 2px solid #fff;
              border-right: 2px solid #fff;
              left: 3px; } }

@media all and (-ms-high-contrast: none) {
  body.link main .content .link-list li a {
    padding: 22px 35px 16px; } }

body.medical main .content {
  background: url(../images/common/bg.jpg) center center/100% auto repeat;
  padding: 50px 0 50px;
  font-feature-settings: "palt"; }
  @media only screen and (max-width: 767px) {
    body.medical main .content {
      padding: 25px 0; } }
  body.medical main .content .inner {
    position: relative; }
    @media only screen and (max-width: 767px) {
      body.medical main .content .inner {
        *zoom: 1; }
        body.medical main .content .inner:after {
          content: "";
          display: table;
          clear: both; } }
  body.medical main .content .ttl03 {
    font-size: 22px;
    font-size: 2.2rem;
    position: relative;
    margin: 0px 0 20px;
    font-weight: 600; }
    @media only screen and (max-width: 767px) {
      body.medical main .content .ttl03 {
        font-size: 17px;
        font-size: 1.7rem;
        margin: 0px 0 10px; } }
    body.medical main .content .ttl03:after {
      content: "";
      width: calc(100% + 120px);
      height: 1px;
      background: #EB6EA5;
      position: absolute;
      bottom: -10px;
      left: -60px; }
      @media only screen and (max-width: 767px) {
        body.medical main .content .ttl03:after {
          width: calc(100% + 40px);
          left: -20px;
          bottom: -5px; } }
  body.medical main .content .pink {
    font-size: 13px;
    font-size: 1.3rem;
    color: #EB6EA5;
    line-height: 1.46;
    white-space: nowrap;
    font-weight: 600; }
    @media only screen and (max-width: 767px) {
      body.medical main .content .pink {
        font-size: 12px;
        font-size: 1.2rem;
        white-space: nowrap; } }
  body.medical main .content p {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 1.727;
    letter-spacing: .03em;
    text-align: justify; }
    @media only screen and (max-width: 767px) {
      body.medical main .content p {
        font-size: 10px;
        font-size: 1rem;
        line-height: 1.6; } }
  body.medical main .content .box {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap; }
    body.medical main .content .box .text {
      width: 50%; }
      @media only screen and (max-width: 767px) {
        body.medical main .content .box .text {
          width: 100%; } }
      body.medical main .content .box .text .pink {
        margin-bottom: 8px;
        display: inline-block; }
      body.medical main .content .box .text .white-box {
        background: #fff;
        color: #0066A9;
        height: 80px;
        margin: 15px 0;
        font-size: 13px;
        font-size: 1.3rem;
        line-height: 1.538;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: center;
        justify-content: center;
        -webkit-align-items: center;
        align-items: center;
        text-align: center;
        font-feature-settings: "palt";
        position: relative;
        font-weight: 600; }
        @media only screen and (max-width: 767px) {
          body.medical main .content .box .text .white-box {
            padding: 10px 24px;
            height: auto;
            font-size: 11px;
            font-size: 1.1rem;
            line-height: 1.39;
            margin: 12px 0; } }
        body.medical main .content .box .text .white-box:after {
          content: "";
          width: 70px;
          height: 126px;
          display: block;
          background: url(../images/medical/arrow.svg) center center/cover no-repeat;
          position: absolute;
          top: -84px;
          right: -70px; }
          @media only screen and (max-width: 767px) {
            body.medical main .content .box .text .white-box:after {
              left: 50%;
              width: 35px;
              height: 24px;
              right: auto;
              top: auto;
              bottom: -24px;
              -webkit-transform: translate(-50%, 0);
              -moz-transform: translate(-50%, 0);
              -ms-transform: translate(-50%, 0);
              -o-transform: translate(-50%, 0);
              transform: translate(-50%, 0);
              background: url(../images/medical/arrow-bottom.svg) center center/cover no-repeat; } }
    body.medical main .content .box .service {
      width: 41.6666%;
      padding: 63px 0 0; }
      @media only screen and (max-width: 767px) {
        body.medical main .content .box .service {
          width: 100%;
          padding: 12px 0 0; } }
      body.medical main .content .box .service .blue-label {
        display: block;
        text-align: center;
        padding: 5px;
        background: #0066A9;
        color: #fff;
        border-radius: 13px;
        font-weight: 600; }
        @media only screen and (max-width: 767px) {
          body.medical main .content .box .service .blue-label {
            padding: 7px;
            border-radius: 16px;
            font-size: 15px;
            font-size: 1.5rem; } }
      body.medical main .content .box .service .text01 {
        font-size: 12px;
        font-size: 1.2rem;
        line-height: 1.4;
        text-align: center;
        margin: 5px 0; }
        @media only screen and (max-width: 767px) {
          body.medical main .content .box .service .text01 {
            font-size: 11px;
            font-size: 1.1rem;
            line-height: 1.318; } }
      body.medical main .content .box .service dl {
        position: relative; }
        body.medical main .content .box .service dl dt {
          border-top: 1px solid #00A5E3;
          border-bottom: 1px solid #00A5E3;
          color: #00A5E3;
          padding: 5px 15px;
          background: #EAF6FD;
          font-size: 12px;
          font-size: 1.2rem;
          font-weight: 600; }
          @media only screen and (max-width: 767px) {
            body.medical main .content .box .service dl dt {
              font-size: 12px;
              font-size: 1.2rem;
              padding: 5px 7px; } }
        body.medical main .content .box .service dl dd {
          padding: 5px 15px;
          background: #fff;
          font-size: 11px;
          font-size: 1.1rem;
          line-height: 1.4; }
          @media only screen and (max-width: 767px) {
            body.medical main .content .box .service dl dd {
              padding: 5px 7px; } }
        body.medical main .content .box .service dl .attention {
          display: block;
          background: #fff;
          text-align: right;
          padding: 6px 15px;
          color: #00A5E3;
          font-size: 11px;
          font-size: 1.1rem; }
          @media only screen and (max-width: 767px) {
            body.medical main .content .box .service dl .attention {
              padding: 0px 7px 5px; } }
      body.medical main .content .box .service small {
        margin: 9px 13px 25px;
        display: block;
        font-size: 12px;
        font-size: 1.2rem;
        line-height: 1.4; }
        @media only screen and (max-width: 767px) {
          body.medical main .content .box .service small {
            margin: 8px 7px 11px;
            line-height: 1.35;
            font-size: 11px;
            font-size: 1.1rem; } }
    body.medical main .content .box .text-left {
      width: 49%; }
      @media only screen and (max-width: 767px) {
        body.medical main .content .box .text-left {
          width: 100%;
          margin-bottom: 10px; } }
      body.medical main .content .box .text-left .pink {
        margin-bottom: 2px; }
    body.medical main .content .box .text-right {
      width: 48.214%; }
      @media only screen and (max-width: 767px) {
        body.medical main .content .box .text-right {
          width: 100%; } }
      body.medical main .content .box .text-right .pink {
        margin-bottom: 2px; }
  body.medical main .content .text-img {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    font-feature-settings: "palt";
    position: relative; }
    body.medical main .content .text-img .text {
      width: calc(100% - 260px); }
      @media only screen and (max-width: 767px) {
        body.medical main .content .text-img .text {
          width: 100%;
          float: left;
          width: calc(100% - 130px); } }
      body.medical main .content .text-img .text .text-text {
        display: -webkit-flex;
        display: flex; }
        @media only screen and (max-width: 767px) {
          body.medical main .content .text-img .text .text-text .mr {
            display: inline-block;
            width: calc(100% + 130px);
            margin-right: -130px; } }
    body.medical main .content .text-img .img {
      width: 235px;
      margin-top: -46px;
      margin-right: -19px; }
      @media only screen and (max-width: 767px) {
        body.medical main .content .text-img .img {
          width: 118px;
          float: right;
          margin-top: -30px;
          margin-right: 0px; } }
  body.medical main .content .img01 {
    width: calc(100% - 260px);
    margin-top: -125px;
    margin-top: -100px;
    margin-bottom: 56px; }
    @media only screen and (max-width: 767px) {
      body.medical main .content .img01 {
        width: calc(100% + 10px);
        margin-top: 10px;
        margin-left: -10px;
        margin-bottom: 20px; } }
  body.medical main .content .medical-list {
    margin-top: -50px; }
    @media only screen and (max-width: 767px) {
      body.medical main .content .medical-list {
        margin-top: 15px; } }
    body.medical main .content .medical-list li {
      display: -webkit-flex;
      display: flex;
      -webkit-align-items: center;
      align-items: center;
      margin-bottom: 20px; }
      @media only screen and (max-width: 767px) {
        body.medical main .content .medical-list li {
          margin-bottom: 7px; } }
      body.medical main .content .medical-list li .label {
        display: block;
        width: 70px;
        height: 50px;
        border-radius: 8px;
        color: #fff;
        background: linear-gradient(90deg, #24ABE0, #0272AE);
        display: -webkit-flex;
        display: flex;
        -webkit-align-items: center;
        align-items: center;
        -webkit-justify-content: center;
        justify-content: center;
        margin-right: 20px;
        box-shadow: 2px 2px 0 #898989;
        text-align: center;
        font-weight: 600; }
        @media only screen and (max-width: 767px) {
          body.medical main .content .medical-list li .label {
            width: 60px;
            height: 38px;
            border-radius: 4px;
            font-size: 12px;
            font-size: 1.2rem;
            line-height: 1.2;
            margin-right: 9px; } }
      body.medical main .content .medical-list li p {
        width: calc(100% - 90px);
        font-size: 13px;
        font-size: 1.3rem;
        line-height: 1.727; }
        @media only screen and (max-width: 767px) {
          body.medical main .content .medical-list li p {
            width: calc(100% - 68px);
            font-size: 10px;
            font-size: 1rem;
            line-height: 1.6; } }
  body.medical main .content .banner {
    margin: 0 0 55px; }
    @media only screen and (max-width: 767px) {
      body.medical main .content .banner {
        margin: 12px 0 22px; } }
  body.medical main .content .diffelence-box {
    margin: 27px 0 0;
    width: 100%;
    display: -webkit-flex;
    display: flex; }
    @media only screen and (max-width: 767px) {
      body.medical main .content .diffelence-box {
        display: block; } }
    body.medical main .content .diffelence-box h4 {
      writing-mode: vertical-rl;
      text-align: center;
      padding: 16px 24px;
      height: 192px;
      white-space: nowrap;
      vertical-align: middle;
      font-feature-settings: "palt";
      border-radius: 10px 0 0 10px;
      background: linear-gradient(90deg, #24ABE0, #0272AE);
      font-size: 14px;
      font-size: 1.4rem;
      letter-spacing: .15em;
      color: #fff;
      box-shadow: 2px 2px 0 #898989;
      font-weight: 600; }
      @media only screen and (max-width: 767px) {
        body.medical main .content .diffelence-box h4 {
          writing-mode: horizontal-tb;
          background: linear-gradient(180deg, #24ABE0, #0272AE);
          border-radius: 6px 6px 0 0;
          padding: 10px 18px;
          display: inline-block;
          font-size: 15px;
          font-size: 1.5rem;
          letter-spacing: .1em;
          position: relative;
          height: auto; } }
    body.medical main .content .diffelence-box .box {
      background: #fff;
      padding: 16px 86px 32px;
      box-shadow: 2px 2px 0 #898989;
      position: relative; }
      @media only screen and (max-width: 767px) {
        body.medical main .content .diffelence-box .box {
          padding: 9px 15px 16px; } }
      body.medical main .content .diffelence-box .box h5 {
        font-size: 19px;
        font-size: 1.9rem;
        margin-left: -50px;
        margin-bottom: 25px;
        font-weight: 600; }
        @media only screen and (max-width: 767px) {
          body.medical main .content .diffelence-box .box h5 {
            margin-left: 0;
            font-size: 11px;
            font-size: 1.1rem;
            margin-bottom: 9px; } }
      body.medical main .content .diffelence-box .box table {
        width: 100%;
        border-collapse: separate;
        border-spacing: 20px 0px;
        font-size: 12px;
        font-size: 1.2rem; }
        @media only screen and (max-width: 767px) {
          body.medical main .content .diffelence-box .box table {
            border-spacing: 5px 0px;
            font-size: 11px;
            font-size: 1.1rem; } }
        body.medical main .content .diffelence-box .box table th {
          position: relative; }
          @media only screen and (max-width: 767px) {
            body.medical main .content .diffelence-box .box table th {
              height: 40px; } }
          body.medical main .content .diffelence-box .box table th span {
            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%); }
          body.medical main .content .diffelence-box .box table th:after {
            content: "";
            width: calc(100% + 20px);
            height: 1px;
            background: #000;
            display: block;
            position: absolute;
            left: -10px;
            bottom: 0; }
            @media only screen and (max-width: 767px) {
              body.medical main .content .diffelence-box .box table th:after {
                width: calc(100% + 5px);
                left: -2px; } }
        body.medical main .content .diffelence-box .box table td {
          position: relative; }
          @media only screen and (max-width: 767px) {
            body.medical main .content .diffelence-box .box table td {
              height: 40px; } }
          body.medical main .content .diffelence-box .box table td:after {
            content: "";
            width: calc(100% + 20px);
            height: 1px;
            background: #000;
            display: block;
            position: absolute;
            left: -10px;
            bottom: 0; }
            @media only screen and (max-width: 767px) {
              body.medical main .content .diffelence-box .box table td:after {
                width: calc(100% + 5px);
                left: -2px; } }
        body.medical main .content .diffelence-box .box table thead th {
          font-weight: 600; }
          @media only screen and (max-width: 767px) {
            body.medical main .content .diffelence-box .box table thead th:nth-of-type(1) {
              height: auto; } }
          body.medical main .content .diffelence-box .box table thead th:nth-of-type(2) {
            background: #EAEAEE;
            padding: 5px;
            text-align: center;
            color: #77849A; }
            @media only screen and (max-width: 767px) {
              body.medical main .content .diffelence-box .box table thead th:nth-of-type(2) {
                padding: 4px;
                height: auto; } }
          body.medical main .content .diffelence-box .box table thead th:nth-of-type(3) {
            background: #FBE6EF;
            padding: 5px;
            text-align: center;
            color: #A4005B; }
            @media only screen and (max-width: 767px) {
              body.medical main .content .diffelence-box .box table thead th:nth-of-type(3) {
                padding: 4px;
                height: auto; } }
        body.medical main .content .diffelence-box .box table tbody th {
          padding-left: 18px; }
          @media only screen and (max-width: 767px) {
            body.medical main .content .diffelence-box .box table tbody th {
              padding-left: 15px; } }
        body.medical main .content .diffelence-box .box table tbody td:nth-of-type(1) {
          background: #EAEAEE;
          padding: 5px 32px; }
          @media only screen and (max-width: 767px) {
            body.medical main .content .diffelence-box .box table tbody td:nth-of-type(1) {
              padding: 6px 8px;
              width: 85px; } }
        body.medical main .content .diffelence-box .box table tbody td:nth-of-type(2) {
          background: #FBE6EF;
          padding: 5px 17px; }
          @media only screen and (max-width: 767px) {
            body.medical main .content .diffelence-box .box table tbody td:nth-of-type(2) {
              padding: 6px 10px;
              width: 85px; } }

body.medical main .head {
  height: 106px;
  overflow-x: hidden;
  position: relative; }
  @media only screen and (max-width: 767px) {
    body.medical main .head {
      height: 53px; } }
  body.medical main .head:after {
    content: "";
    width: 100%;
    height: 16px;
    display: block;
    position: absolute;
    left: 0;
    bottom: 0;
    background: rgba(0, 102, 169, 0.8); }
    @media only screen and (max-width: 767px) {
      body.medical main .head:after {
        height: 7px; } }
  body.medical main .head .inner {
    position: relative;
    height: 100%; }
  body.medical main .head .head-title {
    width: 935px;
    height: 96px;
    background: url(../images/common/mv-bar.png) center center/cover no-repeat;
    color: #fff;
    position: absolute;
    bottom: 0;
    left: 244px;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    padding: 0 88px 15px;
    font-weight: 600; }
    @media only screen and (max-width: 767px) {
      body.medical main .head .head-title {
        width: 467px;
        height: 48px;
        left: 117px;
        padding: 0 44px 6px; } }
    body.medical main .head .head-title i {
      width: 61px;
      display: block;
      margin-right: 16px; }
      @media only screen and (max-width: 767px) {
        body.medical main .head .head-title i {
          width: 30px;
          margin-right: 8px; } }
    body.medical main .head .head-title small {
      font-size: 17px;
      font-size: 1.7rem;
      display: inline-block;
      margin-right: 5px; }
    body.medical main .head .head-title .small {
      font-size: 12px;
      font-size: 1.2rem;
      line-height: 1.28; }
    body.medical main .head .head-title span {
      display: inline-block;
      font-size: 25px;
      font-size: 2.5rem;
      letter-spacing: .05em;
      margin-right: 24px; }
      @media only screen and (max-width: 767px) {
        body.medical main .head .head-title span {
          font-size: 12px;
          font-size: 1.2rem; } }

@media all and (-ms-high-contrast: none) {
  body.medical main .content .medical-list li .label {
    padding-top: 7px; }
  body.medical main .content .box .service .blue-label {
    padding: 8px 5px 2px; }
  body.medical main .content .box .service {
    padding: 30px 0 0; }
  body.medical main .content .diffelence-box h4 {
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    -o-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
    width: 62px;
    padding: 16px 20px 16px 28px; }
  body.medical main .content .diffelence-box .box table tr th, td {
    height: 22px; }
  body.medical main .content .diffelence-box .box table thead {
    height: 22px; }
  body.medical main .content .diffelence-box .box table thead tr th:nth-of-type(1):after {
    bottom: -22px; }
  body.medical main .content .diffelence-box .box table thead tr {
    height: 22px; }
  body.medical main .content .diffelence-box .box table tbody th:after {
    bottom: -10px; }
  body.medical main .content .diffelence-box .box table th span {
    top: 12px !important; }
  body.medical main .content .box .service dl dt {
    padding: 7px 15px 3px; }
  body.medical main .content .box .service dl dd {
    padding: 7px 15px 3px; } }

body.member main .content {
  background: url(../images/common/bg.jpg) center center/cover no-repeat;
  padding: 50px 0; }
  @media only screen and (max-width: 767px) {
    body.member main .content {
      padding: 25px 0; } }
  body.member main .content .inner {
    position: relative; }
    @media only screen and (max-width: 767px) {
      body.member main .content .inner {
        *zoom: 1; }
        body.member main .content .inner:after {
          content: "";
          display: table;
          clear: both; } }
  body.member main .content .ttl03 {
    font-size: 22px;
    font-size: 2.2rem;
    position: relative;
    margin: 24px 0 20px; }
    @media only screen and (max-width: 767px) {
      body.member main .content .ttl03 {
        font-size: 17px;
        font-size: 1.7rem;
        margin: 15px 0 10px; } }
    body.member main .content .ttl03:after {
      content: "";
      width: calc(100% + 120px);
      height: 1px;
      background: #EB6EA5;
      position: absolute;
      bottom: -10px;
      left: -60px; }
      @media only screen and (max-width: 767px) {
        body.member main .content .ttl03:after {
          width: calc(100% + 40px);
          left: -20px;
          bottom: -5px; } }
  body.member main .content .login {
    width: 578px;
    border-top: 2px solid #B5B5B6;
    border-left: 2px solid #B5B5B6;
    margin: 0 auto;
    font-feature-settings: "palt"; }
    @media only screen and (max-width: 767px) {
      body.member main .content .login {
        width: 100%; } }
    body.member main .content .login h3 {
      text-align: center;
      font-size: 25px;
      font-size: 2.5rem;
      letter-spacing: .5em;
      color: #0066A9;
      padding: 15px;
      background: linear-gradient(180deg, #FBFCFC, #CED2DE);
      font-weight: 600; }
      @media only screen and (max-width: 767px) {
        body.member main .content .login h3 {
          font-size: 20px;
          font-size: 2rem; } }
    body.member main .content .login .box {
      background: #fff;
      padding: 18px 97px 42px 97px; }
      @media only screen and (max-width: 767px) {
        body.member main .content .login .box {
          padding: 20px 45px 40px; } }
      body.member main .content .login .box p {
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 1.428;
        text-align: center;
        margin: 0 0 8px; }
        @media only screen and (max-width: 767px) {
          body.member main .content .login .box p {
            font-size: 12px;
            font-size: 1.2rem; } }
      body.member main .content .login .box table {
        margin-left: -97px; }
        @media only screen and (max-width: 767px) {
          body.member main .content .login .box table {
            margin: 0 auto;
            margin-left: -46px;
            width: calc(100% + 20px); } }
        body.member main .content .login .box table tr th {
          width: 94px;
          padding-left: 21px;
          font-size: 12px;
          font-size: 1.2rem;
          font-feature-settings: "palt"; }
          @media only screen and (max-width: 767px) {
            body.member main .content .login .box table tr th {
              width: 70px;
              font-size: 10px;
              font-size: 1rem;
              padding-left: 14px; } }
        body.member main .content .login .box table tr td {
          width: 386px;
          padding: 10px 0; }
          @media only screen and (max-width: 767px) {
            body.member main .content .login .box table tr td {
              width: 193px;
              padding: 8px 0; } }
          body.member main .content .login .box table tr td input {
            width: 100%;
            height: 48px;
            border: none;
            background: #DFE2EA;
            padding: 10px; }
            @media only screen and (max-width: 767px) {
              body.member main .content .login .box table tr td input {
                height: 40px; } }
      body.member main .content .login .box .login-btn {
        width: 386px;
        height: 64px;
        color: #fff;
        background: linear-gradient(180deg, #24ABE0, #0272AE);
        border-radius: 10px;
        border: none;
        font-size: 16px;
        font-size: 1.6rem;
        letter-spacing: .15em;
        margin: 10px 0 0;
        font-weight: 600; }
        @media only screen and (max-width: 767px) {
          body.member main .content .login .box .login-btn {
            width: 193px;
            height: 57px;
            font-size: 12px;
            font-size: 1.2rem;
            margin: 8px auto 0;
            display: block;
            border-radius: 5px; } }
  body.member main .content .info-list .box .attention {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    font-size: 11px;
    font-size: 1.1rem;
    margin: 0 0 10px; }
    body.member main .content .info-list .box .attention span {
      background: #e50065;
      color: #fff;
      display: inline-block;
      width: 64px;
      padding: 4px 8px;
      margin-right: 10px;
      text-align: center; }
    body.member main .content .info-list .box .attention p {
      color: #e50065;
      line-height: 1.5;
      max-width: 482px; }
  body.member main .content .tab-box .label {
    background: #0066A9;
    color: #fff;
    font-size: 14px;
    font-size: 1.4rem;
    width: 300px;
    padding: 9px;
    text-align: center;
    border-radius: 9px 9px 0 0;
    box-shadow: 2px 2px 0 #898989;
    font-weight: 600; }
    @media only screen and (max-width: 767px) {
      body.member main .content .tab-box .label {
        width: 250px;
        font-size: 13px;
        font-size: 1.3rem;
        padding: 10px;
        border-radius: 5px 5px 0 0; } }
  body.member main .content .tab-box .box {
    background: #fff;
    box-shadow: 2px 2px 0 #898989;
    padding: 18px 24px;
    max-height: 175px;
    overflow: scroll; }
    @media only screen and (max-width: 767px) {
      body.member main .content .tab-box .box {
        padding: 7px 14px;
        min-height: 0; } }
    body.member main .content .tab-box .box .list li {
      font-size: 11px;
      font-size: 1.1rem;
      margin: 0 0 11px;
      padding-left: 14px;
      position: relative; }
      @media only screen and (max-width: 767px) {
        body.member main .content .tab-box .box .list li {
          font-size: 10px;
          font-size: 1rem;
          line-height: 1.5714;
          margin: 0; } }
      body.member main .content .tab-box .box .list li:before {
        content: "";
        width: 10px;
        height: 10px;
        display: inline-block;
        background: #00A5E3;
        border-radius: 50%;
        margin-right: 4px;
        vertical-align: middle;
        position: absolute;
        top: 1px;
        left: 0; }
    body.member main .content .tab-box .box .btn-list {
      display: -webkit-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      flex-wrap: wrap; }
      body.member main .content .tab-box .box .btn-list li {
        width: 18.3333%;
        box-shadow: 2px 2px 0 #898989;
        border-radius: 4px;
        margin: 0 0 16px;
        position: relative;
        margin-right: 2.08%; }
        body.member main .content .tab-box .box .btn-list li:nth-of-type(5n) {
          margin-right: 0; }
          @media only screen and (max-width: 767px) {
            body.member main .content .tab-box .box .btn-list li:nth-of-type(5n) {
              margin-right: 3.5%; } }
        @media only screen and (max-width: 767px) {
          body.member main .content .tab-box .box .btn-list li:nth-of-type(3n) {
            margin-right: 0; } }
        @media only screen and (max-width: 767px) {
          body.member main .content .tab-box .box .btn-list li {
            width: 31%;
            margin: 0 0 10px;
            margin-right: 3.5%; } }
        body.member main .content .tab-box .box .btn-list li a {
          display: block;
          background: linear-gradient(180deg, #E0E4F1, #BEC5E0);
          padding: 9px 3px;
          text-align: center;
          border-radius: 4px;
          font-size: 12px;
          font-size: 1.2rem;
          height: 30px;
          font-feature-settings: "palt";
          white-space: nowrap; }
          body.member main .content .tab-box .box .btn-list li a.red {
            background: linear-gradient(180deg, #EAE0ED, #D4BBD6); }
        body.member main .content .tab-box .box .btn-list li .attention {
          position: absolute;
          left: 50%;
          bottom: -29px;
          -webkit-transform: translate(-50%, 0);
          -moz-transform: translate(-50%, 0);
          -ms-transform: translate(-50%, 0);
          -o-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
          font-size: 10px;
          font-size: 1rem;
          color: #EB6EA5;
          line-height: 1.2222;
          display: block;
          width: 120%;
          padding-left: 11px; }
          @media only screen and (max-width: 767px) {
            body.member main .content .tab-box .box .btn-list li .attention {
              width: 200%;
              left: 110%;
              -webkit-transform: translate(0%, 0);
              -moz-transform: translate(0%, 0);
              -ms-transform: translate(0%, 0);
              -o-transform: translate(0%, 0);
              transform: translate(0%, 0);
              bottom: 0; } }
          body.member main .content .tab-box .box .btn-list li .attention:before {
            content: "※";
            position: absolute;
            top: 0;
            left: 0; }
    body.member main .content .tab-box .box .link-list {
      display: -webkit-flex;
      display: flex;
      -webkit-justify-content: space-between;
      justify-content: space-between;
      -webkit-flex-wrap: wrap;
      flex-wrap: wrap; }
      body.member main .content .tab-box .box .link-list li {
        border-bottom: 1px solid #000;
        width: 47.7%; }
        body.member main .content .tab-box .box .link-list li:nth-of-type(1) {
          border-top: 1px solid #000; }
          @media only screen and (max-width: 767px) {
            body.member main .content .tab-box .box .link-list li:nth-of-type(1) {
              border-top: none; } }
        body.member main .content .tab-box .box .link-list li:nth-of-type(2) {
          border-top: 1px solid #000; }
          @media only screen and (max-width: 767px) {
            body.member main .content .tab-box .box .link-list li:nth-of-type(2) {
              border-top: none; } }
        @media only screen and (max-width: 767px) {
          body.member main .content .tab-box .box .link-list li:last-of-type {
            border: none; } }
        @media only screen and (max-width: 767px) {
          body.member main .content .tab-box .box .link-list li:nth-last-of-type(2) {
            border: none; } }
        body.member main .content .tab-box .box .link-list li a {
          display: block;
          padding: 16px 0 16px 37px;
          position: relative;
          font-size: 11px;
          font-size: 1.1rem; }
          @media only screen and (max-width: 767px) {
            body.member main .content .tab-box .box .link-list li a {
              padding-left: 25px;
              font-size: 10px;
              font-size: 1rem;
              line-height: 1.2; } }
          body.member main .content .tab-box .box .link-list li a:before {
            content: "";
            width: 20px;
            height: 20px;
            display: block;
            position: absolute;
            top: 50%;
            left: 3px;
            border-radius: 7px;
            -webkit-transform: translate(0, -50%);
            -moz-transform: translate(0, -50%);
            -ms-transform: translate(0, -50%);
            -o-transform: translate(0, -50%);
            transform: translate(0, -50%);
            background: linear-gradient(180deg, #1FA9DE, #0278B5); }
            @media only screen and (max-width: 767px) {
              body.member main .content .tab-box .box .link-list li a:before {
                width: 18px;
                height: 18px;
                border-radius: 3px;
                left: 0; } }
          body.member main .content .tab-box .box .link-list li a:after {
            content: "";
            width: 7px;
            height: 7px;
            border-top: 2px solid #fff;
            border-right: 2px solid #fff;
            position: absolute;
            left: 4px;
            top: 46%;
            -webkit-transform: rotate(45deg) translate(0, -51%);
            -moz-transform: rotate(45deg) translate(0, -51%);
            -ms-transform: rotate(45deg) translate(0, -51%);
            -o-transform: rotate(45deg) translate(0, -51%);
            transform: rotate(45deg) translate(0, -51%); }
            @media only screen and (max-width: 767px) {
              body.member main .content .tab-box .box .link-list li a:after {
                width: 6px;
                height: 6px;
                left: 1px;
                top: 48%; } }
  body.member main .content .tab-box .box02 {
    padding: 25px 55px 20px;
    min-height: 0; }
    @media only screen and (max-width: 767px) {
      body.member main .content .tab-box .box02 {
        padding: 11px 22px 3px; } }
  body.member main .content .info-box {
    margin: 0 0 35px;
    position: relative; }
    @media only screen and (max-width: 767px) {
      body.member main .content .info-box {
        margin: 0 0 22px; } }
  body.member main .content .link-box .box {
    padding: 35px 30px; }
    @media only screen and (max-width: 767px) {
      body.member main .content .link-box .box {
        padding: 3px 10px; } }
  body.member main .content .list02 {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 20px auto;
    max-width: 900px; }
    @media only screen and (max-width: 767px) {
      body.member main .content .list02 {
        max-width: 240px;
        margin: 10px auto 12px; } }
    body.member main .content .list02 li {
      width: calc((100% - 36px) / 3);
      box-shadow: 2px 2px 0 #898989;
      border-radius: 4px;
      margin: 0 18px 16px 0; }
      @media only screen and (max-width: 767px) {
        body.member main .content .list02 li {
          width: 100%;
          margin: 0 0 10px;
          border-radius: 3px; } }
      @media only screen and (min-width: 768px) {
        body.member main .content .list02 li:nth-of-type(3n) {
          margin-right: 0; } }
      body.member main .content .list02 li a {
        display: block;
        background: linear-gradient(180deg, #E0E4F1, #BEC5E0);
        padding: 9px;
        text-align: center;
        border-radius: 4px;
        font-size: 12px;
        font-size: 1.2rem;
        height: 30px;
        font-feature-settings: "palt"; }
      body.member main .content .list02 li .red {
        background: linear-gradient(#efb0b8, #e50065);
        color: #fff; }
      body.member main .content .list02 li .green {
        color: #fff;
        background: linear-gradient(#B1DBCD, #009D85); }
  body.member main .content .pdf {
    border-top: 1px dashed #000;
    border-bottom: 1px dashed #000;
    padding: 7px 0;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
    margin: 0 0 58px; }
    @media only screen and (max-width: 767px) {
      body.member main .content .pdf {
        padding: 4px 0;
        margin: 0 0 19px; } }
    body.member main .content .pdf .img-pdf {
      width: 25px; }
      @media only screen and (max-width: 767px) {
        body.member main .content .pdf .img-pdf {
          width: 19px; } }
    body.member main .content .pdf .img-adobe {
      width: 113px; }
      @media only screen and (max-width: 767px) {
        body.member main .content .pdf .img-adobe {
          width: 85px; } }
    body.member main .content .pdf .text {
      font-size: 11px;
      font-size: 1.1rem;
      line-height: 1.318;
      margin: 0 7px 0 11px; }
      @media only screen and (max-width: 767px) {
        body.member main .content .pdf .text {
          font-size: 10px;
          font-size: 1rem;
          line-height: 1.2; } }

body.member main .sub_cont .mv-sub {
  height: 106px;
  background: #fff; }
  @media only screen and (max-width: 767px) {
    body.member main .sub_cont .mv-sub {
      height: 53px; } }

body.member main .sub_cont .content {
  padding: 0; }
  @media only screen and (max-width: 767px) {
    body.member main .sub_cont .content {
      position: relative;
      z-index: 1;
      overflow: hidden; } }

body.member main .sub_cont .cont_cvr {
  padding: 50px 0; }
  @media only screen and (max-width: 767px) {
    body.member main .sub_cont .cont_cvr {
      padding: 25px 0;
      width: 100%;
      max-width: 540px;
      margin: 0 auto; } }
  body.member main .sub_cont .cont_cvr.cont_cvr1 {
    background-image: url("../images/member-detail/bg1.png");
    background-size: auto 115%;
    background-position: center center;
    background-repeat: no-repeat;
    position: relative; }
    @media only screen and (max-width: 767px) {
      body.member main .sub_cont .cont_cvr.cont_cvr1 {
        background: none;
        position: relative; } }
    body.member main .sub_cont .cont_cvr.cont_cvr1 .totop {
      display: block;
      width: 30px;
      height: 30px;
      position: absolute;
      bottom: 50px;
      left: calc(100% - 10px); }
      @media only screen and (max-width: 1000px) {
        body.member main .sub_cont .cont_cvr.cont_cvr1 .totop {
          position: relative;
          margin: 15px 15px 0px auto;
          bottom: auto;
          left: auto;
          z-index: 2; } }
      @media only screen and (max-width: 767px) {
        body.member main .sub_cont .cont_cvr.cont_cvr1 .totop {
          margin: 15px 0 0px auto; } }
    @media only screen and (max-width: 767px) {
      body.member main .sub_cont .cont_cvr.cont_cvr1::after {
        content: '';
        background-image: url("../images/member-detail/bg1.png");
        background-size: 90%;
        background-position: top right -104px;
        background-repeat: no-repeat;
        width: 100%;
        position: absolute;
        height: 100%;
        top: 0;
        right: -20px;
        z-index: 1; } }
  body.member main .sub_cont .cont_cvr .flex {
    display: flex;
    justify-content: space-between;
    align-items: start;
    width: 100%;
    max-width: 840px;
    margin: 0 auto; }
    @media only screen and (max-width: 767px) {
      body.member main .sub_cont .cont_cvr .flex {
        display: block;
        position: relative;
        z-index: 2; } }
    body.member main .sub_cont .cont_cvr .flex .left {
      width: calc(50% - 20px);
      max-width: 380px;
      min-height: 440px;
      background: #fff;
      border: 1px solid #DB6AA4;
      padding: 15px 25px 35px;
      box-shadow: 2px 2px 0 #898989; }
      @media only screen and (max-width: 767px) {
        body.member main .sub_cont .cont_cvr .flex .left {
          box-shadow: 1px 1px 0 #898989;
          width: 70%;
          max-width: 230px;
          padding: 10px 10px 11px;
          min-height: 0; } }
      body.member main .sub_cont .cont_cvr .flex .left .cont_title {
        font-weight: 700;
        font-size: 23px;
        font-size: 2.3rem;
        line-height: 1.39;
        display: block;
        text-align: center;
        color: #AE5283; }
        @media only screen and (max-width: 900px) {
          body.member main .sub_cont .cont_cvr .flex .left .cont_title {
            font-size: 18px;
            font-size: 1.8rem; } }
        @media only screen and (max-width: 767px) {
          body.member main .sub_cont .cont_cvr .flex .left .cont_title {
            font-size: 14px;
            font-size: 1.4rem; } }
      body.member main .sub_cont .cont_cvr .flex .left .cont_item {
        position: relative;
        width: 100%; }
        body.member main .sub_cont .cont_cvr .flex .left .cont_item_index {
          color: #DB6AA4;
          font-size: 17px;
          font-size: 1.7rem;
          padding: 0 0 5px 5px;
          font-weight: 700;
          border-bottom: 1px solid #DB6AA4;
          display: block;
          margin-bottom: 7px;
          margin-top: 22px; }
          @media only screen and (max-width: 767px) {
            body.member main .sub_cont .cont_cvr .flex .left .cont_item_index {
              font-size: 11px;
              font-size: 1.1rem;
              margin: 10px 0 5px;
              padding: 0 0 3px 0; } }
        body.member main .sub_cont .cont_cvr .flex .left .cont_item_ul {
          padding-left: 15px;
          padding-right: 160px; }
          @media only screen and (max-width: 900px) {
            body.member main .sub_cont .cont_cvr .flex .left .cont_item_ul {
              padding: 0; } }
          body.member main .sub_cont .cont_cvr .flex .left .cont_item_ul li {
            padding-left: 1em;
            font-size: 14px;
            font-size: 1.4rem;
            line-height: 1.64;
            position: relative; }
            @media only screen and (max-width: 767px) {
              body.member main .sub_cont .cont_cvr .flex .left .cont_item_ul li {
                font-size: 10px;
                font-size: 1rem;
                line-height: 1.35; } }
            body.member main .sub_cont .cont_cvr .flex .left .cont_item_ul li:before {
              content: '・';
              position: absolute;
              top: 0;
              left: 0; }
        body.member main .sub_cont .cont_cvr .flex .left .cont_item_btn {
          position: absolute;
          bottom: 20px;
          right: 0;
          font-size: 15px;
          font-size: 1.5rem;
          display: inline-block;
          width: 150px;
          height: 70px;
          color: #fff;
          font-weight: 700;
          background: linear-gradient(180deg, #E4B8D5, #BE0081);
          border-radius: 10px;
          display: flex;
          justify-content: center;
          align-items: center;
          padding-right: 20px; }
          @media only screen and (max-width: 900px) {
            body.member main .sub_cont .cont_cvr .flex .left .cont_item_btn {
              position: relative;
              margin-top: 12px; } }
          @media only screen and (max-width: 767px) {
            body.member main .sub_cont .cont_cvr .flex .left .cont_item_btn {
              position: absolute;
              margin-top: 0;
              bottom: 10px;
              padding-right: 15px;
              width: 90px;
              height: 45px;
              border-radius: 5px;
              font-size: 10px;
              font-size: 1rem; } }
          body.member main .sub_cont .cont_cvr .flex .left .cont_item_btn::after {
            content: '';
            width: 18px;
            height: 18px;
            box-sizing: border-box;
            display: block;
            transform: rotate(-45deg) translateY(-50%);
            border-right: 4px solid #fff;
            border-bottom: 4px solid #fff;
            top: calc(50% - 3px);
            right: 17px;
            position: absolute; }
            @media only screen and (max-width: 767px) {
              body.member main .sub_cont .cont_cvr .flex .left .cont_item_btn::after {
                width: 12px;
                height: 12px;
                border-right: 2px solid #fff;
                border-bottom: 2px solid #fff;
                right: 10px;
                top: calc(50% - 1px); } }
    body.member main .sub_cont .cont_cvr .flex .right {
      box-shadow: -2px -2px 0 #898989;
      background: #fff;
      width: calc(50% - 20px);
      max-width: 420px;
      height: 400px;
      margin-top: 190px; }
      @media only screen and (max-width: 767px) {
        body.member main .sub_cont .cont_cvr .flex .right {
          box-shadow: -1px -1px 0 #898989;
          width: 100%;
          height: 175px;
          margin-top: 27px;
          max-width: none; } }
      body.member main .sub_cont .cont_cvr .flex .right .archive_head {
        font-size: 20px;
        font-size: 2rem;
        letter-spacing: 0.05em;
        font-weight: 700;
        color: #AE5283;
        padding: 0 30px;
        display: flex;
        justify-content: start;
        align-items: center;
        background: linear-gradient(180deg, #FBFCFC, #CED2DE);
        width: 100%;
        height: 50px; }
        @media only screen and (max-width: 767px) {
          body.member main .sub_cont .cont_cvr .flex .right .archive_head {
            font-size: 13.5px;
            font-size: 1.35rem;
            height: 41px;
            padding: 0 15px; } }
      body.member main .sub_cont .cont_cvr .flex .right .archive_inner {
        overflow-y: scroll;
        padding: 18px 20px 18px 18px;
        height: 350px; }
        @media only screen and (max-width: 767px) {
          body.member main .sub_cont .cont_cvr .flex .right .archive_inner {
            padding: 13px 10px 13px 10px;
            height: 134px; } }
        body.member main .sub_cont .cont_cvr .flex .right .archive_inner .archive_ul li {
          border-top: 1px dashed rgba(0, 0, 0, 0.3); }
          body.member main .sub_cont .cont_cvr .flex .right .archive_inner .archive_ul li span.dmy {
            height: 60px;
            display: block; }
            @media only screen and (max-width: 767px) {
              body.member main .sub_cont .cont_cvr .flex .right .archive_inner .archive_ul li span.dmy {
                height: 34px; } }
          body.member main .sub_cont .cont_cvr .flex .right .archive_inner .archive_ul li a {
            padding: 0 50px 0 10px;
            width: 100%;
            position: relative;
            display: flex;
            justify-content: start;
            align-items: center;
            height: 60px; }
            @media only screen and (max-width: 900px) {
              body.member main .sub_cont .cont_cvr .flex .right .archive_inner .archive_ul li a {
                font-size: 12.5px;
                font-size: 1.25rem;
                padding: 0 40px 0 10px; } }
            @media only screen and (max-width: 767px) {
              body.member main .sub_cont .cont_cvr .flex .right .archive_inner .archive_ul li a {
                font-size: 10.5px;
                font-size: 1.05rem;
                padding: 0 30px 0 7px;
                height: 34px; } }
            body.member main .sub_cont .cont_cvr .flex .right .archive_inner .archive_ul li a .date {
              font-weight: 700;
              color: #DB6AA4;
              width: 70px;
              margin-right: 5px; }
              @media only screen and (max-width: 767px) {
                body.member main .sub_cont .cont_cvr .flex .right .archive_inner .archive_ul li a .date {
                  width: 62px; } }
            body.member main .sub_cont .cont_cvr .flex .right .archive_inner .archive_ul li a .text {
              line-height: 1.5; }
            body.member main .sub_cont .cont_cvr .flex .right .archive_inner .archive_ul li a::before {
              content: '';
              width: 27px;
              height: 27px;
              position: absolute;
              top: 50%;
              transform: translate(0, -50%);
              right: 10px;
              border-radius: 7px;
              background: linear-gradient(180deg, #E4B8D5, #BE0081);
              z-index: 2; }
              @media only screen and (max-width: 767px) {
                body.member main .sub_cont .cont_cvr .flex .right .archive_inner .archive_ul li a::before {
                  width: 21px;
                  height: 21px;
                  right: 5px;
                  border-radius: 5px; } }
            body.member main .sub_cont .cont_cvr .flex .right .archive_inner .archive_ul li a::after {
              content: '';
              width: 14px;
              height: 14px;
              box-sizing: border-box;
              display: block;
              transform: rotate(-45deg) translate(0, -50%);
              border-right: 3px solid #fff;
              border-bottom: 3px solid #fff;
              top: 47%;
              right: 14px;
              position: absolute;
              z-index: 3; }
              @media only screen and (max-width: 767px) {
                body.member main .sub_cont .cont_cvr .flex .right .archive_inner .archive_ul li a::after {
                  width: 10px;
                  height: 10px;
                  border-right: 2px solid #fff;
                  border-bottom: 2px solid #fff;
                  top: 45%;
                  right: 9px; } }
  body.member main .sub_cont .cont_cvr.cont_cvr2 {
    background-image: url("../images/member-detail/bg2.png");
    background-size: auto 118%;
    background-position: center center;
    background-repeat: no-repeat; }
    @media only screen and (max-width: 767px) {
      body.member main .sub_cont .cont_cvr.cont_cvr2 {
        background: none;
        position: relative; } }
    @media only screen and (max-width: 767px) {
      body.member main .sub_cont .cont_cvr.cont_cvr2::after {
        content: '';
        background-image: url("../images/member-detail/bg2.png");
        background-size: 100%;
        background-position: top right -104px;
        background-repeat: no-repeat;
        width: 100%;
        position: absolute;
        height: 100%;
        top: 0;
        right: -20px;
        z-index: 1; } }
    body.member main .sub_cont .cont_cvr.cont_cvr2 .flex .left {
      border: 1px solid #009D85;
      padding: 20px 18px 0px; }
      @media only screen and (max-width: 900px) {
        body.member main .sub_cont .cont_cvr.cont_cvr2 .flex .left {
          min-height: 0; } }
      @media only screen and (max-width: 767px) {
        body.member main .sub_cont .cont_cvr.cont_cvr2 .flex .left {
          padding: 12px 12px 5px; } }
      body.member main .sub_cont .cont_cvr.cont_cvr2 .flex .left .cont_title {
        color: #007E6A;
        font-size: 30px;
        font-size: 3rem;
        letter-spacing: 0.25em;
        margin-bottom: 18px; }
        @media only screen and (max-width: 900px) {
          body.member main .sub_cont .cont_cvr.cont_cvr2 .flex .left .cont_title {
            font-size: 24px;
            font-size: 2.4rem; } }
        @media only screen and (max-width: 767px) {
          body.member main .sub_cont .cont_cvr.cont_cvr2 .flex .left .cont_title {
            font-size: 17.5px;
            font-size: 1.75rem;
            margin-bottom: 10px; } }
      body.member main .sub_cont .cont_cvr.cont_cvr2 .flex .left .cont_item {
        display: flex;
        justify-content: space-between;
        align-items: center;
        border-top: 1px solid #009D85;
        padding: 20px 0; }
        @media only screen and (max-width: 767px) {
          body.member main .sub_cont .cont_cvr.cont_cvr2 .flex .left .cont_item {
            padding: 11px 0; } }
        body.member main .sub_cont .cont_cvr.cont_cvr2 .flex .left .cont_item_index {
          color: #000;
          font-size: 20px;
          font-size: 2rem;
          font-weight: 400;
          line-height: 1.2;
          border-bottom: none;
          width: calc(100% - 160px);
          display: block;
          margin: 0; }
          @media only screen and (max-width: 900px) {
            body.member main .sub_cont .cont_cvr.cont_cvr2 .flex .left .cont_item_index {
              font-size: 16px;
              font-size: 1.6rem; } }
          @media only screen and (max-width: 767px) {
            body.member main .sub_cont .cont_cvr.cont_cvr2 .flex .left .cont_item_index {
              width: calc(100% - 100px);
              font-size: 12px;
              font-size: 1.2rem; } }
        body.member main .sub_cont .cont_cvr.cont_cvr2 .flex .left .cont_item_btn {
          position: relative;
          bottom: auto;
          right: auto;
          height: 42px;
          background: linear-gradient(180deg, #B1DBCD, #009D85); }
          @media only screen and (max-width: 900px) {
            body.member main .sub_cont .cont_cvr.cont_cvr2 .flex .left .cont_item_btn {
              margin-top: 0; } }
          @media only screen and (max-width: 767px) {
            body.member main .sub_cont .cont_cvr.cont_cvr2 .flex .left .cont_item_btn {
              height: 26px; }
              body.member main .sub_cont .cont_cvr.cont_cvr2 .flex .left .cont_item_btn::after {
                top: calc(50% - 2px); } }
    body.member main .sub_cont .cont_cvr.cont_cvr2 .flex .right .archive_head {
      color: #007E6A; }
    body.member main .sub_cont .cont_cvr.cont_cvr2 .flex .right .archive_inner .archive_ul li {
      border-top: 1px dashed rgba(0, 0, 0, 0.3); }
      body.member main .sub_cont .cont_cvr.cont_cvr2 .flex .right .archive_inner .archive_ul li span.dmy {
        height: 62px;
        display: block; }
        @media only screen and (max-width: 767px) {
          body.member main .sub_cont .cont_cvr.cont_cvr2 .flex .right .archive_inner .archive_ul li span.dmy {
            height: 34px; } }
      body.member main .sub_cont .cont_cvr.cont_cvr2 .flex .right .archive_inner .archive_ul li a .date {
        color: #009D85;
        width: 70px; }
        @media only screen and (max-width: 900px) {
          body.member main .sub_cont .cont_cvr.cont_cvr2 .flex .right .archive_inner .archive_ul li a .date {
            width: 60px; } }
      body.member main .sub_cont .cont_cvr.cont_cvr2 .flex .right .archive_inner .archive_ul li a::before {
        background: linear-gradient(180deg, #B1DBCD, #009D85); }

@media all and (-ms-high-contrast: none) {
  body.member main .content .login h3 {
    padding: 18px 15px 12px; }
  body.member main .content .tab-box .label {
    padding: 12px 9px 6px; }
  body.member main .content .list02 li a {
    padding: 12px 9px 6px; }
  body.member main .content .tab-box .box .btn-list li a {
    padding: 12px 9px 6px; }
  body.member main .content .tab-box .box .link-list li a {
    padding: 19px 0 13px 37px; }
  body.member main .content .tab-box .box .btn-list li .attention {
    bottom: -33px; } }
