@charset "UTF-8";
/*!
 * html5doctor.com Reset Stylesheet v1.6.1 (http://html5doctor.com/html-5-reset-stylesheet/)
 * Richard Clark (http://richclarkdesign.com)
 * http://cssreset.com
 */
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

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

nav ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

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

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

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

/* change border colour to suit your needs */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
}

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

/*JP
----------------------------------------------------------- */
/*JP  fontweight 300,400,bold
----------------------------------------------------------- */
/*EN  fontweight 400,bold
----------------------------------------------------------- */
.jp {
  font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 400;
}

.roboto {
  font-family: 'Roboto Condensed', sans-serif;
}

a {
  color: #555;
  text-decoration: none;
}
a:hover {
  color: #d41b1b;
  text-decoration: none;
}

a:hover {
  text-decoration: none;
  outline: none !important;
}

@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: 300;
  src: local("Noto Sans CJK JP"), url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-DemiLight.woff2) format("woff2"), url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-DemiLight.woff) format("woff"), url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-DemiLight.otf) format("opentype");
}
@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: 500;
  src: local("Noto Sans CJK JP"), url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Medium.woff2) format("woff2"), url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Medium.woff) format("woff"), url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Medium.otf) format("opentype");
}
@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: 700;
  src: local("Noto Sans CJK JP"), url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Bold.woff2) format("woff2"), url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Bold.woff) format("woff"), url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Bold.otf) format("opentype");
}
html {
  font-size: 62.5%;
  -webkit-font-smoothing: antialiased;
}

body {
  font-size: 10px;
  font-size: 1.0em;
  line-height: 1.75;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue",Arial,"YakuHanJPs",'Noto Sans Japanese',"ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 400;
  color: #000;
}
@media only screen and (max-width: 768px) {
  body {
    font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue",Arial,"YakuHanJPs","ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  }
}

.rob {
  font-family: "Roboto","Helvetica Neue", Helvetica, Arial, sans-serif;
}

.maru {
  font-family: "秀英角ゴシック銀 B{pm}","YakuHanJPs","ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

img {
  /* ▼行全体の下端に揃える */
  vertical-align: bottom;
}

.att {
  padding-left: 1em;
  text-indent: -1em;
}

.att02 {
  padding-left: 1.3em;
  text-indent: -1.3em;
}

h1, h2, h3, h4 {
  font-weight: normal;
}

/*
Flaticon icon font: Flaticon
Creation date: 24/07/2016 03:51
*/
.ro {
  font-family: 'Roboto Condensed', sans-serif;
  font-weight: 600;
}

* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}

ul, li {
  list-style: none;
}

ul.normal_list {
  margin: 0;
  padding: 0 0 0 1em;
}
ul.normal_list li {
  padding: 0 0 0 0;
  margin: 0 0 0 0.3em;
  position: relative;
  list-style-type: disc;
  line-height: 1.5;
}

.unborder::after {
  content: '';
  display: block;
  margin: 8px auto 8px auto;
  text-align: center;
  width: 50px;
  height: 1px;
  background: #ccc;
}

#menuButton {
  display: block;
  width: 42px;
  height: 42px;
  position: fixed;
  top: 15px;
  right: 10px;
  z-index: 3;
}

#menuButton span {
  display: block;
  background: #666;
  width: 24px;
  height: 2px;
  position: absolute;
  left: 9px;
  transition: all 0.4s;
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
}

#menuButton span:first-child {
  top: 12px;
}

#menuButton span:nth-child(2) {
  margin-top: -1px;
  top: 50%;
}

#menuButton span:last-child {
  bottom: 12px;
}

#menuButton.active span:first-child {
  -webkit-transform: translateY(8px) rotate(45deg);
  -moz-transform: translateY(8px) rotate(45deg);
  -ms-transform: translateY(8px) rotate(45deg);
  transform: translateY(8px) rotate(45deg);
}

#menuButton.active span:nth-child(2) {
  opacity: 0;
}

#menuButton.active span:last-child {
  -webkit-transform: translateY(-8px) rotate(-45deg);
  -moz-transform: translateY(-8px) rotate(-45deg);
  -ms-transform: translateY(-8px) rotate(-45deg);
  transform: translateY(-8px) rotate(-45deg);
}

@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 100;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 200;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 300;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 400;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Bold");
  font-weight: bold;
}
@font-face {
  font-family: "Helvetica Neue";
  src: local("Helvetica Neue Regular");
  font-weight: 100;
}
@font-face {
  font-family: "Helvetica Neue";
  src: local("Helvetica Neue Regular");
  font-weight: 200;
}
#overlay {
  width: 100vw;
  height: 100vh;
  text-align: center;
  position: fixed;
  top: 0;
  left: 0;
  background: #fafafa;
  z-index: 9999;
}
#overlay .loader {
  position: fixed;
  top: 50%;
  left: 50%;
  margin-top: -50px;
  margin-left: -10%;
  z-index: 2;
}
#overlay .loader .load_sub {
  font-size: 8px;
  font-size: 0.8rem;
  letter-spacing: 0.1em;
  font-family: "Roboto",serif;
}

.loader {
  margin: 0 0 2em;
  height: 100px;
  width: 20%;
  text-align: center;
  padding: 1em;
  margin: 0 auto 1em;
  display: inline-block;
  vertical-align: top;
  z-index: 9999;
  position: absolute;
}

/*
  Set the color of the icon
*/
.d02s {
  -webkit-animation-delay: 0.2s;
  animation-delay: 0.2s;
}

.d04s {
  -webkit-animation-delay: 0.4s;
  animation-delay: 0.4s;
}

.d06s {
  -webkit-animation-delay: 0.6s;
  animation-delay: 0.6s;
}

.d08s {
  -webkit-animation-delay: 0.8s;
  animation-delay: 0.8s;
}

.d1s {
  -webkit-animation-delay: 1s;
  animation-delay: 1s;
}

/*!
 * animate.css -http://daneden.me/animate
 * Version - 3.5.2
 * Licensed under the MIT license - http://opensource.org/licenses/MIT
 *
 * Copyright (c) 2017 Daniel Eden
 */
.animated {
  animation-duration: 1s;
  animation-fill-mode: both;
}

.animated.infinite {
  animation-iteration-count: infinite;
}

.animated.hinge {
  animation-duration: 2s;
}

.animated.flipOutX,
.animated.flipOutY,
.animated.bounceIn,
.animated.bounceOut {
  animation-duration: .75s;
}

@keyframes bounce {
  from, 20%, 53%, 80%, to {
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transform: translate3d(0, 0, 0);
  }
  40%, 43% {
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    transform: translate3d(0, -30px, 0);
  }
  70% {
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    transform: translate3d(0, -15px, 0);
  }
  90% {
    transform: translate3d(0, -4px, 0);
  }
}
.bounce {
  animation-name: bounce;
  transform-origin: center bottom;
}

@keyframes flash {
  from, 50%, to {
    opacity: 1;
  }
  25%, 75% {
    opacity: 0;
  }
}
.flash {
  animation-name: flash;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@keyframes pulse {
  from {
    transform: scale3d(1, 1, 1);
  }
  50% {
    transform: scale3d(1.05, 1.05, 1.05);
  }
  to {
    transform: scale3d(1, 1, 1);
  }
}
.pulse {
  animation-name: pulse;
}

@keyframes rubberBand {
  from {
    transform: scale3d(1, 1, 1);
  }
  30% {
    transform: scale3d(1.25, 0.75, 1);
  }
  40% {
    transform: scale3d(0.75, 1.25, 1);
  }
  50% {
    transform: scale3d(1.15, 0.85, 1);
  }
  65% {
    transform: scale3d(0.95, 1.05, 1);
  }
  75% {
    transform: scale3d(1.05, 0.95, 1);
  }
  to {
    transform: scale3d(1, 1, 1);
  }
}
.rubberBand {
  animation-name: rubberBand;
}

@keyframes shake {
  from, to {
    transform: translate3d(0, 0, 0);
  }
  10%, 30%, 50%, 70%, 90% {
    transform: translate3d(-10px, 0, 0);
  }
  20%, 40%, 60%, 80% {
    transform: translate3d(10px, 0, 0);
  }
}
.shake {
  animation-name: shake;
}

@keyframes headShake {
  0% {
    transform: translateX(0);
  }
  6.5% {
    transform: translateX(-6px) rotateY(-9deg);
  }
  18.5% {
    transform: translateX(5px) rotateY(7deg);
  }
  31.5% {
    transform: translateX(-3px) rotateY(-5deg);
  }
  43.5% {
    transform: translateX(2px) rotateY(3deg);
  }
  50% {
    transform: translateX(0);
  }
}
.headShake {
  animation-timing-function: ease-in-out;
  animation-name: headShake;
}

@keyframes swing {
  20% {
    transform: rotate3d(0, 0, 1, 15deg);
  }
  40% {
    transform: rotate3d(0, 0, 1, -10deg);
  }
  60% {
    transform: rotate3d(0, 0, 1, 5deg);
  }
  80% {
    transform: rotate3d(0, 0, 1, -5deg);
  }
  to {
    transform: rotate3d(0, 0, 1, 0deg);
  }
}
.swing {
  transform-origin: top center;
  animation-name: swing;
}

@keyframes tada {
  from {
    transform: scale3d(1, 1, 1);
  }
  10%, 20% {
    transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
  }
  30%, 50%, 70%, 90% {
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
  }
  40%, 60%, 80% {
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
  }
  to {
    transform: scale3d(1, 1, 1);
  }
}
.tada {
  animation-name: tada;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@keyframes wobble {
  from {
    transform: none;
  }
  15% {
    transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
  }
  30% {
    transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
  }
  45% {
    transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
  }
  60% {
    transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
  }
  75% {
    transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
  }
  to {
    transform: none;
  }
}
.wobble {
  animation-name: wobble;
}

@keyframes jello {
  from, 11.1%, to {
    transform: none;
  }
  22.2% {
    transform: skewX(-12.5deg) skewY(-12.5deg);
  }
  33.3% {
    transform: skewX(6.25deg) skewY(6.25deg);
  }
  44.4% {
    transform: skewX(-3.125deg) skewY(-3.125deg);
  }
  55.5% {
    transform: skewX(1.5625deg) skewY(1.5625deg);
  }
  66.6% {
    transform: skewX(-0.78125deg) skewY(-0.78125deg);
  }
  77.7% {
    transform: skewX(0.39063deg) skewY(0.39063deg);
  }
  88.8% {
    transform: skewX(-0.19531deg) skewY(-0.19531deg);
  }
}
.jello {
  animation-name: jello;
  transform-origin: center;
}

@keyframes bounceIn {
  from, 20%, 40%, 60%, 80%, to {
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }
  20% {
    transform: scale3d(1.1, 1.1, 1.1);
  }
  40% {
    transform: scale3d(0.9, 0.9, 0.9);
  }
  60% {
    opacity: 1;
    transform: scale3d(1.03, 1.03, 1.03);
  }
  80% {
    transform: scale3d(0.97, 0.97, 0.97);
  }
  to {
    opacity: 1;
    transform: scale3d(1, 1, 1);
  }
}
.bounceIn {
  animation-name: bounceIn;
}

@keyframes bounceInDown {
  from, 60%, 75%, 90%, to {
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    transform: translate3d(0, -3000px, 0);
  }
  60% {
    opacity: 1;
    transform: translate3d(0, 25px, 0);
  }
  75% {
    transform: translate3d(0, -10px, 0);
  }
  90% {
    transform: translate3d(0, 5px, 0);
  }
  to {
    transform: none;
  }
}
.bounceInDown {
  animation-name: bounceInDown;
}

@keyframes bounceInLeft {
  from, 60%, 75%, 90%, to {
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    transform: translate3d(-3000px, 0, 0);
  }
  60% {
    opacity: 1;
    transform: translate3d(25px, 0, 0);
  }
  75% {
    transform: translate3d(-10px, 0, 0);
  }
  90% {
    transform: translate3d(5px, 0, 0);
  }
  to {
    transform: none;
  }
}
.bounceInLeft {
  animation-name: bounceInLeft;
}

@keyframes bounceInRight {
  from, 60%, 75%, 90%, to {
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  from {
    opacity: 0;
    transform: translate3d(3000px, 0, 0);
  }
  60% {
    opacity: 1;
    transform: translate3d(-25px, 0, 0);
  }
  75% {
    transform: translate3d(10px, 0, 0);
  }
  90% {
    transform: translate3d(-5px, 0, 0);
  }
  to {
    transform: none;
  }
}
.bounceInRight {
  animation-name: bounceInRight;
}

@keyframes bounceInUp {
  from, 60%, 75%, 90%, to {
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  from {
    opacity: 0;
    transform: translate3d(0, 3000px, 0);
  }
  60% {
    opacity: 1;
    transform: translate3d(0, -20px, 0);
  }
  75% {
    transform: translate3d(0, 10px, 0);
  }
  90% {
    transform: translate3d(0, -5px, 0);
  }
  to {
    transform: translate3d(0, 0, 0);
  }
}
.bounceInUp {
  animation-name: bounceInUp;
}

@keyframes bounceOut {
  20% {
    transform: scale3d(0.9, 0.9, 0.9);
  }
  50%, 55% {
    opacity: 1;
    transform: scale3d(1.1, 1.1, 1.1);
  }
  to {
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }
}
.bounceOut {
  animation-name: bounceOut;
}

@keyframes bounceOutDown {
  20% {
    transform: translate3d(0, 10px, 0);
  }
  40%, 45% {
    opacity: 1;
    transform: translate3d(0, -20px, 0);
  }
  to {
    opacity: 0;
    transform: translate3d(0, 2000px, 0);
  }
}
.bounceOutDown {
  animation-name: bounceOutDown;
}

@keyframes bounceOutLeft {
  20% {
    opacity: 1;
    transform: translate3d(20px, 0, 0);
  }
  to {
    opacity: 0;
    transform: translate3d(-2000px, 0, 0);
  }
}
.bounceOutLeft {
  animation-name: bounceOutLeft;
}

@keyframes bounceOutRight {
  20% {
    opacity: 1;
    transform: translate3d(-20px, 0, 0);
  }
  to {
    opacity: 0;
    transform: translate3d(2000px, 0, 0);
  }
}
.bounceOutRight {
  animation-name: bounceOutRight;
}

@keyframes bounceOutUp {
  20% {
    transform: translate3d(0, -10px, 0);
  }
  40%, 45% {
    opacity: 1;
    transform: translate3d(0, 20px, 0);
  }
  to {
    opacity: 0;
    transform: translate3d(0, -2000px, 0);
  }
}
.bounceOutUp {
  animation-name: bounceOutUp;
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.fadeIn {
  animation-name: fadeIn;
}

@keyframes fadeInDown {
  from {
    opacity: 0;
    transform: translate3d(0, -100%, 0);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
.fadeInDown {
  animation-name: fadeInDown;
}

@keyframes fadeInDownBig {
  from {
    opacity: 0;
    transform: translate3d(0, -2000px, 0);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
.fadeInDownBig {
  animation-name: fadeInDownBig;
}

@keyframes fadeInLeft {
  from {
    opacity: 0;
    transform: translate3d(-100%, 0, 0);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
.fadeInLeft {
  animation-name: fadeInLeft;
}

@keyframes fadeInLeftBig {
  from {
    opacity: 0;
    transform: translate3d(-2000px, 0, 0);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
.fadeInLeftBig {
  animation-name: fadeInLeftBig;
}

@keyframes fadeInRight {
  from {
    opacity: 0;
    transform: translate3d(100%, 0, 0);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
.fadeInRight {
  animation-name: fadeInRight;
}

@keyframes fadeInRightBig {
  from {
    opacity: 0;
    transform: translate3d(2000px, 0, 0);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
.fadeInRightBig {
  animation-name: fadeInRightBig;
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translate3d(0, 100%, 0);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
.fadeInUp {
  animation-name: fadeInUp;
}

@keyframes fadeInUpBig {
  from {
    opacity: 0;
    transform: translate3d(0, 2000px, 0);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
.fadeInUpBig {
  animation-name: fadeInUpBig;
}

@keyframes fadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
.fadeOut {
  animation-name: fadeOut;
}

@keyframes fadeOutDown {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    transform: translate3d(0, 100%, 0);
  }
}
.fadeOutDown {
  animation-name: fadeOutDown;
}

@keyframes fadeOutDownBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    transform: translate3d(0, 2000px, 0);
  }
}
.fadeOutDownBig {
  animation-name: fadeOutDownBig;
}

@keyframes fadeOutLeft {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    transform: translate3d(-100%, 0, 0);
  }
}
.fadeOutLeft {
  animation-name: fadeOutLeft;
}

@keyframes fadeOutLeftBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    transform: translate3d(-2000px, 0, 0);
  }
}
.fadeOutLeftBig {
  animation-name: fadeOutLeftBig;
}

@keyframes fadeOutRight {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    transform: translate3d(100%, 0, 0);
  }
}
.fadeOutRight {
  animation-name: fadeOutRight;
}

@keyframes fadeOutRightBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    transform: translate3d(2000px, 0, 0);
  }
}
.fadeOutRightBig {
  animation-name: fadeOutRightBig;
}

@keyframes fadeOutUp {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    transform: translate3d(0, -100%, 0);
  }
}
.fadeOutUp {
  animation-name: fadeOutUp;
}

@keyframes fadeOutUpBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    transform: translate3d(0, -2000px, 0);
  }
}
.fadeOutUpBig {
  animation-name: fadeOutUpBig;
}

@keyframes flip {
  from {
    transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    animation-timing-function: ease-out;
  }
  40% {
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    animation-timing-function: ease-out;
  }
  50% {
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    animation-timing-function: ease-in;
  }
  80% {
    transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
    animation-timing-function: ease-in;
  }
  to {
    transform: perspective(400px);
    animation-timing-function: ease-in;
  }
}
.animated.flip {
  -webkit-backface-visibility: visible;
  backface-visibility: visible;
  animation-name: flip;
}

@keyframes flipInX {
  from {
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    animation-timing-function: ease-in;
    opacity: 0;
  }
  40% {
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    animation-timing-function: ease-in;
  }
  60% {
    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1;
  }
  80% {
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
  }
  to {
    transform: perspective(400px);
  }
}
.flipInX {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  animation-name: flipInX;
}

@keyframes flipInY {
  from {
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    animation-timing-function: ease-in;
    opacity: 0;
  }
  40% {
    transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    animation-timing-function: ease-in;
  }
  60% {
    transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity: 1;
  }
  80% {
    transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
  }
  to {
    transform: perspective(400px);
  }
}
.flipInY {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  animation-name: flipInY;
}

@keyframes flipOutX {
  from {
    transform: perspective(400px);
  }
  30% {
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1;
  }
  to {
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0;
  }
}
.flipOutX {
  animation-name: flipOutX;
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
}

@keyframes flipOutY {
  from {
    transform: perspective(400px);
  }
  30% {
    transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    opacity: 1;
  }
  to {
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity: 0;
  }
}
.flipOutY {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  animation-name: flipOutY;
}

@keyframes lightSpeedIn {
  from {
    transform: translate3d(100%, 0, 0) skewX(-30deg);
    opacity: 0;
  }
  60% {
    transform: skewX(20deg);
    opacity: 1;
  }
  80% {
    transform: skewX(-5deg);
    opacity: 1;
  }
  to {
    transform: none;
    opacity: 1;
  }
}
.lightSpeedIn {
  animation-name: lightSpeedIn;
  animation-timing-function: ease-out;
}

@keyframes lightSpeedOut {
  from {
    opacity: 1;
  }
  to {
    transform: translate3d(100%, 0, 0) skewX(30deg);
    opacity: 0;
  }
}
.lightSpeedOut {
  animation-name: lightSpeedOut;
  animation-timing-function: ease-in;
}

@keyframes rotateIn {
  from {
    transform-origin: center;
    transform: rotate3d(0, 0, 1, -200deg);
    opacity: 0;
  }
  to {
    transform-origin: center;
    transform: none;
    opacity: 1;
  }
}
.rotateIn {
  animation-name: rotateIn;
}

@keyframes rotateInDownLeft {
  from {
    transform-origin: left bottom;
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
  to {
    transform-origin: left bottom;
    transform: none;
    opacity: 1;
  }
}
.rotateInDownLeft {
  animation-name: rotateInDownLeft;
}

@keyframes rotateInDownRight {
  from {
    transform-origin: right bottom;
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
  to {
    transform-origin: right bottom;
    transform: none;
    opacity: 1;
  }
}
.rotateInDownRight {
  animation-name: rotateInDownRight;
}

@keyframes rotateInUpLeft {
  from {
    transform-origin: left bottom;
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
  to {
    transform-origin: left bottom;
    transform: none;
    opacity: 1;
  }
}
.rotateInUpLeft {
  animation-name: rotateInUpLeft;
}

@keyframes rotateInUpRight {
  from {
    transform-origin: right bottom;
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }
  to {
    transform-origin: right bottom;
    transform: none;
    opacity: 1;
  }
}
.rotateInUpRight {
  animation-name: rotateInUpRight;
}

@keyframes rotateOut {
  from {
    transform-origin: center;
    opacity: 1;
  }
  to {
    transform-origin: center;
    transform: rotate3d(0, 0, 1, 200deg);
    opacity: 0;
  }
}
.rotateOut {
  animation-name: rotateOut;
}

@keyframes rotateOutDownLeft {
  from {
    transform-origin: left bottom;
    opacity: 1;
  }
  to {
    transform-origin: left bottom;
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
}
.rotateOutDownLeft {
  animation-name: rotateOutDownLeft;
}

@keyframes rotateOutDownRight {
  from {
    transform-origin: right bottom;
    opacity: 1;
  }
  to {
    transform-origin: right bottom;
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}
.rotateOutDownRight {
  animation-name: rotateOutDownRight;
}

@keyframes rotateOutUpLeft {
  from {
    transform-origin: left bottom;
    opacity: 1;
  }
  to {
    transform-origin: left bottom;
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}
.rotateOutUpLeft {
  animation-name: rotateOutUpLeft;
}

@keyframes rotateOutUpRight {
  from {
    transform-origin: right bottom;
    opacity: 1;
  }
  to {
    transform-origin: right bottom;
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
}
.rotateOutUpRight {
  animation-name: rotateOutUpRight;
}

@keyframes hinge {
  0% {
    transform-origin: top left;
    animation-timing-function: ease-in-out;
  }
  20%, 60% {
    transform: rotate3d(0, 0, 1, 80deg);
    transform-origin: top left;
    animation-timing-function: ease-in-out;
  }
  40%, 80% {
    transform: rotate3d(0, 0, 1, 60deg);
    transform-origin: top left;
    animation-timing-function: ease-in-out;
    opacity: 1;
  }
  to {
    transform: translate3d(0, 700px, 0);
    opacity: 0;
  }
}
.hinge {
  animation-name: hinge;
}

@keyframes jackInTheBox {
  from {
    opacity: 0;
    transform: scale(0.1) rotate(30deg);
    transform-origin: center bottom;
  }
  50% {
    transform: rotate(-10deg);
  }
  70% {
    transform: rotate(3deg);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}
.jackInTheBox {
  animation-name: jackInTheBox;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@keyframes rollIn {
  from {
    opacity: 0;
    transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
.rollIn {
  animation-name: rollIn;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@keyframes rollOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
  }
}
.rollOut {
  animation-name: rollOut;
}

@keyframes zoomIn {
  from {
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }
  50% {
    opacity: 1;
  }
}
.zoomIn {
  animation-name: zoomIn;
}

@keyframes zoomInDown {
  from {
    opacity: 0;
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
.zoomInDown {
  animation-name: zoomInDown;
}

@keyframes zoomInLeft {
  from {
    opacity: 0;
    transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
.zoomInLeft {
  animation-name: zoomInLeft;
}

@keyframes zoomInRight {
  from {
    opacity: 0;
    transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
.zoomInRight {
  animation-name: zoomInRight;
}

@keyframes zoomInUp {
  from {
    opacity: 0;
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
.zoomInUp {
  animation-name: zoomInUp;
}

@keyframes zoomOut {
  from {
    opacity: 1;
  }
  50% {
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }
  to {
    opacity: 0;
  }
}
.zoomOut {
  animation-name: zoomOut;
}

@keyframes zoomOutDown {
  40% {
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  to {
    opacity: 0;
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    transform-origin: center bottom;
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
.zoomOutDown {
  animation-name: zoomOutDown;
}

@keyframes zoomOutLeft {
  40% {
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
  }
  to {
    opacity: 0;
    transform: scale(0.1) translate3d(-2000px, 0, 0);
    transform-origin: left center;
  }
}
.zoomOutLeft {
  animation-name: zoomOutLeft;
}

@keyframes zoomOutRight {
  40% {
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
  }
  to {
    opacity: 0;
    transform: scale(0.1) translate3d(2000px, 0, 0);
    transform-origin: right center;
  }
}
.zoomOutRight {
  animation-name: zoomOutRight;
}

@keyframes zoomOutUp {
  40% {
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  to {
    opacity: 0;
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    transform-origin: center bottom;
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
.zoomOutUp {
  animation-name: zoomOutUp;
}

@keyframes slideInDown {
  from {
    transform: translate3d(0, -100%, 0);
    visibility: visible;
  }
  to {
    transform: translate3d(0, 0, 0);
  }
}
.slideInDown {
  animation-name: slideInDown;
}

@keyframes slideInLeft {
  from {
    transform: translate3d(-100%, 0, 0);
    visibility: visible;
  }
  to {
    transform: translate3d(0, 0, 0);
  }
}
.slideInLeft {
  animation-name: slideInLeft;
}

@keyframes slideInRight {
  from {
    transform: translate3d(100%, 0, 0);
    visibility: visible;
  }
  to {
    transform: translate3d(0, 0, 0);
  }
}
.slideInRight {
  animation-name: slideInRight;
}

@keyframes slideInUp {
  from {
    transform: translate3d(0, 100%, 0);
    visibility: visible;
  }
  to {
    transform: translate3d(0, 0, 0);
  }
}
.slideInUp {
  animation-name: slideInUp;
}

@keyframes slideOutDown {
  from {
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    transform: translate3d(0, 100%, 0);
  }
}
.slideOutDown {
  animation-name: slideOutDown;
}

@keyframes slideOutLeft {
  from {
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    transform: translate3d(-100%, 0, 0);
  }
}
.slideOutLeft {
  animation-name: slideOutLeft;
}

@keyframes slideOutRight {
  from {
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    transform: translate3d(100%, 0, 0);
  }
}
.slideOutRight {
  animation-name: slideOutRight;
}

@keyframes slideOutUp {
  from {
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    transform: translate3d(0, -100%, 0);
  }
}
.slideOutUp {
  animation-name: slideOutUp;
}

body.fixed {
  width: 100%;
  height: 100%;
  position: fixed;
}

header {
  width: 100%;
  position: fixed;
  z-index: 9999;
  padding: 2rem 2rem 0 2rem;
  display: flex;
  justify-content: right;
  background: #ffffff;
  border-top: 5px solid #d41b1b;
  border-bottom: 1px solid #efefef;
  *zoom: 1;
}
header:after {
  content: "";
  display: table;
  clear: both;
}
@media only screen and (max-width: 768px) {
  header {
    display: block;
    position: fixed;
    z-index: 9999;
    padding: 2rem 0 0 0;
    top: 0;
    left: 0;
    width: 100%;
    height: auto;
    transition: all .3s ease;
  }
}
header h1 {
  line-height: 1;
}

header.active {
  height: 100%;
  background: #d41b1b;
}
header.active path {
  fill: #fff !important;
}

#logo {
  margin-top: -0.7rem;
  margin-left: 1rem;
}
@media only screen and (max-width: 768px) {
  #logo img {
    width: 100%;
  }
  #logo #logo_svg {
    width: 77px !important;
    padding: 0 0 0rem 0;
  }
}
.nav_wrap {
  display: block;
}
@media only screen and (max-width: 768px) {
  .nav_wrap {
    display: none;
    position: fixed;
    top: 70px;
    left: 0;
    width: 100%;
    background: #ffffff;
    *zoom: 1;
    height: 100% !important;
    -webkit-overflow-scrolling: touch;
    overflow: scroll !important;
    z-index: 9999;
    background: #d41b1b;
  }
  .nav_wrap:after {
    content: "";
    display: table;
    clear: both;
  }
}

#nav_box {
  flex: 1;
}

nav#em {
  margin: 0 0 2rem 0;
}
@media only screen and (max-width: 768px) {
  nav#em {
    display: none;
  }
}
nav#em ul {
  *zoom: 1;
  display: flex;
  justify-content: flex-end;
  flex-flow: row;
}
nav#em ul:after {
  content: "";
  display: table;
  clear: both;
}
nav#em ul li a {
  padding: 1rem 2rem;
  font-size: 14px;
  font-size: 1.4rem;
}
nav#em ul li.entry a {
  background: #d41b1b;
  color: #ffffff;
}
nav#em ul li.entry a:hover {
  opacity: 0.8;
}
nav#em ul li.mypage a {
  background: #dbe20f;
  color: #d41b1b;
}
nav#em ul li.mypage a:hover {
  opacity: 0.8;
}

#spmenu {
  position: fixed;
  top: 3rem;
  right: 1.4rem;
  z-index: 9999;
  display: none;
}
@media only screen and (max-width: 768px) {
  #spmenu {
    display: block;
  }
}

.menu-trigger,
.menu-trigger span {
  display: inline-block;
  transition: all .4s;
  box-sizing: border-box;
}

.menu-trigger {
  position: relative;
  width: 34px;
  height: 20px;
}

.menu-trigger span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #d41b1b;
}

.menu-trigger span:nth-of-type(1) {
  top: 0;
}

.menu-trigger span:nth-of-type(2) {
  top: 9px;
}

.menu-trigger span:nth-of-type(3) {
  bottom: 0;
}

.menu-trigger.active span:nth-of-type(1) {
  -webkit-transform: translateY(9px) rotate(-45deg);
  transform: translateY(9px) rotate(-45deg);
}

.menu-trigger.active span:nth-of-type(2) {
  opacity: 0;
}

.menu-trigger.active span:nth-of-type(3) {
  -webkit-transform: translateY(-9px) rotate(45deg);
  transform: translateY(-9px) rotate(45deg);
}

#pan {
  background: #f5f5f5;
  width: 100%;
  border-top: 8px solid #555;
}
@media only screen and (max-width: 768px) {
  #pan {
    display: none;
  }
}
#pan .contents {
  max-width: 1300px;
  padding: 0 0 0 4rem !important;
}
#pan .inner {
  max-width: 1300px;
  padding: 0.5rem 0;
  margin: auto;
}
#pan ul {
  *zoom: 1;
}
#pan ul:after {
  content: "";
  display: table;
  clear: both;
}
#pan ul li a {
  display: block;
  float: left;
  position: relative;
  padding: 0 1.2rem 0 1.2rem;
  font-size: 11px;
  font-size: 1.1rem;
  color: #555;
}
#pan ul li a::after {
  color: #555;
  position: absolute;
  font-family: 'ionIcons';
  top: 50%;
  right: 0;
  margin-top: -0.5em;
  line-height: 1;
  content: "\f3d3";
  font-size: 13px;
  font-size: 1.3rem;
  z-index: 999;
}
#pan ul li:last-child a:after {
  content: "";
}

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

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

.ml0 {
  margin-left: 0px !important;
}

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

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

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

.pl0 {
  padding-left: 0px !important;
}

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

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

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

.ml5 {
  margin-left: 5px !important;
}

.mr5 {
  margin-right: 5px !important;
}

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

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

.pl5 {
  padding-left: 5px !important;
}

.pr5 {
  padding-right: 5px !important;
}

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

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

.ml10 {
  margin-left: 10px !important;
}

.mr10 {
  margin-right: 10px !important;
}

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

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

.pl10 {
  padding-left: 10px !important;
}

.pr10 {
  padding-right: 10px !important;
}

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

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

.ml15 {
  margin-left: 15px !important;
}

.mr15 {
  margin-right: 15px !important;
}

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

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

.pl15 {
  padding-left: 15px !important;
}

.pr15 {
  padding-right: 15px !important;
}

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

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

.ml20 {
  margin-left: 20px !important;
}

.mr20 {
  margin-right: 20px !important;
}

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

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

.pl20 {
  padding-left: 20px !important;
}

.pr20 {
  padding-right: 20px !important;
}

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

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

.ml25 {
  margin-left: 25px !important;
}

.mr25 {
  margin-right: 25px !important;
}

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

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

.pl25 {
  padding-left: 25px !important;
}

.pr25 {
  padding-right: 25px !important;
}

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

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

.ml30 {
  margin-left: 30px !important;
}

.mr30 {
  margin-right: 30px !important;
}

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

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

.pl30 {
  padding-left: 30px !important;
}

.pr30 {
  padding-right: 30px !important;
}

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

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

.ml35 {
  margin-left: 35px !important;
}

.mr35 {
  margin-right: 35px !important;
}

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

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

.pl35 {
  padding-left: 35px !important;
}

.pr35 {
  padding-right: 35px !important;
}

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

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

.ml40 {
  margin-left: 40px !important;
}

.mr40 {
  margin-right: 40px !important;
}

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

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

.pl40 {
  padding-left: 40px !important;
}

.pr40 {
  padding-right: 40px !important;
}

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

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

.ml45 {
  margin-left: 45px !important;
}

.mr45 {
  margin-right: 45px !important;
}

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

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

.pl45 {
  padding-left: 45px !important;
}

.pr45 {
  padding-right: 45px !important;
}

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

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

.ml50 {
  margin-left: 50px !important;
}

.mr50 {
  margin-right: 50px !important;
}

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

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

.pl50 {
  padding-left: 50px !important;
}

.pr50 {
  padding-right: 50px !important;
}

.parenthesis {
  position: relative;
}

.parenthesis::before,
.parenthesis::after {
  position: absolute;
  top: 0%;
  content: '';
  width: 10px;
  height: 100%;
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.parenthesis::before {
  left: 0;
  border-left: 1px solid #ccc;
}

.parenthesis::after {
  right: 0;
  border-right: 1px solid #ccc;
}

/*スクロールバー全体*/
::-webkit-scrollbar {
  width: 10px;
}

/*スクロールバーの軌道*/
::-webkit-scrollbar-track {
  box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.1);
}

/*スクロールバーの動く部分*/
::-webkit-scrollbar-thumb {
  background-color: #cccccc;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.3);
}

/*!
  Ionicons, v2.0.0
  Created by Ben Sperry for the Ionic Framework, http://ionicons.com/
  https://twitter.com/benjsperry  https://twitter.com/ionicframework
  MIT License: https://github.com/driftyco/ionicons

  Android-style icons originally built by Google’s
  Material Design Icons: https://github.com/google/material-design-icons
  used under CC BY http://creativecommons.org/licenses/by/4.0/
  Modified icons to fit ionicon’s grid from original.
*/
@font-face {
  font-family: "Ionicons";
  src: url("/fujioil/recruit/gradu/img/fonts//ionicons.eot?v=2.0.0");
  src: url("/fujioil/recruit/gradu/img/fonts//ionicons.eot?v=2.0.0#iefix") format("embedded-opentype"), url("/fujioil/recruit/gradu/img/fonts//ionicons.ttf?v=2.0.0") format("truetype"), url("/fujioil/recruit/gradu/img/fonts//ionicons.woff?v=2.0.0") format("woff"), url("/fujioil/recruit/gradu/img/fonts//ionicons.svg?v=2.0.0#Ionicons") format("svg");
  font-weight: normal;
  font-style: normal;
}
.ion, .ionicons,
.ion-alert:before,
.ion-alert-circled:before,
.ion-android-add:before,
.ion-android-add-circle:before,
.ion-android-alarm-clock:before,
.ion-android-alert:before,
.ion-android-apps:before,
.ion-android-archive:before,
.ion-android-arrow-back:before,
.ion-android-arrow-down:before,
.ion-android-arrow-dropdown:before,
.ion-android-arrow-dropdown-circle:before,
.ion-android-arrow-dropleft:before,
.ion-android-arrow-dropleft-circle:before,
.ion-android-arrow-dropright:before,
.ion-android-arrow-dropright-circle:before,
.ion-android-arrow-dropup:before,
.ion-android-arrow-dropup-circle:before,
.ion-android-arrow-forward:before,
.ion-android-arrow-up:before,
.ion-android-attach:before,
.ion-android-bar:before,
.ion-android-bicycle:before,
.ion-android-boat:before,
.ion-android-bookmark:before,
.ion-android-bulb:before,
.ion-android-bus:before,
.ion-android-calendar:before,
.ion-android-call:before,
.ion-android-camera:before,
.ion-android-cancel:before,
.ion-android-car:before,
.ion-android-cart:before,
.ion-android-chat:before,
.ion-android-checkbox:before,
.ion-android-checkbox-blank:before,
.ion-android-checkbox-outline:before,
.ion-android-checkbox-outline-blank:before,
.ion-android-checkmark-circle:before,
.ion-android-clipboard:before,
.ion-android-close:before,
.ion-android-cloud:before,
.ion-android-cloud-circle:before,
.ion-android-cloud-done:before,
.ion-android-cloud-outline:before,
.ion-android-color-palette:before,
.ion-android-compass:before,
.ion-android-contact:before,
.ion-android-contacts:before,
.ion-android-contract:before,
.ion-android-create:before,
.ion-android-delete:before,
.ion-android-desktop:before,
.ion-android-document:before,
.ion-android-done:before,
.ion-android-done-all:before,
.ion-android-download:before,
.ion-android-drafts:before,
.ion-android-exit:before,
.ion-android-expand:before,
.ion-android-favorite:before,
.ion-android-favorite-outline:before,
.ion-android-film:before,
.ion-android-folder:before,
.ion-android-folder-open:before,
.ion-android-funnel:before,
.ion-android-globe:before,
.ion-android-hand:before,
.ion-android-hangout:before,
.ion-android-happy:before,
.ion-android-home:before,
.ion-android-image:before,
.ion-android-laptop:before,
.ion-android-list:before,
.ion-android-locate:before,
.ion-android-lock:before,
.ion-android-mail:before,
.ion-android-map:before,
.ion-android-menu:before,
.ion-android-microphone:before,
.ion-android-microphone-off:before,
.ion-android-more-horizontal:before,
.ion-android-more-vertical:before,
.ion-android-navigate:before,
.ion-android-notifications:before,
.ion-android-notifications-none:before,
.ion-android-notifications-off:before,
.ion-android-open:before,
.ion-android-options:before,
.ion-android-people:before,
.ion-android-person:before,
.ion-android-person-add:before,
.ion-android-phone-landscape:before,
.ion-android-phone-portrait:before,
.ion-android-pin:before,
.ion-android-plane:before,
.ion-android-playstore:before,
.ion-android-print:before,
.ion-android-radio-button-off:before,
.ion-android-radio-button-on:before,
.ion-android-refresh:before,
.ion-android-remove:before,
.ion-android-remove-circle:before,
.ion-android-restaurant:before,
.ion-android-sad:before,
.ion-android-search:before,
.ion-android-send:before,
.ion-android-settings:before,
.ion-android-share:before,
.ion-android-share-alt:before,
.ion-android-star:before,
.ion-android-star-half:before,
.ion-android-star-outline:before,
.ion-android-stopwatch:before,
.ion-android-subway:before,
.ion-android-sunny:before,
.ion-android-sync:before,
.ion-android-textsms:before,
.ion-android-time:before,
.ion-android-train:before,
.ion-android-unlock:before,
.ion-android-upload:before,
.ion-android-volume-down:before,
.ion-android-volume-mute:before,
.ion-android-volume-off:before,
.ion-android-volume-up:before,
.ion-android-walk:before,
.ion-android-warning:before,
.ion-android-watch:before,
.ion-android-wifi:before,
.ion-aperture:before,
.ion-archive:before,
.ion-arrow-down-a:before,
.ion-arrow-down-b:before,
.ion-arrow-down-c:before,
.ion-arrow-expand:before,
.ion-arrow-graph-down-left:before,
.ion-arrow-graph-down-right:before,
.ion-arrow-graph-up-left:before,
.ion-arrow-graph-up-right:before,
.ion-arrow-left-a:before,
.ion-arrow-left-b:before,
.ion-arrow-left-c:before,
.ion-arrow-move:before,
.ion-arrow-resize:before,
.ion-arrow-return-left:before,
.ion-arrow-return-right:before,
.ion-arrow-right-a:before,
.ion-arrow-right-b:before,
.ion-arrow-right-c:before,
.ion-arrow-shrink:before,
.ion-arrow-swap:before,
.ion-arrow-up-a:before,
.ion-arrow-up-b:before,
.ion-arrow-up-c:before,
.ion-asterisk:before,
.ion-at:before,
.ion-backspace:before,
.ion-backspace-outline:before,
.ion-bag:before,
.ion-battery-charging:before,
.ion-battery-empty:before,
.ion-battery-full:before,
.ion-battery-half:before,
.ion-battery-low:before,
.ion-beaker:before,
.ion-beer:before,
.ion-bluetooth:before,
.ion-bonfire:before,
.ion-bookmark:before,
.ion-bowtie:before,
.ion-briefcase:before,
.ion-bug:before,
.ion-calculator:before,
.ion-calendar:before,
.ion-camera:before,
.ion-card:before,
.ion-cash:before,
.ion-chatbox:before,
.ion-chatbox-working:before,
.ion-chatboxes:before,
.ion-chatbubble:before,
.ion-chatbubble-working:before,
.ion-chatbubbles:before,
.ion-checkmark:before,
.ion-checkmark-circled:before,
.ion-checkmark-round:before,
.ion-chevron-down:before,
.ion-chevron-left:before,
.ion-chevron-right:before,
.ion-chevron-up:before,
.ion-clipboard:before,
.ion-clock:before,
.ion-close:before,
.ion-close-circled:before,
.ion-close-round:before,
.ion-closed-captioning:before,
.ion-cloud:before,
.ion-code:before,
.ion-code-download:before,
.ion-code-working:before,
.ion-coffee:before,
.ion-compass:before,
.ion-compose:before,
.ion-connection-bars:before,
.ion-contrast:before,
.ion-crop:before,
.ion-cube:before,
.ion-disc:before,
.ion-document:before,
.ion-document-text:before,
.ion-drag:before,
.ion-earth:before,
.ion-easel:before,
.ion-edit:before,
.ion-egg:before,
.ion-eject:before,
.ion-email:before,
.ion-email-unread:before,
.ion-erlenmeyer-flask:before,
.ion-erlenmeyer-flask-bubbles:before,
.ion-eye:before,
.ion-eye-disabled:before,
.ion-female:before,
.ion-filing:before,
.ion-film-marker:before,
.ion-fireball:before,
.ion-flag:before,
.ion-flame:before,
.ion-flash:before,
.ion-flash-off:before,
.ion-folder:before,
.ion-fork:before,
.ion-fork-repo:before,
.ion-forward:before,
.ion-funnel:before,
.ion-gear-a:before,
.ion-gear-b:before,
.ion-grid:before,
.ion-hammer:before,
.ion-happy:before,
.ion-happy-outline:before,
.ion-headphone:before,
.ion-heart:before,
.ion-heart-broken:before,
.ion-help:before,
.ion-help-buoy:before,
.ion-help-circled:before,
.ion-home:before,
.ion-icecream:before,
.ion-image:before,
.ion-images:before,
.ion-information:before,
.ion-information-circled:before,
.ion-ionic:before,
.ion-ios-alarm:before,
.ion-ios-alarm-outline:before,
.ion-ios-albums:before,
.ion-ios-albums-outline:before,
.ion-ios-americanfootball:before,
.ion-ios-americanfootball-outline:before,
.ion-ios-analytics:before,
.ion-ios-analytics-outline:before,
.ion-ios-arrow-back:before,
.ion-ios-arrow-down:before,
.ion-ios-arrow-forward:before,
.ion-ios-arrow-left:before,
.ion-ios-arrow-right:before,
.ion-ios-arrow-thin-down:before,
.ion-ios-arrow-thin-left:before,
.ion-ios-arrow-thin-right:before,
.ion-ios-arrow-thin-up:before,
.ion-ios-arrow-up:before,
.ion-ios-at:before,
.ion-ios-at-outline:before,
.ion-ios-barcode:before,
.ion-ios-barcode-outline:before,
.ion-ios-baseball:before,
.ion-ios-baseball-outline:before,
.ion-ios-basketball:before,
.ion-ios-basketball-outline:before,
.ion-ios-bell:before,
.ion-ios-bell-outline:before,
.ion-ios-body:before,
.ion-ios-body-outline:before,
.ion-ios-bolt:before,
.ion-ios-bolt-outline:before,
.ion-ios-book:before,
.ion-ios-book-outline:before,
.ion-ios-bookmarks:before,
.ion-ios-bookmarks-outline:before,
.ion-ios-box:before,
.ion-ios-box-outline:before,
.ion-ios-briefcase:before,
.ion-ios-briefcase-outline:before,
.ion-ios-browsers:before,
.ion-ios-browsers-outline:before,
.ion-ios-calculator:before,
.ion-ios-calculator-outline:before,
.ion-ios-calendar:before,
.ion-ios-calendar-outline:before,
.ion-ios-camera:before,
.ion-ios-camera-outline:before,
.ion-ios-cart:before,
.ion-ios-cart-outline:before,
.ion-ios-chatboxes:before,
.ion-ios-chatboxes-outline:before,
.ion-ios-chatbubble:before,
.ion-ios-chatbubble-outline:before,
.ion-ios-checkmark:before,
.ion-ios-checkmark-empty:before,
.ion-ios-checkmark-outline:before,
.ion-ios-circle-filled:before,
.ion-ios-circle-outline:before,
.ion-ios-clock:before,
.ion-ios-clock-outline:before,
.ion-ios-close:before,
.ion-ios-close-empty:before,
.ion-ios-close-outline:before,
.ion-ios-cloud:before,
.ion-ios-cloud-download:before,
.ion-ios-cloud-download-outline:before,
.ion-ios-cloud-outline:before,
.ion-ios-cloud-upload:before,
.ion-ios-cloud-upload-outline:before,
.ion-ios-cloudy:before,
.ion-ios-cloudy-night:before,
.ion-ios-cloudy-night-outline:before,
.ion-ios-cloudy-outline:before,
.ion-ios-cog:before,
.ion-ios-cog-outline:before,
.ion-ios-color-filter:before,
.ion-ios-color-filter-outline:before,
.ion-ios-color-wand:before,
.ion-ios-color-wand-outline:before,
.ion-ios-compose:before,
.ion-ios-compose-outline:before,
.ion-ios-contact:before,
.ion-ios-contact-outline:before,
.ion-ios-copy:before,
.ion-ios-copy-outline:before,
.ion-ios-crop:before,
.ion-ios-crop-strong:before,
.ion-ios-download:before,
.ion-ios-download-outline:before,
.ion-ios-drag:before,
.ion-ios-email:before,
.ion-ios-email-outline:before,
.ion-ios-eye:before,
.ion-ios-eye-outline:before,
.ion-ios-fastforward:before,
.ion-ios-fastforward-outline:before,
.ion-ios-filing:before,
.ion-ios-filing-outline:before,
.ion-ios-film:before,
.ion-ios-film-outline:before,
.ion-ios-flag:before,
.ion-ios-flag-outline:before,
.ion-ios-flame:before,
.ion-ios-flame-outline:before,
.ion-ios-flask:before,
.ion-ios-flask-outline:before,
.ion-ios-flower:before,
.ion-ios-flower-outline:before,
.ion-ios-folder:before,
.ion-ios-folder-outline:before,
.ion-ios-football:before,
.ion-ios-football-outline:before,
.ion-ios-game-controller-a:before,
.ion-ios-game-controller-a-outline:before,
.ion-ios-game-controller-b:before,
.ion-ios-game-controller-b-outline:before,
.ion-ios-gear:before,
.ion-ios-gear-outline:before,
.ion-ios-glasses:before,
.ion-ios-glasses-outline:before,
.ion-ios-grid-view:before,
.ion-ios-grid-view-outline:before,
.ion-ios-heart:before,
.ion-ios-heart-outline:before,
.ion-ios-help:before,
.ion-ios-help-empty:before,
.ion-ios-help-outline:before,
.ion-ios-home:before,
.ion-ios-home-outline:before,
.ion-ios-infinite:before,
.ion-ios-infinite-outline:before,
.ion-ios-information:before,
.ion-ios-information-empty:before,
.ion-ios-information-outline:before,
.ion-ios-ionic-outline:before,
.ion-ios-keypad:before,
.ion-ios-keypad-outline:before,
.ion-ios-lightbulb:before,
.ion-ios-lightbulb-outline:before,
.ion-ios-list:before,
.ion-ios-list-outline:before,
.ion-ios-location:before,
.ion-ios-location-outline:before,
.ion-ios-locked:before,
.ion-ios-locked-outline:before,
.ion-ios-loop:before,
.ion-ios-loop-strong:before,
.ion-ios-medical:before,
.ion-ios-medical-outline:before,
.ion-ios-medkit:before,
.ion-ios-medkit-outline:before,
.ion-ios-mic:before,
.ion-ios-mic-off:before,
.ion-ios-mic-outline:before,
.ion-ios-minus:before,
.ion-ios-minus-empty:before,
.ion-ios-minus-outline:before,
.ion-ios-monitor:before,
.ion-ios-monitor-outline:before,
.ion-ios-moon:before,
.ion-ios-moon-outline:before,
.ion-ios-more:before,
.ion-ios-more-outline:before,
.ion-ios-musical-note:before,
.ion-ios-musical-notes:before,
.ion-ios-navigate:before,
.ion-ios-navigate-outline:before,
.ion-ios-nutrition:before,
.ion-ios-nutrition-outline:before,
.ion-ios-paper:before,
.ion-ios-paper-outline:before,
.ion-ios-paperplane:before,
.ion-ios-paperplane-outline:before,
.ion-ios-partlysunny:before,
.ion-ios-partlysunny-outline:before,
.ion-ios-pause:before,
.ion-ios-pause-outline:before,
.ion-ios-paw:before,
.ion-ios-paw-outline:before,
.ion-ios-people:before,
.ion-ios-people-outline:before,
.ion-ios-person:before,
.ion-ios-person-outline:before,
.ion-ios-personadd:before,
.ion-ios-personadd-outline:before,
.ion-ios-photos:before,
.ion-ios-photos-outline:before,
.ion-ios-pie:before,
.ion-ios-pie-outline:before,
.ion-ios-pint:before,
.ion-ios-pint-outline:before,
.ion-ios-play:before,
.ion-ios-play-outline:before,
.ion-ios-plus:before,
.ion-ios-plus-empty:before,
.ion-ios-plus-outline:before,
.ion-ios-pricetag:before,
.ion-ios-pricetag-outline:before,
.ion-ios-pricetags:before,
.ion-ios-pricetags-outline:before,
.ion-ios-printer:before,
.ion-ios-printer-outline:before,
.ion-ios-pulse:before,
.ion-ios-pulse-strong:before,
.ion-ios-rainy:before,
.ion-ios-rainy-outline:before,
.ion-ios-recording:before,
.ion-ios-recording-outline:before,
.ion-ios-redo:before,
.ion-ios-redo-outline:before,
.ion-ios-refresh:before,
.ion-ios-refresh-empty:before,
.ion-ios-refresh-outline:before,
.ion-ios-reload:before,
.ion-ios-reverse-camera:before,
.ion-ios-reverse-camera-outline:before,
.ion-ios-rewind:before,
.ion-ios-rewind-outline:before,
.ion-ios-rose:before,
.ion-ios-rose-outline:before,
.ion-ios-search:before,
.ion-ios-search-strong:before,
.ion-ios-settings:before,
.ion-ios-settings-strong:before,
.ion-ios-shuffle:before,
.ion-ios-shuffle-strong:before,
.ion-ios-skipbackward:before,
.ion-ios-skipbackward-outline:before,
.ion-ios-skipforward:before,
.ion-ios-skipforward-outline:before,
.ion-ios-snowy:before,
.ion-ios-speedometer:before,
.ion-ios-speedometer-outline:before,
.ion-ios-star:before,
.ion-ios-star-half:before,
.ion-ios-star-outline:before,
.ion-ios-stopwatch:before,
.ion-ios-stopwatch-outline:before,
.ion-ios-sunny:before,
.ion-ios-sunny-outline:before,
.ion-ios-telephone:before,
.ion-ios-telephone-outline:before,
.ion-ios-tennisball:before,
.ion-ios-tennisball-outline:before,
.ion-ios-thunderstorm:before,
.ion-ios-thunderstorm-outline:before,
.ion-ios-time:before,
.ion-ios-time-outline:before,
.ion-ios-timer:before,
.ion-ios-timer-outline:before,
.ion-ios-toggle:before,
.ion-ios-toggle-outline:before,
.ion-ios-trash:before,
.ion-ios-trash-outline:before,
.ion-ios-undo:before,
.ion-ios-undo-outline:before,
.ion-ios-unlocked:before,
.ion-ios-unlocked-outline:before,
.ion-ios-upload:before,
.ion-ios-upload-outline:before,
.ion-ios-videocam:before,
.ion-ios-videocam-outline:before,
.ion-ios-volume-high:before,
.ion-ios-volume-low:before,
.ion-ios-wineglass:before,
.ion-ios-wineglass-outline:before,
.ion-ios-world:before,
.ion-ios-world-outline:before,
.ion-ipad:before,
.ion-iphone:before,
.ion-ipod:before,
.ion-jet:before,
.ion-key:before,
.ion-knife:before,
.ion-laptop:before,
.ion-leaf:before,
.ion-levels:before,
.ion-lightbulb:before,
.ion-link:before,
.ion-load-a:before,
.ion-load-b:before,
.ion-load-c:before,
.ion-load-d:before,
.ion-location:before,
.ion-lock-combination:before,
.ion-locked:before,
.ion-log-in:before,
.ion-log-out:before,
.ion-loop:before,
.ion-magnet:before,
.ion-male:before,
.ion-man:before,
.ion-map:before,
.ion-medkit:before,
.ion-merge:before,
.ion-mic-a:before,
.ion-mic-b:before,
.ion-mic-c:before,
.ion-minus:before,
.ion-minus-circled:before,
.ion-minus-round:before,
.ion-model-s:before,
.ion-monitor:before,
.ion-more:before,
.ion-mouse:before,
.ion-music-note:before,
.ion-navicon:before,
.ion-navicon-round:before,
.ion-navigate:before,
.ion-network:before,
.ion-no-smoking:before,
.ion-nuclear:before,
.ion-outlet:before,
.ion-paintbrush:before,
.ion-paintbucket:before,
.ion-paper-airplane:before,
.ion-paperclip:before,
.ion-pause:before,
.ion-person:before,
.ion-person-add:before,
.ion-person-stalker:before,
.ion-pie-graph:before,
.ion-pin:before,
.ion-pinpoint:before,
.ion-pizza:before,
.ion-plane:before,
.ion-planet:before,
.ion-play:before,
.ion-playstation:before,
.ion-plus:before,
.ion-plus-circled:before,
.ion-plus-round:before,
.ion-podium:before,
.ion-pound:before,
.ion-power:before,
.ion-pricetag:before,
.ion-pricetags:before,
.ion-printer:before,
.ion-pull-request:before,
.ion-qr-scanner:before,
.ion-quote:before,
.ion-radio-waves:before,
.ion-record:before,
.ion-refresh:before,
.ion-reply:before,
.ion-reply-all:before,
.ion-ribbon-a:before,
.ion-ribbon-b:before,
.ion-sad:before,
.ion-sad-outline:before,
.ion-scissors:before,
.ion-search:before,
.ion-settings:before,
.ion-share:before,
.ion-shuffle:before,
.ion-skip-backward:before,
.ion-skip-forward:before,
.ion-social-android:before,
.ion-social-android-outline:before,
.ion-social-angular:before,
.ion-social-angular-outline:before,
.ion-social-apple:before,
.ion-social-apple-outline:before,
.ion-social-bitcoin:before,
.ion-social-bitcoin-outline:before,
.ion-social-buffer:before,
.ion-social-buffer-outline:before,
.ion-social-chrome:before,
.ion-social-chrome-outline:before,
.ion-social-codepen:before,
.ion-social-codepen-outline:before,
.ion-social-css3:before,
.ion-social-css3-outline:before,
.ion-social-designernews:before,
.ion-social-designernews-outline:before,
.ion-social-dribbble:before,
.ion-social-dribbble-outline:before,
.ion-social-dropbox:before,
.ion-social-dropbox-outline:before,
.ion-social-euro:before,
.ion-social-euro-outline:before,
.ion-social-facebook:before,
.ion-social-facebook-outline:before,
.ion-social-foursquare:before,
.ion-social-foursquare-outline:before,
.ion-social-freebsd-devil:before,
.ion-social-github:before,
.ion-social-github-outline:before,
.ion-social-google:before,
.ion-social-google-outline:before,
.ion-social-googleplus:before,
.ion-social-googleplus-outline:before,
.ion-social-hackernews:before,
.ion-social-hackernews-outline:before,
.ion-social-html5:before,
.ion-social-html5-outline:before,
.ion-social-instagram:before,
.ion-social-instagram-outline:before,
.ion-social-javascript:before,
.ion-social-javascript-outline:before,
.ion-social-linkedin:before,
.ion-social-linkedin-outline:before,
.ion-social-markdown:before,
.ion-social-nodejs:before,
.ion-social-octocat:before,
.ion-social-pinterest:before,
.ion-social-pinterest-outline:before,
.ion-social-python:before,
.ion-social-reddit:before,
.ion-social-reddit-outline:before,
.ion-social-rss:before,
.ion-social-rss-outline:before,
.ion-social-sass:before,
.ion-social-skype:before,
.ion-social-skype-outline:before,
.ion-social-snapchat:before,
.ion-social-snapchat-outline:before,
.ion-social-tumblr:before,
.ion-social-tumblr-outline:before,
.ion-social-tux:before,
.ion-social-twitch:before,
.ion-social-twitch-outline:before,
.ion-social-twitter:before,
.ion-social-twitter-outline:before,
.ion-social-usd:before,
.ion-social-usd-outline:before,
.ion-social-vimeo:before,
.ion-social-vimeo-outline:before,
.ion-social-whatsapp:before,
.ion-social-whatsapp-outline:before,
.ion-social-windows:before,
.ion-social-windows-outline:before,
.ion-social-wordpress:before,
.ion-social-wordpress-outline:before,
.ion-social-yahoo:before,
.ion-social-yahoo-outline:before,
.ion-social-yen:before,
.ion-social-yen-outline:before,
.ion-social-youtube:before,
.ion-social-youtube-outline:before,
.ion-soup-can:before,
.ion-soup-can-outline:before,
.ion-speakerphone:before,
.ion-speedometer:before,
.ion-spoon:before,
.ion-star:before,
.ion-stats-bars:before,
.ion-steam:before,
.ion-stop:before,
.ion-thermometer:before,
.ion-thumbsdown:before,
.ion-thumbsup:before,
.ion-toggle:before,
.ion-toggle-filled:before,
.ion-transgender:before,
.ion-trash-a:before,
.ion-trash-b:before,
.ion-trophy:before,
.ion-tshirt:before,
.ion-tshirt-outline:before,
.ion-umbrella:before,
.ion-university:before,
.ion-unlocked:before,
.ion-upload:before,
.ion-usb:before,
.ion-videocamera:before,
.ion-volume-high:before,
.ion-volume-low:before,
.ion-volume-medium:before,
.ion-volume-mute:before,
.ion-wand:before,
.ion-waterdrop:before,
.ion-wifi:before,
.ion-wineglass:before,
.ion-woman:before,
.ion-wrench:before,
.ion-xbox:before {
  display: inline-block;
  font-family: "Ionicons";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  text-rendering: auto;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.ion-alert:before {
  content: "";
}

.ion-alert-circled:before {
  content: "";
}

.ion-android-add:before {
  content: "";
}

.ion-android-add-circle:before {
  content: "";
}

.ion-android-alarm-clock:before {
  content: "";
}

.ion-android-alert:before {
  content: "";
}

.ion-android-apps:before {
  content: "";
}

.ion-android-archive:before {
  content: "";
}

.ion-android-arrow-back:before {
  content: "";
}

.ion-android-arrow-down:before {
  content: "";
}

.ion-android-arrow-dropdown:before {
  content: "";
}

.ion-android-arrow-dropdown-circle:before {
  content: "";
}

.ion-android-arrow-dropleft:before {
  content: "";
}

.ion-android-arrow-dropleft-circle:before {
  content: "";
}

.ion-android-arrow-dropright:before {
  content: "";
}

.ion-android-arrow-dropright-circle:before {
  content: "";
}

.ion-android-arrow-dropup:before {
  content: "";
}

.ion-android-arrow-dropup-circle:before {
  content: "";
}

.ion-android-arrow-forward:before {
  content: "";
}

.ion-android-arrow-up:before {
  content: "";
}

.ion-android-attach:before {
  content: "";
}

.ion-android-bar:before {
  content: "";
}

.ion-android-bicycle:before {
  content: "";
}

.ion-android-boat:before {
  content: "";
}

.ion-android-bookmark:before {
  content: "";
}

.ion-android-bulb:before {
  content: "";
}

.ion-android-bus:before {
  content: "";
}

.ion-android-calendar:before {
  content: "";
}

.ion-android-call:before {
  content: "";
}

.ion-android-camera:before {
  content: "";
}

.ion-android-cancel:before {
  content: "";
}

.ion-android-car:before {
  content: "";
}

.ion-android-cart:before {
  content: "";
}

.ion-android-chat:before {
  content: "";
}

.ion-android-checkbox:before {
  content: "";
}

.ion-android-checkbox-blank:before {
  content: "";
}

.ion-android-checkbox-outline:before {
  content: "";
}

.ion-android-checkbox-outline-blank:before {
  content: "";
}

.ion-android-checkmark-circle:before {
  content: "";
}

.ion-android-clipboard:before {
  content: "";
}

.ion-android-close:before {
  content: "";
}

.ion-android-cloud:before {
  content: "";
}

.ion-android-cloud-circle:before {
  content: "";
}

.ion-android-cloud-done:before {
  content: "";
}

.ion-android-cloud-outline:before {
  content: "";
}

.ion-android-color-palette:before {
  content: "";
}

.ion-android-compass:before {
  content: "";
}

.ion-android-contact:before {
  content: "";
}

.ion-android-contacts:before {
  content: "";
}

.ion-android-contract:before {
  content: "";
}

.ion-android-create:before {
  content: "";
}

.ion-android-delete:before {
  content: "";
}

.ion-android-desktop:before {
  content: "";
}

.ion-android-document:before {
  content: "";
}

.ion-android-done:before {
  content: "";
}

.ion-android-done-all:before {
  content: "";
}

.ion-android-download:before {
  content: "";
}

.ion-android-drafts:before {
  content: "";
}

.ion-android-exit:before {
  content: "";
}

.ion-android-expand:before {
  content: "";
}

.ion-android-favorite:before {
  content: "";
}

.ion-android-favorite-outline:before {
  content: "";
}

.ion-android-film:before {
  content: "";
}

.ion-android-folder:before {
  content: "";
}

.ion-android-folder-open:before {
  content: "";
}

.ion-android-funnel:before {
  content: "";
}

.ion-android-globe:before {
  content: "";
}

.ion-android-hand:before {
  content: "";
}

.ion-android-hangout:before {
  content: "";
}

.ion-android-happy:before {
  content: "";
}

.ion-android-home:before {
  content: "";
}

.ion-android-image:before {
  content: "";
}

.ion-android-laptop:before {
  content: "";
}

.ion-android-list:before {
  content: "";
}

.ion-android-locate:before {
  content: "";
}

.ion-android-lock:before {
  content: "";
}

.ion-android-mail:before {
  content: "";
}

.ion-android-map:before {
  content: "";
}

.ion-android-menu:before {
  content: "";
}

.ion-android-microphone:before {
  content: "";
}

.ion-android-microphone-off:before {
  content: "";
}

.ion-android-more-horizontal:before {
  content: "";
}

.ion-android-more-vertical:before {
  content: "";
}

.ion-android-navigate:before {
  content: "";
}

.ion-android-notifications:before {
  content: "";
}

.ion-android-notifications-none:before {
  content: "";
}

.ion-android-notifications-off:before {
  content: "";
}

.ion-android-open:before {
  content: "";
}

.ion-android-options:before {
  content: "";
}

.ion-android-people:before {
  content: "";
}

.ion-android-person:before {
  content: "";
}

.ion-android-person-add:before {
  content: "";
}

.ion-android-phone-landscape:before {
  content: "";
}

.ion-android-phone-portrait:before {
  content: "";
}

.ion-android-pin:before {
  content: "";
}

.ion-android-plane:before {
  content: "";
}

.ion-android-playstore:before {
  content: "";
}

.ion-android-print:before {
  content: "";
}

.ion-android-radio-button-off:before {
  content: "";
}

.ion-android-radio-button-on:before {
  content: "";
}

.ion-android-refresh:before {
  content: "";
}

.ion-android-remove:before {
  content: "";
}

.ion-android-remove-circle:before {
  content: "";
}

.ion-android-restaurant:before {
  content: "";
}

.ion-android-sad:before {
  content: "";
}

.ion-android-search:before {
  content: "";
}

.ion-android-send:before {
  content: "";
}

.ion-android-settings:before {
  content: "";
}

.ion-android-share:before {
  content: "";
}

.ion-android-share-alt:before {
  content: "";
}

.ion-android-star:before {
  content: "";
}

.ion-android-star-half:before {
  content: "";
}

.ion-android-star-outline:before {
  content: "";
}

.ion-android-stopwatch:before {
  content: "";
}

.ion-android-subway:before {
  content: "";
}

.ion-android-sunny:before {
  content: "";
}

.ion-android-sync:before {
  content: "";
}

.ion-android-textsms:before {
  content: "";
}

.ion-android-time:before {
  content: "";
}

.ion-android-train:before {
  content: "";
}

.ion-android-unlock:before {
  content: "";
}

.ion-android-upload:before {
  content: "";
}

.ion-android-volume-down:before {
  content: "";
}

.ion-android-volume-mute:before {
  content: "";
}

.ion-android-volume-off:before {
  content: "";
}

.ion-android-volume-up:before {
  content: "";
}

.ion-android-walk:before {
  content: "";
}

.ion-android-warning:before {
  content: "";
}

.ion-android-watch:before {
  content: "";
}

.ion-android-wifi:before {
  content: "";
}

.ion-aperture:before {
  content: "";
}

.ion-archive:before {
  content: "";
}

.ion-arrow-down-a:before {
  content: "";
}

.ion-arrow-down-b:before {
  content: "";
}

.ion-arrow-down-c:before {
  content: "";
}

.ion-arrow-expand:before {
  content: "";
}

.ion-arrow-graph-down-left:before {
  content: "";
}

.ion-arrow-graph-down-right:before {
  content: "";
}

.ion-arrow-graph-up-left:before {
  content: "";
}

.ion-arrow-graph-up-right:before {
  content: "";
}

.ion-arrow-left-a:before {
  content: "";
}

.ion-arrow-left-b:before {
  content: "";
}

.ion-arrow-left-c:before {
  content: "";
}

.ion-arrow-move:before {
  content: "";
}

.ion-arrow-resize:before {
  content: "";
}

.ion-arrow-return-left:before {
  content: "";
}

.ion-arrow-return-right:before {
  content: "";
}

.ion-arrow-right-a:before {
  content: "";
}

.ion-arrow-right-b:before {
  content: "";
}

.ion-arrow-right-c:before {
  content: "";
}

.ion-arrow-shrink:before {
  content: "";
}

.ion-arrow-swap:before {
  content: "";
}

.ion-arrow-up-a:before {
  content: "";
}

.ion-arrow-up-b:before {
  content: "";
}

.ion-arrow-up-c:before {
  content: "";
}

.ion-asterisk:before {
  content: "";
}

.ion-at:before {
  content: "";
}

.ion-backspace:before {
  content: "";
}

.ion-backspace-outline:before {
  content: "";
}

.ion-bag:before {
  content: "";
}

.ion-battery-charging:before {
  content: "";
}

.ion-battery-empty:before {
  content: "";
}

.ion-battery-full:before {
  content: "";
}

.ion-battery-half:before {
  content: "";
}

.ion-battery-low:before {
  content: "";
}

.ion-beaker:before {
  content: "";
}

.ion-beer:before {
  content: "";
}

.ion-bluetooth:before {
  content: "";
}

.ion-bonfire:before {
  content: "";
}

.ion-bookmark:before {
  content: "";
}

.ion-bowtie:before {
  content: "";
}

.ion-briefcase:before {
  content: "";
}

.ion-bug:before {
  content: "";
}

.ion-calculator:before {
  content: "";
}

.ion-calendar:before {
  content: "";
}

.ion-camera:before {
  content: "";
}

.ion-card:before {
  content: "";
}

.ion-cash:before {
  content: "";
}

.ion-chatbox:before {
  content: "";
}

.ion-chatbox-working:before {
  content: "";
}

.ion-chatboxes:before {
  content: "";
}

.ion-chatbubble:before {
  content: "";
}

.ion-chatbubble-working:before {
  content: "";
}

.ion-chatbubbles:before {
  content: "";
}

.ion-checkmark:before {
  content: "";
}

.ion-checkmark-circled:before {
  content: "";
}

.ion-checkmark-round:before {
  content: "";
}

.ion-chevron-down:before {
  content: "";
}

.ion-chevron-left:before {
  content: "";
}

.ion-chevron-right:before {
  content: "";
}

.ion-chevron-up:before {
  content: "";
}

.ion-clipboard:before {
  content: "";
}

.ion-clock:before {
  content: "";
}

.ion-close:before {
  content: "";
}

.ion-close-circled:before {
  content: "";
}

.ion-close-round:before {
  content: "";
}

.ion-closed-captioning:before {
  content: "";
}

.ion-cloud:before {
  content: "";
}

.ion-code:before {
  content: "";
}

.ion-code-download:before {
  content: "";
}

.ion-code-working:before {
  content: "";
}

.ion-coffee:before {
  content: "";
}

.ion-compass:before {
  content: "";
}

.ion-compose:before {
  content: "";
}

.ion-connection-bars:before {
  content: "";
}

.ion-contrast:before {
  content: "";
}

.ion-crop:before {
  content: "";
}

.ion-cube:before {
  content: "";
}

.ion-disc:before {
  content: "";
}

.ion-document:before {
  content: "";
}

.ion-document-text:before {
  content: "";
}

.ion-drag:before {
  content: "";
}

.ion-earth:before {
  content: "";
}

.ion-easel:before {
  content: "";
}

.ion-edit:before {
  content: "";
}

.ion-egg:before {
  content: "";
}

.ion-eject:before {
  content: "";
}

.ion-email:before {
  content: "";
}

.ion-email-unread:before {
  content: "";
}

.ion-erlenmeyer-flask:before {
  content: "";
}

.ion-erlenmeyer-flask-bubbles:before {
  content: "";
}

.ion-eye:before {
  content: "";
}

.ion-eye-disabled:before {
  content: "";
}

.ion-female:before {
  content: "";
}

.ion-filing:before {
  content: "";
}

.ion-film-marker:before {
  content: "";
}

.ion-fireball:before {
  content: "";
}

.ion-flag:before {
  content: "";
}

.ion-flame:before {
  content: "";
}

.ion-flash:before {
  content: "";
}

.ion-flash-off:before {
  content: "";
}

.ion-folder:before {
  content: "";
}

.ion-fork:before {
  content: "";
}

.ion-fork-repo:before {
  content: "";
}

.ion-forward:before {
  content: "";
}

.ion-funnel:before {
  content: "";
}

.ion-gear-a:before {
  content: "";
}

.ion-gear-b:before {
  content: "";
}

.ion-grid:before {
  content: "";
}

.ion-hammer:before {
  content: "";
}

.ion-happy:before {
  content: "";
}

.ion-happy-outline:before {
  content: "";
}

.ion-headphone:before {
  content: "";
}

.ion-heart:before {
  content: "";
}

.ion-heart-broken:before {
  content: "";
}

.ion-help:before {
  content: "";
}

.ion-help-buoy:before {
  content: "";
}

.ion-help-circled:before {
  content: "";
}

.ion-home:before {
  content: "";
}

.ion-icecream:before {
  content: "";
}

.ion-image:before {
  content: "";
}

.ion-images:before {
  content: "";
}

.ion-information:before {
  content: "";
}

.ion-information-circled:before {
  content: "";
}

.ion-ionic:before {
  content: "";
}

.ion-ios-alarm:before {
  content: "";
}

.ion-ios-alarm-outline:before {
  content: "";
}

.ion-ios-albums:before {
  content: "";
}

.ion-ios-albums-outline:before {
  content: "";
}

.ion-ios-americanfootball:before {
  content: "";
}

.ion-ios-americanfootball-outline:before {
  content: "";
}

.ion-ios-analytics:before {
  content: "";
}

.ion-ios-analytics-outline:before {
  content: "";
}

.ion-ios-arrow-back:before {
  content: "";
}

.ion-ios-arrow-down:before {
  content: "";
}

.ion-ios-arrow-forward:before {
  content: "";
}

.ion-ios-arrow-left:before {
  content: "";
}

.ion-ios-arrow-right:before {
  content: "";
}

.ion-ios-arrow-thin-down:before {
  content: "";
}

.ion-ios-arrow-thin-left:before {
  content: "";
}

.ion-ios-arrow-thin-right:before {
  content: "";
}

.ion-ios-arrow-thin-up:before {
  content: "";
}

.ion-ios-arrow-up:before {
  content: "";
}

.ion-ios-at:before {
  content: "";
}

.ion-ios-at-outline:before {
  content: "";
}

.ion-ios-barcode:before {
  content: "";
}

.ion-ios-barcode-outline:before {
  content: "";
}

.ion-ios-baseball:before {
  content: "";
}

.ion-ios-baseball-outline:before {
  content: "";
}

.ion-ios-basketball:before {
  content: "";
}

.ion-ios-basketball-outline:before {
  content: "";
}

.ion-ios-bell:before {
  content: "";
}

.ion-ios-bell-outline:before {
  content: "";
}

.ion-ios-body:before {
  content: "";
}

.ion-ios-body-outline:before {
  content: "";
}

.ion-ios-bolt:before {
  content: "";
}

.ion-ios-bolt-outline:before {
  content: "";
}

.ion-ios-book:before {
  content: "";
}

.ion-ios-book-outline:before {
  content: "";
}

.ion-ios-bookmarks:before {
  content: "";
}

.ion-ios-bookmarks-outline:before {
  content: "";
}

.ion-ios-box:before {
  content: "";
}

.ion-ios-box-outline:before {
  content: "";
}

.ion-ios-briefcase:before {
  content: "";
}

.ion-ios-briefcase-outline:before {
  content: "";
}

.ion-ios-browsers:before {
  content: "";
}

.ion-ios-browsers-outline:before {
  content: "";
}

.ion-ios-calculator:before {
  content: "";
}

.ion-ios-calculator-outline:before {
  content: "";
}

.ion-ios-calendar:before {
  content: "";
}

.ion-ios-calendar-outline:before {
  content: "";
}

.ion-ios-camera:before {
  content: "";
}

.ion-ios-camera-outline:before {
  content: "";
}

.ion-ios-cart:before {
  content: "";
}

.ion-ios-cart-outline:before {
  content: "";
}

.ion-ios-chatboxes:before {
  content: "";
}

.ion-ios-chatboxes-outline:before {
  content: "";
}

.ion-ios-chatbubble:before {
  content: "";
}

.ion-ios-chatbubble-outline:before {
  content: "";
}

.ion-ios-checkmark:before {
  content: "";
}

.ion-ios-checkmark-empty:before {
  content: "";
}

.ion-ios-checkmark-outline:before {
  content: "";
}

.ion-ios-circle-filled:before {
  content: "";
}

.ion-ios-circle-outline:before {
  content: "";
}

.ion-ios-clock:before {
  content: "";
}

.ion-ios-clock-outline:before {
  content: "";
}

.ion-ios-close:before {
  content: "";
}

.ion-ios-close-empty:before {
  content: "";
}

.ion-ios-close-outline:before {
  content: "";
}

.ion-ios-cloud:before {
  content: "";
}

.ion-ios-cloud-download:before {
  content: "";
}

.ion-ios-cloud-download-outline:before {
  content: "";
}

.ion-ios-cloud-outline:before {
  content: "";
}

.ion-ios-cloud-upload:before {
  content: "";
}

.ion-ios-cloud-upload-outline:before {
  content: "";
}

.ion-ios-cloudy:before {
  content: "";
}

.ion-ios-cloudy-night:before {
  content: "";
}

.ion-ios-cloudy-night-outline:before {
  content: "";
}

.ion-ios-cloudy-outline:before {
  content: "";
}

.ion-ios-cog:before {
  content: "";
}

.ion-ios-cog-outline:before {
  content: "";
}

.ion-ios-color-filter:before {
  content: "";
}

.ion-ios-color-filter-outline:before {
  content: "";
}

.ion-ios-color-wand:before {
  content: "";
}

.ion-ios-color-wand-outline:before {
  content: "";
}

.ion-ios-compose:before {
  content: "";
}

.ion-ios-compose-outline:before {
  content: "";
}

.ion-ios-contact:before {
  content: "";
}

.ion-ios-contact-outline:before {
  content: "";
}

.ion-ios-copy:before {
  content: "";
}

.ion-ios-copy-outline:before {
  content: "";
}

.ion-ios-crop:before {
  content: "";
}

.ion-ios-crop-strong:before {
  content: "";
}

.ion-ios-download:before {
  content: "";
}

.ion-ios-download-outline:before {
  content: "";
}

.ion-ios-drag:before {
  content: "";
}

.ion-ios-email:before {
  content: "";
}

.ion-ios-email-outline:before {
  content: "";
}

.ion-ios-eye:before {
  content: "";
}

.ion-ios-eye-outline:before {
  content: "";
}

.ion-ios-fastforward:before {
  content: "";
}

.ion-ios-fastforward-outline:before {
  content: "";
}

.ion-ios-filing:before {
  content: "";
}

.ion-ios-filing-outline:before {
  content: "";
}

.ion-ios-film:before {
  content: "";
}

.ion-ios-film-outline:before {
  content: "";
}

.ion-ios-flag:before {
  content: "";
}

.ion-ios-flag-outline:before {
  content: "";
}

.ion-ios-flame:before {
  content: "";
}

.ion-ios-flame-outline:before {
  content: "";
}

.ion-ios-flask:before {
  content: "";
}

.ion-ios-flask-outline:before {
  content: "";
}

.ion-ios-flower:before {
  content: "";
}

.ion-ios-flower-outline:before {
  content: "";
}

.ion-ios-folder:before {
  content: "";
}

.ion-ios-folder-outline:before {
  content: "";
}

.ion-ios-football:before {
  content: "";
}

.ion-ios-football-outline:before {
  content: "";
}

.ion-ios-game-controller-a:before {
  content: "";
}

.ion-ios-game-controller-a-outline:before {
  content: "";
}

.ion-ios-game-controller-b:before {
  content: "";
}

.ion-ios-game-controller-b-outline:before {
  content: "";
}

.ion-ios-gear:before {
  content: "";
}

.ion-ios-gear-outline:before {
  content: "";
}

.ion-ios-glasses:before {
  content: "";
}

.ion-ios-glasses-outline:before {
  content: "";
}

.ion-ios-grid-view:before {
  content: "";
}

.ion-ios-grid-view-outline:before {
  content: "";
}

.ion-ios-heart:before {
  content: "";
}

.ion-ios-heart-outline:before {
  content: "";
}

.ion-ios-help:before {
  content: "";
}

.ion-ios-help-empty:before {
  content: "";
}

.ion-ios-help-outline:before {
  content: "";
}

.ion-ios-home:before {
  content: "";
}

.ion-ios-home-outline:before {
  content: "";
}

.ion-ios-infinite:before {
  content: "";
}

.ion-ios-infinite-outline:before {
  content: "";
}

.ion-ios-information:before {
  content: "";
}

.ion-ios-information-empty:before {
  content: "";
}

.ion-ios-information-outline:before {
  content: "";
}

.ion-ios-ionic-outline:before {
  content: "";
}

.ion-ios-keypad:before {
  content: "";
}

.ion-ios-keypad-outline:before {
  content: "";
}

.ion-ios-lightbulb:before {
  content: "";
}

.ion-ios-lightbulb-outline:before {
  content: "";
}

.ion-ios-list:before {
  content: "";
}

.ion-ios-list-outline:before {
  content: "";
}

.ion-ios-location:before {
  content: "";
}

.ion-ios-location-outline:before {
  content: "";
}

.ion-ios-locked:before {
  content: "";
}

.ion-ios-locked-outline:before {
  content: "";
}

.ion-ios-loop:before {
  content: "";
}

.ion-ios-loop-strong:before {
  content: "";
}

.ion-ios-medical:before {
  content: "";
}

.ion-ios-medical-outline:before {
  content: "";
}

.ion-ios-medkit:before {
  content: "";
}

.ion-ios-medkit-outline:before {
  content: "";
}

.ion-ios-mic:before {
  content: "";
}

.ion-ios-mic-off:before {
  content: "";
}

.ion-ios-mic-outline:before {
  content: "";
}

.ion-ios-minus:before {
  content: "";
}

.ion-ios-minus-empty:before {
  content: "";
}

.ion-ios-minus-outline:before {
  content: "";
}

.ion-ios-monitor:before {
  content: "";
}

.ion-ios-monitor-outline:before {
  content: "";
}

.ion-ios-moon:before {
  content: "";
}

.ion-ios-moon-outline:before {
  content: "";
}

.ion-ios-more:before {
  content: "";
}

.ion-ios-more-outline:before {
  content: "";
}

.ion-ios-musical-note:before {
  content: "";
}

.ion-ios-musical-notes:before {
  content: "";
}

.ion-ios-navigate:before {
  content: "";
}

.ion-ios-navigate-outline:before {
  content: "";
}

.ion-ios-nutrition:before {
  content: "";
}

.ion-ios-nutrition-outline:before {
  content: "";
}

.ion-ios-paper:before {
  content: "";
}

.ion-ios-paper-outline:before {
  content: "";
}

.ion-ios-paperplane:before {
  content: "";
}

.ion-ios-paperplane-outline:before {
  content: "";
}

.ion-ios-partlysunny:before {
  content: "";
}

.ion-ios-partlysunny-outline:before {
  content: "";
}

.ion-ios-pause:before {
  content: "";
}

.ion-ios-pause-outline:before {
  content: "";
}

.ion-ios-paw:before {
  content: "";
}

.ion-ios-paw-outline:before {
  content: "";
}

.ion-ios-people:before {
  content: "";
}

.ion-ios-people-outline:before {
  content: "";
}

.ion-ios-person:before {
  content: "";
}

.ion-ios-person-outline:before {
  content: "";
}

.ion-ios-personadd:before {
  content: "";
}

.ion-ios-personadd-outline:before {
  content: "";
}

.ion-ios-photos:before {
  content: "";
}

.ion-ios-photos-outline:before {
  content: "";
}

.ion-ios-pie:before {
  content: "";
}

.ion-ios-pie-outline:before {
  content: "";
}

.ion-ios-pint:before {
  content: "";
}

.ion-ios-pint-outline:before {
  content: "";
}

.ion-ios-play:before {
  content: "";
}

.ion-ios-play-outline:before {
  content: "";
}

.ion-ios-plus:before {
  content: "";
}

.ion-ios-plus-empty:before {
  content: "";
}

.ion-ios-plus-outline:before {
  content: "";
}

.ion-ios-pricetag:before {
  content: "";
}

.ion-ios-pricetag-outline:before {
  content: "";
}

.ion-ios-pricetags:before {
  content: "";
}

.ion-ios-pricetags-outline:before {
  content: "";
}

.ion-ios-printer:before {
  content: "";
}

.ion-ios-printer-outline:before {
  content: "";
}

.ion-ios-pulse:before {
  content: "";
}

.ion-ios-pulse-strong:before {
  content: "";
}

.ion-ios-rainy:before {
  content: "";
}

.ion-ios-rainy-outline:before {
  content: "";
}

.ion-ios-recording:before {
  content: "";
}

.ion-ios-recording-outline:before {
  content: "";
}

.ion-ios-redo:before {
  content: "";
}

.ion-ios-redo-outline:before {
  content: "";
}

.ion-ios-refresh:before {
  content: "";
}

.ion-ios-refresh-empty:before {
  content: "";
}

.ion-ios-refresh-outline:before {
  content: "";
}

.ion-ios-reload:before {
  content: "";
}

.ion-ios-reverse-camera:before {
  content: "";
}

.ion-ios-reverse-camera-outline:before {
  content: "";
}

.ion-ios-rewind:before {
  content: "";
}

.ion-ios-rewind-outline:before {
  content: "";
}

.ion-ios-rose:before {
  content: "";
}

.ion-ios-rose-outline:before {
  content: "";
}

.ion-ios-search:before {
  content: "";
}

.ion-ios-search-strong:before {
  content: "";
}

.ion-ios-settings:before {
  content: "";
}

.ion-ios-settings-strong:before {
  content: "";
}

.ion-ios-shuffle:before {
  content: "";
}

.ion-ios-shuffle-strong:before {
  content: "";
}

.ion-ios-skipbackward:before {
  content: "";
}

.ion-ios-skipbackward-outline:before {
  content: "";
}

.ion-ios-skipforward:before {
  content: "";
}

.ion-ios-skipforward-outline:before {
  content: "";
}

.ion-ios-snowy:before {
  content: "";
}

.ion-ios-speedometer:before {
  content: "";
}

.ion-ios-speedometer-outline:before {
  content: "";
}

.ion-ios-star:before {
  content: "";
}

.ion-ios-star-half:before {
  content: "";
}

.ion-ios-star-outline:before {
  content: "";
}

.ion-ios-stopwatch:before {
  content: "";
}

.ion-ios-stopwatch-outline:before {
  content: "";
}

.ion-ios-sunny:before {
  content: "";
}

.ion-ios-sunny-outline:before {
  content: "";
}

.ion-ios-telephone:before {
  content: "";
}

.ion-ios-telephone-outline:before {
  content: "";
}

.ion-ios-tennisball:before {
  content: "";
}

.ion-ios-tennisball-outline:before {
  content: "";
}

.ion-ios-thunderstorm:before {
  content: "";
}

.ion-ios-thunderstorm-outline:before {
  content: "";
}

.ion-ios-time:before {
  content: "";
}

.ion-ios-time-outline:before {
  content: "";
}

.ion-ios-timer:before {
  content: "";
}

.ion-ios-timer-outline:before {
  content: "";
}

.ion-ios-toggle:before {
  content: "";
}

.ion-ios-toggle-outline:before {
  content: "";
}

.ion-ios-trash:before {
  content: "";
}

.ion-ios-trash-outline:before {
  content: "";
}

.ion-ios-undo:before {
  content: "";
}

.ion-ios-undo-outline:before {
  content: "";
}

.ion-ios-unlocked:before {
  content: "";
}

.ion-ios-unlocked-outline:before {
  content: "";
}

.ion-ios-upload:before {
  content: "";
}

.ion-ios-upload-outline:before {
  content: "";
}

.ion-ios-videocam:before {
  content: "";
}

.ion-ios-videocam-outline:before {
  content: "";
}

.ion-ios-volume-high:before {
  content: "";
}

.ion-ios-volume-low:before {
  content: "";
}

.ion-ios-wineglass:before {
  content: "";
}

.ion-ios-wineglass-outline:before {
  content: "";
}

.ion-ios-world:before {
  content: "";
}

.ion-ios-world-outline:before {
  content: "";
}

.ion-ipad:before {
  content: "";
}

.ion-iphone:before {
  content: "";
}

.ion-ipod:before {
  content: "";
}

.ion-jet:before {
  content: "";
}

.ion-key:before {
  content: "";
}

.ion-knife:before {
  content: "";
}

.ion-laptop:before {
  content: "";
}

.ion-leaf:before {
  content: "";
}

.ion-levels:before {
  content: "";
}

.ion-lightbulb:before {
  content: "";
}

.ion-link:before {
  content: "";
}

.ion-load-a:before {
  content: "";
}

.ion-load-b:before {
  content: "";
}

.ion-load-c:before {
  content: "";
}

.ion-load-d:before {
  content: "";
}

.ion-location:before {
  content: "";
}

.ion-lock-combination:before {
  content: "";
}

.ion-locked:before {
  content: "";
}

.ion-log-in:before {
  content: "";
}

.ion-log-out:before {
  content: "";
}

.ion-loop:before {
  content: "";
}

.ion-magnet:before {
  content: "";
}

.ion-male:before {
  content: "";
}

.ion-man:before {
  content: "";
}

.ion-map:before {
  content: "";
}

.ion-medkit:before {
  content: "";
}

.ion-merge:before {
  content: "";
}

.ion-mic-a:before {
  content: "";
}

.ion-mic-b:before {
  content: "";
}

.ion-mic-c:before {
  content: "";
}

.ion-minus:before {
  content: "";
}

.ion-minus-circled:before {
  content: "";
}

.ion-minus-round:before {
  content: "";
}

.ion-model-s:before {
  content: "";
}

.ion-monitor:before {
  content: "";
}

.ion-more:before {
  content: "";
}

.ion-mouse:before {
  content: "";
}

.ion-music-note:before {
  content: "";
}

.ion-navicon:before {
  content: "";
}

.ion-navicon-round:before {
  content: "";
}

.ion-navigate:before {
  content: "";
}

.ion-network:before {
  content: "";
}

.ion-no-smoking:before {
  content: "";
}

.ion-nuclear:before {
  content: "";
}

.ion-outlet:before {
  content: "";
}

.ion-paintbrush:before {
  content: "";
}

.ion-paintbucket:before {
  content: "";
}

.ion-paper-airplane:before {
  content: "";
}

.ion-paperclip:before {
  content: "";
}

.ion-pause:before {
  content: "";
}

.ion-person:before {
  content: "";
}

.ion-person-add:before {
  content: "";
}

.ion-person-stalker:before {
  content: "";
}

.ion-pie-graph:before {
  content: "";
}

.ion-pin:before {
  content: "";
}

.ion-pinpoint:before {
  content: "";
}

.ion-pizza:before {
  content: "";
}

.ion-plane:before {
  content: "";
}

.ion-planet:before {
  content: "";
}

.ion-play:before {
  content: "";
}

.ion-playstation:before {
  content: "";
}

.ion-plus:before {
  content: "";
}

.ion-plus-circled:before {
  content: "";
}

.ion-plus-round:before {
  content: "";
}

.ion-podium:before {
  content: "";
}

.ion-pound:before {
  content: "";
}

.ion-power:before {
  content: "";
}

.ion-pricetag:before {
  content: "";
}

.ion-pricetags:before {
  content: "";
}

.ion-printer:before {
  content: "";
}

.ion-pull-request:before {
  content: "";
}

.ion-qr-scanner:before {
  content: "";
}

.ion-quote:before {
  content: "";
}

.ion-radio-waves:before {
  content: "";
}

.ion-record:before {
  content: "";
}

.ion-refresh:before {
  content: "";
}

.ion-reply:before {
  content: "";
}

.ion-reply-all:before {
  content: "";
}

.ion-ribbon-a:before {
  content: "";
}

.ion-ribbon-b:before {
  content: "";
}

.ion-sad:before {
  content: "";
}

.ion-sad-outline:before {
  content: "";
}

.ion-scissors:before {
  content: "";
}

.ion-search:before {
  content: "";
}

.ion-settings:before {
  content: "";
}

.ion-share:before {
  content: "";
}

.ion-shuffle:before {
  content: "";
}

.ion-skip-backward:before {
  content: "";
}

.ion-skip-forward:before {
  content: "";
}

.ion-social-android:before {
  content: "";
}

.ion-social-android-outline:before {
  content: "";
}

.ion-social-angular:before {
  content: "";
}

.ion-social-angular-outline:before {
  content: "";
}

.ion-social-apple:before {
  content: "";
}

.ion-social-apple-outline:before {
  content: "";
}

.ion-social-bitcoin:before {
  content: "";
}

.ion-social-bitcoin-outline:before {
  content: "";
}

.ion-social-buffer:before {
  content: "";
}

.ion-social-buffer-outline:before {
  content: "";
}

.ion-social-chrome:before {
  content: "";
}

.ion-social-chrome-outline:before {
  content: "";
}

.ion-social-codepen:before {
  content: "";
}

.ion-social-codepen-outline:before {
  content: "";
}

.ion-social-css3:before {
  content: "";
}

.ion-social-css3-outline:before {
  content: "";
}

.ion-social-designernews:before {
  content: "";
}

.ion-social-designernews-outline:before {
  content: "";
}

.ion-social-dribbble:before {
  content: "";
}

.ion-social-dribbble-outline:before {
  content: "";
}

.ion-social-dropbox:before {
  content: "";
}

.ion-social-dropbox-outline:before {
  content: "";
}

.ion-social-euro:before {
  content: "";
}

.ion-social-euro-outline:before {
  content: "";
}

.ion-social-facebook:before {
  content: "";
}

.ion-social-facebook-outline:before {
  content: "";
}

.ion-social-foursquare:before {
  content: "";
}

.ion-social-foursquare-outline:before {
  content: "";
}

.ion-social-freebsd-devil:before {
  content: "";
}

.ion-social-github:before {
  content: "";
}

.ion-social-github-outline:before {
  content: "";
}

.ion-social-google:before {
  content: "";
}

.ion-social-google-outline:before {
  content: "";
}

.ion-social-googleplus:before {
  content: "";
}

.ion-social-googleplus-outline:before {
  content: "";
}

.ion-social-hackernews:before {
  content: "";
}

.ion-social-hackernews-outline:before {
  content: "";
}

.ion-social-html5:before {
  content: "";
}

.ion-social-html5-outline:before {
  content: "";
}

.ion-social-instagram:before {
  content: "";
}

.ion-social-instagram-outline:before {
  content: "";
}

.ion-social-javascript:before {
  content: "";
}

.ion-social-javascript-outline:before {
  content: "";
}

.ion-social-linkedin:before {
  content: "";
}

.ion-social-linkedin-outline:before {
  content: "";
}

.ion-social-markdown:before {
  content: "";
}

.ion-social-nodejs:before {
  content: "";
}

.ion-social-octocat:before {
  content: "";
}

.ion-social-pinterest:before {
  content: "";
}

.ion-social-pinterest-outline:before {
  content: "";
}

.ion-social-python:before {
  content: "";
}

.ion-social-reddit:before {
  content: "";
}

.ion-social-reddit-outline:before {
  content: "";
}

.ion-social-rss:before {
  content: "";
}

.ion-social-rss-outline:before {
  content: "";
}

.ion-social-sass:before {
  content: "";
}

.ion-social-skype:before {
  content: "";
}

.ion-social-skype-outline:before {
  content: "";
}

.ion-social-snapchat:before {
  content: "";
}

.ion-social-snapchat-outline:before {
  content: "";
}

.ion-social-tumblr:before {
  content: "";
}

.ion-social-tumblr-outline:before {
  content: "";
}

.ion-social-tux:before {
  content: "";
}

.ion-social-twitch:before {
  content: "";
}

.ion-social-twitch-outline:before {
  content: "";
}

.ion-social-twitter:before {
  content: "";
}

.ion-social-twitter-outline:before {
  content: "";
}

.ion-social-usd:before {
  content: "";
}

.ion-social-usd-outline:before {
  content: "";
}

.ion-social-vimeo:before {
  content: "";
}

.ion-social-vimeo-outline:before {
  content: "";
}

.ion-social-whatsapp:before {
  content: "";
}

.ion-social-whatsapp-outline:before {
  content: "";
}

.ion-social-windows:before {
  content: "";
}

.ion-social-windows-outline:before {
  content: "";
}

.ion-social-wordpress:before {
  content: "";
}

.ion-social-wordpress-outline:before {
  content: "";
}

.ion-social-yahoo:before {
  content: "";
}

.ion-social-yahoo-outline:before {
  content: "";
}

.ion-social-yen:before {
  content: "";
}

.ion-social-yen-outline:before {
  content: "";
}

.ion-social-youtube:before {
  content: "";
}

.ion-social-youtube-outline:before {
  content: "";
}

.ion-soup-can:before {
  content: "";
}

.ion-soup-can-outline:before {
  content: "";
}

.ion-speakerphone:before {
  content: "";
}

.ion-speedometer:before {
  content: "";
}

.ion-spoon:before {
  content: "";
}

.ion-star:before {
  content: "";
}

.ion-stats-bars:before {
  content: "";
}

.ion-steam:before {
  content: "";
}

.ion-stop:before {
  content: "";
}

.ion-thermometer:before {
  content: "";
}

.ion-thumbsdown:before {
  content: "";
}

.ion-thumbsup:before {
  content: "";
}

.ion-toggle:before {
  content: "";
}

.ion-toggle-filled:before {
  content: "";
}

.ion-transgender:before {
  content: "";
}

.ion-trash-a:before {
  content: "";
}

.ion-trash-b:before {
  content: "";
}

.ion-trophy:before {
  content: "";
}

.ion-tshirt:before {
  content: "";
}

.ion-tshirt-outline:before {
  content: "";
}

.ion-umbrella:before {
  content: "";
}

.ion-university:before {
  content: "";
}

.ion-unlocked:before {
  content: "";
}

.ion-upload:before {
  content: "";
}

.ion-usb:before {
  content: "";
}

.ion-videocamera:before {
  content: "";
}

.ion-volume-high:before {
  content: "";
}

.ion-volume-low:before {
  content: "";
}

.ion-volume-medium:before {
  content: "";
}

.ion-volume-mute:before {
  content: "";
}

.ion-wand:before {
  content: "";
}

.ion-waterdrop:before {
  content: "";
}

.ion-wifi:before {
  content: "";
}

.ion-wineglass:before {
  content: "";
}

.ion-woman:before {
  content: "";
}

.ion-wrench:before {
  content: "";
}

.ion-xbox:before {
  content: "";
}

/**
 * BxSlider v4.0 - Fully loaded, responsive content slider
 * http://bxslider.com
 *
 * Written by: Steven Wanderski, 2012
 * http://stevenwanderski.com
 * (while drinking Belgian ales and listening to jazz)
 *
 * CEO and founder of bxCreative, LTD
 * http://bxcreative.com
 */
/** RESET AND LAYOUT
===================================*/
.bx-wrapper {
  position: relative;
  padding: 0;
  *zoom: 1;
  clear: both;
  width: 100% !important;
  height: 100% !important;
}

.bx-wrapper img {
  max-width: 100%;
  display: block;
}

/** THEME
===================================*/
.bx-wrapper .bx-viewport {
  /*
  	-moz-box-shadow: 0 0 5px #ccc;
  	-webkit-box-shadow: 0 0 5px #ccc;
  	box-shadow: 0 0 5px #ccc;
  	border: solid #fff 5px;
  */
  top: 0;
  left: 0;
  position: relative;
}

.bxslider, .bxslider li {
  height: 100% !important;
}

.bx-wrapper .bx-pager,
.bx-wrapper .bx-controls-auto {
  position: absolute;
  width: 100%;
  z-index: 9999;
}

/* LOADER */
.bx-wrapper .bx-loading {
  /*
  	min-height: 50px;
  	background: url(../img/bx_loader.gif) center center no-repeat #fff;
  	height: 100%;
  	width: 100%;
  	position: absolute;
  	top: 0;
  	left: 0;
  	z-index: 2000;
  */
}

/* PAGER */
.bx-wrapper .bx-pager {
  font-size: .85em;
  font-family: Arial;
  font-weight: bold;
  color: #666;
  padding-top: 20px;
}

.bx-wrapper .bx-pager .bx-pager-item,
.bx-wrapper .bx-controls-auto .bx-controls-auto-item {
  display: inline-block;
  *zoom: 1;
  *display: inline;
}

.bx-wrapper .bx-pager.bx-default-pager a {
  border: 1px solid #ffffff;
  text-indent: -9999px;
  display: block;
  width: 10px;
  height: 10px;
  margin: 0 4px;
  outline: 0;
}

.bx-wrapper .bx-pager.bx-default-pager a:hover,
.bx-wrapper .bx-pager.bx-default-pager a.active {
  filter: alpha(opacity=100);
  -moz-opacity: 10;
  opacity: 10;
  background: #85c300;
  border: 1px solid #85c300;
}

/* DIRECTION CONTROLS (NEXT / PREV) */
.bx-wrapper .bx-prev {
  position: absolute;
}

.bx-wrapper .bx-prev::after {
  position: absolute;
  font-family: 'ionIcons';
  top: 0%;
  left: 0;
  color: #fff;
  line-height: 1;
  content: "\f3cf";
  font-size: 30px;
  font-size: 3rem;
  max-width: 100%;
  z-index: 8888;
  padding: 0;
}

.bx-wrapper .bx-next {
  position: absolute;
  right: 30px;
}

.bx-wrapper .bx-next:after {
  position: absolute;
  font-family: 'ionIcons';
  top: 0%;
  right: 0;
  color: #fff;
  line-height: 1;
  content: "\f3d1";
  font-size: 30px;
  font-size: 3rem;
  max-width: 100%;
  z-index: 8888;
  padding: 0;
}

.bx-wrapper .bx-prev:hover:after {
  color: #555;
}

.bx-wrapper .bx-next:hover:after {
  color: #555;
}

.bx-wrapper .bx-controls-direction a {
  position: absolute;
  top: 50%;
  margin-top: -0.5em;
}

.bx-wrapper .bx-controls-direction a.disabled {
  display: none;
}

/* AUTO CONTROLS (START / STOP) */
.bx-wrapper .bx-controls-auto {
  text-align: center;
}

.bx-wrapper .bx-controls-auto .bx-start {
  display: block;
  text-indent: -9999px;
  width: 10px;
  height: 11px;
  outline: 0;
  margin: 0 3px;
}

.bx-wrapper .bx-controls-auto .bx-start:hover,
.bx-wrapper .bx-controls-auto .bx-start.active {
  background-position: -86px 0;
}

.bx-wrapper .bx-controls-auto .bx-stop {
  display: block;
  text-indent: -9999px;
  width: 9px;
  height: 11px;
  outline: 0;
  margin: 0 3px;
}

.bx-wrapper .bx-controls-auto .bx-stop:hover,
.bx-wrapper .bx-controls-auto .bx-stop.active {
  background-position: -86px -33px;
}

/* PAGER WITH AUTO-CONTROLS HYBRID LAYOUT */
.bx-wrapper .bx-controls.bx-has-controls-auto.bx-has-pager .bx-pager {
  text-align: left;
  width: 80%;
}

.bx-wrapper .bx-controls.bx-has-controls-auto.bx-has-pager .bx-controls-auto {
  right: 0;
  width: 35px;
}

/* IMAGE CAPTIONS */
.bx-wrapper .bx-caption {
  position: absolute;
  bottom: -5px;
  left: 0;
  background: #666 \9;
  background: rgba(255, 255, 255, 0.75);
  width: 100%;
  text-align: center;
}

.bx-wrapper .bx-caption span {
  color: #000;
  font-family: Arial;
  display: block;
  font-size: .85em;
  padding: 10px;
}

body {
  background: #fff;
  font-size: 14px;
  font-size: 1.4rem;
}
@media only screen and (max-width: 768px) {
  body {
    font-size: 13px;
    font-size: 1.3rem;
  }
}

a, button {
  outline: none !important;
}

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

main#top {
  opacity: 0;
}

main#top.active {
  opacity: 1;
}

#container {
  width: 100%;
  padding-left: 200px;
  position: relative;
  z-index: 1;
}
@media only screen and (max-width: 768px) {
  #container {
    padding-left: 0;
    height: 100%;
  }
}
#container #nav_grid {
  z-index: 9999;
  width: 200px;
  min-height: 100vh;
  min-height: 100%;
  position: fixed;
  border-top: 8px solid #d41b1b;
  left: 0;
  -webkit-box-shadow: 3px 0px 3px -1px rgba(0, 0, 0, 0.15);
  　-moz-box-shadow: 3px 0px 3px -1px rgba(0, 0, 0, 0.15);
  　box-shadow: 3px 0px 3px -1px rgba(0, 0, 0, 0.15);
  background: #ffffff;
}
@media only screen and (max-width: 768px) {
  #container #nav_grid {
    box-shadow: none;
    width: 100%;
    position: fixed;
    min-height: 0;
    top: 0;
    left: 0;
    z-index: 9998;
    height: auto;
  }
}
#container #nav_grid.active {
  height: 100%;
}
#container #logo {
  width: 100%;
  background: #ffffff;
  margin: 0 0 0 0;
  padding: 5rem 1rem 4rem;
  position: relative;
  text-align: center;
}
#container #logo a {
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  content: "";
  z-index: 999;
}
#container #logo img{
  width: 100%;
}
@media only screen and (max-width: 768px) {
  #container #logo {
    width: 220px;
    margin: 0;
    padding: 21px 2rem;
  }
  #container #logo object {
    width: 180px !important;
  }
  #container #logo img{
    width: 180px !important;
  }
}
#container #gnav {
  background: #ffffff;
}
@media only screen and (max-width: 768px) {
  #container #gnav {
    display: none;
    height: 100%;
    -webkit-overflow-scrolling: touch;
    overflow: scroll;
    padding-bottom: 10rem;
  }
}
#container #gnav ul {
  border-top: 1px solid #ccc;
}
#container #gnav ul li a {
  display: block;
  border-bottom: 1px solid #ccc;
  padding: 1.4rem 0 1.4rem 1.4rem;
  font-size: 13px;
  font-size: 1.3rem;
  transition: all .3s ease;
  color: #000;
}
@media only screen and (max-width: 768px) {
  #container #gnav ul li a {
    transition: none;
  }
}
#container #gnav ul li a:hover {
  background: #fafafa;
}
#container #gnav ul li a.main {
  position: relative;
}
#container #gnav ul li a.main.active {
  background: #eee;
}
#container #gnav ul li a.main.active:after {
  position: absolute;
  font-family: 'ionIcons';
  top: 50%;
  right: 2rem;
  color: #d41b1b;
  margin-top: -0.5em;
  margin-left: -0.3em;
  line-height: 1;
  content: "\f3d3";
  font-size: 14px;
  font-size: 1.4rem;
  z-index: 999;
}
@media only screen and (max-width: 768px) {
  #container #gnav ul li a.main.active:after {
    content: "\f218";
    transform: rotate(45deg);
  }
}
@media only screen and (max-width: 768px) {
  #container #gnav ul li a.main:after {
    position: absolute;
    font-family: 'ionIcons';
    top: 50%;
    right: 2rem;
    color: #d41b1b;
    margin-top: -0.5em;
    margin-left: -0.3em;
    line-height: 1;
    content: "\f218";
    font-size: 14px;
    font-size: 1.4rem;
    z-index: 999;
  }
}
@media only screen and (max-width: 768px) {
  #container #gnav ul li a.main.me:after {
    content: "\f3d3";
    transform: rotate(0deg);
  }
}
#container #gnav ul li.dummy {
  min-height: 50px;
  display: block;
  content: "";
}
@media only screen and (max-width: 768px) {
  #container #gnav ul li.dummy {
    min-height: 0;
    display: none;
  }
}
#container #gnav .megamenu {
  position: fixed;
  top: 0;
  left: 200px;
  visibility: hidden;
  height: 100vh;
  width: 200px;
  background: #555;
  padding: 165px 0 0 0;
  opacity: 0;
  transition: all .3s ease;
  z-index: -999;
}
@media only screen and (max-width: 768px) {
  #container #gnav .megamenu {
    position: static;
    opacity: 1;
    z-index: 0;
    height: auto;
    padding: 0;
    width: 100%;
    margin-top: 0;
    display: none;
    transition: none;
  }
}
#container #gnav .megamenu a {
  color: #ffffff;
}
#container #gnav .megamenu a:hover {
  background: #333;
}
#container #gnav .megamenu a {
  position: relative;
}
@media only screen and (max-width: 768px) {
  #container #gnav .megamenu a:after {
    position: absolute;
    font-family: 'ionIcons';
    top: 50%;
    right: 2rem;
    color: #ffffff;
    margin-top: -0.5em;
    margin-left: -0.3em;
    line-height: 1;
    content: "\f3d3";
    font-size: 14px;
    font-size: 1.4rem;
    z-index: 999;
  }
}
#container #gnav .megamenu a:hover:after {
  position: absolute;
  font-family: 'ionIcons';
  top: 50%;
  right: 2rem;
  color: #ffffff;
  margin-top: -0.5em;
  margin-left: -0.3em;
  line-height: 1;
  content: "\f3d3";
  font-size: 14px;
  font-size: 1.4rem;
  z-index: 999;
}
#container #gnav .megamenu.active {
  opacity: 1;
  z-index: 999;
  visibility: visible;
  left: 200px;
}
@media only screen and (max-width: 768px) {
  #container #gnav .megamenu.active {
    left: 0;
  }
}
#container #logo02 {
  padding: 3rem;
  position: absolute;
  bottom: 0;
  background: #ffffff;
}
@media only screen and (max-width: 768px) {
  #container #logo02 {
    display: none;
  }
}
#container #logo02 a:after {
  display: none;
  content: "";
}

#progress {
  width: 300px;
  height: 1px;
  position: fixed;
  top: 40%;
  left: 50%;
  margin-left: -50px;
  padding: 1rem;
  z-index: 9999;
}
@media only screen and (max-width: 768px) {
  #progress {
    top: 50%;
    margin-left: -150px;
  }
}

#progressBar {
  width: 0;
  height: 1px;
  background: #d41b1b;
}

#progressTxt {
  margin: 1rem 0 0 0;
  text-align: center;
  font-size: 11px;
  font-size: 1.1rem;
  color: #999;
}
@media only screen and (max-width: 768px) {
  #progressTxt {
    font-size: 9px;
    font-size: 0.9rem;
  }
}

main {
  position: relative;
  z-index: 0;
  overflow: hidden;
  width: 100%;
}

#visual_container {
  visibility: hidden;
  height: 100vh;
}

#visual_container.initialized {
  visibility: visible;
}

#section0 {
  z-index: 999;
  width: 100%;
  overflow: hidden;
  position: relative;
}
#section0 .hero01 {
  width: 100%;
  height: 100vh;
  background: url("../img/top-assets/visual01.jpg") no-repeat top center;
  background-size: cover;
}
#section0 .hero02 {
  width: 100%;
  height: 100vh;
  background: url("../img/top-assets/visual02.jpg") no-repeat top center;
  background-size: cover;
}
#section0 .hero03 {
  width: 100%;
  height: 100vh;
  background: url("../img/top-assets/visual03.jpg") no-repeat top center;
  background-size: cover;
}
#section0 .hide {
  display: none;
}
#section0 .slick-slide {
  display: block;
}
#section0 .copy {
  position: absolute;
  display: flex;
  justify-content: center;
  flex-direction: column;
  z-index: 1000;
  width: 100%;
  height: 100%;
  top: 5rem;
  left: 0;
  text-align: center;
}
@media only screen and (max-width: 768px) {
  #section0 .copy {
    top: 2rem;
  }
}
#section0 .copy .copy01 {
  position: relative;
  min-width: 240px;
  margin: 0 auto;
  padding: 1rem;
  opacity: 0;
  transform: translateY(-40px);
}
@media only screen and (max-width: 768px) {
  #section0 .copy .copy01 {
    padding: 0.5rem 0;
    min-width: 140px;
    width: 180px;
  }
  #section0 .copy .copy01 img {
    width: 100%;
  }
}
#section0 .copy .copy02 {
  min-width: 700px;
  margin: 0 auto;
  padding: 1rem;
  opacity: 0;
  transform: translateY(-40px);
}
@media only screen and (max-width: 768px) {
  #section0 .copy .copy02 {
    min-width: 320px;
  }
  #section0 .copy .copy02 img {
    width: 100%;
  }
}
#section0 .copy .copy03 {
  min-width: 140px;
  margin: 0 auto;
  opacity: 0;
  transform: translateY(-40px);
}
@media only screen and (max-width: 768px) {
  #section0 .copy .copy03 {
    min-width: 80px;
    width: 100px;
  }
  #section0 .copy .copy03 img {
    width: 100%;
  }
}
#section0 .svg-bg01, #section0 .svg-bg02, #section0 .svg-bg03 {
  opacity: 0.8;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: -10%;
  opacity: 0;
}
@media only screen and (max-width: 768px) {
  #section0 .svg-bg01, #section0 .svg-bg02, #section0 .svg-bg03 {
    transform: rotate(10deg) translateX(20px);
  }
}

.category {
  margin: 0 0 3rem 0;
}
.category ul {
  display: flex;
  flex-wrap: wrap;
}
.category ul li {
  display: inline-block;
}
.category ul li a {
  display: block;
  padding: 0.5rem 2rem;
  border: 1px solid #ccc;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  margin: 0 1rem 0 0;
  color: #ffffff;
  text-decoration: none;
}
@media only screen and (max-width: 768px) {
  .category ul li a {
    margin: 0 1rem 1rem 0;
  }
}
.category ul li a:hover {
  background: #333;
  color: #ffffff !important;
  text-decoration: none !important;
}

.cat-1 {
  background: #fff;
  border: 1px solid #ccc;
}
.cat-2 {
  background: #f3e7e7;
}


#news {
  width: 100%;
  z-index: 9999;
  color: #333;
  padding: 3rem 5rem;
  font-size: 13px;
  font-size: 1.3rem;
}
#news .news_flex {
  display: flex;
  justify-content: space-between;
}
@media only screen and (max-width: 768px) {
  #news .news_flex {
    display: block;
  }
}
#news .news_flex .main_box {
  width: 75%;
  padding: 0 5rem 0 0;
}
@media only screen and (max-width: 768px) {
  #news .news_flex .main_box {
    width: 100%;
    padding: 0;
  }
}
#news .news_flex .archive_box {
  width: 25%;
}
@media only screen and (max-width: 768px) {
  #news .news_flex .archive_box {
    width: 100%;
  }
}
#news .news_flex .archive_box .monthly {
  background: #eee;
  padding: 3rem;
}
#news .news_flex .archive_box .monthly h3 {
  background: #ffffff;
  padding: 1rem;
  text-align: center;
  margin: 0 0 2rem 0;
}
#news .news_flex .archive_box .monthly ul li a {
  display: block;
  border-bottom: 1px solid #ccc;
  padding: 1rem 0;
}
@media only screen and (max-width: 768px) {
  #news {
    padding: 0 2rem;
  }
}
#news .inner {
  display: flex;
}
@media only screen and (max-width: 768px) {
  #news {
    font-size: 12px;
    font-size: 1.2rem;
  }
}
#news div.txt {
  padding: 0 2rem;
  flex: 1;
}
@media only screen and (max-width: 768px) {
  #news div.txt {
    padding: 0 0.5rem;
  }
}
#news div.txt h2 {
  font-weight: bold;
  font-size: 24px;
  font-size: 2.4rem;
  border-bottom: 3px solid #d41b1b;
  padding: 0 0 1rem 0;
  margin: 0 0 3rem 0;
}
@media only screen and (max-width: 768px) {
  #news div.txt h2 {
    font-size: 16px;
    font-size: 1.6rem;
  }
}
#news div.txt .others {
  display: flex;
}
#news div.txt .others p.date {
  margin: 0 2rem 0 0;
}
#news div.txt .others .cat {
  padding: 0.2rem 1rem;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  border-radius: 3px;
}
#news div.txt dl {
  display: flex;
  padding: 1rem 0;
  border-bottom: 1px solid #ccc;
}
@media only screen and (max-width: 768px) {
  #news div.txt dl {
    display: block;
    flex-wrap: wrap;
  }
}
#news div.txt dl dt {
  font-weight: bold;
  margin: 0 1rem 0 0;
}
@media only screen and (max-width: 768px) {
  #news div.txt dl dt {
    width: 100%;
  }
}
#news div.txt dl dd {
  display: flex;
  align-items: flex-start;
}
#news div.txt dl dd span {
  margin: 0 1rem;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  border-radius: 3px;
  padding: 0.2rem 1rem;
  font-size: 12px;
  font-size: 1.2rem;
  white-space: nowrap;
}
@media only screen and (max-width: 768px) {
  #news div.txt dl dd span {
    margin: 0 2rem 0 0;
  }
}
#news .txt.active {
  overflow-y: scroll;
}
#news .newstitle {
  padding: 1rem 2rem;
}
#news a {
  color: #333;
}
#news a:hover {
  color: #d41b1b;
  text-decoration: underline !important;
}
#news .all_link {
  text-align: center;
  width: 100%;
  clear: both;
  margin: 3rem 0 0 0;
}
#news .all_link a {
  display: inline-block;
  padding: 1rem 2rem;
  background: #fff;
  border: 1px solid #ccc;
  text-decoration: none;
}
#news .all_link a:hover {
  background: #d41b1b;
  color: #ffffff;
}
main #news a[href^="https://"]:after, main #news a[href^="http://"]:after{
  content: none;
}

main {
  min-height: 100vh;
}
@media only screen and (max-width: 768px) {
  main {
    min-height: 0;
  }
}

@media only screen and (max-width: 768px) {
  main#under {
    min-height: 0;
    padding: 75px 0 0 0;
  }
}

.lborder::after {
  content: '';
  display: block;
  margin: 1.4rem 0 1.4rem 0;
  text-align: center;
  width: 50px;
  height: 1px;
  background: #fff;
}
@media only screen and (max-width: 768px) {
  .lborder::after {
    margin: 1rem 0;
  }
}

#normal_contents {
  min-width: 800px;
}
@media only screen and (max-width: 768px) {
  #normal_contents {
    min-width: 0;
  }
}
#normal_contents #maintitle {
  padding: 10rem 5rem;
  border-bottom: 5px solid #d41b1b;
  position: relative;
}
@media only screen and (max-width: 768px) {
  #normal_contents #maintitle {
    padding: 3rem;
    margin: 0 0 3rem 0;
  }
}
#normal_contents #maintitle .line {
  background: url("../img/visual-assets/line.png") no-repeat bottom right;
  background-size: contain;
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  content: "";
  z-index: 999;
}
#normal_contents #maintitle h1 {
  font-size: 30px;
  font-size: 3rem;
  line-height: 1.3;
  letter-spacing: 0.1em;
  padding: 0 0 1rem 0;
  font-weight: 500;
  display: inline-block;
  color: #ffffff;
}
@media only screen and (max-width: 768px) {
  #normal_contents #maintitle h1 {
    font-size: 16px;
    font-size: 1.6rem;
  }
}
#normal_contents #maintitle p.en {
  color: #ffffff;
  font-family: 'Montserrat', sans-serif;
  font-weight: 300;
  font-size: 20px;
  font-size: 2rem;
}
@media only screen and (max-width: 768px) {
  #normal_contents #maintitle p.en {
    font-size: 10px;
    font-size: 1rem;
  }
}
#normal_contents #maintitle.message {
  background: url("../img/visual-assets/visual01.jpg") no-repeat 0 0;
  background-size: cover;
}
#normal_contents #maintitle.ourfield {
  background: url("../img/visual-assets/visual_ourfield.jpg") no-repeat 0 0;
  background-size: cover;
}
#normal_contents #maintitle.solution {
  background: url("../img/visual-assets/visual_solution.jpg") no-repeat 0 0;
  background-size: cover;
}
#normal_contents #maintitle.randd {
  background: url("../img/visual-assets/visual_randd.jpg") no-repeat 0 0;
  background-size: cover;
}
#normal_contents #maintitle_big {
  position: relative;
}
#normal_contents #maintitle_big .line {
  background: url("../img/visual-assets/line.png") no-repeat bottom right;
  background-size: contain;
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  content: "";
  z-index: 999;
}
@media only screen and (max-width: 768px) {
  #normal_contents #maintitle_big .line {
    top: 0;
    right: 0;
  }
}
#normal_contents #maintitle_big .title_box {
  position: absolute;
  top: 5rem;
  left: 5rem;
}
@media only screen and (max-width: 768px) {
  #normal_contents #maintitle_big .title_box {
    top: 4rem;
    left: 2rem;
    z-index: 999;
  }
}
#normal_contents #maintitle_big h1 {
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.3;
  letter-spacing: 0.1em;
  padding: 0 0 1rem 0;
  font-weight: 500;
  display: inline-block;
  color: #ffffff;
  font-weight: normal;
}
@media only screen and (max-width: 768px) {
  #normal_contents #maintitle_big h1 {
    font-size: 16px;
    font-size: 1.6rem;
  }
}
#normal_contents #maintitle_big p.en {
  color: #ffffff;
  font-family: 'Montserrat', sans-serif;
  font-weight: 300;
  font-size: 20px;
  font-size: 2rem;
}
@media only screen and (max-width: 768px) {
  #normal_contents #maintitle_big p.en {
    font-size: 10px;
    font-size: 1rem;
  }
}
#normal_contents #contents_wide {
  padding: 0 0;
}
#normal_contents #contents {
  padding: 5vw;
  margin: auto;
  max-width: 1200px;
}
@media only screen and (max-width: 768px) {
  #normal_contents #contents {
    padding: 0 3rem 5rem 3rem;
    min-width: 0;
    width: 100%;
  }
}
#normal_contents #contents h2 {
  font-size: 24px;
  font-size: 2.4rem;
  margin: 0 0 4rem 0;
  line-height: 2;
  text-align: center;
  position: relative;
}
@media only screen and (max-width: 768px) {
  #normal_contents #contents h2 {
    text-align: left;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.5;
    margin: 0 0 3rem 0;
  }
}
#normal_contents #contents h2:after {
  content: '';
  display: block;
  margin: 2rem auto;
  text-align: center;
  width: 80px;
  height: 5px;
  background: #d41b1b;
}
@media only screen and (max-width: 768px) {
  #normal_contents #contents h2:after {
    margin: 1rem 0;
  }
}
#normal_contents #contents h3.normal {
  font-weight: bold;
  font-size: 16px;
  font-size: 1.6rem;
  border-left: 5px solid #555;
  padding: 1rem 0 1rem 1rem;
  margin: 0 0 2rem 0;
  background: #efefef;
}
#normal_contents #contents h3.red {
  padding: 1rem 1rem 1rem 3rem;
  font-size: 20px;
  font-size: 2rem;
  background: #d41b1b;
  color: #ffffff;
  margin: 3rem 0 3rem 0;
}
@media only screen and (max-width: 768px) {
  #normal_contents #contents h3.red {
    font-size: 16px;
    font-size: 1.6rem;
    text-align: center;
    padding: 1rem;
  }
}
#normal_contents #contents h4.normalh4 {
  font-weight: bold;
  margin: 2rem 0 1rem 0;
  border-bottom: 1px solid #ccc;
}
#normal_contents #contents .normal_txt p {
  margin: 0 0 2rem 0;
}
#normal_contents #contents .normal_txt p.big {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
}
@media only screen and (max-width: 768px) {
  #normal_contents #contents .normal_txt p.big {
    font-size: 13px;
    font-size: 1.3rem;
  }
}
#normal_contents #contents .normal_txt p.ce {
  text-align: center;
}
@media only screen and (max-width: 768px) {
  #normal_contents #contents .normal_txt p.ce {
    text-align: left;
  }
}
#normal_contents #contents .normal_txt p.nop {
  margin: 0 !important;
}
#normal_contents #contents .mb5 {
  margin-bottom: 5rem;
}
@media only screen and (max-width: 768px) {
  #normal_contents #contents .mb5 {
    margin-bottom: 3rem;
  }
}
#normal_contents #contents .mb10 {
  margin-bottom: 10rem;
}
@media only screen and (max-width: 768px) {
  #normal_contents #contents .mb10 {
    margin-bottom: 5rem;
  }
}
#normal_contents #contents article.normal {
  padding: 3rem;
  border: 1px solid #eee;
}
#normal_contents #contents article.normal p {
  margin-bottom: 0 !important;
}
#normal_contents #contents .gr {
  background: #fafafa;
}
#normal_contents #contents a.txtlink {
  text-decoration: underline !important;
}
#normal_contents #contents a.txtlink:hover {
  text-decoration: underline !important;
  color: #d41b1b;
}
#normal_contents #contents .president_name {
  text-align: right;
  margin: 2rem 0 0 0;
}
#normal_contents #contents .president_name p.sub {
  font-size: 13px;
  font-size: 1.3rem;
  margin-bottom: 0;
}
#normal_contents #contents .president_name p.main {
  font-size: 16px;
  font-size: 1.6rem;
}
@media only screen and (max-width: 768px) {
  #normal_contents #contents .president_name p.main {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

footer {
  height: 100px;
  padding-left: 220px;
  padding-top: 3rem;
  *zoom: 1;
  border-top: 1px solid #ccc;
}
footer:after {
  content: "";
  display: table;
  clear: both;
}
@media only screen and (max-width: 768px) {
  footer {
    height: auto;
    padding: 3rem 0;
    display: block;
    z-index: 0 !important;
  }
}
footer .fbox {
  width: 600px;
  margin: auto;
}
@media only screen and (max-width: 768px) {
  footer .fbox {
    width: 100%;
  }
}
footer .pmark {
  width: 75px;
  float: left;
  padding: 0 2rem 0 0;
}
@media only screen and (max-width: 768px) {
  footer .pmark {
    width: 50px;
    margin: auto;
    float: none;
    padding: 0;
  }
  footer .pmark img {
    width: 100%;
  }
}
footer .f_link {
  width: 100%;
  width: calc(100% - 75px);
  margin: auto;
  padding: 3rem 0 0 0;
}
@media only screen and (max-width: 768px) {
  footer .f_link {
    width: 100%;
    margin: 0 0 2rem 0;
  }
}
footer .f_link ul {
  *zoom: 1;
  width: 100%;
}
footer .f_link ul:after {
  content: "";
  display: table;
  clear: both;
}
@media only screen and (max-width: 768px) {
  footer .f_link ul li {
    float: none;
  }
}
footer .f_link ul li a {
  display: block;
  padding: 0 0.5rem;
  border-right: 1px solid #ccc;
  font-size: 12px;
  font-size: 1.2rem;
  float: left;
  text-align: center;
}
@media only screen and (max-width: 768px) {
  footer .f_link ul li a {
    font-size: 10px;
    font-size: 1rem;
    width: 100%;
    float: none;
    border-right: none;
    padding: 1rem 0;
    border-bottom: 1px solid #ccc;
    background: #fafafa;
  }
}
@media only screen and (max-width: 768px) {
  footer .f_link ul li:first-child {
    border-top: 1px solid #ccc;
  }
}
footer .f_link ul li:last-child a {
  border-right: none;
}
footer .copy {
  font-size: 10px;
  font-size: 1rem;
  text-align: center;
  width: 100%;
  padding: 0 0 2rem 0;
  clear: both;
}
@media only screen and (max-width: 768px) {
  footer .copy {
    width: 100%;
    padding: 0;
    font-size: 8px;
    font-size: 0.8rem;
    text-align: center;
  }
}

.readmore {
  transition: all .3s ease;
  margin: 2rem 0 0 0;
  display: inline-block;
  position: relative;
  padding: 0.5rem 2rem;
  background: #ffffff;
  z-index: 999;
  border: 1px solid #d41b1b;
}
@media only screen and (max-width: 768px) {
  .readmore {
    display: block;
    text-align: center;
  }
}
.readmore .inner {
  display: block;
  position: absolute;
  width: 0%;
  height: 100%;
  top: 0;
  left: 0;
  content: "";
  z-index: 0;
  background: #d41b1b;
  transition: all .3s ease;
}
.readmore p {
  display: inline-block;
  position: relative;
  z-index: 9;
  transition: all .3s ease;
  color: #d41b1b;
}
.readmore .yaji {
  display: inline-block;
  padding: 0 0 0 1rem;
  transition: all .3s ease;
  position: relative;
}
.readmore i {
  color: #d41b1b;
  transition: all .3s ease;
  position: relative;
}

.readmore:hover {
  color: #ffffff;
}
.readmore:hover .yaji {
  color: #ffffff;
  transform: translateX(10px);
}
.readmore:hover .yaji i {
  color: #ffffff;
}
.readmore:hover p {
  color: #ffffff;
}
.readmore:hover .inner {
  width: 100%;
}

table#normal_table {
  width: 100%;
}
@media only screen and (max-width: 768px) {
  table#normal_table th {
    font-weight: bold;
  }
}
table#normal_table th, table#normal_table td {
  border-bottom: 1px solid #efefef;
  padding: 1rem;
  text-align: left;
}
@media only screen and (max-width: 768px) {
  table#normal_table th, table#normal_table td {
    padding: 1rem 0;
    display: block;
  }
}
table#normal_table th {
  padding: 2rem 2rem;
  color: #555;
}
@media only screen and (max-width: 768px) {
  table#normal_table th {
    padding: 1rem 0;
    border-bottom: 3px solid #eee;
  }
}
table#normal_table table th, table#normal_table table td {
  border-bottom: none;
  border-left: none;
  padding: 1rem;
}
@media only screen and (max-width: 768px) {
  table#normal_table table th, table#normal_table table td {
    padding: 0;
  }
}
table#normal_table table th {
  padding: 1rem 2rem;
}
@media only screen and (max-width: 768px) {
  table#normal_table table th {
    padding: 0;
  }
}

.public_notice ul{
  margin-bottom: 50px;
}

.action_box {
  *zoom: 1;
}
.action_box:after {
  content: "";
  display: table;
  clear: both;
}
.action_box .ti {
  width: 10%;
  float: left;
  background: #eee;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  border-radius: 3px;
  text-align: center;
}
@media only screen and (max-width: 768px) {
  .action_box .ti {
    width: 100%;
    float: none;
    margin: 0 0 0rem 0;
  }
}
.action_box .txt {
  width: 90%;
  float: left;
  padding: 0 0 0 5rem;
}
@media only screen and (max-width: 768px) {
  .action_box .txt {
    width: 100%;
    padding: 0 0 2rem 0;
  }
}
.action_box .txt p {
  margin: 0 0 1rem 0 !important;
}

#pagetop, #arrowDown {
  width: 44px;
  height: 44px;
  position: fixed;
  z-index: 9999;
  bottom: 2rem;
  right: 2rem;
  opacity: 0;
  background: rgba(255, 255, 255, 0.8);
  transition: all .3s ease;
  cursor: pointer;
}

#pagetop:after, #arrowDown:after {
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  content: "";
  z-index: 999;
  color: #999;
  position: absolute;
  font-family: 'ionIcons';
  top: 50%;
  left: 50%;
  margin-top: -0.5em;
  margin-left: -0.3em;
  line-height: 1;
  content: "\f35d";
  font-size: 20px;
  font-size: 2rem;
  z-index: 999;
}

#pagetop a {
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  content: "";
  z-index: 9999;
}

#pagetop.active {
  opacity: 1;
}

#pagetop:after {
  content: "\f366";
}

#pagetop:hover {
  background: #d41b1b;
  color: #ffffff;
}

#pagetop:hover:after {
  color: #ffffff;
}

.env_box {
  *zoom: 1;
  margin: 0 0 1rem 0;
}
.env_box:after {
  content: "";
  display: table;
  clear: both;
}
.env_box .num {
  width: 10%;
  float: left;
  text-align: center;
  font-weight: bold;
  border-left: 1px solid #d41b1b;
  border-right: 1px solid #d41b1b;
}
.env_box .txt {
  width: 90%;
  float: left;
  padding: 0 0 1rem 2rem;
}

.txt_right {
  text-align: right;
}

.soshikizu {
  width: 600px;
  margin: auto;
}
@media only screen and (max-width: 768px) {
  .soshikizu {
    width: 100%;
  }
}
.soshikizu img {
  width: 100%;
}

a.normallink {
  position: relative;
  padding: 0 0 0 1rem;
}

a.normallink.ac {
  padding-left: 1rem;
  margin-left: 2rem;
}
@media only screen and (max-width: 768px) {
  a.normallink.ac {
    margin-left: 0;
    display: block;
  }
}

a.normallink::before {
  color: #555;
  position: absolute;
  font-family: 'ionIcons';
  top: 50%;
  left: 0;
  margin-top: -0.5em;
  line-height: 1;
  content: "\f10a";
  font-size: 13px;
  font-size: 1.3rem;
  z-index: 999;
}

main a[href^="https://"] ,
main a[href^="http://"] {
  position: relative;
  padding: 0 0 0 1rem;
  text-decoration: underline;
}

main a[href^="https://"].textin ,
main a[href^="http://"].textin {
  position: relative;
  padding: 0;
  margin-right: 1.2em;
}

main a[href^="https://"]:after ,
main a[href^="http://"]:after {
  color: #999;
  position: absolute;
  font-family: 'ionIcons';
  top: 50%;
  right: -1.4rem;
  margin-top: -0.5em;
  line-height: 1;
  content: "\f3f0";
  font-size: 13px;
  font-size: 1.3rem;
  z-index: 999;
}

main a[href^="https://"].two:after ,
main a[href^="http://"].two:after {
  top: 80%;
}

main a[href^="https://"].noicon ,
main a[href^="http://"].noicon {
  text-decoration: none !important;
}

main a[href^="https://"].noicon:after ,
main a[href^="http://"].noicon:after {
  display: none !important;
  content: "";
}

.megamenu ul li a[href^="http://"].noicon:after {
  display: block !important;
  content: "";
}

a.normallink::before {
  color: #d41b1b;
  position: absolute;
  font-family: 'ionIcons';
  top: 50%;
  left: 0;
  margin-top: -0.5em;
  line-height: 1;
  content: "\f10a";
  font-size: 13px;
  font-size: 1.3rem;
  z-index: 999;
}

.president {
  *zoom: 1;
}
.president:after {
  content: "";
  display: table;
  clear: both;
}
.president .left {
  width: 70%;
  float: left;
}
@media only screen and (max-width: 768px) {
  .president .left {
    width: 100%;
    float: none;
  }
}
.president .right {
  width: 30%;
  float: left;
  padding: 0 0 0 5rem;
}
@media only screen and (max-width: 768px) {
  .president .right {
    width: 60%;
    float: none;
    margin: auto;
    text-align: right;
    padding: 3rem 0 0 0;
  }
}
.president .right img {
  width: 100%;
}

strong {
  font-weight: bold;
}

#pan .nolink {
  cursor: default;
}

.search {
  margin: 0 0 3rem 0;
}

.form input {
  outline: 0;
  background: #f2f2f2;
  width: 100%;
  border: 0;
  margin: 0;
  padding: 15px;
  box-sizing: border-box;
  font-size: 14px;
}
@media only screen and (max-width: 768px) {
  .form input {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.form button {
  text-transform: uppercase;
  outline: 0;
  background: #d41b1b;
  border: 0;
  color: #FFFFFF;
  width: 5rem;
  height: 100%;
  cursor: pointer;
}
.form button i {
  font-size: 20px;
  font-size: 2rem;
}

.form button:hover, .form button:active, .form button:focus {
  background: #e32525;
}

.form .message {
  margin: 15px 0 0;
  color: #b3b3b3;
  font-size: 12px;
}

.form .message a {
  color: #4CAF50;
  text-decoration: none;
}

.form .register-form {
  display: none;
}

.container {
  position: relative;
  z-index: 1;
  max-width: 300px;
  margin: 0 auto;
}

.container:before, .container:after {
  content: "";
  display: block;
  clear: both;
}

.container .info {
  margin: 50px auto;
  text-align: center;
}

.container .info h1 {
  margin: 0 0 15px;
  padding: 0;
  font-size: 36px;
  font-weight: 300;
  color: #1a1a1a;
}

.container .info span {
  color: #4d4d4d;
  font-size: 12px;
}

.container .info span a {
  color: #000000;
  text-decoration: none;
}

.container .info span .fa {
  color: #EF3B3A;
}

input:focus::-webkit-input-placeholder {
  color: transparent;
}

input:focus:-moz-placeholder {
  color: transparent;
}

input:focus::-moz-placeholder {
  color: transparent;
}

form {
  position: relative;
}
form button {
  position: absolute;
  right: 0;
  top: 0;
}

.news_main_txt img {
  width: 100%;
  margin: 3rem 0;
}
.news_main_txt p {
  margin: 0 0 3rem 0;
}