@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 {
  margin-right: auto;
  margin-left: auto;
  padding-left: 15px;
  padding-right: 15px; }
  .container:before, .container:after {
    content: " ";
    display: table; }
  .container:after {
    clear: both; }
  @media (min-width: 768px) {
    .container {
      width: 750px; } }
  @media (min-width: 992px) {
    .container {
      width: 970px; } }
  @media (min-width: 1200px) {
    .container {
      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, body#top .sec-sns .block, body.opencampus .example-item, body.map .map-item, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, body.about .support-item, body.receive .example-item, .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, body#top .sec-sns .block, body.opencampus .example-item, body.map .map-item, .col-sm-5, .col-sm-6, body.about .support-item, body.receive .example-item, .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, body#top .sec-sns .block, body.opencampus .example-item, body.map .map-item {
    width: 33.3333333333%; }

  .col-sm-5 {
    width: 41.6666666667%; }

  .col-sm-6, body.about .support-item, body.receive .example-item {
    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, body#top .sec-sns .block__more a .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, body.map .map-item a:before, .clearfix:after, body.map .map-item a:after {
  content: " ";
  display: table; }
.clearfix:after, body.map .map-item a: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; } }
/*
 * Hiraku Ver.1.0.2 (https://www.appleple.com)
 * Copyright appleple | MIT License
 *
 */
.js-hiraku-offcanvas-active {
  display: none;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 100001;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.3); }

.js-hiraku-offcanvas-open {
  display: block; }

.js-hiraku-offcanvas-body {
  width: 100%;
  left: 0;
  transition: left 0.3s ease-in-out;
  z-index: 0; }

.js-hiraku-offcanvas-body-right {
  overflow-y: hidden;
  left: -70%;
  position: fixed; }

.js-hiraku-offcanvas-body-left {
  overflow-y: hidden;
  left: 70%;
  position: fixed; }

.js-hiraku-offcanvas-body-moving {
  left: 0;
  position: fixed; }

.js-hiraku-offcanvas-active .js-hiraku-offcanvas-sidebar {
  display: block;
  width: 70%;
  z-index: 10002;
  position: fixed;
  top: 0;
  bottom: 0;
  max-width: 100%;
  background-color: #fff;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
  box-sizing: border-box; }

.js-hiraku-offcanvas:focus {
  background-color: rgba(0, 0, 0, 0.3); }

.js-hiraku-offcanvas-active .js-hiraku-offcanvas-sidebar-right {
  right: 0;
  left: auto;
  margin-right: -70%;
  transition: margin-right 0.3s ease-in-out; }

.js-hiraku-offcanvas-active .js-hiraku-offcanvas-sidebar-left {
  left: 0;
  right: auto;
  margin-left: -70%;
  transition: margin-left 0.3s ease-in-out; }

.js-hiraku-offcanvas-active .js-hiraku-offcanvas-sidebar-right.active {
  margin-right: 0;
  transition: margin-right 0.3s ease-in-out; }

.js-hiraku-offcanvas-active .js-hiraku-offcanvas-sidebar-left.active {
  margin-left: 0;
  transition: margin-left 0.3s ease-in-out; }

.js-hiraku-header-fixed {
  transition: margin-left 0.3s ease-in-out;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%; }

.js-hiraku-offcanvas-body-right,
.js-hiraku-offcanvas-body-left {
  overflow: hidden; }

.js-hiraku-offcanvas-body-right .js-hiraku-header-fixed {
  margin-left: -70%; }

.js-hiraku-offcanvas-body-left .js-hiraku-header-fixed {
  margin-left: 70%; }

.js-hiraku-offcanvas-close-btn {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  overflow: hidden;
  clip: rect(0 0 0 0); }

.hiraku-open-btn {
  background: transparent;
  border: 1px solid #ccc;
  padding: 6px;
  width: 35px;
  cursor: pointer;
  border-radius: 3px; }

.hiraku-open-btn-line {
  border-top: 2px solid #fff;
  padding-top: 4px;
  height: 14px;
  border-radius: 1px;
  display: block;
  transition: .2s all; }

.hiraku-open-btn-line:before,
.hiraku-open-btn-line:after {
  content: "";
  background-color: #fff;
  height: 2px;
  display: block;
  width: 18px;
  border-radius: 1px;
  margin-bottom: 4px;
  transition: .2s all; }

[aria-expanded="true"] .hiraku-open-btn-line {
  border-color: transparent; }

[aria-expanded="true"] .hiraku-open-btn-line:before {
  transform: translateY(0) rotate(-45deg); }

[aria-expanded="true"] .hiraku-open-btn-line:after {
  transform: translateY(-6px) rotate(-135deg); }

* {
  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 print, screen and (min-width: 1200px) {
    html {
      font-size: 67%; } }

body {
  font-size: 17px;
  font-size: 1.7rem;
  font-family: "Noto Sans Japanese" ,Avenir , "Open Sans" , "Helvetica Neue" , "游ゴシック" , "Yu Gothic" , "游ゴシック体" , "YuGothic" , "ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro"  , "メイリオ" , Meiryo , "ＭＳ Ｐゴシック" , "MS PGothic" , sans-serif;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

@media print {
  html, body {
    width: 1000px; }

  .container {
    width: 100% !important; }

  *,
  *:before,
  *:after {
    box-shadow: none !important;
    text-shadow: none !important; } }
input {
  border: 0; }

.container {
  overflow: hidden; }

@media print, screen and (min-width: 992px) {
  .wide-container {
    max-width: 1260px;
    margin-right: auto;
    margin-left: auto; } }
@media screen and (max-width: 991px) {
  .wide-container {
    padding-left: 10px;
    padding-right: 10px; } }

a {
  color: #0467bc;
  text-decoration: none; }
  a:hover, a:active, a:focus {
    color: #0582ee;
    text-decoration: none; }
  a:visited {
    color: #034c8a; }

.header {
  background: #fff; }
  @media screen and (max-width: 767px) {
    .header {
      height: 60px; } }
  .header .container {
    position: relative;
    overflow: visible; }
  .header p {
    marign: 0;
    padding: 0; }
  .header a {
    color: #fff;
    text-decoration: none; }
    .header a:hover, .header a:active, .header a:focus {
      color: white;
      text-decoration: none; }
    .header a:visited {
      color: white; }
  @media print, screen and (min-width: 768px) {
    .header .logo-group {
      padding: 20px 0;
      text-align: center; } }
  .header .logo-group .logo {
    margin: 0px;
    display: inline-block; }
    .header .logo-group .logo img {
      height: auto;
      display: block; }
      @media screen and (max-width: 767px) {
        .header .logo-group .logo img {
          width: 230px;
          margin-top: 17px; } }
      @media print, screen and (min-width: 768px) {
        .header .logo-group .logo img {
          margin: 20px 0 0px 20px;
          display: block; } }
  .header .font-size {
    position: absolute;
    top: 10px;
    right: 10px;
    font-size: 14px; }
    @media screen and (max-width: 767px) {
      .header .font-size {
        display: none; } }
    .header .font-size a {
      display: inline-block;
      background: #4d7700;
      padding: 5px;
      border-radius: 3px;
      margin-left: 7px; }
  .header .color {
    font-size: 14px;
    position: absolute;
    top: 60px;
    right: 10px; }
    @media screen and (max-width: 767px) {
      .header .color {
        display: none; } }
    .header .color a {
      display: inline-block;
      background: #bbb;
      padding: 5px;
      border-radius: 3px;
      margin-left: 7px;
      color: #000;
      text-decoration: none;
      width: 3em;
      text-align: center; }
      .header .color a:hover, .header .color a:active, .header .color a:focus {
        color: black;
        text-decoration: none; }
      .header .color a:visited {
        color: black; }
    .header .color .color-b {
      background: blue;
      color: yellow;
      text-decoration: none; }
      .header .color .color-b:hover, .header .color .color-b:active, .header .color .color-b:focus {
        color: yellow;
        text-decoration: none; }
      .header .color .color-b:visited {
        color: yellow; }
    .header .color .color-c {
      background: yellow;
      color: black;
      text-decoration: none; }
      .header .color .color-c:hover, .header .color .color-c:active, .header .color .color-c:focus {
        color: black;
        text-decoration: none; }
      .header .color .color-c:visited {
        color: black; }
    .header .color .color-d {
      background: black;
      color: yellow;
      text-decoration: none; }
      .header .color .color-d:hover, .header .color .color-d:active, .header .color .color-d:focus {
        color: yellow;
        text-decoration: none; }
      .header .color .color-d:visited {
        color: yellow; }
  .header .sp-btn {
    position: absolute;
    display: block;
    top: 5px;
    right: 10px;
    z-index: 1000; }
    @media print, screen and (min-width: 992px) {
      .header .sp-btn {
        display: none; } }
    .header .sp-btn ul {
      margin: 0;
      padding: 0; }
      .header .sp-btn ul li {
        display: inline-block;
        padding: 0;
        margin: 0;
        list-style: none; }
    .header .sp-btn .head-btn {
      display: inline-block;
      width: 50px;
      height: 50px;
      text-align: center;
      float: left;
      line-height: 1;
      color: #fff;
      background: #4d7700;
      margin-left: 3px; }
      .header .sp-btn .head-btn:before {
        font-size: 2.6rem;
        display: block;
        padding-top: 8px;
        font-family: FontAwesome;
        content: "?"; }
      .header .sp-btn .head-btn__text {
        font-size: 1.1rem;
        display: block;
        font-weight: bold; }
    .header .sp-btn .head-btn.head-btn--close:before {
      font-family: FontAwesome;
      content: "?"; }
  .header .pc-btn {
    display: none; }
    @media print, screen and (min-width: 768px) {
      .header .pc-btn {
        display: block; } }

.head-navi {
  background: #4d7700; }
  .head-navi ul {
    margin: 0;
    padding: 0; }
    .head-navi ul li {
      list-style: none; }
  @media screen and (max-width: 991px) {
    .head-navi {
      position: absolute;
      width: 100%;
      top: 60px;
      left: 0;
      z-index: 1000;
      display: none; }
      .head-navi .gnavi li a {
        display: block;
        padding: 15px 2px;
        border-bottom: 1px solid #fff; }
      .head-navi .gnavi li:last-child a {
        border: 0; }
      .head-navi .gnavi .gnavi--hide {
        display: block; } }
  @media print, screen and (min-width: 992px) {
    .head-navi .wide-container {
      max-width: 90% !important; }
    .head-navi .gnavi {
      text-align: center; }
      .head-navi .gnavi li {
        display: inline-block;
        font-size: 15px;
        font-size: 1.5rem;
        border-right: 1px solid #fff; }
        .head-navi .gnavi li a {
          display: block;
          padding: 15px 8px 15px 3px; }
        .head-navi .gnavi li:last-child {
          border: none; }
      .head-navi .gnavi .gnavi--hide {
        display: none; } }

@media screen and (max-width: 767px) {
  .container {
    padding-left: 10px;
    padding-right: 10px; } }

.footer {
  font-size: 16px;
  font-size: 1.6rem;
  position: relative;
  margin-top: 0;
  text-align: center;
  padding: 15px 0;
  margin-top: 3.2em; }
  .footer .container {
    position: relative; }
  .footer a {
    color: #000;
    text-decoration: none; }
    .footer a:hover, .footer a:active, .footer a:focus {
      color: black;
      text-decoration: none; }
    .footer a:visited {
      color: black; }
  .footer .fnavi {
    background: #eee;
    padding: 15px 0; }
    .footer .fnavi ul {
      padding: 0;
      margin: 0; }
      .footer .fnavi ul li {
        list-style: none;
        display: inline-block;
        margin-right: 10px; }
        .footer .fnavi ul li a {
          color: #000;
          text-decoration: none;
          font-size: 14px;
          font-size: 1.4rem; }
          .footer .fnavi ul li a:hover, .footer .fnavi ul li a:active, .footer .fnavi ul li a:focus {
            color: black;
            text-decoration: none; }
          .footer .fnavi ul li a:visited {
            color: black; }
  .footer .address {
    font-size: 14px;
    font-size: 1.4rem; }
  .footer .kadai-logo img {
    width: 110px; }

.copyright {
  text-align: right;
  font-size: 11px;
  font-size: 1.1rem;
  color: #ccc; }
  @media print, screen and (min-width: 768px) {
    .copyright {
      position: absolute;
      top: 9px;
      right: 0; } }
  .copyright p {
    margin: 0; }

.pagetop {
  position: fixed;
  cursor: pointer;
  right: 10px;
  bottom: 10px;
  text-align: center;
  line-height: 50px;
  color: #fff;
  width: 50px;
  height: 50px;
  background: #000;
  border-radius: 50%;
  box-shadow: 1px 1px 3px #bbb;
  z-index: 1000; }

/* ===========================*/
.switch {
  visibility: hidden; }

.sp-show {
  display: block; }
  @media print, screen and (min-width: 768px) {
    .sp-show {
      display: none; } }

.pc-show {
  display: none; }
  @media print, screen and (min-width: 768px) {
    .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 print, screen and (min-width: 768px) {
    .img-r {
      float: right;
      margin-left: 10px;
      margin-bottom: 10px; } }

.img-l {
  margin-bottom: 10px; }
  @media print, screen and (min-width: 768px) {
    .img-l {
      float: left;
      margin-right: 10px;
      margin-bottom: 10px; } }

.separate {
  border-top: 1px solid #f4f6f7;
  margin: 3.2em 0; }

.margin--2x {
  margin-top: 3.2em; }

.large {
  font-size: 110%; }

.x-large {
  font-size: 140%; }

.small {
  font-size: 84%; }

.x-small {
  font-size: 70%; }

.attention {
  color: #ed2f53; }

.anchor {
  cursor: pointer; }
  .anchor:before {
    font-family: FontAwesome;
    content: "?";
    display: inline-block;
    margin-right: 4px;
    color: #4d7700; }
  .anchor.close:before {
    font-family: FontAwesome;
    content: "?"; }

.past-section-body {
  display: none; }

.fileicon {
  padding-left: 10px;
  padding-right: 10px; }

.fileicon:before {
  font-family: FontAwesome;
  display: inline-block;
  padding-right: 3px; }

.fileicon--docx:before {
  content: "\f1c2"; }

.fileicon--xlsx:before {
  content: "\f1c3"; }

.fileicon--pptx:before {
  content: "\f1c4"; }

.fileicon--pdf:before {
  content: "\f1c1"; }

.fileicon--zip:before {
  content: "\f1c6"; }

.topicpath {
  font-size: 1.2rem;
  line-height: 1;
  margin: 5px 0 5px; }
  @media screen and (max-width: 767px) {
    .topicpath {
      padding-left: 15px; } }
  @media print, screen and (min-width: 768px) {
    .topicpath {
      margin: 10px 0 15px; } }
  .topicpath ol {
    margin: 0;
    padding: 0; }
  .topicpath li {
    list-style: none;
    margin: 0;
    display: inline-block;
    white-space: nowrap; }
  .topicpath li:not(:last-child):after {
    content: ' > '; }

.page-title {
  padding-top: 15px;
  padding-bottom: 15px;
  margin-top: 0px;
  color: #3b2c0d;
  text-align: center;
  background: url(/bf-support/assets/img/page-title.jpg) no-repeat 50% 50%;
  background-size: cover; }
  @media print, screen and (min-width: 768px) {
    .page-title {
      padding: 3.2em 0; } }
  .page-title h1 {
    margin: 0;
    font-size: 20px;
    font-size: 2rem;
    color: #58810b; }
    @media print, screen and (min-width: 768px) {
      .page-title h1 {
        font-size: 34px;
        font-size: 3.4rem; } }

.content h2 {
  padding: 0;
  font-size: 30px;
  font-size: 3rem;
  margin-top: 1.6em; }
  .content h2:after {
    content: "";
    width: 100px;
    height: 4px;
    background: #4d7700;
    display: block; }
  .content h2 a {
    color: #fff;
    text-decoration: none; }
    .content h2 a:hover, .content h2 a:active, .content h2 a:focus {
      color: white;
      text-decoration: none; }
    .content h2 a:visited {
      color: white; }

.content h3 {
  font-size: 22px;
  font-size: 2.2rem;
  margin-top: 1.6em;
  margin-bottom: 1.6em;
  color: #4d7700; }

.content h4 {
  overflow: hidden;
  display: inline-block;
  padding: 1px 10px;
  background: linear-gradient(transparent 50%, #f4f6f7 50%); }

.content ul {
  padding-left: 0; }
  .content ul li {
    list-style: none;
    margin-top: 0.8em;
    margin-bottom: 0.8em; }

.list li {
  background: url(/bf-support/assets/img/icon_circle.png) no-repeat 0 0.5em;
  background-size: 8px 8px;
  padding-left: 15px; }

.rice-list {
  padding-left: 1em !important; }
  .rice-list li {
    text-indent: -1em; }
    .rice-list li:before {
      content: "※";
      margin-right: 1px; }

ol {
  padding-left: 20px; }
  ol li {
    list-style-type: decimal;
    margin: 15px 0; }

ul.item {
  padding-left: 0; }
  ul.item li {
    list-style: none;
    display: inline-block;
    padding: 5px 10px;
    background: #f4f6f7;
    border-radius: 3px;
    margin-right: 5px; }

.content dl.dl-list dt {
  background: url(/bf-support/assets/img/icon_circle.png) no-repeat 0 0.5em;
  background-size: 8px 8px;
  padding-left: 15px;
  font-weight: bold;
  margin-top: 0.5em; }
.content dl.dl-list dd {
  margin: 0; }
  .content dl.dl-list dd p {
    margin-top: 0.3em;
    font-size: 90%; }

.content dl.list dt {
  padding-top: 0.8em; }
  @media print, screen and (min-width: 768px) {
    .content dl.list dt {
      float: left;
      clear: left;
      width: 8.5em; } }
.content dl.list dd {
  margin: 0;
  border-bottom: 1px solid #bbb;
  padding-bottom: 0.8em; }
  @media print, screen and (min-width: 768px) {
    .content dl.list dd {
      padding-left: 9.5em;
      padding-top: 0.8em; } }
  .content dl.list dd > *:first-child {
    margin-top: 0; }

.btn, body#top .sec-sns .block__more a {
  display: inline-block;
  position: relative;
  padding: 18px 50px;
  line-height: 1;
  text-align: center;
  color: #fff;
  text-decoration: none;
  box-shadow: 1px 1.732px 4.9px 0.1px rgba(92, 107, 121, 0.4);
  -webkit-transition: all .3s;
  transition: all .3s; }
  .btn:hover, body#top .sec-sns .block__more a:hover, .btn:active, body#top .sec-sns .block__more a:active, .btn:focus, body#top .sec-sns .block__more a:focus {
    color: white;
    text-decoration: none; }
  .btn:visited, body#top .sec-sns .block__more a:visited {
    color: white; }
  .btn:after, body#top .sec-sns .block__more a:after {
    font-family: FontAwesome;
    content: "?";
    display: block;
    position: absolute;
    top: 50%;
    right: 10px;
    margin-top: -0.5em;
    font-size: 1.3rem;
    line-height: 1; }
  .btn.btn--default, body#top .sec-sns .block__more a {
    background: #4d7700;
    font-weight: bold; }
    @media screen and (max-width: 767px) {
      .btn.btn--default, body#top .sec-sns .block__more a {
        width: 90%;
        background-size: 100% auto; } }
    @media print, screen and (min-width: 768px) {
      .btn.btn--default, body#top .sec-sns .block__more a {
        padding-right: 45px;
        padding-left: 30px; } }
    .btn.btn--default:hover, body#top .sec-sns .block__more a:hover {
      background: #1d71c2; }
  .btn.btn--sub, body#top .sec-sns .block__more a.btn--sub {
    background: #d4e1ef;
    font-weight: bold;
    color: #0467bc;
    text-decoration: none; }
    .btn.btn--sub:hover, body#top .sec-sns .block__more a.btn--sub:hover, .btn.btn--sub:active, body#top .sec-sns .block__more a.btn--sub:active, .btn.btn--sub:focus, body#top .sec-sns .block__more a.btn--sub:focus {
      color: #0467bc;
      text-decoration: none; }
    .btn.btn--sub:visited, body#top .sec-sns .block__more a.btn--sub:visited {
      color: #0467bc; }
    @media screen and (max-width: 767px) {
      .btn.btn--sub, body#top .sec-sns .block__more a.btn--sub {
        width: 90%; } }
    @media print, screen and (min-width: 768px) {
      .btn.btn--sub, body#top .sec-sns .block__more a.btn--sub {
        padding-right: 30px;
        padding-left: 30px; } }
    .btn.btn--sub:hover, body#top .sec-sns .block__more a.btn--sub:hover {
      color: #fff;
      text-decoration: none;
      background: #4d7700; }
      .btn.btn--sub:hover:hover, body#top .sec-sns .block__more a.btn--sub:hover:hover, .btn.btn--sub:hover:active, body#top .sec-sns .block__more a.btn--sub:hover:active, .btn.btn--sub:hover:focus, body#top .sec-sns .block__more a.btn--sub:hover:focus {
        color: white;
        text-decoration: none; }
      .btn.btn--sub:hover:visited, body#top .sec-sns .block__more a.btn--sub:hover:visited {
        color: white; }
  .btn.btn--cv, body#top .sec-sns .block__more a.btn--cv {
    background: #37708d;
    font-size: 18px;
    font-size: 1.8rem;
    padding: 20px 20px; }
    @media print, screen and (min-width: 768px) {
      .btn.btn--cv, body#top .sec-sns .block__more a.btn--cv {
        font-size: 21px;
        font-size: 2.1rem;
        padding: 20px 40px; } }
  .btn.btn--white, body#top .sec-sns .block__more a.btn--white {
    background: #fff;
    color: #0467bc;
    text-decoration: none;
    font-weight: bold; }
    .btn.btn--white:hover, body#top .sec-sns .block__more a.btn--white:hover, .btn.btn--white:active, body#top .sec-sns .block__more a.btn--white:active, .btn.btn--white:focus, body#top .sec-sns .block__more a.btn--white:focus {
      color: #0467bc;
      text-decoration: none; }
    .btn.btn--white:visited, body#top .sec-sns .block__more a.btn--white:visited {
      color: #0467bc; }
  .btn.btn--w100, body#top .sec-sns .block__more a.btn--w100 {
    width: 100%; }
  .btn.btn--w75, body#top .sec-sns .block__more a.btn--w75 {
    width: 75%; }

.googlemap {
  position: relative;
  padding-bottom: 40%;
  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%; }

.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 th, .content table td {
    padding: 5px;
    border: 1px solid #c6cacc;
    border-collapse: collapse; }
    @media screen and (max-width: 767px) {
      .content table th, .content table td {
        border-bottom: 0; } }
    @media print, screen and (min-width: 768px) {
      .content table th, .content table td {
        padding: 5px; } }
  .content table th {
    text-align: left; }
    @media screen and (max-width: 767px) {
      .content table th {
        background: #f4f6f7; } }
  .content table thead th {
    background: #4d7700;
    color: #fff;
    text-align: center; }

@media screen and (max-width: 767px) {
  .content table:not(.nowrap) th, .content table:not(.nowrap) td {
    display: block;
    border-bottom: 0; } }

.content table .nowrap {
  white-space: nowrap; }

@media print, screen and (min-width: 768px) {
  .w20 {
    width: 20%; } }

.content table.border th, .content table.border td {
  border: 1px solid #c6cacc;
  border-collapse: collapse; }

.content table.color1 th {
  text-align: center !important; }
.content table.color1 tbody th {
  background: #c9d5e1;
  color: #4c667f; }
.content table.color1 td {
  background: #fff !important; }

section.zebra {
  padding-top: 1.6em;
  padding-bottom: 1.6em; }
  @media print, screen and (min-width: 768px) {
    section.zebra {
      padding-top: 3.2em;
      padding-bottom: 3.2em; } }
  section.zebra .container > *:first-child {
    margin-top: 0; }
  section.zebra:nth-child(even) {
    background: #f4f6f7; }

.cal_wrapper {
  max-width: 960px;
  /* 最大幅 */
  min-width: 300px;
  /* 最小幅 */
  margin: 2.0833% auto; }

.googlecal {
  position: relative;
  padding-bottom: 100%;
  /* 縦横比 */
  height: 0; }

.googlecal iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important; }

/* 画面幅が768px以上の場合の縦横比の指定 */
@media only screen and (min-width: 768px) {
  .googlecal {
    padding-bottom: 75%; } }
.banner {
  margin: 3em auto;
  width: 90%; }
  @media print, screen and (min-width: 768px) {
    .banner {
      width: 80%; } }

body#top .sec-keyv img {
  width: 100%;
  height: auto; }
body#top .sec-about h2 {
  color: #4d7700;
  position: relative; }
  @media print, screen and (min-width: 768px) {
    body#top .sec-about h2 {
      text-align: center;
      vertical-align: middle; }
      body#top .sec-about h2:before, body#top .sec-about h2:after {
        display: inline-block;
        content: "";
        background: #4d7700;
        width: 100px;
        height: 3px;
        top: 50%;
        position: absolute; }
      body#top .sec-about h2:before {
        margin-left: -115px; }
      body#top .sec-about h2:after {
        margin-left: 15px; } }
body#top .sec-about dl dt {
  padding: 15px;
  background: #4d7700;
  color: #fff;
  font-weight: bold; }
body#top .sec-about dl dd {
  padding: 15px;
  margin: 0;
  background: #e8f2dc; }
  @media screen and (max-width: 767px) {
    body#top .sec-about dl dd {
      font-size: 14px;
      font-size: 1.4rem; } }
  body#top .sec-about dl dd .fa {
    color: #4d7700;
    margin-right: 5px; }
body#top .sec-sns {
  background: url(/bf-support/top/img/sns_bg.jpg) no-repeat 50% 50%;
  background-size: cover;
  padding: 1.6em 0;
  margin-top: 1.6em; }
  @media print, screen and (min-width: 768px) {
    body#top .sec-sns {
      padding: 4.8em 0;
      margin-top: 4.8em; } }
  @media screen and (max-width: 767px) {
    body#top .sec-sns .block {
      margin: 5px 0; } }
  body#top .sec-sns .block__inner {
    background: #fff; }
  body#top .sec-sns .block__heading {
    text-align: center;
    color: #4d7700;
    padding-top: 1.6em; }
    body#top .sec-sns .block__heading .fa {
      font-size: 30px;
      font-size: 3rem; }
    body#top .sec-sns .block__heading .x-icon {
      width: 33px;
      margin: 0 auto;
      display: block;
      fill: #4d7700;
      line-height: 1; }
    body#top .sec-sns .block__heading h2 {
      font-size: 16px;
      font-size: 1.6rem;
      margin-top: 5px; }
  body#top .sec-sns .block__body {
    padding: 10px; }
    @media print, screen and (min-width: 768px) {
      body#top .sec-sns .block__body {
        padding: 20px;
        text-align: center; } }
  body#top .sec-sns .block__deco {
    padding: 0.6em 1em 0.8em;
    border: 3px solid #e8f2dc;
    margin: 10px 0; }
    body#top .sec-sns .block__deco p {
      margin: 0;
      text-align: left; }
    body#top .sec-sns .block__deco ul {
      text-align: left;
      margin: 0;
      padding: 0 0 0 1em; }
      body#top .sec-sns .block__deco ul li {
        text-align: left; }
  body#top .sec-sns .block__more {
    text-align: center;
    padding-bottom: 1.6em; }
    body#top .sec-sns .block__more p {
      margin-top: 0; }
body#top .footer {
  margin-top: 0;
  padding-top: 0; }

body.about .support-item {
  margin-top: 1.6em; }
  body.about .support-item__in {
    background: #fff;
    border-radius: 5px;
    padding: 15px;
    border: 2px solid #4d7700; }
    body.about .support-item__in h3 {
      margin: 0; }
    body.about .support-item__in p {
      margin-top: 10px; }
body.about .content table tbody td {
  text-align: center; }

body.receive .example-item {
  margin-bottom: 1.6em; }
  body.receive .example-item__in {
    background: #fff;
    border-radius: 5px;
    padding: 15px;
    border: 2px solid #4d7700; }
    body.receive .example-item__in p {
      margin: 0px;
      font-weight: bold;
      color: #4d7700; }
    body.receive .example-item__in ul {
      margin-top: 10px; }
      body.receive .example-item__in ul li {
        margin: 2px 0; }
body.receive .note {
  background: #fff;
  border-radius: 3px;
  border: 2px solid #d37686;
  padding: 15px; }

body.opencampus h2.copy-title {
  text-align: center;
  padding: 1em; }
  body.opencampus h2.copy-title:after {
    content: none; }
  body.opencampus h2.copy-title .en {
    color: #4d7700;
    display: block;
    font-size: 34px;
    font-size: 3.4rem; }
  body.opencampus h2.copy-title .jp {
    font-size: 22px;
    font-size: 2.2rem;
    display: block; }
body.opencampus table.table-tpl {
  width: 100%; }
  body.opencampus table.table-tpl th, body.opencampus table.table-tpl td {
    padding: 5px;
    border: 1px solid #c6cacc;
    border-collapse: collapse; }
    @media screen and (max-width: 767px) {
      body.opencampus table.table-tpl th, body.opencampus table.table-tpl td {
        border-bottom: 0; } }
    @media print, screen and (min-width: 768px) {
      body.opencampus table.table-tpl th, body.opencampus table.table-tpl td {
        padding: 10px 15px; } }
  body.opencampus table.table-tpl th {
    background: #4d7700;
    color: #fff;
    text-align: left; }
body.opencampus .example-item {
  margin-bottom: 1.6em; }
  body.opencampus .example-item__in {
    background: #fff;
    border-radius: 5px;
    padding: 15px;
    border: 2px solid #4d7700; }
    body.opencampus .example-item__in p {
      margin: 0px;
      font-weight: bold;
      color: #4d7700; }
    body.opencampus .example-item__in ul {
      margin-top: 10px; }
      body.opencampus .example-item__in ul li {
        margin: 2px 0;
        background: none; }
        body.opencampus .example-item__in ul li span {
          color: #4d7700;
          padding-right: 5px; }

@media screen and (max-width: 767px) {
  body.send .content {
    padding: 1.6em 0; } }
@media screen and (max-width: 767px) {
  body.send .page-navi {
    display: none; } }
body.send .page-navi ul li {
  float: left;
  width: 25%;
  padding-left: 10px;
  padding-right: 10px;
  margin: 0.4em 0; }
  body.send .page-navi ul li a {
    display: block;
    border: 1px solid #4d7700;
    padding: 10px;
    color: #4d7700;
    text-decoration: none;
    font-weight: bold; }
    body.send .page-navi ul li a:hover, body.send .page-navi ul li a:active, body.send .page-navi ul li a:focus {
      color: #4d7700;
      text-decoration: none; }
    body.send .page-navi ul li a:visited {
      color: #4d7700; }
    body.send .page-navi ul li a:before {
      font-family: FontAwesome;
      content: "?";
      display: inline-block;
      margin-right: 4px; }
body.send section h2 {
  background: #4d7700;
  color: #fff; }
  @media screen and (max-width: 767px) {
    body.send section h2 {
      font-size: 18px;
      font-size: 1.8rem;
      padding: 10px;
      margin-left: 10px;
      margin-right: 10px;
      margin-top: 1px; } }
  @media print, screen and (min-width: 768px) {
    body.send section h2 {
      text-align: center;
      padding-top: 1.6em;
      padding-bottom: 1.6em; } }
  @media screen and (max-width: 767px) {
    body.send section h2:before {
      font-family: FontAwesome;
      content: "?";
      display: inline-block;
      margin-right: 4px; } }
  body.send section h2:after {
    display: none; }
  @media screen and (max-width: 767px) {
    body.send section h2.close:before {
      font-family: FontAwesome;
      content: "?"; } }
@media screen and (max-width: 767px) {
  body.send section .section-body {
    display: none;
    padding-bottom: 1.6em; } }

@media screen and (max-width: 767px) {
  body.publication .content {
    padding: 1.6em 0; } }
@media screen and (max-width: 767px) {
  body.publication .page-navi {
    display: none; } }
body.publication .page-navi ul li {
  float: left;
  width: 25%;
  padding-left: 10px;
  padding-right: 10px;
  margin: 0.4em 0; }
  body.publication .page-navi ul li a {
    display: block;
    border: 1px solid #4d7700;
    padding: 10px;
    color: #4d7700;
    text-decoration: none;
    font-weight: bold; }
    body.publication .page-navi ul li a:hover, body.publication .page-navi ul li a:active, body.publication .page-navi ul li a:focus {
      color: #4d7700;
      text-decoration: none; }
    body.publication .page-navi ul li a:visited {
      color: #4d7700; }
    body.publication .page-navi ul li a:before {
      font-family: FontAwesome;
      content: "?";
      display: inline-block;
      margin-right: 4px; }
body.publication section .sec-title {
  background: #4d7700;
  color: #fff; }
  @media screen and (max-width: 767px) {
    body.publication section .sec-title {
      font-size: 18px;
      font-size: 1.8rem;
      padding: 10px;
      margin-left: 10px;
      margin-right: 10px;
      margin-top: 1px; } }
  @media print, screen and (min-width: 768px) {
    body.publication section .sec-title {
      text-align: center;
      padding-top: 1.6em;
      padding-bottom: 1.6em;
      font-size: 30px;
      font-size: 3rem; } }
  @media screen and (max-width: 767px) {
    body.publication section .sec-title:before {
      font-family: FontAwesome;
      content: "?";
      display: inline-block;
      margin-right: 4px; } }
  body.publication section .sec-title:after {
    display: none; }
  @media screen and (max-width: 767px) {
    body.publication section .sec-title.close:before {
      font-family: FontAwesome;
      content: "?"; } }
@media screen and (max-width: 767px) {
  body.publication section .section-body {
    display: none;
    padding-bottom: 1.6em; } }
body.publication .deco-title {
  color: #4d7700;
  text-align: center; }
  body.publication .deco-title h2 {
    font-size: 34px;
    font-size: 3.4rem; }
    body.publication .deco-title h2:after {
      content: none; }
  body.publication .deco-title .copy {
    font-size: 20px;
    font-size: 2rem;
    font-weight: bold;
    margin-top: 0.5em; }

body.map .map-item {
  margin-top: 8px; }
  @media print, screen and (min-width: 768px) {
    body.map .map-item {
      margin-top: 1.6em; } }
  body.map .map-item a {
    display: block;
    border: 1px solid #ddd;
    padding: 15px;
    color: #000;
    text-decoration: none;
    -webkit-transition: all .3s;
    transition: all .3s; }
    body.map .map-item a:hover, body.map .map-item a:active, body.map .map-item a:focus {
      color: black;
      text-decoration: none; }
    body.map .map-item a:visited {
      color: black; }
    body.map .map-item a:hover {
      border: 1px solid #4d7700; }
  body.map .map-item__thumb {
    margin: 0; }
    @media screen and (max-width: 767px) {
      body.map .map-item__thumb {
        float: left;
        width: 30%;
        margin-right: 10px; } }
    @media print, screen and (min-width: 768px) {
      body.map .map-item__thumb {
        padding-left: 40px;
        padding-right: 40px; } }
    body.map .map-item__thumb img {
      width: 100%;
      height: auto; }
  body.map .map-item__body {
    overflow: hidden; }
    @media screen and (max-width: 767px) {
      body.map .map-item__body {
        margin: 0; } }
    @media print, screen and (min-width: 768px) {
      body.map .map-item__body {
        text-align: center; } }
  body.map .map-item__title {
    font-weight: bold;
    color: #4d7700; }
  body.map .map-item__address {
    margin: 0;
    font-size: 14px;
    font-size: 1.4rem; }

body.news .news {
  border-bottom: 2px solid #ddd;
  padding: 20px 0; }
  @media print, screen and (min-width: 768px) {
    body.news .news {
      border: 2px solid #ddd;
      padding: 20px 30px;
      margin-top: 1.6em; } }
  body.news .news__heading {
    margin: 0; }
    body.news .news__heading:before, body.news .news__heading:after {
      content: " ";
      display: table; }
    body.news .news__heading:after {
      clear: both; }
    @media print, screen and (min-width: 768px) {
      body.news .news__heading {
        border-bottom: 2px dotted #ddd;
        padding-bottom: 15px; } }
  body.news .news__date {
    margin: 0;
    color: #555;
    font-size: 80%;
    font-weight: normal;
    display: inline-block;
    margin-left: 5px; }
  body.news .news__title {
    margin: 0;
    font-size: 17px;
    font-size: 1.7rem;
    color: #4d7700; }
    body.news .news__title:after {
      display: none; }
    @media print, screen and (min-width: 768px) {
      body.news .news__title {
        overflow: hidden;
        font-size: 18px;
        font-size: 1.8rem; } }

body.access .access-imfo {
  font-weight: bold; }
  @media print, screen and (min-width: 768px) {
    body.access .access-imfo {
      font-size: 20px;
      font-size: 2rem;
      text-align: center; } }

.form {
  /* ============================
  	フォーム
  =============================*/
  /* ===========================*/ }
  .form .content .form-flow {
    text-align: center;
    width: 100%;
    margin-left: 0;
    margin-top: 3.2em; }
    .form .content .form-flow li {
      display: inline-block;
      width: 25%;
      position: relative;
      margin: 0; }
    .form .content .form-flow li:not(:last-child) {
      margin-right: 20px; }
    .form .content .form-flow li:not(:last-child):after {
      content: "\f0da";
      font-family: FontAwesome;
      display: inline-block;
      width: 10px 20px;
      position: absolute;
      top: 50%;
      margin-top: -0.7em;
      right: -18px; }
    .form .content .form-flow span {
      display: inline-block;
      width: 100%;
      border-radius: 5px;
      background: #eee;
      text-align: center;
      padding: 10px 20px; }
    .form .content .form-flow__stay span {
      background: #999 !important;
      color: #fff; }
  @media print, screen and (min-width: 768px) {
    .form .form-control:not(.no-full) {
      width: 100%; } }
  .form .form-table {
    border-collapse: collapse;
    width: 100%;
    margin-top: 1.6em;
    margin-bottom: 1.6em;
    border-top: 1px solid #ddd; }
    @media print, screen and (min-width: 768px) {
      .form .form-table {
        font-size: 16px;
        font-size: 1.6rem; } }
    .form .form-table th, .form .form-table td {
      padding: 15px;
      border: 0;
      border-bottom: 1px solid #ddd; }
      @media screen and (max-width: 767px) {
        .form .form-table th, .form .form-table td {
          display: block;
          width: 100%; } }
    .form .form-table th {
      text-align: left;
      width: 20%;
      white-space: nowrap; }
      @media screen and (max-width: 767px) {
        .form .form-table th {
          border: 0;
          padding-bottom: 0;
          width: 100%; } }
      @media print, screen and (min-width: 768px) {
        .form .form-table th {
          text-align: right; } }
  .form .require {
    background: #e75154;
    margin-left: 5px;
    color: #fff;
    font-weight: normal;
    line-height: 1;
    padding: 3px 5px;
    border-radius: 3px;
    font-size: 14px;
    font-size: 1.4rem; }
  .form .alert, .form .error, .form .help-block {
    margin-top: 0;
    color: #EF4245; }
    .form .alert:before, .form .error:before, .form .help-block:before {
      font-family: FontAwesome;
      content: "?";
      display: inline-block;
      margin-right: 4px; }
  .form .form-table dl {
    margin: 0; }
    .form .form-table dl dd {
      margin-left: 0; }
