@charset "UTF-8";
/**
 * Foundation for Sites by ZURB
 * Version 6.3.1
 * foundation.zurb.com
 * Licensed under MIT Open Source
 */
/*! normalize-scss | MIT/GPLv2 License | bit.ly/normalize-scss */
/* Document
========================================================================== */
@import url("https://cdn.jsdelivr.net/npm/yakuhanjp@3.1.0/dist/css/yakuhanjp-noto.min.css");
@import url("https://fonts.googleapis.com/css?family=Roboto+Condensed:400,700");
@import url("https://fonts.googleapis.com/css?family=Montserrat:700");
@import url("https://fonts.googleapis.com/earlyaccess/notosansjp.css");
html {
  font-family: sans-serif;
  line-height: 1.15;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

/* Sections
========================================================================== */
body {
  margin: 0;
}

article, aside, footer, header, nav, section {
  display: block;
}

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

/* Grouping content
========================================================================== */
figcaption, figure {
  display: block;
}

figure {
  margin: 1em 40px;
}

hr {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  height: 0;
  overflow: visible;
}

main {
  display: block;
}

pre {
  font-family: monospace, monospace;
  font-size: 1em;
}

/* Links
========================================================================== */
a {
  background-color: transparent;
  -webkit-text-decoration-skip: objects;
}

a:active, a:hover {
  outline-width: 0;
}

/* Text-level semantics
========================================================================== */
abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}

b, strong {
  font-weight: inherit;
}

b, strong {
  font-weight: bolder;
}

code, kbd, samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

dfn {
  font-style: italic;
}

mark {
  background-color: #ff0;
  color: #000;
}

small {
  font-size: 80%;
}

sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

ul, li, ol, dt, dd {
  list-style: none;
}

/* Embedded content
========================================================================== */
audio, video {
  display: inline-block;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

img {
  border-style: none;
}

svg:not(:root) {
  overflow: hidden;
}

/* Forms
========================================================================== */
button, input, optgroup, select, textarea {
  font-family: sans-serif;
  font-size: 100%;
  line-height: 1.15;
  margin: 0;
}

button {
  overflow: visible;
}

button, select {
  text-transform: none;
}

button, html [type="button"], [type="reset"], [type="submit"] {
  -webkit-appearance: button;
}

button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

input {
  overflow: visible;
}

[type="checkbox"], [type="radio"] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0;
}

[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button {
  height: auto;
}

[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

[type="search"]::-webkit-search-cancel-button, [type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

legend {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: table;
  max-width: 100%;
  padding: 0;
  color: inherit;
  white-space: normal;
}

progress {
  display: inline-block;
  vertical-align: baseline;
}

textarea {
  overflow: auto;
}

/* Interactive
========================================================================== */
details {
  display: block;
}

summary {
  display: list-item;
}

menu {
  display: block;
}

/* Scripting
========================================================================== */
canvas {
  display: inline-block;
}

template {
  display: none;
}

/* Hidden
========================================================================== */
[hidden] {
  display: none;
}

.foundation-mq {
  font-family: "small=0em&medium=40em&large=64em&xlarge=75em&xxlarge=90em";
}

html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 100%;
}

*, *::before, *::after {
  -webkit-box-sizing: inherit;
          box-sizing: inherit;
}

body {
  margin: 0;
  padding: 0;
  background: #fefefe;
  font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-weight: normal;
  line-height: 1.5;
  color: #0a0a0a;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

img {
  display: inline-block;
  vertical-align: middle;
  max-width: 100%;
  height: auto;
  -ms-interpolation-mode: bicubic;
}

textarea {
  height: auto;
  min-height: 50px;
  border-radius: 0;
}

select {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  border-radius: 0;
}

.map_canvas img, .map_canvas embed, .map_canvas object, .mqa-display img, .mqa-display embed, .mqa-display object {
  max-width: none !important;
}

button {
  padding: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: 0;
  border-radius: 0;
  background: transparent;
  line-height: 1;
}

[data-whatinput='mouse'] button {
  outline: 0;
}

pre {
  overflow: auto;
}

/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/
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-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none;
}

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

.fr {
  float: right;
}

.imgR {
  float: right;
  margin-left: 20px;
}

.fl {
  float: left;
}

.imgL {
  float: left;
  margin-right: 20px;
}

.imgC, .tC {
  text-align: center;
}

.imgC {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.tR {
  text-align: right;
}

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

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

.pt0 {
  padding-top: 0px !important;
}

.pb0 {
  padding-bottom: 0px !important;
}

.mt5 {
  margin-top: 5px !important;
}

.mb5 {
  margin-bottom: 5px !important;
}

.pt5 {
  padding-top: 5px !important;
}

.pb5 {
  padding-bottom: 5px !important;
}

.mt10 {
  margin-top: 10px !important;
}

.mb10 {
  margin-bottom: 10px !important;
}

.pt10 {
  padding-top: 10px !important;
}

.pb10 {
  padding-bottom: 10px !important;
}

.mt15 {
  margin-top: 15px !important;
}

.mb15 {
  margin-bottom: 15px !important;
}

.pt15 {
  padding-top: 15px !important;
}

.pb15 {
  padding-bottom: 15px !important;
}

.mt20 {
  margin-top: 20px !important;
}

.mb20 {
  margin-bottom: 20px !important;
}

.pt20 {
  padding-top: 20px !important;
}

.pb20 {
  padding-bottom: 20px !important;
}

.mt25 {
  margin-top: 25px !important;
}

.mb25 {
  margin-bottom: 25px !important;
}

.pt25 {
  padding-top: 25px !important;
}

.pb25 {
  padding-bottom: 25px !important;
}

.mt30 {
  margin-top: 30px !important;
}

.mb30 {
  margin-bottom: 30px !important;
}

.pt30 {
  padding-top: 30px !important;
}

.pb30 {
  padding-bottom: 30px !important;
}

.mt35 {
  margin-top: 35px !important;
}

.mb35 {
  margin-bottom: 35px !important;
}

.pt35 {
  padding-top: 35px !important;
}

.pb35 {
  padding-bottom: 35px !important;
}

.mt40 {
  margin-top: 40px !important;
}

.mb40 {
  margin-bottom: 40px !important;
}

.pt40 {
  padding-top: 40px !important;
}

.pb40 {
  padding-bottom: 40px !important;
}

.mt45 {
  margin-top: 45px !important;
}

.mb45 {
  margin-bottom: 45px !important;
}

.pt45 {
  padding-top: 45px !important;
}

.pb45 {
  padding-bottom: 45px !important;
}

.mt50 {
  margin-top: 50px !important;
}

.mb50 {
  margin-bottom: 50px !important;
}

.pt50 {
  padding-top: 50px !important;
}

.pb50 {
  padding-bottom: 50px !important;
}

.mr0 {
  margin-right: 0 !important;
}

.pr0 {
  padding-right: 0 !important;
}

/* clearfix */
.clear-fix:after {
  content: " ";
  display: block;
  clear: both;
}

.clear {
  clear: both;
}

/* MW WP FORM */
/* 基本タグのフォントサイズを指定（12px -> 120% or 1.2em ） */
h1, h2, h3, h4, h5, h6, input, button, textarea, select, p, th, td, address, li, dt, dd {
  font-weight: 400;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}

.contents h1, .contents h2, .contents h3, .contents h4, .contents h5, .contents h6, .contents input, .contents button, .contents textarea, .contents select, .contents p, .contents th, .contents td, .contents address, .contents li, .contents dt, .contents dd {
  line-height: 1.6;
}
@media screen and (min-width: 960px) {
  .contents h1, .contents h2, .contents h3, .contents h4, .contents h5, .contents h6, .contents input, .contents button, .contents textarea, .contents select, .contents p, .contents th, .contents td, .contents address, .contents li, .contents dt, .contents dd {
    font-size: 16px;
  }
}
@media screen and (max-width: 959px) {
  .contents h1, .contents h2, .contents h3, .contents h4, .contents h5, .contents h6, .contents input, .contents button, .contents textarea, .contents select, .contents p, .contents th, .contents td, .contents address, .contents li, .contents dt, .contents dd {
    font-size: 14px;
  }
}

/* =========================================================
	element style
========================================================= */
html, body {
  height: 100%;
}

body {
  color: #000;
  font-family: "Roboto Condensed", YakuHanJP_Noto, "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}

input, textarea, button {
  font-family: "Roboto Condensed", YakuHanJP_Noto, "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  -webkit-appearance: none;
}

a {
  color: #000;
}

@media screen and (min-width: 1024px) {
  a:hover {
    text-decoration: none;
  }
  a.hov {
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
  }
  a.hov:hover {
    opacity: 0.6;
  }
}
img {
  max-width: 100%;
  height: auto;
}

/* =========================================================
 icon
========================================================= */
@font-face {
  font-family: 'fonts';
  src: url("/common/fonts/fonts.ttf?ielakg&ver=20190409") format("truetype"), url("/common/fonts/fonts.woff?ielakg&ver=20190409") format("woff"), url("/common/fonts/fonts.svg?ielakg#fonts&ver=20190409") format("svg");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'def';
  src: url("/common/fonts/def.ttf?b8fhm8") format("truetype"), url("/common/fonts/def.woff?b8fhm8") format("woff"), url("/common/fonts/def.svg?b8fhm8#def") format("svg");
  font-weight: normal;
  font-style: normal;
}
[class^="icon-"], [class*=" icon-"], [class^="ico-"], [class*=" ico-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

[class^="icon-"], [class*=" icon-"] {
  font-family: 'fonts' !important;
}

[class^="ico-"], [class*=" ico-"] {
  font-family: 'def' !important;
}

/* myset
--------------------------------------------------------- */
.icon-tel:before {
  content: "\e90e";
}

.icon-health:before {
  content: "\e902";
}

.icon-message:before {
  content: "\e900";
}

.icon-email:before {
  content: "\e901";
}

.icon-logo:before {
  content: "\e903";
}

.icon-place:before {
  content: "\e904";
}

.icon-run:before {
  content: "\e905";
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
}

.icon-pool:before {
  content: "\e906";
}

.icon-arrow:before {
  content: "\e908";
}

.icon-train:before {
  content: "\e909";
}

.icon-car:before {
  content: "\e90a";
}

/* defalt
--------------------------------------------------------- */
.ico-down:before {
  content: "\e802";
}

.ico-prv:before {
  content: "\e803";
}

.ico-up:before {
  content: "\e805";
}

.ico-comment:before {
  content: "\e806";
}

.ico-download:before {
  content: "\e807";
}

.ico-external:before {
  content: "\e808";
}

.ico-map:before {
  content: "\e80a";
}

.ico-close:before {
  content: "\e80b";
}

.ico-open:before {
  content: "\e80d";
}

.ico-search:before {
  content: "\e80e";
}

.ico-zoom-in:before {
  content: "\e80f";
}

.ico-zoom-out:before {
  content: "\e810";
}

/* =========================================================
	general
========================================================= */
@media screen and (min-width: 960px) {
  .cnt-pc {
    display: block;
  }
}
@media screen and (max-width: 959px) {
  .cnt-pc {
    display: none;
  }
}

@media screen and (min-width: 960px) {
  .inline-pc {
    display: inline;
  }
}
@media screen and (max-width: 959px) {
  .inline-pc {
    display: none;
  }
}

@media screen and (min-width: 960px) {
  .cnt-sp {
    display: none;
  }
}
@media screen and (max-width: 959px) {
  .cnt-sp {
    display: block;
  }
}

.contents h2 {
  position: relative;
  margin-bottom: 25px;
  padding: 0 0 10px 25px;
  border-bottom: 2px solid #00B9EF;
  font-size: 30px;
  font-weight: 700;
  letter-spacing: 2px;
}
@media screen and (min-width: 960px) {
  .contents h2 {
    margin-bottom: 30px;
    padding: 0 0 15px 0;
    font-size: 30px;
    letter-spacing: 2px;
  }
}
@media screen and (max-width: 959px) {
  .contents h2 {
    margin-bottom: 15px;
    padding: 0 0 10px 0;
    font-size: 20px;
  }
}
.contents h3 {
  border-left: 3px solid #00B9EF;
  color: #00B9EF;
  font-weight: 700;
  line-height: 1.3;
}
@media screen and (min-width: 960px) {
  .contents h3 {
    margin-bottom: 20px;
    padding-left: 7px;
    font-size: 24px;
  }
}
@media screen and (max-width: 959px) {
  .contents h3 {
    margin-bottom: 10px;
    padding-left: 5px;
    font-size: 16px;
  }
}
.contents .copy {
  padding: 0;
  border: none;
}

@media screen and (min-width: 960px) {
  .article {
    padding-bottom: 150px;
  }
}
@media screen and (max-width: 959px) {
  .article {
    padding-bottom: 50px;
  }
}
@media screen and (min-width: 960px) {
  .article.cnt-intro {
    padding-top: 90px;
  }
}
@media screen and (max-width: 959px) {
  .article.cnt-intro {
    padding-top: 40px;
  }
}
@media screen and (min-width: 960px) {
  .article-title.pct-title {
    height: 200px;
    text-align: center;
  }
  .article-title.pct-title img {
    width: 281px;
  }
}
@media screen and (max-width: 959px) {
  .article-title.pct-title {
    height: 164px;
    text-align: center;
  }
  .article-title.pct-title img {
    width: 250px;
  }
}
@media screen and (min-width: 960px) {
  .article-btn {
    padding-top: 50px;
  }
}
.article-main p {
  letter-spacing: .05em;
  line-height: 1.9;
}
.article-main p.copy {
  font-size: 24px;
  margin-bottom: 30px;
}
@media screen and (max-width: 959px) {
  .article-main p.copy {
    font-size: 18px;
    margin-bottom: 15px;
  }
}
@media screen and (min-width: 960px) {
  .article-main p {
    font-size: 16px;
  }
}
@media screen and (max-width: 959px) {
  .article-main p {
    font-size: 14px;
  }
}

article.info .info-data span {
  font-size: 16px;
}
@media screen and (max-width: 959px) {
  article.info .info-data span {
    font-size: 14px;
  }
}
article.info .info-data .category {
  display: inline-block;
  margin-right: 10px;
  text-decoration: none;
  padding: 6px 12px;
  border-radius: 10px;
  background: #00B9EF;
  color: white;
  font-family: "Montserrat", sans-serif;
  font-size: 12px;
  font-weight: bold;
  letter-spacing: .08em;
}
article.info .info-title {
  font-size: 22px;
  line-height: 2;
  border-bottom: 2px solid #00B9EF;
  margin-bottom: 50px;
  padding: 15px 0 13px;
}
@media screen and (max-width: 959px) {
  article.info .info-title {
    font-size: 18px;
    margin-bottom: 30px;
  }
}
article.info .news .info-data .category {
  color: white;
}
article.info .news .info-title {
  border-bottom: 2px solid #00B9EF;
}

.flexbox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.flexbox-fixed {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

@media screen and (max-width: 959px) {
  #home-page .col2box-mv {
    position: absolute;
    overflow: hidden;
    width: 120px;
    height: 120px;
    top: 0px;
    left: 10px;
    border-radius: 100%;
    -webkit-box-shadow: 1px 2px 3px 0px rgba(0, 0, 0, 0.3);
            box-shadow: 1px 2px 3px 0px rgba(0, 0, 0, 0.3);
    border: 5px solid white;
    z-index: 1;
  }
  #home-page .col2box-mv img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    max-height: 120px;
    max-width: inherit;
    z-index: -1;
  }
}

.col2box {
  background: #F3F1E2;
}
.col2box a {
  display: block;
  width: 100%;
  height: 100%;
  text-decoration: none;
}
@media screen and (min-width: 960px) {
  .col2box {
    width: 490px;
    padding: 30px;
    border-radius: 10px;
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 959px) {
  .col2box {
    width: 100%;
    border-radius: 10px;
    height: 125px;
    position: relative;
    margin-bottom: 15px;
  }
}
.col2box-title {
  margin: 30px;
  line-height: 1;
  letter-spacing: .08em;
  font-size: 20px;
  color: #595757;
  font-weight: bold;
  text-align: center;
}
@media screen and (max-width: 959px) {
  .col2box-title {
    font-size: 16px;
    line-height: 1.6;
    margin: 11px 15px 25px 74px;
    padding: 19px 15px;
    padding-left: 62px;
    border: 5px dotted #F3F1E2;
    border-radius: 10px;
  }
}
.col2box-txt {
  display: block;
  padding-bottom: 30px;
  border-bottom: 5px dotted white;
  line-height: 1.9;
  font-size: 16px;
  letter-spacing: .05em;
  color: #595757;
}
@media screen and (max-width: 959px) {
  .col2box-txt {
    display: none;
  }
}
.col2box-btn {
  margin: 30px 0 0;
  text-align: center;
}
.col2box-btn p {
  display: inline-block;
  position: relative;
  text-decoration: none;
  color: #595757;
  line-height: 1;
}
.col2box-btn p i {
  margin-left: 20px;
  position: absolute;
  top: 0;
  right: -40px;
  color: white;
  font-size: 18px;
  z-index: 1;
  vertical-align: -2px;
}
.col2box-btn p i:after {
  content: "";
  position: absolute;
  left: -2px;
  top: -1px;
  width: 20px;
  height: 20px;
  background: #00B9EF;
  border-radius: 20px;
  z-index: -1;
}
@media screen and (max-width: 959px) {
  .col2box-btn {
    display: none;
  }
}
@media screen and (min-width: 960px) {
  .col2box {
    border: 3px solid #F3F1E2;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
  }
  .col2box:hover {
    border: 3px solid #00B9EF;
  }
  .col2box a,
  .col2box a i {
    -webkit-transition: all .3s;
    transition: all .3s;
  }
  .col2box a:hover {
    font-weight: bold;
  }
  .col2box a:hover i {
    right: -45px;
  }
}
.col2box.under {
  border: 0;
}
.col2box.under:hover {
  border: 0;
}
.col2box.under .col2box-title {
  background: white;
  color: #00B9EF;
  padding: 20px;
  border-radius: 10px;
  border: 2px solid #00B9EF;
  margin: 0;
  margin-bottom: 20px;
}
@media screen and (max-width: 959px) {
  .col2box.under .col2box-title {
    padding: 5px;
    border: 0;
    margin-bottom: 10px;
    border: 2px solid #00B9EF;
  }
}
.col2box.under .col2box-txt {
  padding: 0;
  border: 0;
}
@media screen and (max-width: 959px) {
  .col2box.under {
    height: 100%;
    padding: 15px;
  }
  .col2box.under .col2box-txt {
    display: block;
  }
}
.col2box.gallary {
  border: 0;
}
.col2box.gallary:hover {
  border: 0;
}
@media screen and (max-width: 959px) {
  .col2box.gallary {
    height: 100%;
  }
}
.col2box.gallary .col2box-title {
  margin: 25px 0 0;
  font-size: 16px;
}
@media screen and (max-width: 959px) {
  .col2box.gallary .col2box-title {
    padding: 10px;
    border: none;
    margin: 0;
  }
}

.img-insert {
  overflow: hidden;
  border-radius: 10px;
  margin-bottom: 30px;
}
@media screen and (max-width: 959px) {
  .img-insert {
    border-radius: 5px;
    margin-bottom: 15px;
  }
}

/*
 ____  __  __  ____  ____  _____  _  _ 
(  _ \(  )(  )(_  _)(_  _)(  _  )( \( )
 ) _ < )(__)(   )(    )(   )(_)(  )  ( 
(____/(______) (__)  (__) (_____)(_)\_)

*/
.btn {
  text-align: center;
}
.btn a {
  display: inline-block;
  position: relative;
  min-width: 320px;
  padding: 20px 35px;
  font-size: 14px;
  background: #00B9EF;
  font-family: "Montserrat", sans-serif;
  font-weight: bold;
  text-decoration: none;
  border-radius: 30px;
  letter-spacing: .08em;
  margin: 0 auto;
  color: white;
  overflow: hidden;
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
}
.btn a i.icon-arrow {
  display: block;
  position: absolute;
  right: 8px;
  top: 12px;
  font-size: 30px;
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
}
@media screen and (min-width: 960px) {
  .btn a:before {
    content: "";
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    background: rgba(255, 255, 255, 0.15);
    width: 0%;
    height: 100%;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
  }
  .btn a:hover:before {
    width: 100%;
  }
  .btn a:hover i {
    right: 3px;
  }
}
.btn.white a {
  background: white;
  color: #00B9EF;
}
@media screen and (min-width: 960px) {
  .btn.white a:before {
    content: none;
  }
  .btn.white a:hover {
    background: #00B9EF;
    color: white;
  }
  .btn.white a:hover i {
    right: 3px;
  }
}

.inner-1000 {
  max-width: 1000px;
  width: 100%;
  margin: 0 auto;
}
@media screen and (max-width: 959px) {
  .inner-1000 {
    padding: 0 15px;
  }
}

table {
  width: 100%;
  border-collapse: collapse;
  border-top: none;
  border-left: none;
  border: 1px solid #ddd;
  background: white;
  border-radius: 10px;
  overflow: hidden;
  -webkit-box-shadow: 0px 0px 0px 1px #ddd;
          box-shadow: 0px 0px 0px 1px #ddd;
}
@media screen and (max-width: 767px) {
  table {
    border-radius: 5px;
  }
}
table th, table td {
  padding: 20px;
  border: none;
  border: 1px solid #ddd;
  border-right: none;
  border-bottom: none;
  vertical-align: middle;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: .08em;
}
@media screen and (max-width: 767px) {
  table th, table td {
    display: block;
    padding: 10px;
  }
}
table th {
  background: #f8f8f8;
}
table td {
  text-align: center;
}
table td ul:last-child, table td dl:last-child {
  margin-bottom: 0;
}

.bold {
  font-weight: 700;
}

.emphasis {
  color: #FF6969;
  font-weight: 700;
}

p.attention {
  margin-left: 1em;
  text-indent: -1em;
  font-size: 13px;
}

ul.attention {
  margin-top: 10px;
}
ul.attention li {
  margin-left: 1em;
  text-indent: -1em;
  font-size: 13px;
}

@media screen and (min-width: 960px) {
  ul.list-post {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
ul.list-post .post {
  width: 320px;
  margin-right: 20px;
  border-radius: 10px;
  background: #F3F1E2;
  margin-bottom: 15px;
}
ul.list-post .post:nth-of-type(3n) {
  margin-right: 0;
}
@media screen and (max-width: 959px) {
  ul.list-post .post {
    width: 100%;
    margin: 0 0 15px;
  }
}
@media screen and (min-width: 960px) {
  ul.list-post .post {
    border: 3px solid #F3F1E2;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
  }
}
ul.list-post .post a {
  display: block;
  padding: 30px;
  text-decoration: none;
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
  border-radius: 10px;
}
@media screen and (max-width: 959px) {
  ul.list-post .post a {
    padding: 15px;
  }
}
@media screen and (min-width: 960px) {
  ul.list-post .post a {
    padding: 24px;
  }
}
ul.list-post .post-thumbnail {
  position: relative;
  width: 260px;
  height: 170px;
  overflow: hidden;
  border-radius: 10px;
  background: white;
}
ul.list-post .post-thumbnail img {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (max-width: 959px) {
  ul.list-post .post-thumbnail {
    width: 120px;
    height: 80px;
    float: left;
    margin-right: 15px;
  }
}
ul.list-post .post-category {
  padding: 30px 0 18px;
  font-weight: bold;
  font-family: "Montserrat", sans-serif;
  color: #00B9EF;
  letter-spacing: .08em;
  line-height: 1;
  font-size: 16px;
}
ul.list-post .post-txt p:not(.post-category) {
  color: #595757;
  line-height: 1.6;
  letter-spacing: .05em;
  padding-bottom: 20px;
  border-bottom: 5px dotted white;
}
ul.list-post .post-info {
  margin-top: 10px;
}
ul.list-post .post-info span.post-date {
  font-size: 12px;
  color: #595757;
}
ul.list-post .post-info span.post-icon {
  position: relative;
  float: right;
}
ul.list-post .post-info span.post-icon i {
  margin-left: 20px;
  position: absolute;
  top: 0;
  right: 0;
  color: white;
  font-size: 18px;
  z-index: 1;
  vertical-align: -2px;
}
ul.list-post .post-info span.post-icon i:after {
  content: "";
  position: absolute;
  left: -2px;
  top: -1px;
  width: 20px;
  height: 20px;
  background: #00B9EF;
  border-radius: 20px;
  z-index: -1;
}
@media screen and (max-width: 959px) {
  ul.list-post .post-txt p:not(.post-category) {
    font-size: 14px;
    padding-bottom: 12px;
  }
  ul.list-post .post-category {
    padding: 8px 0 10px;
  }
}
@media screen and (min-width: 960px) {
  ul.list-post .post:hover {
    border: 3px solid #00B9EF;
  }
}
ul.list-anchor {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (min-width: 960px) {
  ul.list-anchor .anchor {
    position: relative;
    width: 490px;
    height: 100px;
    border: 3px solid #00B9EF;
    border-radius: 10px;
    margin-bottom: 20px;
    background: white;
    -webkit-transition: .3s all ease;
    transition: .3s all ease;
  }
  ul.list-anchor .anchor a {
    display: block;
    width: 100%;
    height: 100%;
  }
  ul.list-anchor .anchor p {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    width: 100%;
    color: #00B9EF;
    font-weight: bold;
    padding-left: 90px;
    -webkit-transition: .3s all ease;
    transition: .3s all ease;
  }
  ul.list-anchor .anchor-title {
    font-size: 24px;
    margin-right: 10px;
  }
  ul.list-anchor .anchor i.pie {
    margin-left: 20px;
    position: absolute;
    top: 13px;
    left: 35px;
    color: white;
    font-size: 24px;
    z-index: 1;
    vertical-align: -2px;
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
  }
  ul.list-anchor .anchor i.pie:after {
    content: "";
    position: absolute;
    left: 1px;
    top: 1px;
    width: 20px;
    height: 20px;
    background: #00B9EF;
    border-radius: 20px;
    z-index: -1;
  }
  ul.list-anchor .anchor:hover {
    background: #00B9EF;
  }
  ul.list-anchor .anchor:hover p {
    color: white;
  }
  ul.list-anchor .anchor:hover i.pie {
    color: #00B9EF;
  }
  ul.list-anchor .anchor:hover i.pie:after {
    background: white;
  }
  ul.list-anchor.col3 .anchor {
    width: 320px;
  }
  ul.list-anchor.col3 .anchor p {
    padding-left: 50px;
  }
  ul.list-anchor.col3 .anchor i {
    top: 12px;
    left: -5px;
  }
}
@media screen and (max-width: 959px) {
  ul.list-anchor {
    display: none;
  }
  ul.list-anchor .anchor {
    position: relative;
    width: 100%;
  }
  ul.list-anchor .anchor a {
    text-decoration: none;
  }
  ul.list-anchor .anchor p {
    padding: 10px;
    border: 2px solid #00B9EF;
    border-radius: 5px;
    margin-bottom: 10px;
    color: #00B9EF;
  }
  ul.list-anchor .anchor span:not(.anchor-title) {
    float: left;
    padding: 2px 10px;
    margin-right: 10px;
    background: #00B9EF;
    border-radius: 5px;
    color: white;
    font-weight: bold;
    font-size: 12px;
    margin-top: 2px;
    width: 110px;
    text-align: center;
  }
  ul.list-anchor .anchor .anchor-title {
    font-weight: bold;
    font-size: 16px;
    margin-right: 10px;
  }
  ul.list-anchor .anchor i.pie {
    margin-left: 20px;
    position: absolute;
    top: 16px;
    right: 14px;
    color: white;
    font-size: 24px;
    z-index: 1;
    vertical-align: -2px;
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
  }
  ul.list-anchor .anchor i.pie:after {
    content: "";
    position: absolute;
    left: 1px;
    top: 1px;
    width: 20px;
    height: 20px;
    background: #00B9EF;
    border-radius: 20px;
    z-index: -1;
  }
}

.top-access dl {
  display: table;
  width: 100%;
  height: 60px;
  background: white;
  border-radius: 10px;
  border: 4px solid white;
  text-align: center;
  letter-spacing: .08em;
  color: #00B9EF;
  margin: 30px 0;
}
.top-access dl dt {
  position: relative;
  width: 33%;
  border-right: 1px solid #00B9EF;
}
.top-access dl dt i {
  position: absolute;
  font-size: 25px;
  left: 27px;
  top: 12px;
}
.top-access dl dd {
  position: relative;
  width: calc(100% - 33%);
}
.top-access dl dd img {
  width: 18px;
  position: absolute;
  right: 22px;
  top: 16px;
}
.top-access dl dd a {
  text-decoration: none;
  display: block;
  width: 100%;
  height: 100%;
  background: white;
  border: 2px solid #00B9EF;
  padding-top: 12px;
  border-radius: 10px;
  color: #00B9EF;
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
}
@media screen and (min-width: 960px) {
  .top-access dl dd a:hover {
    background: #00B9EF;
    color: white;
  }
}
.top-access dl dt, .top-access dl dd {
  display: table-cell;
  vertical-align: middle;
  text-align: center;
  font-weight: bold;
  line-height: 1.6;
}
@media screen and (max-width: 959px) {
  .top-access dl {
    height: 40px;
    margin: 15px 0;
  }
  .top-access dl dt, .top-access dl dd {
    padding: 10px;
    font-size: 14px;
    font-weight: normal;
    line-height: 1.6;
  }
}

@media screen and (min-width: 960px) {
  .course_anchor .parent {
    display: none;
  }
}
@media screen and (max-width: 959px) {
  .course_anchor .parent {
    padding: 10px;
    border: 2px solid #00B9EF;
    border-radius: 5px;
    margin-bottom: 10px;
    color: #00B9EF;
    font-weight: bold;
    font-size: 16px;
  }
  .course_anchor .parent i.pie {
    margin-left: 20px;
    position: absolute;
    top: 16px;
    right: 15px;
    width: 20px;
    height: 20px;
    color: white;
    font-size: 24px;
    z-index: 1;
    vertical-align: -2px;
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
  }
  .course_anchor .parent i.pie:after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    width: 20px;
    height: 20px;
    background: #00B9EF;
    border-radius: 20px;
    z-index: -1;
  }
  .course_anchor .parent i.pie:before {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    margin-top: 1px;
  }
  .course_anchor .parent.on i.pie {
    -webkit-transform: rotate(-90deg);
            transform: rotate(-90deg);
  }
  .course_anchor .parent.on i.pie:before {
    margin-left: 1px;
  }
}

.flex-lesson {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.flex-lesson .item {
  width: 48%;
}
.flex-lesson .item p.bold {
  text-align: left;
  margin-bottom: 12px;
  padding-bottom: 9px;
  border-bottom: 1px solid;
}
@media screen and (max-width: 959px) {
  .flex-lesson .item {
    width: 100%;
  }
  .flex-lesson .item + .item {
    margin-top: 20px;
  }
}

@media screen and (min-width: 960px) {
  .section {
    margin-top: 100px;
  }
}
@media screen and (max-width: 959px) {
  .section {
    margin-top: 40px;
  }
}
@media screen and (max-width: 959px) {
  .section table th, .section table td {
    display: table-cell;
    font-size: 14px;
  }
}
.section p.colord {
  padding: 5px;
  background: #00B9EF;
  color: white;
  margin-bottom: 15px;
  font-weight: bold;
  border-radius: 5px;
}
.section-title {
  position: relative;
  margin-bottom: 30px;
}
.section-title:before {
  content: "";
  position: absolute;
  left: 0;
  top: 24px;
  background: #00B9EF;
  width: 16px;
  height: 16px;
  border-radius: 16px;
}
.section-title h2 {
  font-size: 24px;
  font-weight: bold;
  color: #00B9EF;
  letter-spacing: .05em;
  padding: 20px 30px;
}
.section-title h2 span {
  font-size: 14px;
  color: #00B9EF;
  padding: 3px 10px;
  margin-left: 10px;
  background: white;
  border-radius: 5px;
  vertical-align: 4px;
}
.section-title.long span {
  font-size: 14px;
  color: white;
  padding: 5px 10px;
  margin-left: 10px;
  background: #00B9EF;
  border-radius: 5px;
  vertical-align: 4px;
}
@media screen and (max-width: 959px) {
  .section-title {
    margin-bottom: 15px;
  }
  .section-title:before {
    width: 5px;
    height: 19px;
    left: 0;
    top: 15px;
  }
  .section-title h2 {
    font-size: 20px;
    padding: 15px;
  }
  .section-title h2 span {
    font-size: 12px;
  }
}
.section.program table tr > td:last-child {
  text-align: left;
}

.visualbox-title {
  position: relative;
  height: 65px;
  border-radius: 10px 10px 0 0;
  background: #00B9EF;
}
.visualbox-title:before {
  content: "";
  position: absolute;
  left: 18px;
  top: 24px;
  background: white;
  width: 16px;
  height: 16px;
  border-radius: 16px;
}
.visualbox-title h2 {
  font-size: 24px;
  font-weight: bold;
  color: white;
  letter-spacing: .05em;
  padding: 20px 50px;
}
.visualbox-title h2 span {
  font-size: 14px;
  color: #00B9EF;
  padding: 3px 10px;
  margin-left: 10px;
  background: white;
  border-radius: 5px;
  vertical-align: 4px;
}
@media screen and (max-width: 959px) {
  .visualbox-title {
    height: auto;
  }
  .visualbox-title:before {
    content: none;
  }
  .visualbox-title h2 {
    font-size: 20px;
    padding: 15px;
  }
  .visualbox-title h2 span {
    font-size: 12px;
  }
}
.visualbox-main {
  padding: 30px;
  background: #F3F1E2;
  border-radius: 0 0 10px 10px;
}
@media screen and (max-width: 959px) {
  .visualbox-main {
    padding: 15px;
  }
}
.visualbox-main p {
  font-size: 16px;
  letter-spacing: .05em;
  line-height: 1.6;
}
@media screen and (max-width: 959px) {
  .visualbox-main p {
    font-size: 14px;
  }
}
.visualbox-main h3 {
  font-size: 20px;
  padding: 15px;
  position: relative;
  margin: 15px 0 5px;
  line-height: 1.6;
  color: #00B9EF;
  font-weight: bold;
}
.visualbox-main h3:before {
  content: "";
  position: absolute;
  left: 0;
  top: 24px;
  background: #00B9EF;
  width: 16px;
  height: 16px;
  border-radius: 16px;
}
.visualbox-main h3:before {
  width: 5px;
  height: 19px;
  left: 0;
  top: 21px;
}
@media screen and (max-width: 959px) {
  .visualbox-main h3 {
    font-size: 16px;
    margin: 0;
  }
  .visualbox-main h3:before {
    width: 5px;
    height: 16px;
    left: 0;
    top: 19px;
  }
}
.visualbox-main dl {
  display: table;
  width: 100%;
  height: 60px;
  background: white;
  border-radius: 10px;
  border: 4px solid white;
  text-align: center;
  letter-spacing: .08em;
  color: #00B9EF;
  margin: 30px 0;
}
.visualbox-main dl dt {
  position: relative;
  width: 33%;
  border-right: 1px solid #00B9EF;
}
.visualbox-main dl dt i {
  position: absolute;
  font-size: 25px;
  left: 27px;
  top: 12px;
}
.visualbox-main dl dd {
  position: relative;
  width: calc(100% - 33%);
}
.visualbox-main dl dd img {
  width: 18px;
  position: absolute;
  right: 22px;
  top: 16px;
}
.visualbox-main dl dd a {
  text-decoration: none;
  display: block;
  width: 100%;
  height: 100%;
  background: white;
  border: 2px solid #00B9EF;
  padding-top: 12px;
  border-radius: 10px;
  color: #00B9EF;
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
}
@media screen and (min-width: 960px) {
  .visualbox-main dl dd a:hover {
    background: #00B9EF;
    color: white;
  }
}
.visualbox-main dl dt, .visualbox-main dl dd {
  display: table-cell;
  vertical-align: middle;
  text-align: center;
  font-weight: bold;
  line-height: 1.6;
}
@media screen and (max-width: 959px) {
  .visualbox-main dl {
    height: 40px;
    margin: 15px 0;
  }
  .visualbox-main dl dt, .visualbox-main dl dd {
    padding: 10px;
    font-size: 14px;
    font-weight: normal;
    line-height: 1.6;
  }
}
.visualbox-main dl.time dt {
  width: calc(100% - 33%);
  border: none;
}
.visualbox-main dl.time dd {
  width: 33%;
}
@media screen and (max-width: 959px) {
  .visualbox-main dl.time dt, .visualbox-main dl.time dd {
    width: 100%;
    display: block;
  }
  .visualbox-main dl.time dt a, .visualbox-main dl.time dd a {
    padding: 5px 0;
    background: #00B9EF;
    color: white;
    font-weight: bold;
  }
  .visualbox-main dl.time dt {
    font-weight: bold;
    padding-bottom: 0px;
  }
}
.visualbox-main table th, .visualbox-main table td {
  width: 33%;
}
@media screen and (max-width: 959px) {
  .visualbox-main table th, .visualbox-main table td {
    display: table-cell;
    font-size: 14px;
  }
}
.visualbox-main .btns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 670px;
  margin: 30px auto 0;
}
.visualbox-main .btns .pdf a img {
  width: 18px;
  position: absolute;
  right: 22px;
  top: 16px;
}
@media screen and (max-width: 959px) {
  .visualbox-main .btns {
    width: 100%;
    margin: 15px 0 0;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .visualbox-main .btns .btn a {
    min-width: none;
    width: 100%;
    padding: 15px 25px;
    margin: 0 auto 11px;
  }
  .visualbox-main .btns .btn a i.icon-arrow {
    top: 7px;
  }
  .visualbox-main .btns .btn a img {
    right: 14px;
    top: 11px;
  }
  .visualbox-main .btns .btn:last-of-type a {
    margin: 0 auto;
  }
}
.visualbox.price .visualbox-main table thead th:nth-of-type(1), .visualbox.price .visualbox-main table thead td:nth-of-type(1),
.visualbox.price .visualbox-main table tbody th:nth-of-type(1),
.visualbox.price .visualbox-main table tbody td:nth-of-type(1) {
  width: 8%;
}
.visualbox.price .visualbox-main table thead th:nth-of-type(2), .visualbox.price .visualbox-main table thead td:nth-of-type(2),
.visualbox.price .visualbox-main table tbody th:nth-of-type(2),
.visualbox.price .visualbox-main table tbody td:nth-of-type(2) {
  width: 8%;
}
.visualbox.price .visualbox-main table thead th:nth-of-type(3), .visualbox.price .visualbox-main table thead td:nth-of-type(3),
.visualbox.price .visualbox-main table tbody th:nth-of-type(3),
.visualbox.price .visualbox-main table tbody td:nth-of-type(3) {
  width: 33%;
}
.visualbox.price .visualbox-main dd {
  padding: 30px;
}
.visualbox.price .visualbox-main dd ul {
  text-align: left;
  line-height: 1.6;
}
@media screen and (max-width: 959px) {
  .visualbox.price .visualbox-main dd {
    padding: 15px;
  }
}

ul.list li {
  position: relative;
  padding-left: 1em;
  line-height: 1.6;
  letter-spacing: .05em;
}
@media screen and (max-width: 959px) {
  ul.list li {
    font-size: 14px;
  }
}
ul.list li:last-child {
  margin-bottom: 0;
}
ul.list li:before {
  position: absolute;
  display: block;
  content: '';
  top: 9px;
  left: 0;
  width: 6px;
  height: 6px;
  background: #00B9EF;
  border-radius: 100%;
}

ol.num {
  padding: 0 25px 0 25px;
  list-style-position: outside;
}
ol.num li {
  list-style-type: decimal;
}
ol.num li:last-child {
  margin-bottom: 0;
}

.btn-link {
  text-align: center;
}
@media screen and (min-width: 960px) {
  .btn-link {
    padding: 50px 0 0;
  }
}
@media screen and (max-width: 959px) {
  .btn-link {
    padding: 30px 0 0;
  }
}
.btn-link a {
  position: relative;
  display: block;
  margin: 0 auto;
  padding: 0;
  border: 1px solid #00B9EF;
  background: #00B9EF;
  color: #fff;
  font-size: 16px;
  text-decoration: none;
}
@media screen and (min-width: 960px) {
  .btn-link a {
    min-width: 300px;
    line-height: 60px;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
  }
  .btn-link a:hover {
    background: rgba(0, 185, 239, 0.1);
    color: #00B9EF !important;
  }
}
@media screen and (max-width: 959px) {
  .btn-link a {
    width: 90%;
    margin: auto;
  }
}
@media screen and (min-width: 960px) {
  .btn-link li {
    display: inline-block;
    margin: 0 15px;
  }
}
@media screen and (max-width: 959px) {
  .btn-link li {
    margin-bottom: 15px;
  }
  .btn-link li:last-child {
    margin-bottom: 0;
  }
}
.btn-link i {
  right: 15px;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

@media screen and (min-width: 960px) {
  .map {
    position: relative;
    padding-bottom: 500px;
    height: 0;
    overflow: hidden;
  }
  .map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
}
@media screen and (max-width: 959px) {
  .map {
    position: relative;
    padding-bottom: 300px;
    height: 0;
    overflow: hidden;
  }
  .map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
}

.wp-pagenavi {
  padding-top: 50px;
  line-height: 1;
  text-align: center;
  font-size: 14px;
}
.wp-pagenavi span, .wp-pagenavi a {
  display: inline-block;
  width: 35px;
  margin: 0 1px 0 2px;
  *display: inline;
  *zoom: 1;
  line-height: 35px;
}
.wp-pagenavi .current {
  border: solid 1px #00B9EF;
  background: #00B9EF;
  color: #fff;
}
.wp-pagenavi .extend {
  padding: 0;
}
.wp-pagenavi .first, .wp-pagenavi .last {
  width: auto;
  padding: 0 10px;
}
.wp-pagenavi .pages {
  width: auto;
  margin-right: 5px;
}
.wp-pagenavi a {
  border: solid 1px #ddd;
  background: #fff;
  color: #aaa;
  text-decoration: none;
}
.wp-pagenavi a:hover {
  border: solid 1px #00B9EF;
  background: #fff;
  color: #000;
}

@media screen and (max-width: 767px) {
  .img.scroll {
    overflow: scroll;
  }
  .img.scroll img {
    min-width: 680px;
  }
}

.img-btm, .img-top {
  text-align: center;
}

@media screen and (min-width: 960px) {
  .img-top {
    padding-bottom: 30px;
  }
}
@media screen and (max-width: 959px) {
  .img-top {
    padding-bottom: 20px;
  }
}
@media screen and (max-width: 767px) {
  .img-top {
    padding-bottom: 15px;
  }
}

@media screen and (min-width: 960px) {
  .img-btm {
    padding-top: 30px;
  }
}
@media screen and (max-width: 959px) {
  .img-btm {
    padding-top: 20px;
  }
}
@media screen and (max-width: 767px) {
  .img-btm {
    padding-top: 15px;
  }
}

@media screen and (max-width: 959px) {
  .map {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%;
    overflow: hidden;
  }
  .map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
}
.clm5, .clm4, .clm3, .clm2 {
  position: relative;
}
.clm5:after, .clm4:after, .clm3:after, .clm2:after {
  content: " ";
  display: block;
  clear: both;
}
.clm5 .item, .clm5 li, .clm4 .item, .clm4 li, .clm3 .item, .clm3 li, .clm2 .item, .clm2 li {
  float: left;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.clm5 {
  margin: 0 -5px;
}
.clm5 .item, .clm5 li {
  width: 20%;
  padding: 0 5px;
}

.clm4 {
  margin: 0 -10px;
}
.clm4 .item, .clm4 li {
  width: 25%;
  padding: 0 10px;
}

.clm3 {
  margin: 0 -15px;
}
.clm3 .item, .clm3 li {
  width: 33.33333%;
  padding: 0 15px;
}

.clm2 {
  margin: 0 -20px;
}
.clm2 .item, .clm2 li {
  width: 50%;
  padding: 0 20px;
}

/* =========================================================
	fade
========================================================= */
#js_fade {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #fff;
  z-index: 999999;
}

.loading {
  font-size: 0;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.loading img {
  width: 200px;
}
.loading div {
  display: inline-block;
  margin: 0 2px;
  font-size: 14px;
  color: #777;
  -webkit-animation: loading 1.6s liner infinite;
          animation: loading 1.6s liner infinite;
}
.loading div:nth-of-type(1) {
  -webkit-animation-delay: .48s;
          animation-delay: .48s;
}
.loading div:nth-of-type(2) {
  -webkit-animation-delay: .6s;
          animation-delay: .6s;
}
.loading div:nth-of-type(3) {
  -webkit-animation-delay: .72s;
          animation-delay: .72s;
}
.loading div:nth-of-type(4) {
  -webkit-animation-delay: .84s;
          animation-delay: .84s;
}
.loading div:nth-of-type(5) {
  -webkit-animation-delay: .96s;
          animation-delay: .96s;
}
.loading div:nth-of-type(6) {
  -webkit-animation-delay: 1.08s;
          animation-delay: 1.08s;
  margin-right: 0;
}
.loading div:nth-of-type(7) {
  -webkit-animation-delay: 1.2s;
          animation-delay: 1.2s;
  margin: 0;
}
.loading div:nth-of-type(8) {
  -webkit-animation-delay: 1.32s;
          animation-delay: 1.32s;
  margin: 0;
}

@-webkit-keyframes loading {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes loading {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@media screen and (min-width: 960px) {
  .mediaPC {
    display: block;
  }
}
@media screen and (max-width: 959px) {
  .mediaPC {
    display: none !important;
  }
}

@media screen and (min-width: 960px) {
  .mediaTablet {
    display: none !important;
  }
}
@media screen and (max-width: 959px) {
  .mediaTablet {
    display: block;
  }
}

@media screen and (min-width: 768px) {
  .mediaNoSP {
    display: block;
  }
}
@media screen and (max-width: 767px) {
  .mediaNoSP {
    display: none;
  }
}

@media screen and (min-width: 768px) {
  .mediaSP {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .mediaSP {
    display: block;
  }
}

/* =========================================================
	#wrapper
========================================================= */
#wrapper {
  width: 100%;
  height: 100%;
  margin: 0 auto;
}

/* =========================================================
	.contents
========================================================= */
.contents:after {
  content: " ";
  display: block;
  clear: both;
}

/* =========================================================
	.pagetitle
========================================================= */
.pagetitle {
  position: relative;
  height: 350px;
  background-image: url(/common/images/parts/under-pagetitle.png?01);
}
.pagetitle h1 {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  left: 0;
  right: 0;
  display: block;
  width: 1000px;
  margin: 0 auto;
  font-weight: bold;
  letter-spacing: 0.08em;
  line-height: 1;
  color: #00B9EF;
}
.pagetitle-wave {
  position: absolute;
  width: 100%;
  bottom: 0;
  left: 0;
  padding: 0px 20px 25px;
  background: url(/common/images/mv-wave.png) repeat-x top left;
  animation: news 10s linear 0s infinite;
  -moz-animation: news 10s linear 0s infinite;
  -webkit-animation: news 10s linear 0s infinite;
  opacity: 1;
  transition: all 1s;
  -moz-transition: all 1s;
  -webkit-transition: all 1s;
}
@media screen and (min-width: 960px) {
  .pagetitle h1 {
    font-size: 40px;
  }
  .pagetitle h1 span {
    display: block;
    margin-top: 20px;
    font-size: 12px;
  }
}
@media screen and (max-width: 959px) {
  .pagetitle {
    height: 170px;
  }
  .pagetitle h1 {
    top: 50px;
    -webkit-transform: none;
            transform: none;
    width: calc(100% - 15px);
    margin: 0 15px;
    line-height: 1.6;
    font-size: 25px;
  }
  .pagetitle h1 span {
    display: block;
    margin-top: 0px;
    font-size: 12px;
  }
}

@-webkit-keyframes pulsation {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  10% {
    -webkit-transform: scale(0.98);
            transform: scale(0.98);
  }
  50% {
    -webkit-transform: scale(1.08);
            transform: scale(1.08);
  }
  90% {
    -webkit-transform: scale(0.98);
            transform: scale(0.98);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}

@keyframes pulsation {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  10% {
    -webkit-transform: scale(0.98);
            transform: scale(0.98);
  }
  50% {
    -webkit-transform: scale(1.08);
            transform: scale(1.08);
  }
  90% {
    -webkit-transform: scale(0.98);
            transform: scale(0.98);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@-webkit-keyframes news {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: 1400px 0;
  }
}
@keyframes news {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: 1400px 0;
  }
}
/* =========================================================
	header
========================================================= */
@media screen and (min-width: 960px) {
  .header {
    -webkit-box-shadow: 0px 0px 5px 5px rgba(0, 0, 0, 0.1);
            box-shadow: 0px 0px 5px 5px rgba(0, 0, 0, 0.1);
    position: relative;
    z-index: 2;
  }
}
@media screen and (max-width: 959px) {
  .header {
    height: 75px;
  }
  .header:before {
    content: "";
    position: fixed;
    display: block;
    background: rgba(0, 0, 0, 0.3);
    width: 0vw;
    height: 100vh;
    right: 0;
    z-index: -1;
    opacity: 0;
    -webkit-transition: .3s all;
    transition: .3s all;
  }
  .header.on:before {
    width: 100vw;
    opacity: 1;
    z-index: 99;
  }
}
@media screen and (min-width: 960px) {
  .header-inner {
    position: relative;
    width: 1000px;
    height: 90px;
    margin: 0 auto;
  }
}
@media screen and (max-width: 1600px) {
  .header-inner {
    width: 100%;
  }
}
@media screen and (max-width: 1600px) {
  .header-logo {
    padding-left: 20px;
  }
}
@media screen and (min-width: 960px) {
  .header-logo {
    float: left;
    padding-top: 20px;
  }
  .header-logo img {
    width: 185px;
  }
}
@media screen and (max-width: 959px) {
  .header-logo {
    padding: 18px 0 0 15px;
  }
  .header-logo img {
    height: 40px;
  }
}
@media screen and (min-width: 960px) {
  .header-info {
    display: none;
  }
}
@media screen and (max-width: 959px) {
  .header-info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: fixed;
    bottom: 0;
    width: 100vw;
    height: 70px;
    z-index: 1000;
    -webkit-box-shadow: 0px 0px 7px 4px rgba(0, 0, 0, 0.1);
            box-shadow: 0px 0px 7px 4px rgba(0, 0, 0, 0.1);
  }
  .header-info li {
    width: calc(100% - 100px);
    background: #00B9EF;
  }
  .header-info li > a {
    position: relative;
    display: inline-block;
    height: 70px;
    width: 100%;
    border-left: 1px solid #F1F1F1;
    font-size: 12px;
    text-align: center;
    text-decoration: none;
    letter-spacing: .08em;
    z-index: 1;
    color: white;
  }
  .header-info li i {
    position: relative;
    display: block;
    padding: 7px;
    margin: 11px 0 8px;
    color: #00B9EF;
    z-index: 1;
    font-size: 15px;
  }
  .header-info li i:after {
    content: "";
    display: block;
    position: absolute;
    width: 30px;
    height: 30px;
    border-radius: 100%;
    background: white;
    z-index: -1;
    top: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
  }
  .header-info li:first-child {
    width: 30%;
    background: #757575;
  }
  .header-info li:first-child i {
    color: #757575;
  }
  .header-info li:last-child a {
    padding-top: 21px;
  }
  .header-info li:last-child span:not(.txt),
  .header-info li:last-child .icon-tel {
    position: relative;
    display: inline-block;
    color: white;
    font-size: 20px;
    letter-spacing: .1em;
    font-weight: bold;
  }
  .header-info li:last-child span:not(.txt):after,
  .header-info li:last-child .icon-tel:after {
    content: none;
  }
  .header-info li:last-child .icon-tel {
    font-weight: normal;
    font-size: 16px;
  }
  .header-info li:last-child span.txt {
    font-size: 13px;
    font-weight: bold;
    position: absolute;
    left: 0;
    right: 0;
    top: -8px;
    padding: 9px;
    background: white;
    border: 3px solid #00B9EF;
    border-radius: 5px;
    display: block;
    width: 150px;
    color: #00B9EF;
    margin: 0 auto;
  }
}
@media screen and (max-width: 1600px) {
  .header .menu {
    position: absolute;
    float: none;
    right: 290px;
  }
}
@media screen and (min-width: 960px) {
  .header .menu {
    float: right;
  }
}
@media screen and (max-width: 959px) {
  .header .menu {
    -webkit-transition: opacity 1s, visibility 1s;
    transition: opacity 1s, visibility 1s;
    opacity: 0;
    visibility: hidden;
    position: fixed;
    top: 0;
    left: 0;
    width: calc( 100vw - 90px );
    height: 0;
    margin-left: 90px;
    background: #F3F1E2;
    text-align: left;
    z-index: -1;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
  }
  .header .menu.on {
    opacity: 1;
    visibility: visible;
    z-index: 999;
    height: 100%;
    min-height: 100vh;
    padding: 80px 30px 50px;
  }
}
@media screen and (min-width: 960px) {
  .header .gnav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .header .gnav > li {
    position: relative;
    width: 90px;
    height: 90px;
    text-align: center;
  }
  .header .gnav > li:last-child {
    border-right: 1px solid #F1F1F1;
  }
  .header .gnav > li > a {
    position: relative;
    display: inline-block;
    height: 90px;
    width: 100%;
    border-left: 1px solid #F1F1F1;
    background: white;
    font-size: 12px;
    text-align: center;
    text-decoration: none;
    letter-spacing: .08em;
    z-index: 1;
    color: #212121;
  }
  .header .gnav > li > a:before {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    width: 0;
    height: 3px;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
  }
  .header .gnav > li i {
    position: relative;
    display: block;
    padding: 7px;
    margin: 11px 0 13px;
    color: white;
    z-index: 1;
  }
  .header .gnav > li i:after {
    content: "";
    display: block;
    position: absolute;
    width: 40px;
    height: 40px;
    border-radius: 100%;
    background: black;
    z-index: -1;
    top: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
  }
  .header .gnav > li a:hover i:after {
    -webkit-animation: pulsation .3s ease;
            animation: pulsation .3s ease;
  }
  .header .gnav > li a:hover:before {
    width: 100%;
  }
  .header .gnav > li.parent {
    cursor: pointer;
  }
  .header .gnav > li#gnav-course > a:before {
    background: #9573ff;
  }
  .header .gnav > li#gnav-course > a > i {
    font-size: 26px;
    padding: 7px;
  }
  .header .gnav > li#gnav-course > a > i:after {
    background: #9573ff;
  }
  .header .gnav > li#gnav-access > a:before {
    background: #6ec4ff;
  }
  .header .gnav > li#gnav-access > a > i {
    font-size: 19px;
    padding: 9px;
    margin-bottom: 17px;
  }
  .header .gnav > li#gnav-access > a > i:after {
    background: #6ec4ff;
  }
  .header .gnav > li#gnav-admission > a:before {
    background: #96d698;
  }
  .header .gnav > li#gnav-admission > a > i {
    font-size: 20px;
    padding: 10px;
  }
  .header .gnav > li#gnav-admission > a > i:after {
    background: #96d698;
  }
  .header .gnav > li#gnav-facility > a:before {
    background: #ffd580;
  }
  .header .gnav > li#gnav-facility > a > i {
    font-size: 32px;
    padding: 4px;
  }
  .header .gnav > li#gnav-facility > a > i:after {
    background: #ffd580;
  }
  .header .gnav > li#gnav-contact > a:before {
    background: #ff6969;
  }
  .header .gnav > li#gnav-contact > a > i {
    font-size: 22px;
    padding: 9px;
  }
  .header .gnav > li#gnav-contact > a > i:after {
    background: #ff6969;
  }
  .header .gnav .childlist {
    position: absolute;
    display: block;
    height: 0;
    width: 270px;
    left: 1px;
    top: 50px;
    background: #9573FF;
    padding: 0;
    text-align: left;
    border-radius: 0 0 10px 10px;
    overflow: hidden;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
    padding: 15px 20px 15px 15px;
    border-bottom: 4px solid #c4b1ff;
    z-index: 0;
  }
  .header .gnav .childlist > li {
    position: relative;
    padding: 15px 0;
    padding-left: 20px;
    border-bottom: 1px solid #c4b1ff;
  }
  .header .gnav .childlist > li:last-of-type {
    border: none;
  }
  .header .gnav .childlist > li:before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    display: block;
    width: 8px;
    height: 8px;
    border-radius: 10px;
    background: white;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
  .header .gnav .childlist > li a {
    font-size: 16px;
    line-height: 1.4;
    color: white;
    letter-spacing: .08em;
    text-decoration: none;
  }
  .header .gnav .parent:hover .childlist {
    top: 90px;
    height: 255px;
    z-index: 0;
  }
  .header .gnav .parent:hover .childlist a:hover {
    text-decoration: underline;
  }
}
@media screen and (max-width: 959px) {
  .header .gnav {
    padding-bottom: 80px;
  }
  .header .gnav > li.parent {
    margin-bottom: 15px;
    padding: 20px 15px;
    border-radius: 5px;
    background: white;
  }
  .header .gnav > li.parent .icon-health {
    display: block;
    margin: 0 auto;
    font-size: 35px;
    color: white;
    margin-bottom: 10px;
  }
  .header .gnav > li.parent > a {
    display: block;
    margin: 0 auto;
    text-align: center;
    font-weight: bold;
    font-size: 16px;
    margin-bottom: 10px;
    background: #00B9EF;
    border-radius: 5px;
    color: white;
    padding: 10px;
  }
  .header .gnav > li.parent .childlist li a {
    display: block;
    text-decoration: none;
    padding: 10px 0;
    border-bottom: 1px solid rgba(0, 185, 239, 0.3);
    font-size: 14px;
    letter-spacing: .08em;
    color: #212121;
    line-height: 1.4;
  }
  .header .gnav > li.parent .childlist li:last-child a {
    border: none;
  }
  .header .gnav > li:not(.parent) {
    padding: 15px 0;
    border-bottom: 4px dotted white;
  }
  .header .gnav > li:not(.parent):last-child {
    border: none;
  }
  .header .gnav > li:not(.parent) > a {
    position: relative;
    text-decoration: none;
    letter-spacing: .08em;
    font-size: 14px;
    padding-left: 40px;
  }
  .header .gnav > li:not(.parent) > a > i {
    position: absolute;
    top: -8px;
    left: 0;
    color: white;
    font-size: 16px;
    margin-right: 10px;
    vertical-align: -2px;
  }
  .header .gnav > li:not(.parent) > a > i:after {
    content: "";
    display: block;
    position: absolute;
    width: 30px;
    height: 30px;
    border-radius: 100%;
    background: black;
    z-index: -1;
    top: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
  }
  .header .gnav > li:not(.parent)#gnav-access i {
    font-size: 15px;
    padding: 7px;
  }
  .header .gnav > li:not(.parent)#gnav-access i:after {
    background: #6ec4ff;
  }
  .header .gnav > li:not(.parent)#gnav-admission i {
    font-size: 15px;
    padding: 8px;
  }
  .header .gnav > li:not(.parent)#gnav-admission i:after {
    background: #96d698;
  }
  .header .gnav > li:not(.parent)#gnav-facility i {
    font-size: 25px;
    padding: 3px;
    top: -7px;
  }
  .header .gnav > li:not(.parent)#gnav-facility i:after {
    background: #ffd580;
  }
  .header .gnav > li:not(.parent)#gnav-contact i {
    font-size: 17px;
    padding: 7px;
  }
  .header .gnav > li:not(.parent)#gnav-contact i:after {
    background: #ff6969;
  }
}
@media screen and (min-width: 960px) {
  .header-tel {
    position: fixed;
    right: 30px;
  }
  .header-tel img {
    width: 236px;
  }
}
@media screen and (max-width: 959px) {
  .header-tel {
    display: none;
  }
}
.header .menu-btn {
  cursor: pointer;
  position: fixed;
  top: 20px;
  right: 20px;
  width: 30px;
  height: 22px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  z-index: 9999;
  line-height: 1;
}
@media screen and (min-width: 960px) {
  .header .menu-btn {
    display: none;
  }
}
@media screen and (max-width: 959px) {
  .header .menu-btn {
    display: block;
    right: 25px;
  }
}
.header .menu-btn:before {
  content: 'MENU';
  display: inline-block;
  width: 100%;
  margin-top: 26px;
  font-weight: bold;
  font-size: 11px;
  color: #00B9EF;
  text-align: center;
  letter-spacing: .05em;
}
.header .menu-btn figure {
  position: absolute;
  left: 0;
  display: block;
  width: 100%;
  height: 2px;
  background: #00B9EF;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.header .menu-btn figure:nth-child(1) {
  top: 0;
}
.header .menu-btn figure:nth-child(2) {
  top: 50%;
}
.header .menu-btn figure:nth-child(3) {
  bottom: 0;
}
.header .menu-btn:after {
  content: "";
  position: absolute;
  width: 55px;
  height: 55px;
  background: white;
  border-radius: 50px;
  top: -11px;
  left: -13px;
  z-index: -1;
  -webkit-box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.1);
          box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.1);
}
.header .menu-btn.on figure:nth-child(1) {
  top: 50%;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.header .menu-btn.on figure:nth-child(2) {
  background: transparent;
}
.header .menu-btn.on figure:nth-child(3) {
  bottom: 40%;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.header .menu-btn.on:before {
  content: "CLOSE";
}
@media screen and (min-width: 960px) {
  .header .header-tel a img {
    -webkit-transition: .3s all ease;
    transition: .3s all ease;
  }
  .header .header-tel a:hover img {
    -webkit-animation: pulsation .3s ease;
            animation: pulsation .3s ease;
  }
}

/* =========================================================
	footer
========================================================= */
#home-page .footer {
  /*
  &:after {
  	content: "";
  	position: absolute;
  	display: block;
  	background-image: url(/common/images/noisy.png);
  	height: 23px;
  	width: 100%;
  	top: -23px;
  	z-index: -1;
  }
  */
}

.footer {
  position: relative;
  background: #00B9EF;
}
@media screen and (max-width: 959px) {
  .footer {
    margin-top: 23px;
  }
}
.footer-wave {
  position: absolute;
  width: 100%;
  top: -23px;
  left: 0;
  padding: 0px 20px 25px;
  background: url(/common/images/foot-wave.png) repeat-x top left;
  animation: news 10s linear 0s infinite;
  -moz-animation: news 10s linear 0s infinite;
  -webkit-animation: news 10s linear 0s infinite;
  opacity: 1;
  transition: all 1s;
  -moz-transition: all 1s;
  -webkit-transition: all 1s;
  z-index: 1;
}
.footer-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 60px 0 45px;
  max-width: 1000px;
  width: 100%;
  margin: 0 auto;
}
@media screen and (max-width: 959px) {
  .footer-inner {
    padding: 60px 15px 0px;
    display: block;
  }
}
.footer-info p {
  font-size: 14px;
  line-height: 1.6;
  letter-spacing: .08em;
  margin-bottom: 20px;
  color: white;
}
@media screen and (max-width: 959px) {
  .footer-info p {
    font-size: 12px;
  }
}
.footer-info .copyright {
  font-size: 13px;
  letter-spacing: .08em;
  font-weight: 500;
}
@media screen and (max-width: 959px) {
  .footer-info {
    text-align: center;
  }
}
.footer-logo {
  margin-bottom: 20px;
}
.footer-logo img {
  height: 50px;
}
@media screen and (max-width: 959px) {
  .footer-logo img {
    height: 40px;
  }
}
.footer-nav .fnav-box {
  float: left;
  margin-left: 60px;
}
.footer-nav .fnav-box:first-of-type {
  margin-left: 0;
}
.footer-nav .fnav-box .nav-title {
  font-size: 15px;
  color: white;
  letter-spacing: .08em;
  font-weight: bold;
}
.footer-nav .fnav-box .list-child {
  margin-top: 15px;
}
.footer-nav .fnav-box .list-child .item {
  margin-bottom: 15px;
}
.footer-nav .fnav-box .list-child .item:last-of-type {
  margin-bottom: 0;
}
.footer-nav .fnav-box .list-child .item a {
  position: relative;
  padding-left: 15px;
  font-size: 14px;
  text-decoration: none;
  letter-spacing: .08em;
  color: white;
}
.footer-nav .fnav-box .list-child .item a:before {
  content: "";
  display: block;
  position: absolute;
  top: 8px;
  width: 10px;
  height: 1px;
  background: white;
}
.footer-nav .fnav-box .list-child .item a:hover {
  text-decoration: underline;
}
.footer-nav .fnav-box .list-fnav li {
  margin-bottom: 20px;
}
.footer-nav .fnav-box .list-fnav li a {
  font-size: 15px;
  letter-spacing: .08em;
  text-decoration: none;
  color: white;
}
.footer-nav .fnav-box .list-fnav li a:hover {
  text-decoration: underline;
}
@media screen and (max-width: 959px) {
  .footer-nav {
    display: none;
  }
}
@media screen and (max-width: 959px) {
  .footer .copyright {
    font-size: 10px;
  }
}

.copyright-box {
  max-width: 1000px;
  width: 100%;
  margin: 0 auto;
}
.copyright-box p {
  font-size: 14px;
  line-height: 1.6;
  letter-spacing: .08em;
  margin-bottom: 0;
  color: white;
}
@media screen and (max-width: 959px) {
  .copyright-box p {
    font-size: 12px;
  }
}
.copyright-box .copyright {
  font-size: 13px;
  letter-spacing: .08em;
  font-weight: 500;
  text-align: center;
}
@media screen and (min-width: 960px) {
  .copyright-box {
    padding: 30px 0;
    border-top: 1px solid #ddd;
  }
}
@media screen and (max-width: 959px) {
  .copyright-box {
    padding-bottom: 100px;
  }
}

/* =========================================================
	pagetop
========================================================= */
.pagetop {
  position: fixed;
  right: 0;
  bottom: 0;
  width: 40px;
  height: 40px;
}
@media screen and (max-width: 959px) {
  .pagetop {
    display: none !important;
  }
}
.pagetop a {
  display: table-cell;
  width: 40px;
  height: 40px;
  background: #00B9EF;
  color: #fff;
  text-decoration: none;
  text-align: center;
  vertical-align: middle;
}

/* index page
========================================================= */
#home-page .mv {
  position: relative;
  z-index: 0;
  padding: 0;
}
#home-page .mv .slick-dots {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 190px;
  right: 0;
  left: 0;
  bottom: 20px;
  margin: 21px auto 0;
  list-style: none;
}
@media screen and (max-width: 959px) {
  #home-page .mv .slick-dots {
    width: 135px;
    margin-top: 15px;
  }
}
#home-page .mv .slick-dots li {
  width: 20px;
  height: 20px;
  border-radius: 20px;
  background: white;
  -webkit-box-shadow: 1px 2px 3px 0px rgba(0, 0, 0, 0.3);
          box-shadow: 1px 2px 3px 0px rgba(0, 0, 0, 0.3);
  cursor: pointer;
  z-index: 1;
}
@media screen and (min-width: 960px) {
  #home-page .mv .slick-dots li {
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
  }
  #home-page .mv .slick-dots li:hover {
    -webkit-animation: pulsation .3s ease;
            animation: pulsation .3s ease;
  }
}
@media screen and (max-width: 959px) {
  #home-page .mv .slick-dots li {
    background: #f8f8f8;
  }
}
#home-page .mv .slick-dots li.slick-active {
  background: #00B9EF;
}
#home-page .mv .slick-dots li button {
  font-size: 0;
  border: none;
}
@media screen and (max-width: 959px) {
  #home-page .mv .slide img {
    max-width: 100vw;
  }
}
#home-page .mv-wave {
  position: absolute;
  width: 100%;
  bottom: 0;
  left: 0;
  padding: 0px 20px 25px;
  background: url(/common/images/mv-wave.png) repeat-x top left;
  animation: news 10s linear 0s infinite;
  -moz-animation: news 10s linear 0s infinite;
  -webkit-animation: news 10s linear 0s infinite;
  opacity: 1;
  transition: all 1s;
  -moz-transition: all 1s;
  -webkit-transition: all 1s;
}
#home-page .cnt-aboutus {
  background-image: url(/common/images/pool.png);
  background-position: top;
  background-repeat: repeat-x;
}
#home-page .cnt-aboutus .txt-wrap {
  padding: 50px;
  background: white;
  border-radius: 10px;
  margin-top: -50px;
}
#home-page .cnt-aboutus .txt-wrap p {
  text-align: center;
  margin-bottom: 30px;
}
#home-page .cnt-aboutus .txt-wrap p:last-of-type {
  margin-bottom: 0;
}
#home-page .cnt-aboutus .txt-wrap p span {
  position: relative;
}
#home-page .cnt-aboutus .txt-wrap p span:before {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  border-bottom: 3px dotted #FF6969;
  bottom: -3px;
  left: 0;
}
@media screen and (min-width: 960px) {
  #home-page .cnt-aboutus {
    padding-top: 70px;
  }
}
@media screen and (max-width: 959px) {
  #home-page .cnt-aboutus {
    background-position: top;
    padding-top: 40px;
  }
  #home-page .cnt-aboutus .col2box:last-of-type {
    margin-bottom: 0;
  }
  #home-page .cnt-aboutus .txt-wrap {
    padding: 15px;
    margin-top: -15px;
    border-radius: 5px;
  }
  #home-page .cnt-aboutus .txt-wrap p {
    text-align: left;
    margin-bottom: 15px;
  }
  #home-page .cnt-aboutus .txt-wrap p:last-of-type {
    margin-bottom: 0;
  }
}
#home-page .cnt-course {
  background-image: url(/common/images/noisy.png);
  position: relative;
  padding-top: 160px;
  z-index: 1;
}
@media screen and (max-width: 959px) {
  #home-page .cnt-course {
    padding-top: 126px;
  }
}
#home-page .cnt-course .article-title {
  position: absolute;
  left: 0;
  right: 0;
  top: -40px;
  z-index: -1;
}
#home-page .cnt-course .col2box {
  background: white;
  border: 3px solid white;
}
#home-page .cnt-course .col2box-txt {
  border-bottom: 5px dotted #F3F1E2;
}
#home-page .cnt-topics {
  position: relative;
  padding-top: 160px;
  z-index: 1;
  /*
  ul.list-post .post {
  	@media screen and (min-width: 960px) { // Desktop 960px以上
  		margin-bottom: 0;
  		background: white;
  		&-thumbnail { background: $sc; }
  		&-txt p:not(.post-category) {
  			border-bottom: 5px dotted $sc;
  		}
  	} // end min-width: 960px
  	@media screen and (max-width: 959px) { // Tablet 959px以下
  		background: white;
  		&-txt p:not(.post-category) {
  			border-bottom: 5px dotted $sc;
  		}
  	} // end max-width: 959px
  	@media screen and (max-width: 767px) { // SP 767px以下
  	} // end max-width: 767px
  }*/
}
@media screen and (max-width: 959px) {
  #home-page .cnt-topics {
    padding-top: 126px;
  }
}
@media screen and (max-width: 959px) {
  #home-page .cnt-topics ul.list-post {
    margin-bottom: 30px;
  }
}
#home-page .cnt-topics .article-title {
  position: absolute;
  left: 0;
  right: 0;
  top: -40px;
  z-index: -1;
}
#home-page .cnt-access {
  background: white;
  position: relative;
  padding-top: 160px;
  z-index: 1;
}
@media screen and (max-width: 959px) {
  #home-page .cnt-access {
    padding-top: 126px;
  }
}
#home-page .cnt-access .article-title {
  position: absolute;
  left: 0;
  right: 0;
  top: -40px;
  z-index: -1;
}
#home-page .cnt-access .top-access dl {
  background-color: #F3F1E2;
  border-color: #F3F1E2;
}
@media screen and (max-width: 959px) {
  #home-page .article:not(.mv) {
    padding-bottom: 90px;
  }
}

#facility-page p {
  margin-bottom: 30px;
}
@media screen and (max-width: 959px) {
  #facility-page p {
    margin-bottom: 15px;
  }
}
#facility-page p:last-of-type {
  margin-bottom: 0;
}
@media screen and (max-width: 959px) {
  #facility-page table th, #facility-page table td {
    display: table-cell;
  }
}

@media screen and (max-width: 959px) {
  #course02-page .visualbox .visualbox-main dl {
    margin-top: 0;
  }
}
#course02-page #course02_3 table {
  margin-bottom: 30px;
}
@media screen and (max-width: 959px) {
  #course02-page #course02_3 table {
    margin-bottom: 15px;
  }
}
#course02-page #course02_3 table:last-of-type {
  margin-bottom: 0;
}

#course03-page .cnt-intro .article-main > p {
  text-align: center;
}
@media screen and (max-width: 959px) {
  #course03-page .price .cnt-sp table {
    margin-bottom: 15px;
  }
  #course03-page .price .cnt-sp table:last-of-type {
    margin-bottom: 0;
  }
}

@media screen and (max-width: 959px) {
  #admission-page .visualbox-main > h3:first-of-type {
    padding-top: 0;
  }
  #admission-page .visualbox-main > h3:first-of-type:before {
    top: 4px;
  }
}

#access-page .section:first-of-type {
  margin-top: 0;
}
#access-page .section:first-of-type dl:first-of-type {
  margin-top: 0;
}
#access-page .section:first-of-type .map {
  margin-top: 30px;
}
@media screen and (max-width: 959px) {
  #access-page .section:first-of-type .map {
    margin-top: 15px;
  }
  #access-page .section:first-of-type dt {
    font-size: 11px;
    letter-spacing: 0;
  }
  #access-page .section:first-of-type dt span {
    display: block;
    font-size: 18px;
    font-weight: bold;
    letter-spacing: .1em;
  }
}
#access-page .section:last-of-type .img-insert {
  margin-top: 30px;
}
#access-page .section:last-of-type .btns {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 959px) {
  #access-page .section:last-of-type .img-insert {
    margin-top: 15px;
  }
  #access-page .section:last-of-type dl:last-of-type {
    margin-bottom: 0;
  }
}

/* hoge pagech
========================================================= */
#course04-page .course_anchor,
#course02-page .course_anchor,
#course01-page .course_anchor {
  position: relative;
  margin-top: 50px;
}
@media screen and (max-width: 959px) {
  #course04-page .course_anchor,
  #course02-page .course_anchor,
  #course01-page .course_anchor {
    margin-top: 30px;
  }
}

/* topics page
========================================================= */
#topics-page .cnt-intro {
  padding-bottom: 60px;
}
#topics-page .cnt-intro .article-btn {
  margin-top: 50px;
}
@media screen and (max-width: 959px) {
  #topics-page .cnt-intro .article-btn {
    margin-top: 30px;
  }
}
#topics-page .detail h3 {
  font-size: 18px;
  font-weight: bold;
  padding: 20px;
  border: 1px solid #00B9EF;
  margin: 20px 0;
}
#topics-page .detail h4 {
  position: relative;
  font-size: 18px;
  font-weight: bold;
  padding-left: 20px;
  margin: 20px 0 10px;
}
#topics-page .detail h4:before {
  content: "";
  position: absolute;
  top: -2px;
  left: 0;
  height: 22px;
  width: 2px;
  background: #00B9EF;
}
#topics-page .detail h5 {
  margin-bottom: 15px;
  padding-bottom: 10px;
  border-bottom: 1px dotted #ddd;
  font-weight: 700;
}
@media screen and (min-width: 960px) {
  #topics-page .detail h5 {
    margin-top: 30px;
    font-size: 16px;
  }
}
@media screen and (max-width: 959px) {
  #topics-page .detail h5 {
    margin-top: 20px;
    font-size: 14px;
  }
}
#topics-page .detail h6 {
  margin-top: 20px;
  margin-bottom: 10px;
  font-weight: 700;
}
@media screen and (max-width: 959px) {
  #topics-page .detail h6 {
    margin-top: 15px;
  }
}
#topics-page .detail p {
  line-height: 1.6;
  font-size: 16px;
  margin-bottom: 10px;
}
#topics-page .detail p:last-of-type {
  margin-bottom: 0;
}
@media screen and (max-width: 959px) {
  #topics-page .detail p {
    font-size: 14px;
  }
}

/* info page
========================================================= */
#info-page .contents .info-list dl {
  border-bottom: 1px dotted #ddd;
}
@media screen and (min-width: 768px) {
  #info-page .contents .info-list dl dt, #info-page .contents .info-list dl dd {
    display: table-cell;
  }
}
@media screen and (min-width: 768px) {
  #info-page .contents .info-list dl dt {
    width: 7em;
  }
}
#info-page .contents .info-list dl a {
  padding: 15px 0;
  text-decoration: none;
  color: #000;
}
@media screen and (min-width: 960px) {
  #info-page .contents .info-list dl a:hover {
    color: #00B9EF;
  }
}
@media screen and (min-width: 768px) {
  #info-page .contents .info-list dl a {
    display: table;
  }
}
#info-page .contents .update {
  margin-bottom: 20px;
  padding: 15px;
  background: #f8f8f8;
  text-align: right;
  line-height: 1;
}
#info-page .contents .update dt, #info-page .contents .update dd {
  display: inline-block;
}
#info-page .contents .update dt {
  margin-right: 15px;
}

/*  contact page
========================================================= */
@media screen and (min-width: 960px) {
  #contact-page .cnt-thanks p {
    text-align: center;
  }
}
#contact-page form {
  width: 100%;
}
#contact-page #mfp_confirm_table {
  width: 100%;
  margin-top: 20px;
}
#contact-page dl {
  display: table;
  width: inherit;
  margin: 0;
  padding: 20px 0;
  /* border-bottom: dotted 1px $bc; */
}
#contact-page dl:first-of-type {
  /* border-top: dotted 1px $bc;	*/
}
@media screen and (max-width: 767px) {
  #contact-page dl {
    display: block;
  }
}
#contact-page dt, #contact-page dd {
  display: table-cell;
  padding: 0;
  border: none !important;
  font-size: 100%;
  text-align: left;
  vertical-align: middle;
}
@media screen and (max-width: 959px) {
  #contact-page dt, #contact-page dd {
    display: block;
    font-size: 16px !important;
  }
}
@media screen and (min-width: 960px) {
  #contact-page dt {
    width: 300px;
  }
}
@media screen and (max-width: 959px) {
  #contact-page dt {
    width: auto;
    padding-bottom: 10px;
  }
}
#contact-page dt span {
  display: block;
  float: right;
  width: 48px;
  height: 24px;
  margin-top: 3px;
  background: #FF6969;
  color: #fff;
  font-size: 9px;
  text-align: center;
  line-height: 18px;
  text-indent: 0;
  border-radius: 6px;
}
#contact-page #submit {
  margin-top: 30px;
  text-align: center;
}
#contact-page #add {
  width: 100%;
}
#contact-page h3 {
  margin-bottom: 15px;
}
#contact-page dd {
  padding-left: 20px;
}
@media screen and (max-width: 959px) {
  #contact-page dd {
    padding-left: 0;
  }
}
#contact-page dd dl {
  width: 100%;
  padding: 5px 0;
  border: none !important;
}
#contact-page dd dl:first-of-type {
  border-top: none;
}
#contact-page dd dl dt {
  width: 100px;
  padding-top: 10px;
}
@media screen and (max-width: 959px) {
  #contact-page dd dl {
    padding-left: 1em;
  }
  #contact-page dd dl dt, #contact-page dd dl dd {
    font-size: 16px !important;
    width: auto;
  }
}
#contact-page dd .mfp_err {
  clear: both;
  display: none;
  text-align: left;
  margin: 5px 0px 0px 0px;
  padding: 3px 0px 5px 17px;
  color: #FF6969;
  font-size: 12px;
  line-height: normal;
  background-repeat: no-repeat;
  background-position: 0px center;
}
#contact-page dd input[type="text"], #contact-page dd input[type="tel"], #contact-page dd input[type="email"], #contact-page dd textarea {
  -webkit-appearance: none;
  width: 100% !important;
  padding: 10px;
  border: solid 1px #ddd;
  background: #f8f8f8;
  border-radius: 6px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 18px !important;
}
#contact-page dd #zip-code {
  width: 250px !important;
  margin-right: 10px;
}
#contact-page dd .custom {
  margin-bottom: 10px;
  overflow: hidden;
  position: relative;
  z-index: 10;
}
#contact-page dd .custom:last-of-type {
  margin-bottom: 0;
}
#contact-page dd .custom select {
  width: 100%;
  border: 1px solid #ddd;
  border-radius: 6px;
  background: #f8f8f8;
}
#contact-page dd .custom i {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 10px;
}
#contact-page dd select {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  position: relative;
  width: 130%;
  height: 44px;
  padding: 11px 0 10px 15px;
  font-weight: 400;
  cursor: pointer;
  background: none;
  z-index: 15;
  vertical-align: middle;
  line-height: 24px;
  border: none;
  -webkit-appearance: button;
     -moz-appearance: button;
          appearance: button;
  font-size: 18px !important;
}
#contact-page dd input[type=radio], #contact-page dd input[type=checkbox] {
  display: none;
}
#contact-page dd .radio, #contact-page dd .checkbox {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-transition: background-color 0.2s linear;
  transition: background-color 0.2s linear;
  position: relative;
  display: block;
  padding: 15px 15px 15px 45px;
  border-radius: 6px;
  border: 1px solid #ddd;
  background-color: #f8f8f8;
  vertical-align: middle;
  font-size: 16px !important;
  cursor: pointer;
}
#contact-page dd .radio:hover:after, #contact-page dd .checkbox:hover:after {
  border-color: #00B9EF;
}
#contact-page dd .radio:before, #contact-page dd .radio:after, #contact-page dd .checkbox:before, #contact-page dd .checkbox:after {
  display: block;
  position: absolute;
  top: 50%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  content: '';
}
#contact-page dd .radio:before, #contact-page dd .checkbox:before {
  opacity: 0;
}
#contact-page dd .radio:after, #contact-page dd .checkbox:after {
  -webkit-transition: border-color 0.2s linear;
  transition: border-color 0.2s linear;
  left: 15px;
  margin-top: -10px;
  width: 20px;
  height: 20px;
  border: 2px solid #bbb;
  border-radius: 6px;
}
#contact-page dd .radio.mfp_checked:after, #contact-page dd .checkbox.mfp_checked:after {
  border-color: #00B9EF;
}
#contact-page dd .radio.mfp_checked:before, #contact-page dd .checkbox.mfp_checked:before {
  opacity: 1;
}
#contact-page dd .radio:before {
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
  left: 21px;
  margin-top: -4px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: #00B9EF;
}
#contact-page dd .radio:after {
  border-radius: 100%;
}
#contact-page dd .checkbox:before {
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
  position: absolute;
  top: 50%;
  left: 21px;
  display: block;
  margin-top: -7px;
  width: 7px;
  height: 11px;
  border-right: 3px solid #00B9EF;
  border-bottom: 3px solid #00B9EF;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
#contact-page dd ol:after {
  content: " ";
  display: block;
  clear: both;
}
#contact-page dd li {
  float: left;
  width: 50%;
  padding: 5px 10px 5px 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (max-width: 959px) {
  #contact-page dd li {
    float: none;
    width: auto;
    padding: 0 0 10px 0;
  }
  #contact-page dd li:last-child {
    padding-bottom: 0;
  }
}
#contact-page dd li input {
  margin-right: 5px;
  padding: 0;
  border: none;
  background: none;
}
#contact-page #button, #contact-page .mfp_buttons {
  text-align: center;
}
@media screen and (min-width: 960px) {
  #contact-page #button, #contact-page .mfp_buttons {
    margin: 50px 180px 0;
  }
}
@media screen and (max-width: 959px) {
  #contact-page #button, #contact-page .mfp_buttons {
    margin-top: 50px;
  }
}
@media screen and (max-width: 767px) {
  #contact-page #button, #contact-page .mfp_buttons {
    margin-top: 0;
  }
}
#contact-page #button li, #contact-page .mfp_buttons li {
  width: 45%;
}
@media screen and (max-width: 767px) {
  #contact-page #button li, #contact-page .mfp_buttons li {
    float: none;
    width: 100%;
    margin-top: 30px;
  }
}
#contact-page #button button, #contact-page .mfp_buttons button {
  display: block;
  width: 100%;
  height: 60px;
  margin: 0;
  padding: 0;
  border: none;
  background: #00B9EF;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-radius: 6px;
  cursor: pointer;
  color: #fff;
  font-size: 16px;
  text-align: center;
}
#contact-page #button button:hover, #contact-page .mfp_buttons button:hover {
  opacity: 0.8;
}
#contact-page .mfp_buttons {
  padding: 0;
}
#contact-page .mfp_buttons:after {
  content: " ";
  display: block;
  clear: both;
}
#contact-page .mfp_buttons button {
  width: 45%;
}
@media screen and (max-width: 767px) {
  #contact-page .mfp_buttons button {
    width: 100%;
    margin-top: 30px;
  }
}
#contact-page .mfp_buttons #mfp_button_send {
  float: right;
}
#contact-page .mfp_buttons #mfp_button_cancel {
  float: left;
}
#contact-page #mfp_confirm_table dt {
  padding-top: 0;
}
#contact-page .thanks {
  text-align: center;
}
#contact-page .thanks h2, #contact-page .thanks div {
  -webkit-animation-delay: .5s;
          animation-delay: .5s;
}
#contact-page .thanks h2 {
  margin-bottom: 50px;
  padding: 0;
  border: none;
  font-size: 30px;
  font-weight: 700;
}
#contact-page .thanks h2:before, #contact-page .thanks h2:after {
  display: none;
}
@media screen and (max-width: 767px) {
  #contact-page .thanks h2 {
    margin-bottom: 30px;
    font-size: 22px;
  }
}
#contact-page .thanks p {
  margin-bottom: 1em;
  text-align: center;
  line-height: 2;
}
#contact-page .thanks .btn-link {
  padding-top: 80px;
}
@media screen and (max-width: 767px) {
  #contact-page .thanks .btn-link {
    padding-top: 40px;
  }
}
#contact-page #mfp_phase_confirm h4 {
  font-size: 30px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  #contact-page #mfp_phase_confirm h4 {
    font-size: 18px;
  }
}

/*  error page
========================================================= */
#error-page .pagetitle h1 {
  padding: 0;
  border: none;
}
#error-page .contents {
  text-align: center;
}
#error-page .contents h2 span {
  display: block;
  font-size: 11px;
}

@media screen and (max-width: 959px) {
  #error-page #pagetitle h1 {
    padding: 0;
    border: none;
  }
}
/*  contact page
========================================================= */
#contact-page .contact .form .mw_wp_form .error-area,
#test-page .contact .form .mw_wp_form .error-area {
  display: none;
  padding: 13px 13px 15px;
  margin-bottom: 60px;
  background: rgba(236, 24, 52, 0.1);
  border: 1px solid #ec1834;
  color: #ec1834;
  text-align: center;
}
#contact-page .contact .form .mw_wp_form.mw_wp_form_error .error-area,
#test-page .contact .form .mw_wp_form.mw_wp_form_error .error-area {
  display: block;
}
#contact-page .contact .form .mw_wp_form .confilm-area,
#test-page .contact .form .mw_wp_form .confilm-area {
  display: none;
  padding: 13px 13px 15px;
  margin-bottom: 60px;
  margin-top: 60px;
  background: rgba(18, 124, 179, 0.1);
  border: 1px solid #127CB3;
  color: #127CB3;
  text-align: center;
}
#contact-page .contact .form .mw_wp_form.mw_wp_form_confirm .confilm-area,
#test-page .contact .form .mw_wp_form.mw_wp_form_confirm .confilm-area {
  display: block;
}
#contact-page .contact .form .mw_wp_form dl .error,
#test-page .contact .form .mw_wp_form dl .error {
  display: inline-block;
  margin-top: 20px;
  margin-right: 8px;
  color: #ec1834;
  padding: 13px 13px 15px;
  background: rgba(236, 24, 52, 0.1);
}
#contact-page .contact .form .mw_wp_form dl .error + .error,
#test-page .contact .form .mw_wp_form dl .error + .error {
  left: 200px;
}
#contact-page .contact .form .mw_wp_form dl dl,
#test-page .contact .form .mw_wp_form dl dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 10px 0px;
  padding: 10px 0px;
}
#contact-page .contact .form .mw_wp_form dl dl .mwform-radio-field,
#test-page .contact .form .mw_wp_form dl dl .mwform-radio-field {
  width: 100%;
}
@media screen and (max-width: 767px) {
  #contact-page .contact .form .mw_wp_form dl dl .mwform-radio-field,
  #test-page .contact .form .mw_wp_form dl dl .mwform-radio-field {
    margin-left: 0;
  }
}
@media screen and (max-width: 959px) {
  #contact-page .contact .form .mw_wp_form dl dl,
  #test-page .contact .form .mw_wp_form dl dl {
    display: block;
  }
}
#contact-page .contact .form .mw_wp_form dd,
#test-page .contact .form .mw_wp_form dd {
  position: relative;
  width: calc(100% - 350px);
}
@media screen and (max-width: 959px) {
  #contact-page .contact .form .mw_wp_form dd,
  #test-page .contact .form .mw_wp_form dd {
    width: 100%;
  }
}
#contact-page .contact .form .mw_wp_form dt,
#test-page .contact .form .mw_wp_form dt {
  position: relative;
  font-size: 18px;
  padding-left: 10px;
  margin-bottom: 10px;
  line-height: 24px;
  text-align: left;
  /* border-bottom: 1px solid $bc; */
}
#contact-page .contact .form .mw_wp_form dt:before,
#test-page .contact .form .mw_wp_form dt:before {
  content: "";
  position: absolute;
  width: 3px;
  height: 24px;
  background: #00B9EF;
  top: 13px;
  left: 0;
}
@media all and (-ms-high-contrast: none) {
  #contact-page .contact .form .mw_wp_form dt:before,
  #test-page .contact .form .mw_wp_form dt:before {
    content: none;
  }
}
#contact-page .contact .form .mw_wp_form dt span.must,
#test-page .contact .form .mw_wp_form dt span.must {
  display: inline-block;
  margin-left: 8px;
  padding: 5px 8px 3px 8px;
  border-radius: 2px;
  border: 1px solid #00B9EF;
  color: #00B9EF;
  font-size: 14px;
  line-height: 1;
}
#contact-page .contact .form .mw_wp_form dd.flex-col4,
#test-page .contact .form .mw_wp_form dd.flex-col4 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
#contact-page .contact .form .mw_wp_form dd.flex-col4 > span:not(.error),
#test-page .contact .form .mw_wp_form dd.flex-col4 > span:not(.error) {
  width: calc((100% - 30px)/4);
}
#contact-page .contact .form .mw_wp_form dd.flex-col4 > span:not(.error):nth-of-type(4),
#test-page .contact .form .mw_wp_form dd.flex-col4 > span:not(.error):nth-of-type(4) {
  padding-right: 0;
}
@media screen and (max-width: 959px) {
  #contact-page .contact .form .mw_wp_form dd.flex-col4 > span:not(.error),
  #test-page .contact .form .mw_wp_form dd.flex-col4 > span:not(.error) {
    width: 100%;
    padding-left: 0;
    margin: 0;
    margin-top: 8px;
  }
}
#contact-page .contact .form .mw_wp_form dd.flex-col2,
#test-page .contact .form .mw_wp_form dd.flex-col2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
#contact-page .contact .form .mw_wp_form dd.flex-col2 > span:not(.error),
#test-page .contact .form .mw_wp_form dd.flex-col2 > span:not(.error) {
  width: calc((100% - 8px)/2);
}
#contact-page .contact .form .mw_wp_form dd.flex-col2 > span:not(.error):nth-of-type(2),
#test-page .contact .form .mw_wp_form dd.flex-col2 > span:not(.error):nth-of-type(2) {
  padding-right: 0;
}
#contact-page .contact .form .mw_wp_form dd.flex-col2 > input,
#test-page .contact .form .mw_wp_form dd.flex-col2 > input {
  width: calc((100% - 8px)/2);
  padding-right: 8px;
}
#contact-page .contact .form .mw_wp_form dd.flex-col2 > input:nth-of-type(2),
#test-page .contact .form .mw_wp_form dd.flex-col2 > input:nth-of-type(2) {
  margin-right: 0;
}
#contact-page .contact .form .mw_wp_form .mwform-radio-field-text,
#test-page .contact .form .mw_wp_form .mwform-radio-field-text {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-transition: background-color 0.2s linear;
  transition: background-color 0.2s linear;
  position: relative;
  display: block;
  padding: 15px 15px 15px 45px;
  border-radius: 5px;
  border: 1px solid #ddd;
  background-color: #f8f8f8;
  font-size: 16px !important;
  cursor: pointer;
}
#contact-page .contact .form .mw_wp_form .mwform-radio-field-text:before, #contact-page .contact .form .mw_wp_form .mwform-radio-field-text:after,
#test-page .contact .form .mw_wp_form .mwform-radio-field-text:before,
#test-page .contact .form .mw_wp_form .mwform-radio-field-text:after {
  display: block;
  position: absolute;
  top: 50%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  content: '';
}
#contact-page .contact .form .mw_wp_form .mwform-radio-field-text:before,
#test-page .contact .form .mw_wp_form .mwform-radio-field-text:before {
  opacity: 0;
}
#contact-page .contact .form .mw_wp_form .mwform-radio-field-text:after,
#test-page .contact .form .mw_wp_form .mwform-radio-field-text:after {
  -webkit-transition: border-color 0.2s linear;
  transition: border-color 0.2s linear;
  left: 15px;
  margin-top: -10px;
  width: 20px;
  height: 20px;
  border: 2px solid #bbb;
  border-radius: 2px;
  background: white;
}
#contact-page .contact .form .mw_wp_form .mwform-radio-field-text:before,
#test-page .contact .form .mw_wp_form .mwform-radio-field-text:before {
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
  left: 21px;
  margin-top: -4px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: #00B9EF;
  z-index: 1;
}
#contact-page .contact .form .mw_wp_form .mwform-radio-field-text:after,
#test-page .contact .form .mw_wp_form .mwform-radio-field-text:after {
  border-radius: 100%;
}
#contact-page .contact .form .mw_wp_form .mwform-zip-field,
#test-page .contact .form .mw_wp_form .mwform-zip-field {
  max-width: 300px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
#contact-page .contact .form .mw_wp_form .mwform-zip-field input,
#test-page .contact .form .mw_wp_form .mwform-zip-field input {
  margin: 0 10px !important;
}
#contact-page .contact .form .mw_wp_form input[type=radio],
#test-page .contact .form .mw_wp_form input[type=radio] {
  display: none;
}
#contact-page .contact .form .mw_wp_form input[type=radio]:checked + .mwform-radio-field-text:after,
#test-page .contact .form .mw_wp_form input[type=radio]:checked + .mwform-radio-field-text:after {
  border-color: #00B9EF;
}
#contact-page .contact .form .mw_wp_form input[type=radio]:checked + .mwform-radio-field-text:before,
#test-page .contact .form .mw_wp_form input[type=radio]:checked + .mwform-radio-field-text:before {
  opacity: 1;
}
#contact-page .contact .form .mw_wp_form input[type=radio]:checked + .mwform-radio-field-text,
#test-page .contact .form .mw_wp_form input[type=radio]:checked + .mwform-radio-field-text {
  background: #00B9EF;
  color: white;
}
#contact-page .contact .form .mw_wp_form input[type=file],
#test-page .contact .form .mw_wp_form input[type=file] {
  margin-top: 20px;
}
#contact-page .contact .form .mw_wp_form input[type="text"], #contact-page .contact .form .mw_wp_form input[type="email"], #contact-page .contact .form .mw_wp_form input[type="url"], #contact-page .contact .form .mw_wp_form textarea,
#test-page .contact .form .mw_wp_form input[type="text"],
#test-page .contact .form .mw_wp_form input[type="email"],
#test-page .contact .form .mw_wp_form input[type="url"],
#test-page .contact .form .mw_wp_form textarea {
  -webkit-appearance: none;
  width: 100%;
  padding: 8px 10px 10px;
  border: solid 2px #DDDDDD;
  background: #F8F8F8;
  border-radius: 5px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 18px;
  height: 50px;
}
@media screen and (max-width: 959px) {
  #contact-page .contact .form .mw_wp_form input[type="text"], #contact-page .contact .form .mw_wp_form input[type="email"], #contact-page .contact .form .mw_wp_form input[type="url"], #contact-page .contact .form .mw_wp_form textarea,
  #test-page .contact .form .mw_wp_form input[type="text"],
  #test-page .contact .form .mw_wp_form input[type="email"],
  #test-page .contact .form .mw_wp_form input[type="url"],
  #test-page .contact .form .mw_wp_form textarea {
    margin-top: 8px;
  }
}
#contact-page .contact .form .mw_wp_form textarea,
#test-page .contact .form .mw_wp_form textarea {
  height: 120px;
}
#contact-page .contact .form .mw_wp_form textarea::-webkit-input-placeholder,
#test-page .contact .form .mw_wp_form textarea::-webkit-input-placeholder {
  font-size: 14px;
}
#contact-page .contact .form .mw_wp_form textarea:-ms-input-placeholder,
#test-page .contact .form .mw_wp_form textarea:-ms-input-placeholder {
  font-size: 14px;
}
#contact-page .contact .form .mw_wp_form textarea::-ms-input-placeholder,
#test-page .contact .form .mw_wp_form textarea::-ms-input-placeholder {
  font-size: 14px;
}
#contact-page .contact .form .mw_wp_form textarea::placeholder,
#test-page .contact .form .mw_wp_form textarea::placeholder {
  font-size: 14px;
}
#contact-page .contact .form .mw_wp_form #consultation,
#test-page .contact .form .mw_wp_form #consultation {
  height: auto;
}
#contact-page .contact .form .mw_wp_form .mwform-tel-field,
#test-page .contact .form .mw_wp_form .mwform-tel-field {
  width: 100%;
}
#contact-page .contact .form .mw_wp_form .mwform-tel-field input[type="text"],
#test-page .contact .form .mw_wp_form .mwform-tel-field input[type="text"] {
  width: 120px;
}
@media screen and (max-width: 959px) {
  #contact-page .contact .form .mw_wp_form .mwform-tel-field input[type="text"],
  #test-page .contact .form .mw_wp_form .mwform-tel-field input[type="text"] {
    width: calc((100% - 32px)/3);
  }
}
#contact-page .contact .form .mw_wp_form select,
#test-page .contact .form .mw_wp_form select {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  position: relative;
  width: 100%;
  height: 50px;
  padding: 11px 0 10px 15px;
  font-weight: 400;
  cursor: pointer;
  background: none;
  z-index: 1;
  line-height: 24px;
  border: none;
  -webkit-appearance: button;
     -moz-appearance: button;
          appearance: button;
  font-size: 18px !important;
  border: solid 2px #DDDDDD;
  background-color: #F8F8F8;
  border-radius: 5px;
}
#contact-page .contact .form .contact-policy,
#test-page .contact .form .contact-policy {
  padding: 30px;
  border-radius: 5px;
  border: 1px solid #ddd;
  background: #f8f8f8;
}
#contact-page .contact .form .contact-policy .section,
#test-page .contact .form .contact-policy .section {
  margin-top: 30px;
}
#contact-page .contact .form .contact-policy .section-title,
#test-page .contact .form .contact-policy .section-title {
  position: relative;
  font-size: 18px;
  font-weight: bold;
  padding-left: 10px;
  line-height: 24px;
  border: 0;
}
#contact-page .contact .form .contact-policy .section-title:before,
#test-page .contact .form .contact-policy .section-title:before {
  content: "";
  position: absolute;
  width: 3px;
  height: 24px;
  background: #E60012;
  top: 0;
  left: 0;
}
#contact-page .contact .form .contact-policy .section-title + .section-main,
#test-page .contact .form .contact-policy .section-title + .section-main {
  margin-top: 15px;
}
#contact-page .contact .form .contact-policy .inner,
#test-page .contact .form .contact-policy .inner {
  max-height: 200px;
  overflow-y: scroll;
}
@media screen and (max-width: 767px) {
  #contact-page .contact .form .contact-policy,
  #test-page .contact .form .contact-policy {
    padding: 15px;
  }
}
#contact-page .contact .form .button,
#test-page .contact .form .button {
  text-align: center;
  margin-top: 100px;
}
@media screen and (max-width: 767px) {
  #contact-page .contact .form .button,
  #test-page .contact .form .button {
    margin-top: 30px;
  }
}
#contact-page .contact .form input[type="submit"],
#test-page .contact .form input[type="submit"] {
  position: relative;
  background: #00B9EF;
  color: white;
  border: 0;
  border-radius: 50px;
  padding: 20px;
  min-width: 365px;
  font: bold 1rem/1 "Roboto Condensed", YakuHanJP_Noto, "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  text-align: center;
  cursor: pointer;
  -webkit-transition: background-color .15s ease, color .15s ease;
  transition: background-color .15s ease, color .15s ease;
}
@media screen and (max-width: 959px) {
  #contact-page .contact .form input[type="submit"],
  #test-page .contact .form input[type="submit"] {
    padding: 15px 20px;
    min-width: 300px;
  }
}
#contact-page .contact .form input[type="submit"]:hover,
#test-page .contact .form input[type="submit"]:hover {
  background-color: #FF6969;
  color: white;
}
#contact-page .contact .form .btns,
#test-page .contact .form .btns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 959px) {
  #contact-page .contact .form .btns,
  #test-page .contact .form .btns {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-flow: wrap-reverse;
            flex-flow: wrap-reverse;
  }
}
@media screen and (min-width: 960px) {
  #contact-page .contact .form .mw_wp_form_confirm .btns .button:nth-of-type(1),
  #test-page .contact .form .mw_wp_form_confirm .btns .button:nth-of-type(1) {
    margin-right: 40px;
  }
}
#contact-page .contact .form p + .mw_wp_form,
#test-page .contact .form p + .mw_wp_form {
  margin-top: 50px;
}
#contact-page .contact .form .address,
#test-page .contact .form .address {
  padding: 15px;
}
#contact-page .contact .form .address dl,
#test-page .contact .form .address dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-bottom: 20px;
}
@media screen and (max-width: 767px) {
  #contact-page .contact .form .address dl,
  #test-page .contact .form .address dl {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
#contact-page .contact .form .address dl dt,
#test-page .contact .form .address dl dt {
  width: 20%;
  border: 0;
  margin-bottom: 0;
  padding: 0 0 0 10px;
}
#contact-page .contact .form .address dl dt:before,
#test-page .contact .form .address dl dt:before {
  height: 100%;
  opacity: .6;
}
@media screen and (max-width: 767px) {
  #contact-page .contact .form .address dl dt,
  #test-page .contact .form .address dl dt {
    width: 100%;
    margin-bottom: 10px;
  }
  #contact-page .contact .form .address dl dt .error,
  #test-page .contact .form .address dl dt .error {
    margin-top: 0;
    margin-left: 10px;
    font-size: 13px;
    padding: 7px 10px 8px;
  }
}
#contact-page .contact .form .address dl dd,
#test-page .contact .form .address dl dd {
  width: 80%;
}
#contact-page .contact .form .address dl dd input,
#test-page .contact .form .address dl dd input {
  margin: 0 !important;
}
@media screen and (max-width: 767px) {
  #contact-page .contact .form .address dl dd,
  #test-page .contact .form .address dl dd {
    width: 100%;
  }
}
#contact-page .contact .form .col3,
#test-page .contact .form .col3 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 767px) {
  #contact-page .contact .form .col3,
  #test-page .contact .form .col3 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
#contact-page .contact .form .col3 .mwform-radio-field,
#test-page .contact .form .col3 .mwform-radio-field {
  width: 100%;
}
@media screen and (max-width: 767px) {
  #contact-page .contact .form .col3 .mwform-radio-field,
  #test-page .contact .form .col3 .mwform-radio-field {
    margin-left: 0;
  }
}
#contact-page .contact .form .error-area,
#test-page .contact .form .error-area {
  display: none;
  padding: 13px 13px 15px;
  margin-bottom: 60px;
  background: rgba(236, 24, 52, 0.1);
  border: 1px solid #ec1834;
  color: #ec1834;
  text-align: center;
}
#contact-page .contact .form.mw_wp_form_error .error-area,
#test-page .contact .form.mw_wp_form_error .error-area {
  display: block;
}
#contact-page .contact .form .confilm-area,
#test-page .contact .form .confilm-area {
  display: none;
  padding: 13px 13px 15px;
  margin-bottom: 60px;
  margin-top: 60px;
  background: rgba(18, 124, 179, 0.1);
  border: 1px solid #127CB3;
  color: #127CB3;
  text-align: center;
}
#contact-page .contact .form.mw_wp_form_confirm .confilm-area,
#test-page .contact .form.mw_wp_form_confirm .confilm-area {
  display: block;
}
#contact-page .contact .form .form-title,
#test-page .contact .form .form-title {
  margin-top: 30px;
}
#contact-page .contact .form .form-title h3,
#test-page .contact .form .form-title h3 {
  margin: 0 !important;
}
#contact-page .contact .form .contact-tel dt,
#test-page .contact .form .contact-tel dt {
  padding-bottom: 10px;
  border-bottom: 2px solid #ddd;
  font-size: 1.1em;
  font-weight: 600;
}
#contact-page .contact .form .contact-tel dd span,
#test-page .contact .form .contact-tel dd span {
  color: #00B9EF;
  font-size: 2.5em;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  #contact-page .contact .form .contact-tel dd span,
  #test-page .contact .form .contact-tel dd span {
    display: block;
  }
}
#contact-page .contact .form .contact-tel dd span i,
#test-page .contact .form .contact-tel dd span i {
  margin-right: 5px;
  font-size: 0.8em;
}
#contact-page .contact .form .step,
#test-page .contact .form .step {
  display: table;
  table-layout: fixed;
  background: #fff;
}
#contact-page .contact .form .step .item,
#test-page .contact .form .step .item {
  display: table-cell;
  width: 33.3333%;
  padding: 30px 30px 20px;
  vertical-align: top;
  border-right: 1px dashed #ddd;
  text-align: center;
}
#contact-page .contact .form .step .item:last-child,
#test-page .contact .form .step .item:last-child {
  border-right: none;
}
@media screen and (max-width: 959px) {
  #contact-page .contact .form .step,
  #test-page .contact .form .step {
    display: block;
  }
  #contact-page .contact .form .step .item,
  #test-page .contact .form .step .item {
    display: block;
    width: 100%;
    border: none;
    border-bottom: 1px dashed #ddd;
  }
  #contact-page .contact .form .step .item:last-child,
  #test-page .contact .form .step .item:last-child {
    border: none;
  }
}
#contact-page .contact .form .step h4,
#test-page .contact .form .step h4 {
  margin-bottom: 15px;
  color: #00B9EF;
  font-size: 18px;
  font-weight: 600;
}
#contact-page .contact .form .step h4 span,
#test-page .contact .form .step h4 span {
  display: block;
  width: 30px;
  margin: 0 auto 5px;
  background: #00B9EF;
  color: #fff;
  font-size: 16px;
  line-height: 31px;
  border-radius: 15px;
}
#contact-page .contact .form .step i,
#test-page .contact .form .step i {
  display: block;
  margin: 0 auto 15px;
  color: #00B9EF;
  font-size: 80px;
}
#contact-page .contact .form dl,
#test-page .contact .form dl {
  display: table;
  width: 100%;
  margin: 0px;
  padding: 20px 0px;
}
#contact-page .contact .form dl.policy dd,
#test-page .contact .form dl.policy dd {
  padding-left: 0 !important;
}
#contact-page .contact .form dl .error,
#test-page .contact .form dl .error {
  display: inline-block;
  margin-top: 20px;
  margin-right: 8px;
  color: #ef2027;
  padding: 13px 13px 15px;
  background: rgba(236, 24, 52, 0.1);
}
#contact-page .contact .form dl .error + .error,
#test-page .contact .form dl .error + .error {
  left: 200px;
}
#contact-page .contact .form dl dt:before,
#test-page .contact .form dl dt:before {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
#contact-page .contact .form dl dt,
#test-page .contact .form dl dt {
  vertical-align: middle;
}
#contact-page .contact .form dl dt.num,
#test-page .contact .form dl dt.num {
  position: relative;
  padding-left: 40px;
}
#contact-page .contact .form dl dt.num:before,
#test-page .contact .form dl dt.num:before {
  content: "";
  display: block;
  width: 30px;
  height: 30px;
  background: #ef2027;
  border-radius: 15px;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  left: 0;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  line-height: 28px;
  text-align: center;
  padding: 0 0 0 2px;
}
@media screen and (max-width: 959px) {
  #contact-page .contact .form dl dt.num:before,
  #test-page .contact .form dl dt.num:before {
    width: 26px;
    height: 26px;
    font-size: 14px;
    line-height: 24px;
    top: 35%;
    padding: 1px 0 0 0;
  }
}
#contact-page .contact .form dl p.red,
#test-page .contact .form dl p.red {
  color: #FF6969;
}
#contact-page .contact .form dl:nth-child(2) dt.num:before,
#test-page .contact .form dl:nth-child(2) dt.num:before {
  content: "1";
}
#contact-page .contact .form dl:nth-child(3) dt.num:before,
#test-page .contact .form dl:nth-child(3) dt.num:before {
  content: "2";
}
#contact-page .contact .form dl:nth-child(4) dt.num:before,
#test-page .contact .form dl:nth-child(4) dt.num:before {
  content: "3";
}
#contact-page .contact .form dl:nth-child(5) dt.num:before,
#test-page .contact .form dl:nth-child(5) dt.num:before {
  content: "4";
}
#contact-page .contact .form dl:nth-child(6) dt.num:before,
#test-page .contact .form dl:nth-child(6) dt.num:before {
  content: "5";
}
#contact-page .contact .form dl:nth-child(7) dt.num:before,
#test-page .contact .form dl:nth-child(7) dt.num:before {
  content: "6";
}
#contact-page .contact .form dl:nth-child(8) dt.num:before,
#test-page .contact .form dl:nth-child(8) dt.num:before {
  content: "7";
}
#contact-page .contact .form dl:nth-child(9) dt.num:before,
#test-page .contact .form dl:nth-child(9) dt.num:before {
  content: "8";
}
#contact-page .contact .form dl:nth-child(10) dt.num:before,
#test-page .contact .form dl:nth-child(10) dt.num:before {
  content: "9";
}
#contact-page .contact .form dl dd,
#contact-page .contact .form dl dt,
#test-page .contact .form dl dd,
#test-page .contact .form dl dt {
  display: table-cell;
  font-size: 100%;
  text-align: left;
  padding: 0px;
  border-width: initial !important;
  border-style: none !important;
  border-color: initial !important;
  -o-border-image: initial !important;
     border-image: initial !important;
}
#contact-page .contact .form dl dd .must,
#contact-page .contact .form dl dt .must,
#test-page .contact .form dl dd .must,
#test-page .contact .form dl dt .must {
  float: right;
  color: white !important;
  border-color: #FF5E5C !important;
  background-color: #FF5E5C;
}
@media screen and (max-width: 959px) {
  #contact-page .contact .form dl dd,
  #contact-page .contact .form dl dt,
  #test-page .contact .form dl dd,
  #test-page .contact .form dl dt {
    display: block;
    font-size: 14px !important;
  }
  #contact-page .contact .form dl dd .must,
  #contact-page .contact .form dl dt .must,
  #test-page .contact .form dl dd .must,
  #test-page .contact .form dl dt .must {
    font-size: 11px !important;
  }
}
#contact-page .contact .form dl dt,
#test-page .contact .form dl dt {
  width: 300px;
}
@media screen and (max-width: 959px) {
  #contact-page .contact .form dl dt,
  #test-page .contact .form dl dt {
    width: 100%;
  }
}
#contact-page .contact .form dl dd,
#test-page .contact .form dl dd {
  padding-left: 20px;
}
@media screen and (max-width: 959px) {
  #contact-page .contact .form dl dd,
  #test-page .contact .form dl dd {
    padding-left: 0 !important;
  }
}
#contact-page .contact .form dl.sub > dd,
#test-page .contact .form dl.sub > dd {
  position: relative;
}
#contact-page .contact .form dl.sub > dd dl,
#test-page .contact .form dl.sub > dd dl {
  padding: 10px 0;
  border: 0;
}
#contact-page .contact .form dl.sub > dd dl dt,
#test-page .contact .form dl.sub > dd dl dt {
  width: 130px;
}
@media screen and (max-width: 959px) {
  #contact-page .contact .form dl.sub > dd dl dt,
  #test-page .contact .form dl.sub > dd dl dt {
    width: 100%;
  }
}
#contact-page .contact .form input[type="number"], #contact-page .contact .form input[type="text"], #contact-page .contact .form input[type="email"], #contact-page .contact .form input[type="url"], #contact-page .contact .form input[type="tel"], #contact-page .contact .form textarea,
#test-page .contact .form input[type="number"],
#test-page .contact .form input[type="text"],
#test-page .contact .form input[type="email"],
#test-page .contact .form input[type="url"],
#test-page .contact .form input[type="tel"],
#test-page .contact .form textarea {
  -webkit-appearance: none;
  width: 100%;
  padding: 10px;
  border: solid 1px #DDDDDD;
  background: #F4F5F7;
  border-radius: 5px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 18px !important;
}
#contact-page .contact .form input.short,
#test-page .contact .form input.short {
  width: 130px !important;
}
@media screen and (max-width: 959px) {
  #contact-page .contact .form input.short,
  #test-page .contact .form input.short {
    width: 120px !important;
  }
}
#contact-page .contact .form select,
#test-page .contact .form select {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  position: relative;
  width: 100%;
  height: 44px;
  padding: 11px 0 10px 15px;
  font-weight: 400;
  cursor: pointer;
  background: none;
  z-index: 0;
  line-height: 24px;
  border: none;
  -webkit-appearance: button;
     -moz-appearance: button;
          appearance: button;
  font-size: 18px !important;
  border: 1px solid #ddd;
  background-color: white;
  border-radius: 5px;
}
#contact-page .contact .form input[type=radio], #contact-page .contact .form input[type=checkbox],
#test-page .contact .form input[type=radio],
#test-page .contact .form input[type=checkbox] {
  display: none;
}
#contact-page .contact .form .mwform-checkbox-field-text,
#contact-page .contact .form .mwform-radio-field-text,
#test-page .contact .form .mwform-checkbox-field-text,
#test-page .contact .form .mwform-radio-field-text {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-transition: background-color 0.2s linear;
  transition: background-color 0.2s linear;
  position: relative;
  display: block;
  padding: 15px 15px 15px 45px;
  border-radius: 5px;
  border: 1px solid #ddd;
  background-color: #FAFAFA;
  font-size: 16px !important;
  cursor: pointer;
}
#contact-page .contact .form .mwform-checkbox-field-text:before, #contact-page .contact .form .mwform-checkbox-field-text:after,
#contact-page .contact .form .mwform-radio-field-text:before,
#contact-page .contact .form .mwform-radio-field-text:after,
#test-page .contact .form .mwform-checkbox-field-text:before,
#test-page .contact .form .mwform-checkbox-field-text:after,
#test-page .contact .form .mwform-radio-field-text:before,
#test-page .contact .form .mwform-radio-field-text:after {
  display: block;
  position: absolute;
  top: 50%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  content: '';
}
#contact-page .contact .form .mwform-checkbox-field-text:before,
#contact-page .contact .form .mwform-radio-field-text:before,
#test-page .contact .form .mwform-checkbox-field-text:before,
#test-page .contact .form .mwform-radio-field-text:before {
  opacity: 0;
}
#contact-page .contact .form .mwform-checkbox-field-text:after,
#contact-page .contact .form .mwform-radio-field-text:after,
#test-page .contact .form .mwform-checkbox-field-text:after,
#test-page .contact .form .mwform-radio-field-text:after {
  -webkit-transition: border-color 0.2s linear;
  transition: border-color 0.2s linear;
  left: 15px;
  margin-top: -10px;
  width: 20px;
  height: 20px;
  border: 2px solid #bbb;
  border-radius: 2px;
  background: white;
}
#contact-page .contact .form .mwform-checkbox-field-text:before,
#contact-page .contact .form .mwform-radio-field-text:before,
#test-page .contact .form .mwform-checkbox-field-text:before,
#test-page .contact .form .mwform-radio-field-text:before {
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
  left: 21px;
  margin-top: -4px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: #00B9EF;
  z-index: 1;
}
#contact-page .contact .form .mwform-checkbox-field-text:after,
#contact-page .contact .form .mwform-radio-field-text:after,
#test-page .contact .form .mwform-checkbox-field-text:after,
#test-page .contact .form .mwform-radio-field-text:after {
  border-radius: 100%;
}
#contact-page .contact .form .mwform-checkbox-field-text:after,
#test-page .contact .form .mwform-checkbox-field-text:after {
  border-radius: 5px !important;
}
@media screen and (max-width: 959px) {
  #contact-page .contact .form .mwform-checkbox-field,
  #contact-page .contact .form .mwform-radio-field,
  #test-page .contact .form .mwform-checkbox-field,
  #test-page .contact .form .mwform-radio-field {
    margin-top: 10px;
  }
}
#contact-page .contact .form input[type=checkbox],
#contact-page .contact .form input[type=radio],
#test-page .contact .form input[type=checkbox],
#test-page .contact .form input[type=radio] {
  display: none;
}
#contact-page .contact .form input[type=checkbox]:checked + .mwform-checkbox-field-text:after,
#contact-page .contact .form input[type=radio]:checked + .mwform-radio-field-text:after,
#test-page .contact .form input[type=checkbox]:checked + .mwform-checkbox-field-text:after,
#test-page .contact .form input[type=radio]:checked + .mwform-radio-field-text:after {
  border-color: #00B9EF;
}
#contact-page .contact .form input[type=checkbox]:checked + .mwform-checkbox-field-text:before,
#contact-page .contact .form input[type=radio]:checked + .mwform-radio-field-text:before,
#test-page .contact .form input[type=checkbox]:checked + .mwform-checkbox-field-text:before,
#test-page .contact .form input[type=radio]:checked + .mwform-radio-field-text:before {
  opacity: 1;
}
#contact-page .contact .form input[type=file],
#test-page .contact .form input[type=file] {
  margin-top: 20px;
}
#contact-page .contact .form .button,
#test-page .contact .form .button {
  margin-top: 50px;
  border-radius: 50px;
}
@media screen and (max-width: 767px) {
  #contact-page .contact .form .button:first-of-type,
  #test-page .contact .form .button:first-of-type {
    margin-top: 15px;
  }
}
#contact-page .contact .form .button input,
#test-page .contact .form .button input {
  display: block;
  width: 365px;
  border-radius: 50px;
  height: 60px;
  margin: 0 auto;
  padding: 0;
  border: none;
  background: white;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-radius: 50px;
  cursor: pointer;
  border: 2px solid #FF6969;
  color: #FF6969;
  font-size: 16px;
  text-align: center;
  position: relative;
}
@media screen and (max-width: 959px) {
  #contact-page .contact .form .button input,
  #test-page .contact .form .button input {
    max-width: 270px;
    width: 100%;
  }
}
#contact-page .contact .form .button input:hover,
#test-page .contact .form .button input:hover {
  opacity: 1;
}
@media screen and (max-width: 767px) {
  #contact-page .contact .form .button input,
  #test-page .contact .form .button input {
    width: 200px !important;
    min-width: 0;
    height: 40px;
    font-size: 14px;
  }
}
#contact-page .contact .form .flex-c2,
#test-page .contact .form .flex-c2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
#contact-page .contact .form .flex-c2 > span:not(.error),
#test-page .contact .form .flex-c2 > span:not(.error) {
  width: calc((100% - 8px)/2);
}
#contact-page .contact .form .flex-c2 > span:not(.error):nth-of-type(2),
#test-page .contact .form .flex-c2 > span:not(.error):nth-of-type(2) {
  padding-right: 0;
}
#contact-page .contact .form .flex-c2 > input,
#test-page .contact .form .flex-c2 > input {
  width: calc((100% - 8px)/2);
  padding-right: 8px;
}
#contact-page .contact .form .flex-c2 > input:nth-of-type(2),
#test-page .contact .form .flex-c2 > input:nth-of-type(2) {
  margin-right: 0;
}
@media screen and (max-width: 959px) {
  #contact-page .contact .form .flex-c2,
  #test-page .contact .form .flex-c2 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  #contact-page .contact .form .flex-c2 > input, #contact-page .contact .form .flex-c2 > span:not(.error),
  #test-page .contact .form .flex-c2 > input,
  #test-page .contact .form .flex-c2 > span:not(.error) {
    width: 100%;
    padding: 0;
    margin-left: 0;
  }
}

.contact .form .mw_wp_form {
  border: none;
}

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  display: block;
  overflow: hidden;
  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: none;
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.slick-track:before,
.slick-track:after {
  display: table;
  content: '';
}

.slick-track:after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px;
}

[dir='rtl'] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

@media print {
  * html body {
    zoom: .7;
  }
}

/*# sourceMappingURL=style.css.map */