@charset "UTF-8";
/*!
 * Bootstrap v3.3.5 (http://getbootstrap.com)
 * Copyright 2011-2015 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}

audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

[hidden],
template {
  display: none;
}

a {
  background-color: transparent;
}

a:active,
a:hover {
  outline: 0;
}

abbr[title] {
  border-bottom: 1px dotted;
}

b,
strong {
  font-weight: bold;
}

dfn {
  font-style: italic;
}

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

mark {
  background: #ff0;
  color: #000;
}

small {
  font-size: 80%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

img {
  border: 0;
}

svg:not(:root) {
  overflow: hidden;
}

figure {
  margin: 1em 40px;
}

hr {
  box-sizing: content-box;
  height: 0;
}

pre {
  overflow: auto;
}

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
  color: inherit;
  font: inherit;
  margin: 0;
}

button {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer;
}

button[disabled],
html input[disabled] {
  cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

input {
  line-height: normal;
}

input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  padding: 0;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

input[type="search"] {
  -webkit-appearance: textfield;
  box-sizing: content-box;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

legend {
  border: 0;
  padding: 0;
}

textarea {
  overflow: auto;
}

optgroup {
  font-weight: bold;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

*:before,
*:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

html {
  font-size: 10px;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

body {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.428571429;
  color: #333333;
  background-color: #fff;
}

input,
button,
select,
textarea {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

a {
  color: #337ab7;
  text-decoration: none;
}
a:hover, a:focus {
  color: #23527c;
  text-decoration: underline;
}
a:focus {
  outline: thin dotted;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}

figure {
  margin: 0;
}

img {
  vertical-align: middle;
}

.img-responsive {
  display: block;
  max-width: 100%;
  height: auto;
}

.img-rounded {
  border-radius: 6px;
}

.img-thumbnail {
  padding: 4px;
  line-height: 1.428571429;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 4px;
  -webkit-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  display: inline-block;
  max-width: 100%;
  height: auto;
}

.img-circle {
  border-radius: 50%;
}

hr {
  margin-top: 20px;
  margin-bottom: 20px;
  border: 0;
  border-top: 1px solid #eeeeee;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

.sr-only-focusable:active, .sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  clip: auto;
}

[role="button"] {
  cursor: pointer;
}

.container, body.home .keyvisual .slider-top li .text {
  margin-right: auto;
  margin-left: auto;
  padding-left: 15px;
  padding-right: 15px;
}
.container:before, body.home .keyvisual .slider-top li .text:before, .container:after, body.home .keyvisual .slider-top li .text:after {
  content: " ";
  display: table;
}
.container:after, body.home .keyvisual .slider-top li .text:after {
  clear: both;
}
@media (min-width: 768px) {
  .container, body.home .keyvisual .slider-top li .text {
    width: 750px;
  }
}
@media (min-width: 992px) {
  .container, body.home .keyvisual .slider-top li .text {
    width: 970px;
  }
}
@media (min-width: 1200px) {
  .container, body.home .keyvisual .slider-top li .text {
    width: 1170px;
  }
}

.container-fluid {
  margin-right: auto;
  margin-left: auto;
  padding-left: 15px;
  padding-right: 15px;
}
.container-fluid:before, .container-fluid:after {
  content: " ";
  display: table;
}
.container-fluid:after {
  clear: both;
}

.row {
  margin-left: -15px;
  margin-right: -15px;
}
.row:before, .row:after {
  content: " ";
  display: table;
}
.row:after {
  clear: both;
}

.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 {
  position: relative;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
}

.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 {
  float: left;
}

.col-xs-1 {
  width: 8.3333333333%;
}

.col-xs-2 {
  width: 16.6666666667%;
}

.col-xs-3 {
  width: 25%;
}

.col-xs-4 {
  width: 33.3333333333%;
}

.col-xs-5 {
  width: 41.6666666667%;
}

.col-xs-6 {
  width: 50%;
}

.col-xs-7 {
  width: 58.3333333333%;
}

.col-xs-8 {
  width: 66.6666666667%;
}

.col-xs-9 {
  width: 75%;
}

.col-xs-10 {
  width: 83.3333333333%;
}

.col-xs-11 {
  width: 91.6666666667%;
}

.col-xs-12 {
  width: 100%;
}

.col-xs-pull-0 {
  right: auto;
}

.col-xs-pull-1 {
  right: 8.3333333333%;
}

.col-xs-pull-2 {
  right: 16.6666666667%;
}

.col-xs-pull-3 {
  right: 25%;
}

.col-xs-pull-4 {
  right: 33.3333333333%;
}

.col-xs-pull-5 {
  right: 41.6666666667%;
}

.col-xs-pull-6 {
  right: 50%;
}

.col-xs-pull-7 {
  right: 58.3333333333%;
}

.col-xs-pull-8 {
  right: 66.6666666667%;
}

.col-xs-pull-9 {
  right: 75%;
}

.col-xs-pull-10 {
  right: 83.3333333333%;
}

.col-xs-pull-11 {
  right: 91.6666666667%;
}

.col-xs-pull-12 {
  right: 100%;
}

.col-xs-push-0 {
  left: auto;
}

.col-xs-push-1 {
  left: 8.3333333333%;
}

.col-xs-push-2 {
  left: 16.6666666667%;
}

.col-xs-push-3 {
  left: 25%;
}

.col-xs-push-4 {
  left: 33.3333333333%;
}

.col-xs-push-5 {
  left: 41.6666666667%;
}

.col-xs-push-6 {
  left: 50%;
}

.col-xs-push-7 {
  left: 58.3333333333%;
}

.col-xs-push-8 {
  left: 66.6666666667%;
}

.col-xs-push-9 {
  left: 75%;
}

.col-xs-push-10 {
  left: 83.3333333333%;
}

.col-xs-push-11 {
  left: 91.6666666667%;
}

.col-xs-push-12 {
  left: 100%;
}

.col-xs-offset-0 {
  margin-left: 0%;
}

.col-xs-offset-1 {
  margin-left: 8.3333333333%;
}

.col-xs-offset-2 {
  margin-left: 16.6666666667%;
}

.col-xs-offset-3 {
  margin-left: 25%;
}

.col-xs-offset-4 {
  margin-left: 33.3333333333%;
}

.col-xs-offset-5 {
  margin-left: 41.6666666667%;
}

.col-xs-offset-6 {
  margin-left: 50%;
}

.col-xs-offset-7 {
  margin-left: 58.3333333333%;
}

.col-xs-offset-8 {
  margin-left: 66.6666666667%;
}

.col-xs-offset-9 {
  margin-left: 75%;
}

.col-xs-offset-10 {
  margin-left: 83.3333333333%;
}

.col-xs-offset-11 {
  margin-left: 91.6666666667%;
}

.col-xs-offset-12 {
  margin-left: 100%;
}

@media (min-width: 768px) {
  .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 {
    float: left;
  }

  .col-sm-1 {
    width: 8.3333333333%;
  }

  .col-sm-2 {
    width: 16.6666666667%;
  }

  .col-sm-3 {
    width: 25%;
  }

  .col-sm-4 {
    width: 33.3333333333%;
  }

  .col-sm-5 {
    width: 41.6666666667%;
  }

  .col-sm-6 {
    width: 50%;
  }

  .col-sm-7 {
    width: 58.3333333333%;
  }

  .col-sm-8 {
    width: 66.6666666667%;
  }

  .col-sm-9 {
    width: 75%;
  }

  .col-sm-10 {
    width: 83.3333333333%;
  }

  .col-sm-11 {
    width: 91.6666666667%;
  }

  .col-sm-12 {
    width: 100%;
  }

  .col-sm-pull-0 {
    right: auto;
  }

  .col-sm-pull-1 {
    right: 8.3333333333%;
  }

  .col-sm-pull-2 {
    right: 16.6666666667%;
  }

  .col-sm-pull-3 {
    right: 25%;
  }

  .col-sm-pull-4 {
    right: 33.3333333333%;
  }

  .col-sm-pull-5 {
    right: 41.6666666667%;
  }

  .col-sm-pull-6 {
    right: 50%;
  }

  .col-sm-pull-7 {
    right: 58.3333333333%;
  }

  .col-sm-pull-8 {
    right: 66.6666666667%;
  }

  .col-sm-pull-9 {
    right: 75%;
  }

  .col-sm-pull-10 {
    right: 83.3333333333%;
  }

  .col-sm-pull-11 {
    right: 91.6666666667%;
  }

  .col-sm-pull-12 {
    right: 100%;
  }

  .col-sm-push-0 {
    left: auto;
  }

  .col-sm-push-1 {
    left: 8.3333333333%;
  }

  .col-sm-push-2 {
    left: 16.6666666667%;
  }

  .col-sm-push-3 {
    left: 25%;
  }

  .col-sm-push-4 {
    left: 33.3333333333%;
  }

  .col-sm-push-5 {
    left: 41.6666666667%;
  }

  .col-sm-push-6 {
    left: 50%;
  }

  .col-sm-push-7 {
    left: 58.3333333333%;
  }

  .col-sm-push-8 {
    left: 66.6666666667%;
  }

  .col-sm-push-9 {
    left: 75%;
  }

  .col-sm-push-10 {
    left: 83.3333333333%;
  }

  .col-sm-push-11 {
    left: 91.6666666667%;
  }

  .col-sm-push-12 {
    left: 100%;
  }

  .col-sm-offset-0 {
    margin-left: 0%;
  }

  .col-sm-offset-1 {
    margin-left: 8.3333333333%;
  }

  .col-sm-offset-2 {
    margin-left: 16.6666666667%;
  }

  .col-sm-offset-3 {
    margin-left: 25%;
  }

  .col-sm-offset-4 {
    margin-left: 33.3333333333%;
  }

  .col-sm-offset-5 {
    margin-left: 41.6666666667%;
  }

  .col-sm-offset-6 {
    margin-left: 50%;
  }

  .col-sm-offset-7 {
    margin-left: 58.3333333333%;
  }

  .col-sm-offset-8 {
    margin-left: 66.6666666667%;
  }

  .col-sm-offset-9 {
    margin-left: 75%;
  }

  .col-sm-offset-10 {
    margin-left: 83.3333333333%;
  }

  .col-sm-offset-11 {
    margin-left: 91.6666666667%;
  }

  .col-sm-offset-12 {
    margin-left: 100%;
  }
}
@media (min-width: 992px) {
  .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 {
    float: left;
  }

  .col-md-1 {
    width: 8.3333333333%;
  }

  .col-md-2 {
    width: 16.6666666667%;
  }

  .col-md-3 {
    width: 25%;
  }

  .col-md-4 {
    width: 33.3333333333%;
  }

  .col-md-5 {
    width: 41.6666666667%;
  }

  .col-md-6 {
    width: 50%;
  }

  .col-md-7 {
    width: 58.3333333333%;
  }

  .col-md-8 {
    width: 66.6666666667%;
  }

  .col-md-9 {
    width: 75%;
  }

  .col-md-10 {
    width: 83.3333333333%;
  }

  .col-md-11 {
    width: 91.6666666667%;
  }

  .col-md-12 {
    width: 100%;
  }

  .col-md-pull-0 {
    right: auto;
  }

  .col-md-pull-1 {
    right: 8.3333333333%;
  }

  .col-md-pull-2 {
    right: 16.6666666667%;
  }

  .col-md-pull-3 {
    right: 25%;
  }

  .col-md-pull-4 {
    right: 33.3333333333%;
  }

  .col-md-pull-5 {
    right: 41.6666666667%;
  }

  .col-md-pull-6 {
    right: 50%;
  }

  .col-md-pull-7 {
    right: 58.3333333333%;
  }

  .col-md-pull-8 {
    right: 66.6666666667%;
  }

  .col-md-pull-9 {
    right: 75%;
  }

  .col-md-pull-10 {
    right: 83.3333333333%;
  }

  .col-md-pull-11 {
    right: 91.6666666667%;
  }

  .col-md-pull-12 {
    right: 100%;
  }

  .col-md-push-0 {
    left: auto;
  }

  .col-md-push-1 {
    left: 8.3333333333%;
  }

  .col-md-push-2 {
    left: 16.6666666667%;
  }

  .col-md-push-3 {
    left: 25%;
  }

  .col-md-push-4 {
    left: 33.3333333333%;
  }

  .col-md-push-5 {
    left: 41.6666666667%;
  }

  .col-md-push-6 {
    left: 50%;
  }

  .col-md-push-7 {
    left: 58.3333333333%;
  }

  .col-md-push-8 {
    left: 66.6666666667%;
  }

  .col-md-push-9 {
    left: 75%;
  }

  .col-md-push-10 {
    left: 83.3333333333%;
  }

  .col-md-push-11 {
    left: 91.6666666667%;
  }

  .col-md-push-12 {
    left: 100%;
  }

  .col-md-offset-0 {
    margin-left: 0%;
  }

  .col-md-offset-1 {
    margin-left: 8.3333333333%;
  }

  .col-md-offset-2 {
    margin-left: 16.6666666667%;
  }

  .col-md-offset-3 {
    margin-left: 25%;
  }

  .col-md-offset-4 {
    margin-left: 33.3333333333%;
  }

  .col-md-offset-5 {
    margin-left: 41.6666666667%;
  }

  .col-md-offset-6 {
    margin-left: 50%;
  }

  .col-md-offset-7 {
    margin-left: 58.3333333333%;
  }

  .col-md-offset-8 {
    margin-left: 66.6666666667%;
  }

  .col-md-offset-9 {
    margin-left: 75%;
  }

  .col-md-offset-10 {
    margin-left: 83.3333333333%;
  }

  .col-md-offset-11 {
    margin-left: 91.6666666667%;
  }

  .col-md-offset-12 {
    margin-left: 100%;
  }
}
@media (min-width: 1200px) {
  .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 {
    float: left;
  }

  .col-lg-1 {
    width: 8.3333333333%;
  }

  .col-lg-2 {
    width: 16.6666666667%;
  }

  .col-lg-3 {
    width: 25%;
  }

  .col-lg-4 {
    width: 33.3333333333%;
  }

  .col-lg-5 {
    width: 41.6666666667%;
  }

  .col-lg-6 {
    width: 50%;
  }

  .col-lg-7 {
    width: 58.3333333333%;
  }

  .col-lg-8 {
    width: 66.6666666667%;
  }

  .col-lg-9 {
    width: 75%;
  }

  .col-lg-10 {
    width: 83.3333333333%;
  }

  .col-lg-11 {
    width: 91.6666666667%;
  }

  .col-lg-12 {
    width: 100%;
  }

  .col-lg-pull-0 {
    right: auto;
  }

  .col-lg-pull-1 {
    right: 8.3333333333%;
  }

  .col-lg-pull-2 {
    right: 16.6666666667%;
  }

  .col-lg-pull-3 {
    right: 25%;
  }

  .col-lg-pull-4 {
    right: 33.3333333333%;
  }

  .col-lg-pull-5 {
    right: 41.6666666667%;
  }

  .col-lg-pull-6 {
    right: 50%;
  }

  .col-lg-pull-7 {
    right: 58.3333333333%;
  }

  .col-lg-pull-8 {
    right: 66.6666666667%;
  }

  .col-lg-pull-9 {
    right: 75%;
  }

  .col-lg-pull-10 {
    right: 83.3333333333%;
  }

  .col-lg-pull-11 {
    right: 91.6666666667%;
  }

  .col-lg-pull-12 {
    right: 100%;
  }

  .col-lg-push-0 {
    left: auto;
  }

  .col-lg-push-1 {
    left: 8.3333333333%;
  }

  .col-lg-push-2 {
    left: 16.6666666667%;
  }

  .col-lg-push-3 {
    left: 25%;
  }

  .col-lg-push-4 {
    left: 33.3333333333%;
  }

  .col-lg-push-5 {
    left: 41.6666666667%;
  }

  .col-lg-push-6 {
    left: 50%;
  }

  .col-lg-push-7 {
    left: 58.3333333333%;
  }

  .col-lg-push-8 {
    left: 66.6666666667%;
  }

  .col-lg-push-9 {
    left: 75%;
  }

  .col-lg-push-10 {
    left: 83.3333333333%;
  }

  .col-lg-push-11 {
    left: 91.6666666667%;
  }

  .col-lg-push-12 {
    left: 100%;
  }

  .col-lg-offset-0 {
    margin-left: 0%;
  }

  .col-lg-offset-1 {
    margin-left: 8.3333333333%;
  }

  .col-lg-offset-2 {
    margin-left: 16.6666666667%;
  }

  .col-lg-offset-3 {
    margin-left: 25%;
  }

  .col-lg-offset-4 {
    margin-left: 33.3333333333%;
  }

  .col-lg-offset-5 {
    margin-left: 41.6666666667%;
  }

  .col-lg-offset-6 {
    margin-left: 50%;
  }

  .col-lg-offset-7 {
    margin-left: 58.3333333333%;
  }

  .col-lg-offset-8 {
    margin-left: 66.6666666667%;
  }

  .col-lg-offset-9 {
    margin-left: 75%;
  }

  .col-lg-offset-10 {
    margin-left: 83.3333333333%;
  }

  .col-lg-offset-11 {
    margin-left: 91.6666666667%;
  }

  .col-lg-offset-12 {
    margin-left: 100%;
  }
}
fieldset {
  padding: 0;
  margin: 0;
  border: 0;
  min-width: 0;
}

legend {
  display: block;
  width: 100%;
  padding: 0;
  margin-bottom: 20px;
  font-size: 21px;
  line-height: inherit;
  color: #333333;
  border: 0;
  border-bottom: 1px solid #e5e5e5;
}

label {
  display: inline-block;
  max-width: 100%;
  margin-bottom: 5px;
  font-weight: bold;
}

input[type="search"] {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

input[type="radio"],
input[type="checkbox"] {
  margin: 4px 0 0;
  margin-top: 1px \9;
  line-height: normal;
}

input[type="file"] {
  display: block;
}

input[type="range"] {
  display: block;
  width: 100%;
}

select[multiple],
select[size] {
  height: auto;
}

input[type="file"]:focus,
input[type="radio"]:focus,
input[type="checkbox"]:focus {
  outline: thin dotted;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}

output {
  display: block;
  padding-top: 7px;
  font-size: 14px;
  line-height: 1.428571429;
  color: #555555;
}

.form-control {
  display: inlune-block;
  height: 34px;
  padding: 6px 12px;
  font-size: 14px;
  line-height: 1.428571429;
  color: #555555;
  background-color: #fff;
  background-image: none;
  border: 1px solid #ccc;
  border-radius: 4px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
  -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
  transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
}
.form-control:focus {
  border-color: #66afe9;
  outline: 0;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);
}
.form-control::-moz-placeholder {
  color: #999;
  opacity: 1;
}
.form-control:-ms-input-placeholder {
  color: #999;
}
.form-control::-webkit-input-placeholder {
  color: #999;
}
.form-control[disabled], .form-control[readonly], fieldset[disabled] .form-control {
  background-color: #eeeeee;
  opacity: 1;
}
.form-control[disabled], fieldset[disabled] .form-control {
  cursor: not-allowed;
}

textarea.form-control {
  height: auto;
}

input[type="search"] {
  -webkit-appearance: none;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  input[type="date"].form-control,
  input[type="time"].form-control,
  input[type="datetime-local"].form-control,
  input[type="month"].form-control {
    line-height: 34px;
  }
  input[type="date"].input-sm, .input-group-sm input[type="date"],
  input[type="time"].input-sm,
  .input-group-sm input[type="time"],
  input[type="datetime-local"].input-sm,
  .input-group-sm input[type="datetime-local"],
  input[type="month"].input-sm,
  .input-group-sm input[type="month"] {
    line-height: 30px;
  }
  input[type="date"].input-lg, .input-group-lg input[type="date"], input[type="time"].input-lg, .input-group-lg input[type="time"], input[type="datetime-local"].input-lg, .input-group-lg input[type="datetime-local"], input[type="month"].input-lg, .input-group-lg input[type="month"] {
    line-height: 46px;
  }
}
.form-group {
  margin-bottom: 15px;
}

.radio,
.checkbox {
  position: relative;
  display: block;
  margin-top: 10px;
  margin-bottom: 10px;
}
.radio label,
.checkbox label {
  min-height: 20px;
  padding-left: 20px;
  margin-bottom: 0;
  font-weight: normal;
  cursor: pointer;
}

.radio input[type="radio"],
.radio-inline input[type="radio"],
.checkbox input[type="checkbox"],
.checkbox-inline input[type="checkbox"] {
  position: absolute;
  margin-left: -20px;
  margin-top: 4px \9;
}

.radio + .radio,
.checkbox + .checkbox {
  margin-top: -5px;
}

.radio-inline,
.checkbox-inline {
  position: relative;
  display: inline-block;
  padding-left: 20px;
  margin-bottom: 0;
  vertical-align: middle;
  font-weight: normal;
  cursor: pointer;
}

.radio-inline + .radio-inline,
.checkbox-inline + .checkbox-inline {
  margin-top: 0;
  margin-left: 10px;
}

input[type="radio"][disabled], input[type="radio"].disabled, fieldset[disabled] input[type="radio"],
input[type="checkbox"][disabled],
input[type="checkbox"].disabled,
fieldset[disabled] input[type="checkbox"] {
  cursor: not-allowed;
}

.radio-inline.disabled, fieldset[disabled] .radio-inline,
.checkbox-inline.disabled,
fieldset[disabled] .checkbox-inline {
  cursor: not-allowed;
}

.radio.disabled label, fieldset[disabled] .radio label,
.checkbox.disabled label,
fieldset[disabled] .checkbox label {
  cursor: not-allowed;
}

.form-control-static {
  padding-top: 7px;
  padding-bottom: 7px;
  margin-bottom: 0;
  min-height: 34px;
}
.form-control-static.input-lg, .form-control-static.input-sm {
  padding-left: 0;
  padding-right: 0;
}

.input-sm {
  height: 30px;
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px;
}

select.input-sm {
  height: 30px;
  line-height: 30px;
}

textarea.input-sm,
select[multiple].input-sm {
  height: auto;
}

.form-group-sm .form-control {
  height: 30px;
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px;
}
.form-group-sm select.form-control {
  height: 30px;
  line-height: 30px;
}
.form-group-sm textarea.form-control,
.form-group-sm select[multiple].form-control {
  height: auto;
}
.form-group-sm .form-control-static {
  height: 30px;
  min-height: 32px;
  padding: 6px 10px;
  font-size: 12px;
  line-height: 1.5;
}

.input-lg {
  height: 46px;
  padding: 10px 16px;
  font-size: 18px;
  line-height: 1.3333333;
  border-radius: 6px;
}

select.input-lg {
  height: 46px;
  line-height: 46px;
}

textarea.input-lg,
select[multiple].input-lg {
  height: auto;
}

.form-group-lg .form-control {
  height: 46px;
  padding: 10px 16px;
  font-size: 18px;
  line-height: 1.3333333;
  border-radius: 6px;
}
.form-group-lg select.form-control {
  height: 46px;
  line-height: 46px;
}
.form-group-lg textarea.form-control,
.form-group-lg select[multiple].form-control {
  height: auto;
}
.form-group-lg .form-control-static {
  height: 46px;
  min-height: 38px;
  padding: 11px 16px;
  font-size: 18px;
  line-height: 1.3333333;
}

.has-feedback {
  position: relative;
}
.has-feedback .form-control {
  padding-right: 42.5px;
}

.form-control-feedback {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  display: block;
  width: 34px;
  height: 34px;
  line-height: 34px;
  text-align: center;
  pointer-events: none;
}

.input-lg + .form-control-feedback,
.input-group-lg + .form-control-feedback,
.form-group-lg .form-control + .form-control-feedback {
  width: 46px;
  height: 46px;
  line-height: 46px;
}

.input-sm + .form-control-feedback,
.input-group-sm + .form-control-feedback,
.form-group-sm .form-control + .form-control-feedback {
  width: 30px;
  height: 30px;
  line-height: 30px;
}

.has-success .help-block,
.has-success .control-label,
.has-success .radio,
.has-success .checkbox,
.has-success .radio-inline,
.has-success .checkbox-inline, .has-success.radio label, .has-success.checkbox label, .has-success.radio-inline label, .has-success.checkbox-inline label {
  color: #3c763d;
}
.has-success .form-control {
  border-color: #3c763d;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}
.has-success .form-control:focus {
  border-color: #2b542c;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;
}
.has-success .input-group-addon {
  color: #3c763d;
  border-color: #3c763d;
  background-color: #dff0d8;
}
.has-success .form-control-feedback {
  color: #3c763d;
}

.has-warning .help-block,
.has-warning .control-label,
.has-warning .radio,
.has-warning .checkbox,
.has-warning .radio-inline,
.has-warning .checkbox-inline, .has-warning.radio label, .has-warning.checkbox label, .has-warning.radio-inline label, .has-warning.checkbox-inline label {
  color: #8a6d3b;
}
.has-warning .form-control {
  border-color: #8a6d3b;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}
.has-warning .form-control:focus {
  border-color: #66512c;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;
}
.has-warning .input-group-addon {
  color: #8a6d3b;
  border-color: #8a6d3b;
  background-color: #fcf8e3;
}
.has-warning .form-control-feedback {
  color: #8a6d3b;
}

.has-error .help-block,
.has-error .control-label,
.has-error .radio,
.has-error .checkbox,
.has-error .radio-inline,
.has-error .checkbox-inline, .has-error.radio label, .has-error.checkbox label, .has-error.radio-inline label, .has-error.checkbox-inline label {
  color: #a94442;
}
.has-error .form-control {
  border-color: #a94442;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}
.has-error .form-control:focus {
  border-color: #843534;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;
}
.has-error .input-group-addon {
  color: #a94442;
  border-color: #a94442;
  background-color: #f2dede;
}
.has-error .form-control-feedback {
  color: #a94442;
}

.has-feedback label ~ .form-control-feedback {
  top: 25px;
}
.has-feedback label.sr-only ~ .form-control-feedback {
  top: 0;
}

.help-block {
  display: block;
  margin-top: 5px;
  margin-bottom: 10px;
  color: #737373;
}

@media (min-width: 768px) {
  .form-inline .form-group {
    display: inline-block;
    margin-bottom: 0;
    vertical-align: middle;
  }
  .form-inline .form-control {
    display: inline-block;
    width: auto;
    vertical-align: middle;
  }
  .form-inline .form-control-static {
    display: inline-block;
  }
  .form-inline .input-group {
    display: inline-table;
    vertical-align: middle;
  }
  .form-inline .input-group .input-group-addon,
  .form-inline .input-group .input-group-btn,
  .form-inline .input-group .form-control {
    width: auto;
  }
  .form-inline .input-group > .form-control {
    width: 100%;
  }
  .form-inline .control-label {
    margin-bottom: 0;
    vertical-align: middle;
  }
  .form-inline .radio,
  .form-inline .checkbox {
    display: inline-block;
    margin-top: 0;
    margin-bottom: 0;
    vertical-align: middle;
  }
  .form-inline .radio label,
  .form-inline .checkbox label {
    padding-left: 0;
  }
  .form-inline .radio input[type="radio"],
  .form-inline .checkbox input[type="checkbox"] {
    position: relative;
    margin-left: 0;
  }
  .form-inline .has-feedback .form-control-feedback {
    top: 0;
  }
}

.form-horizontal .radio,
.form-horizontal .checkbox,
.form-horizontal .radio-inline,
.form-horizontal .checkbox-inline {
  margin-top: 0;
  margin-bottom: 0;
  padding-top: 7px;
}
.form-horizontal .radio,
.form-horizontal .checkbox {
  min-height: 27px;
}
.form-horizontal .form-group {
  margin-left: -15px;
  margin-right: -15px;
}
.form-horizontal .form-group:before, .form-horizontal .form-group:after {
  content: " ";
  display: table;
}
.form-horizontal .form-group:after {
  clear: both;
}
@media (min-width: 768px) {
  .form-horizontal .control-label {
    text-align: right;
    margin-bottom: 0;
    padding-top: 7px;
  }
}
.form-horizontal .has-feedback .form-control-feedback {
  right: 15px;
}
@media (min-width: 768px) {
  .form-horizontal .form-group-lg .control-label {
    padding-top: 14.333333px;
    font-size: 18px;
  }
}
@media (min-width: 768px) {
  .form-horizontal .form-group-sm .control-label {
    padding-top: 6px;
    font-size: 12px;
  }
}

.label {
  display: inline;
  padding: .2em .6em .3em;
  font-size: 75%;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: .25em;
}
.label:empty {
  display: none;
}
.btn .label {
  position: relative;
  top: -1px;
}

a.label:hover, a.label:focus {
  color: #fff;
  text-decoration: none;
  cursor: pointer;
}

.label-default {
  background-color: #777777;
}
.label-default[href]:hover, .label-default[href]:focus {
  background-color: #5e5e5e;
}

.label-primary {
  background-color: #337ab7;
}
.label-primary[href]:hover, .label-primary[href]:focus {
  background-color: #286090;
}

.label-success {
  background-color: #5cb85c;
}
.label-success[href]:hover, .label-success[href]:focus {
  background-color: #449d44;
}

.label-info {
  background-color: #5bc0de;
}
.label-info[href]:hover, .label-info[href]:focus {
  background-color: #31b0d5;
}

.label-warning {
  background-color: #f0ad4e;
}
.label-warning[href]:hover, .label-warning[href]:focus {
  background-color: #ec971f;
}

.label-danger {
  background-color: #d9534f;
}
.label-danger[href]:hover, .label-danger[href]:focus {
  background-color: #c9302c;
}

.embed-responsive {
  position: relative;
  display: block;
  height: 0;
  padding: 0;
  overflow: hidden;
}
.embed-responsive .embed-responsive-item,
.embed-responsive iframe,
.embed-responsive embed,
.embed-responsive object,
.embed-responsive video {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  height: 100%;
  width: 100%;
  border: 0;
}

.embed-responsive-16by9 {
  padding-bottom: 56.25%;
}

.embed-responsive-4by3 {
  padding-bottom: 75%;
}

.clearfix:before, .clearfix:after {
  content: " ";
  display: table;
}
.clearfix:after {
  clear: both;
}

.center-block {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.pull-right {
  float: right !important;
}

.pull-left {
  float: left !important;
}

.hide {
  display: none !important;
}

.show {
  display: block !important;
}

.invisible {
  visibility: hidden;
}

.text-hide {
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
}

.hidden {
  display: none !important;
}

.affix {
  position: fixed;
}

@-ms-viewport {
  width: device-width;
}
.visible-xs {
  display: none !important;
}

.visible-sm {
  display: none !important;
}

.visible-md {
  display: none !important;
}

.visible-lg {
  display: none !important;
}

.visible-xs-block,
.visible-xs-inline,
.visible-xs-inline-block,
.visible-sm-block,
.visible-sm-inline,
.visible-sm-inline-block,
.visible-md-block,
.visible-md-inline,
.visible-md-inline-block,
.visible-lg-block,
.visible-lg-inline,
.visible-lg-inline-block {
  display: none !important;
}

@media (max-width: 767px) {
  .visible-xs {
    display: block !important;
  }

  table.visible-xs {
    display: table !important;
  }

  tr.visible-xs {
    display: table-row !important;
  }

  th.visible-xs,
  td.visible-xs {
    display: table-cell !important;
  }
}
@media (max-width: 767px) {
  .visible-xs-block {
    display: block !important;
  }
}

@media (max-width: 767px) {
  .visible-xs-inline {
    display: inline !important;
  }
}

@media (max-width: 767px) {
  .visible-xs-inline-block {
    display: inline-block !important;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm {
    display: block !important;
  }

  table.visible-sm {
    display: table !important;
  }

  tr.visible-sm {
    display: table-row !important;
  }

  th.visible-sm,
  td.visible-sm {
    display: table-cell !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-block {
    display: block !important;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-inline {
    display: inline !important;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-inline-block {
    display: inline-block !important;
  }
}

@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md {
    display: block !important;
  }

  table.visible-md {
    display: table !important;
  }

  tr.visible-md {
    display: table-row !important;
  }

  th.visible-md,
  td.visible-md {
    display: table-cell !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-block {
    display: block !important;
  }
}

@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-inline {
    display: inline !important;
  }
}

@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-inline-block {
    display: inline-block !important;
  }
}

@media (min-width: 1200px) {
  .visible-lg {
    display: block !important;
  }

  table.visible-lg {
    display: table !important;
  }

  tr.visible-lg {
    display: table-row !important;
  }

  th.visible-lg,
  td.visible-lg {
    display: table-cell !important;
  }
}
@media (min-width: 1200px) {
  .visible-lg-block {
    display: block !important;
  }
}

@media (min-width: 1200px) {
  .visible-lg-inline {
    display: inline !important;
  }
}

@media (min-width: 1200px) {
  .visible-lg-inline-block {
    display: inline-block !important;
  }
}

@media (max-width: 767px) {
  .hidden-xs {
    display: none !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .hidden-sm {
    display: none !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .hidden-md {
    display: none !important;
  }
}
@media (min-width: 1200px) {
  .hidden-lg {
    display: none !important;
  }
}
.visible-print {
  display: none !important;
}

@media print {
  .visible-print {
    display: block !important;
  }

  table.visible-print {
    display: table !important;
  }

  tr.visible-print {
    display: table-row !important;
  }

  th.visible-print,
  td.visible-print {
    display: table-cell !important;
  }
}
.visible-print-block {
  display: none !important;
}
@media print {
  .visible-print-block {
    display: block !important;
  }
}

.visible-print-inline {
  display: none !important;
}
@media print {
  .visible-print-inline {
    display: inline !important;
  }
}

.visible-print-inline-block {
  display: none !important;
}
@media print {
  .visible-print-inline-block {
    display: inline-block !important;
  }
}

@media print {
  .hidden-print {
    display: none !important;
  }
}
@media screen and (max-width: 767px) {
  .flex-wrap {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .flex-wrap .fbox01 {
    -webkit-box-ordinal-group: 1;
    -ms-flex-order: 1;
    -webkit-order: 1;
    order: 1;
  }
  .flex-wrap .fbox02 {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 2;
    -webkit-order: 2;
    order: 2;
  }
  .flex-wrap .fbox03 {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 3;
    -webkit-order: 3;
    order: 3;
  }
  .flex-wrap .fbox04 {
    -webkit-box-ordinal-group: 4;
    -ms-flex-order: 4;
    -webkit-order: 4;
    order: 4;
  }
}

* {
  box-sizing: border-box;
}

html {
  font-size: 62.5%;
}
@media screen and (max-width: 767px) {
  html {
    font-size: 55%;
  }
}
@media screen and (min-width: 768px) and (max-width: 992px) {
  html {
    font-size: 47%;
  }
}
@media screen and (min-width: 1200px) {
  html {
    font-size: 67%;
  }
}

body {
  font-size: 16px;
  font-size: 1.6rem;
  color: #000;
  font-family: 'Lato', "游ゴシック" , "Yu Gothic" , "游ゴシック体" , "YuGothic" , "ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro"  , "メイリオ" , Meiryo , "ＭＳ Ｐゴシック" , "MS PGothic" , sans-serif;
  line-height: 1.9;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: "palt";
  letter-spacing: 0.025em;
  background: #fff;
}

input {
  border: 0;
}

a {
  color: #497b9b;
  text-decoration: none;
}
a:hover, a:active, a:focus {
  color: #6295b5;
  text-decoration: underline;
}

img {
  max-width: 100%;
  height: auto !important;
}

#adminBox {
  margin-bottom: 0 !important;
}

.wrap {
  padding-top: 60px;
}

body.logged-in .header {
  top: 32px;
}

.header {
  width: 100%;
  height: 60px;
  background: #fff;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999;
}
.header .logo {
  width: 220px;
  position: absolute;
  top: 0;
  left: 22px;
}
.header .logo h1 {
  height: 60px;
  margin: 0;
}
.header .logo h1 a {
  display: block;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
}
.header .logo h1 img {
  width: 100px;
}
.header .logo .sub {
  font-size: 11px;
  font-size: 1.1rem;
  color: #666;
}
.header .logo .sub::before {
  content: "/";
  margin: 0 1em;
}
.header .link {
  position: absolute;
  top: 0;
  right: 22px;
  height: 60px;
  display: flex;
  align-items: center;
}
.header .link a {
  font-size: 11px;
  font-size: 1.1rem;
}
.header .link a::after {
  font-family: FontAwesome;
  content: "";
  margin-left: 0.5em;
}

.content-wrap {
  padding-top: 1.6em;
  padding-bottom: 3.2em;
}
.content-wrap .content {
  margin-bottom: 0px;
}

section {
  padding: 3em 0;
}
@media screen and (min-width: 992px) {
  section {
    padding: 4em 0;
  }
}

.col2 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.col2::before {
  content: none;
}
.col2::after {
  content: none;
}
.col2 .content {
  width: calc(75% - 20px);
}
.col2 .side {
  width: calc(25% - 20px);
}

.footer {
  background: #f2f2f2;
  padding: 3em 0 0;
  text-align: center;
  color: #666;
  margin-top: 3em;
}
.footer h3, .footer p {
  margin-top: 0;
}
.footer p.logo {
  margin-bottom: 1em;
}
.footer p.logo img {
  width: 150px;
}
.footer p.tel {
  font-size: 24px;
  font-size: 2.4rem;
}
.footer p.tel::before {
  font-family: FontAwesome;
  content: "";
  font-size: 20px;
  font-size: 2rem;
  margin-right: 0.25em;
}
.footer p.info {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.4;
}
.footer h3 {
  font-size: 11px;
  font-size: 1.1rem;
  font-weight: normal;
}
.footer .copyright {
  width: 100%;
  line-height: 60px;
  background: #fff;
  font-size: 11px;
  font-size: 1.1rem;
  margin-top: 3em;
}

/* ===========================*/
.switch {
  visibility: hidden;
}

.sp-show {
  display: block;
}
.sp-show.inline {
  display: inline-block;
}
@media screen and (min-width: 992px) {
  .sp-show.inline {
    display: none;
  }
}
@media screen and (min-width: 992px) {
  .sp-show {
    display: none;
  }
}

.tb-show {
  display: none;
}
@media screen and (min-width: 768px) {
  .tb-show {
    display: inline-block;
  }
}

.pc-show {
  display: none;
}
@media screen and (min-width: 992px) {
  .pc-show {
    display: inline-block;
  }
}

p, ul, ol, dl, h2, h3, h4, h5, table {
  margin-top: 1.6em;
  margin-bottom: 0;
}

.center {
  text-align: center;
}

.left {
  text-align: left;
}

.right {
  text-align: right;
}

.img-r {
  margin-bottom: 10px;
}
@media screen and (max-width: 767px) {
  .img-r {
    display: block;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (min-width: 768px) {
  .img-r {
    float: right;
    margin-left: 10px;
    margin-bottom: 10px;
  }
}

.img-l {
  margin-bottom: 10px;
}
@media screen and (min-width: 768px) {
  .img-l {
    float: left;
    margin-right: 10px;
    margin-bottom: 10px;
  }
}

.img-responsive {
  margin: auto;
}

.margin--0 {
  margin-top: 0 !important;
}

.margin--05 {
  margin-top: 0.8em !important;
}

.margin--1x {
  margin-top: 1.6em;
}

.margin--15x {
  margin-top: 2.4em !important;
}

.margin--2x {
  margin-top: 3.2em !important;
}

.margin--25x {
  margin-top: 4em;
}

.margin--2s {
  margin-top: 0.8em;
}

.margin--25s {
  margin-top: 0.64em;
}

.large {
  font-size: 110%;
}

.x-large {
  font-size: 140%;
}

.xx-large {
  font-size: 160%;
}

.small {
  font-size: 84%;
}

.x-small {
  font-size: 70%;
}

.xx-small {
  font-size: 60%;
}

.attention {
  color: #fb5225;
}

.bold {
  font-weight: bold;
}

.em {
  color: #4d4d4d;
}

.lead {
  text-align: center;
  font-size: 24px;
  font-size: 2.4rem;
  color: #4d4d4d;
  font-weight: bold;
  line-height: 2;
}

.mincho {
  font-size: 20px;
  font-size: 2rem;
  font-family: "游明朝", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", "ＭＳ 明朝", serif;
  font-weight: bold;
}

.breadcrumb {
  font-size: 1.5rem;
  padding: 4px 0;
  margin-top: 0;
}
.breadcrumb li {
  list-style: none;
  margin: 0;
  display: inline-block;
  white-space: nowrap;
}
.breadcrumb li a {
  text-decoration: underline;
}
.breadcrumb li a:hover {
  text-decoration: none;
}
.breadcrumb li:not(:last-child):after {
  font-family: FontAwesome;
  content: "";
  margin-left: 1em;
  margin-right: 1em;
}

.post_meta {
  padding-bottom: 1em;
}
.post_meta i {
  margin-right: 0.25em;
}
.post_meta .post_cat {
  margin-left: 0.75em;
}

.side .widget {
  margin-top: 3.2em;
}
.side .widget .ttl {
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
  color: #4d4d4d;
  padding: 5px 10px;
  border-bottom: 2px solid #4d4d4d;
}
.side .widget ul {
  padding: 0;
  margin-top: 0;
  list-style-type: none;
}
.side .widget ul li a {
  display: block;
  padding: 8px 8px 8px 1.7em;
  color: #000;
  border-bottom: 1px dotted #eee;
}
.side .widget ul li a:hover {
  text-decoration: none;
  background: #fff2ea;
}
.side .widget ul li a:before {
  display: inline-block;
  font-family: FontAwesome;
  content: "";
  text-indent: -1em;
  margin-right: 0.2em;
}

.page-title {
  background: url(../img/img_keyvisual.jpg) 50% 50% no-repeat;
  background-size: cover;
  color: #333;
  text-align: center;
  margin: 0;
  padding: 4em 0 !important;
}
.page-title h1 {
  margin: 0;
  font-size: 30px;
  font-size: 3rem;
  font-weight: normal;
  line-height: 1.1;
  text-transform: uppercase;
  letter-spacing: 0.2em;
}
.page-title h1 .sub {
  font-size: 18px;
  font-size: 1.8rem;
  letter-spacing: normal;
}
.page-title h1 .sub::before {
  content: "\A";
  white-space: pre;
}
@media screen and (min-width: 768px) {
  .page-title {
    padding: 8em 0 !important;
  }
}

.content h1 {
  font-size: 36px;
  font-size: 3.6rem;
  color: #4d4d4d;
}
@media screen and (max-width: 767px) {
  .content h1 {
    font-size: 30px;
    font-size: 3rem;
  }
}

.content h2 {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: normal;
  color: #4d4d4d;
  line-height: 1.3;
  padding: 0em 1em;
  position: relative;
}
.content h2::before {
  content: "";
  display: block;
  width: 4px;
  height: 100%;
  background: #4d4d4d;
  position: absolute;
  top: 0;
  left: 0;
}
.content h2 a {
  color: #4d4d4d;
  text-decoration: underline;
}
.content h2 a:hover {
  text-decoration: none;
}

.content h3 {
  font-size: 20px;
  font-size: 2rem;
  color: #f2f2f2;
  background: #f4f4f4;
  border-left: 6px solid #f2f2f2;
  padding: 5px 10px;
}
.content h3 i {
  display: inline-block;
  margin-right: 0.25em;
}
.content h3.style_none {
  padding: 0;
  border: none;
  background: none;
}

.content h4 {
  font-size: 18px;
  font-size: 1.8rem;
  padding: 0 0 5px 0;
  border-bottom: 1px solid #4d4d4d;
  position: relative;
  line-height: 1.3;
}

.content h5 {
  font-size: 18px;
  font-size: 1.8rem;
  color: #4d4d4d;
}

.content ul {
  padding-left: 0;
}
.content ul li {
  list-style: none;
  margin-top: 0.4em;
  margin-bottom: 0.4em;
}
.content ul.horizontal li {
  display: inline-block;
  margin-right: 10px;
  vertical-align: top;
}

.content .list li {
  padding-left: 1em;
}
.content .list li:before {
  font-family: FontAwesome;
  content: "";
  font-size: 9px;
  font-size: 0.9rem;
  display: inline-block;
  margin-right: 2px;
  color: #4d4d4d;
  vertical-align: middle;
  margin-top: -3px;
  text-indent: -1em;
}
.content .list li ul {
  margin-top: 0.8em;
}
.content .list li ul li {
  padding-left: 0.5em;
}

.content .check-list li {
  padding-left: 1em;
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.3;
  margin-top: 0.8em;
  margin-bottom: 0.8em;
}
.content .check-list li:before {
  font-family: FontAwesome;
  content: "";
  font-size: 24px;
  font-size: 2.4rem;
  display: inline-block;
  margin-right: 2px;
  color: #4d4d4d;
  vertical-align: middle;
  margin-top: -3px;
  text-indent: -1em;
}

.content ul.link li a {
  padding-left: 1.2em;
}
.content ul.link li a:before {
  display: inline-block;
  font-family: FontAwesome;
  content: "";
  text-indent: -1em;
  margin-right: 0.2em;
}

.content .link-horizontal li {
  text-decoration: underline;
  display: inline-block;
  margin-right: 10px;
  vertical-align: top;
}
.content .link-horizontal li a:hover {
  text-decoration: none !important;
}

.within {
  background: #f4f4f4;
  padding: 1em !important;
  margin-top: 2.4em;
}
.within li {
  display: inline-block;
  margin: 0 10px;
}
.within li a::after {
  font-family: FontAwesome;
  content: "";
  display: inline-block;
  margin-left: 0.5em;
}

ol {
  padding-left: 20px;
}
ol li {
  list-style-type: decimal;
  margin: 15px 0;
}
ol.business-list {
  font-size: 18px;
  font-size: 1.8rem;
  counter-reset: item;
  padding-left: 0;
}
ol.business-list li {
  list-style-type: none;
  text-indent: -1.5em;
  padding-left: 1.5em;
}
ol.business-list li::before {
  counter-increment: item;
  content: counter(item) ".";
  /* 以下は自由に装飾... */
  color: #4d4d4d;
}

.content dl.list dt {
  padding-top: 0.8em;
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  .content dl.list dt {
    float: left;
    clear: left;
    width: 7em;
  }
}
.content dl.list dd {
  margin: 0;
  border-bottom: 1px dotted #bbb;
  padding-bottom: 0.8em;
}
@media screen and (min-width: 768px) {
  .content dl.list dd {
    padding-left: 8em;
    padding-top: 0.8em;
  }
}
.content dl.list dd > *:first-child {
  margin-top: 0;
}

.content dl.list-dot dt {
  padding-top: 0.5em;
}
.content dl.list-dot dt:before {
  font-family: FontAwesome;
  content: "";
  display: inline-block;
  margin-right: 4px;
  color: #4d4d4d;
}
.content dl.list-dot dd {
  margin-left: 1em;
}

.btn {
  display: inline-block;
  position: relative;
  padding: 15px 40px;
  line-height: 1;
  text-align: center;
}
.btn:hover {
  text-decoration: none;
}
.btn.btn__default {
  border: 1px solid #4d4d4d;
  background-color: #4d4d4d;
  color: #fff;
  font-size: 14px;
  font-size: 1.4rem;
  padding: 18px 60px;
}
.btn.btn__default:visited {
  color: #fff;
}
.btn.btn__default:hover {
  background-color: transparent;
  color: #4d4d4d;
}

.googlemap {
  position: relative;
  padding-bottom: 56.4%;
  padding-top: 30px;
  height: 0;
  overflow: hidden;
  margin-top: 1.6em;
}
.googlemap iframe, .googlemap object, .googlemap embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: none;
}

.acms-entry .googlemap {
  margin-left: 10px;
  margin-right: 10px;
}

.youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}

.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

.content table {
  width: 100%;
}
.content table thead th {
  background: #f2f2f2;
  color: #fff;
}
.content table th, .content table td {
  padding: 5px;
  border: 1px solid #eee;
}
@media screen and (min-width: 768px) {
  .content table th, .content table td {
    padding: 10px 15px;
  }
}
.content table th {
  text-align: center;
  background: #f2f2f2;
  color: #fff;
  font-weight: normal;
  white-space: nowrap;
}
.content table td {
  background: #fff;
}
.content table td dl {
  margin-top: 0;
}
.content table td dl:before, .content table td dl:after {
  content: " ";
  display: table;
}
.content table td dl:after {
  clear: both;
}
.content table td dl dt {
  width: 8em;
  float: left;
  clear: left;
}
.content table td dl dd {
  margin: 0;
  padding-left: 7em;
}

.content table .nowrap {
  white-space: nowrap;
}

.content table.w50 th {
  width: 40%;
}
@media screen and (min-width: 768px) {
  .content table.w50 {
    width: 50%;
  }
}

.side .item-wrap {
  padding: 1em;
}
.side h2 {
  margin-top: 0;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: normal;
  letter-spacing: normal;
  color: #4d4d4d;
  border-bottom: 1px solid #f2f2f2;
  padding: 0.25em;
  line-height: 1.3;
}
.side ul {
  padding: 0;
}
.side ul li {
  list-style-type: none;
  line-height: 1.3;
  margin: 7px 0;
  padding-left: 1.25em;
  position: relative;
}
.side ul li::before {
  font-family: FontAwesome;
  content: "";
  color: #999;
  position: absolute;
  left: 0.5em;
  top: 0.5em;
  margin-top: -9px;
}
.side ul li a {
  color: #333;
  text-decoration: none;
}
.side ul li a:hover {
  text-decoration: underline;
}

.item-wrap {
  border: 1px solid #f2f2f2;
  padding: 1.75em;
  margin-top: 2.4em;
}
.item-wrap h2, .item-wrap h3, .item-wrap h4 {
  margin-top: 0;
}

.news-list {
  margin-top: 2em;
}
.news-list li {
  margin: 7.5px 0;
  line-height: 1.3;
}
.news-list li a {
  color: #497b9b;
  text-decoration: underline;
}
.news-list li a:hover {
  text-decoration: none;
}

.category-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.category-list li {
  width: calc(25% - 20px);
  font-size: 14px;
  font-size: 1.4rem;
}
.category-list li a {
  display: inline-block;
  width: 100%;
  color: #333;
  border-bottom: 1px solid #f2f2f2;
  padding: 0 0.125em;
}
.category-list li a:hover {
  text-decoration: none;
  color: #666;
}
.category-list.entry-list li {
  width: calc(33.3333% - 20px);
}
.category-list.entry-list li ul {
  margin-top: 0;
  display: block;
}
.category-list.entry-list li ul li {
  width: 100%;
  font-size: 12px;
  font-size: 1.2rem;
  margin: 0;
}
.category-list.entry-list li ul li a {
  color: #497b9b;
  border: none;
  text-decoration: underline;
  padding: 0;
}
.category-list.entry-list li ul li a:hover {
  text-decoration: none;
}

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
}
.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}
[dir="rtl"] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

/* Slider */
.slick-loading .slick-list {
  background: #fff url("./ajax-loader.gif") center center no-repeat;
}

/* Icons */
/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  display: block;
  height: 40px;
  width: 40px;
  background-color: #4d4d4d;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  color: transparent;
  top: 50%;
  margin-top: -20px;
  padding: 0;
  border: none;
  outline: none;
  vertical-align: middle;
}
.slick-prev:hover, .slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
  outline: none;
  background: #676767;
  color: transparent;
}
.slick-prev:hover:before, .slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before {
  opacity: 1;
}
.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
  opacity: 0.25;
}
@media screen and (max-width: 991px) {
  .slick-prev,
  .slick-next {
    height: 30px;
    width: 30px;
    margin-top: -15px;
  }
}

.slick-prev:before, .slick-next:before {
  font-family: "FontAwesome";
  font-size: 20px;
  line-height: 1;
  color: #fff;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-prev {
  z-index: 10000;
  left: 0;
}
[dir="rtl"] .slick-prev {
  left: auto;
  right: 0;
}
.slick-prev:before {
  font-family: FontAwesome;
  content: "";
}
[dir="rtl"] .slick-prev:before {
  font-family: FontAwesome;
  content: "";
}

.slick-next {
  right: 0;
}
[dir="rtl"] .slick-next {
  left: 0;
  right: auto;
}
.slick-next:before {
  font-family: FontAwesome;
  content: "";
}
[dir="rtl"] .slick-next:before {
  font-family: FontAwesome;
  content: "";
}

/* Dots */
.slick-dots {
  position: absolute;
  bottom: 10px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  width: 100%;
}
.slick-dots li {
  position: relative;
  display: inline-block;
  height: 25px !important;
  width: 25px !important;
  padding: 0;
  cursor: pointer;
}
.slick-dots li button {
  border: 0;
  background: transparent;
  display: block;
  height: 20px;
  width: 20px;
  outline: none;
  line-height: 0px;
  font-size: 0px;
  color: transparent;
  padding: 5px;
  cursor: pointer;
}
.slick-dots li button:hover, .slick-dots li button:focus {
  outline: none;
}
.slick-dots li button:hover:before, .slick-dots li button:focus:before {
  opacity: 1;
}
.slick-dots li button:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 20px;
  height: 20px;
  font-family: "FontAwesome";
  font-size: 13px;
  line-height: 20px;
  text-align: center;
  color: #fff;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.slick-dots li.slick-active button:before {
  color: #f2f2f2;
  opacity: 1;
}

body.home .keyvisual {
  width: 100%;
}
body.home .keyvisual .slider-top {
  margin: 0;
  padding: 0;
}
body.home .keyvisual .slider-top li {
  width: 100%;
  height: 280px;
  background-position: 50% 50%;
  background-size: cover;
  background-repeat: no-repeat;
}
body.home .keyvisual .slider-top li.key01 {
  background-image: url(../top/img/img_key001.jpg);
}
body.home .keyvisual .slider-top li.key02 {
  background-image: url(../top/img/img_key002.jpg);
}
body.home .keyvisual .slider-top li.key03 {
  background-image: url(../top/img/img_key003.jpg);
}
body.home .keyvisual .slider-top li .text {
  height: 100%;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
  color: #fff;
  font-size: 6vw;
  font-weight: 700;
  text-shadow: 0px 0px 5px #000000;
  letter-spacing: 0.1em;
}
body.home .keyvisual .slider-top li .text .sub {
  font-size: 2.5vw;
  font-weight: normal;
  line-height: 1.3;
  letter-spacing: normal;
}
@media screen and (min-width: 768px) {
  body.home .keyvisual .slider-top li {
    height: 500px;
  }
  body.home .keyvisual .slider-top li .text {
    font-size: 3.5vw;
  }
  body.home .keyvisual .slider-top li .text .sub {
    font-size: 1.2vw;
  }
}
@media screen and (min-width: 992px) {
  body.home .keyvisual .slider-top li {
    height: 650px;
  }
}
@media screen and (min-width: 1200px) {
  body.home .keyvisual .slider-top li {
    height: 800px;
  }
}
body.home .content-wrap {
  padding: 0;
  position: relative;
}
body.home section {
  padding: 3em 0;
}
body.home section h2 {
  text-align: center;
  background: none;
  margin-top: 0.8em;
  padding: 0;
  line-height: 1.2;
  letter-spacing: 0.1em;
  color: #4d4d4d;
  font-size: 42px;
  font-size: 4.2rem;
  font-weight: 900;
}
body.home section h2 .sub {
  color: #000;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: normal;
  font-weight: normal;
  display: block;
}
@media screen and (max-width: 479px) {
  body.home section h2 {
    letter-spacing: 0.1em;
    margin-top: 0;
  }
}
body.home section .introduction {
  font-size: 4vw;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
  color: #fff;
  letter-spacing: 0.05em;
  padding: 4em 15px;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 50% 50%;
}
body.home section .introduction h2, body.home section .introduction p {
  margin-top: 0;
}
@media screen and (min-width: 768px) {
  body.home section .introduction {
    font-size: 1.5vw;
    padding: 3em 15px;
  }
}
body.home .sec001 .item-list {
  padding: 0 1em;
  margin-top: 2.4em;
}
body.home .sec001 .item-list__box {
  position: relative;
  text-align: center;
  margin-bottom: 1px;
}
body.home .sec001 .item-list__box .mask {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 1;
  background-color: rgba(0, 109, 142, 0.7);
  background-repeat: no-repeat;
  background-size: 22%;
  background-position: top calc(50% - 3em) left 50%;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
  color: #fff;
  padding-top: 9em;
}
body.home .sec001 .item-list__box:hover .mask {
  opacity: 0;
}
body.home .sec001 .item-list__box p {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.6;
  margin-top: 0;
}
body.home .sec001 .item-list__box:nth-child(1) .mask {
  background-image: url(../img/icon_company01.svg);
}
body.home .sec001 .item-list__box:nth-child(2) .mask {
  background-image: url(../img/icon_company02.svg);
}
body.home .sec001 .item-list__box:nth-child(3) .mask {
  background-image: url(../img/icon_company03.svg);
}
body.home .sec001 .item-list__title {
  background: none;
  padding: 0;
  color: #fff;
  border-left: none;
}
@media screen and (min-width: 768px) {
  body.home .sec001 .item-list:before, body.home .sec001 .item-list:after {
    content: " ";
    display: table;
  }
  body.home .sec001 .item-list:after {
    clear: both;
  }
  body.home .sec001 .item-list__box {
    width: 33.3333%;
    float: left;
  }
  body.home .sec001 .item-list__box:nth-child(2) .mask {
    border-left: 1px solid #fff;
    border-right: 1px solid #fff;
  }
}
body.home .sec002 {
  padding: 0 0 3em;
  background: #f2f2f2;
}
body.home .sec002 .introduction {
  background-image: url(../top/img/bg_001.jpg);
  padding-bottom: 10em;
}
body.home .sec002 .container, body.home .sec002 .keyvisual .slider-top li .text, body.home .keyvisual .slider-top li .sec002 .text {
  margin-top: -6em;
}
body.home .sec002 .item__wrap {
  z-index: 0;
  margin-bottom: 2em;
}
body.home .sec002 .item__summary {
  background: #f49000;
  /* Old browsers */
  background: -moz-linear-gradient(left, #f49000 0%, #ff4a2a 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(left, #f49000 0%, #ff4a2a 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to right, #f49000 0%, #ff4a2a 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f49000', endColorstr='#ff4a2a',GradientType=1 );
  /* IE6-9 */
  z-index: 2;
  padding: 1.5em;
  position: relative;
  z-index: 1;
}
body.home .sec002 .item__summary .bg {
  content: " ";
  display: block;
  width: calc(100% - 8px);
  height: 100%;
  background: #fff;
  position: absolute;
  top: -8px;
  left: 0;
  z-index: -1;
}
body.home .sec002 .item__summary h3 {
  background: none;
  border: none;
  padding: 0;
  margin-top: 0;
  color: #000;
}
body.home .sec002 .item__summary p {
  font-size: 14px;
  font-size: 1.4rem;
}
body.home .sec002 .item__img ul {
  margin-top: 0;
}
body.home .sec002 .item__img .slick-prev,
body.home .sec002 .item__img .slick-next {
  background: #f49000;
  /* Old browsers */
  background: -moz-linear-gradient(left, #f49000 0%, #ff4a2a 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(left, #f49000 0%, #ff4a2a 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to right, #f49000 0%, #ff4a2a 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f49000', endColorstr='#ff4a2a',GradientType=1 );
  /* IE6-9 */
  top: inherit;
  bottom: 20px;
}
@media screen and (min-width: 768px) {
  body.home .sec002 .item__wrap {
    position: relative;
    padding-bottom: 5em;
  }
  body.home .sec002 .item__wrap:before, body.home .sec002 .item__wrap:after {
    content: " ";
    display: table;
  }
  body.home .sec002 .item__wrap:after {
    clear: both;
  }
  body.home .sec002 .item__wrap.col-right .item__summary {
    float: right;
  }
  body.home .sec002 .item__wrap.col-right .item__img {
    left: 0;
  }
  body.home .sec002 .item__summary {
    width: 50%;
    float: left;
    z-index: 2;
    margin-top: 2em;
    padding: 3em;
  }
  body.home .sec002 .item__summary .bg {
    width: 100%;
    height: 100%;
    top: -10px;
    left: -10px;
  }
  body.home .sec002 .item__img {
    width: 60%;
    position: absolute;
    top: 0;
    right: 0;
    z-index: -1;
  }
}
@media screen and (min-width: 992px) {
  body.home .sec002 .container, body.home .sec002 .keyvisual .slider-top li .text, body.home .keyvisual .slider-top li .sec002 .text {
    margin-top: -8em;
  }
}
@media screen and (min-width: 1200px) {
  body.home .sec002 .item__summary {
    margin-top: 4em;
  }
}
@media screen and (min-width: 1600px) {
  body.home .sec002 .container, body.home .sec002 .keyvisual .slider-top li .text, body.home .keyvisual .slider-top li .sec002 .text {
    margin-top: -13em;
  }
}
body.home .sec003 {
  padding-top: 0;
}
body.home .sec003 .introduction {
  background-image: url(../top/img/bg_002.jpg);
  padding-bottom: 10em;
}
body.home .sec003 h2 {
  color: #fff;
}
body.home .sec003 h2 .sub {
  color: #fff;
}
body.home .sec003 .news-wrap {
  min-height: 300px;
  background: #007eaf;
  /* Old browsers */
  background: -moz-linear-gradient(left, #007eaf 0%, #00a0b9 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(left, #007eaf 0%, #00a0b9 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to right, #007eaf 0%, #00a0b9 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#007eaf', endColorstr='#00a0b9',GradientType=1 );
  /* IE6-9 */
  padding: 1em 1.5em 1em;
  margin-top: -7em;
  position: relative;
  z-index: 1;
}
body.home .sec003 .news-wrap .bg {
  content: " ";
  display: block;
  width: calc(100% - 8px);
  height: 100%;
  background: #fff;
  position: absolute;
  top: -8px;
  left: 0;
  z-index: -1;
}
body.home .sec003 .news-list {
  margin-top: -1em;
}
body.home .sec003 .news-list li {
  margin: 0;
  border-bottom: 1px solid #e6e6e6;
}
body.home .sec003 .news-list li a {
  padding: 0.75em 1em;
  display: block;
  color: #000;
}
body.home .sec003 .news-list li a:hover {
  color: #4d4d4d;
  text-decoration: none;
}
body.home .sec003 .news-list li a .date {
  color: #b3b3b3;
  margin-right: 3em;
  display: block;
}
@media screen and (min-width: 992px) {
  body.home .sec003 .news-wrap {
    padding: 3em;
  }
  body.home .sec003 .news-wrap .bg {
    width: 100%;
    top: -10px;
    left: -10px;
  }
  body.home .sec003 .news-list li a .date {
    display: inline-block;
  }
}
@media screen and (min-width: 1200px) {
  body.home .sec003 .news-wrap {
    margin-top: -11em;
  }
}

.page_contact {
  /* ============================
  	フォーム
  =============================*/
  /* ===========================*/
}
.page_contact .require {
  background: #ff4a2a;
  margin-left: 5px;
  color: #fff;
  font-weight: normal;
  line-height: 1;
  padding: 3px 5px;
  border-radius: 3px;
  font-size: 14px;
  font-size: 1.4rem;
}
.page_contact .alert, .page_contact .error {
  margin-top: 0;
  color: #EF4245;
}
.page_contact .alert:before, .page_contact .error:before {
  font-family: FontAwesome;
  content: "";
  display: inline-block;
  margin-right: 4px;
}
.page_contact .form-table dl {
  margin: 0;
}
.page_contact .form-table dl dd {
  margin-left: 0;
}
@media screen and (min-width: 768px) {
  .page_contact .form-table dl dt {
    float: left;
    clear: left;
    width: 9em;
    margin: 0.2em 0;
  }
  .page_contact .form-table dl dd {
    padding-left: 10em;
    margin: 0.4em 0;
  }
}
