@charset "UTF-8";
/*! ******************************************
このファイルはscssで作成されました
****************************************** */
/*!
 *  Font Awesome 4.3.0 by @davegandy - http://fontawesome.io - @fontawesome
 *  License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
 */
/* FONT PATH
 * -------------------------- */
@font-face {
  font-family: 'FontAwesome';
  src: url("/files/fonts/font-awesome/fontawesome-webfont.eot?v=4.3.0");
  src: url("/files/fonts/font-awesome/fontawesome-webfont.eot?#iefix&v=4.3.0") format("embedded-opentype"), url("/files/fonts/font-awesome/fontawesome-webfont.woff2?v=4.3.0") format("woff2"), url("/files/fonts/font-awesome/fontawesome-webfont.woff?v=4.3.0") format("woff"), url("/files/fonts/font-awesome/fontawesome-webfont.ttf?v=4.3.0") format("truetype"), url("/files/fonts/font-awesome/fontawesome-webfont.svg?v=4.3.0#fontawesomeregular") format("svg");
  font-weight: normal;
  font-style: normal;
}
.fa {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  transform: translate(0, 0);
}

/* makes the font 33% larger relative to the icon container */
.fa-lg {
  font-size: 1.33333em;
  line-height: 0.75em;
  vertical-align: -15%;
}

.fa-2x {
  font-size: 2em;
}

.fa-3x {
  font-size: 3em;
}

.fa-4x {
  font-size: 4em;
}

.fa-5x {
  font-size: 5em;
}

.fa-fw {
  width: 1.28571em;
  text-align: center;
}

.fa-ul {
  padding-left: 0;
  margin-left: 2.14286em;
  list-style-type: none;
}
.fa-ul > li {
  position: relative;
}

.fa-li {
  position: absolute;
  left: -2.14286em;
  width: 2.14286em;
  top: 0.14286em;
  text-align: center;
}
.fa-li.fa-lg {
  left: -1.85714em;
}

.fa-border {
  padding: .2em .25em .15em;
  border: solid 0.08em #eee;
  border-radius: .1em;
}

.pull-right {
  float: right;
}

.pull-left {
  float: left;
}

.fa.pull-left {
  margin-right: .3em;
}
.fa.pull-right {
  margin-left: .3em;
}

.fa-spin {
  -webkit-animation: fa-spin 2s infinite linear;
  animation: fa-spin 2s infinite linear;
}

.fa-pulse {
  -webkit-animation: fa-spin 1s infinite steps(8);
  animation: fa-spin 1s infinite steps(8);
}

@-webkit-keyframes fa-spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}
@keyframes fa-spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}
.fa-rotate-90 {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1);
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}

.fa-rotate-180 {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2);
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
}

.fa-rotate-270 {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);
  -webkit-transform: rotate(270deg);
  -ms-transform: rotate(270deg);
  transform: rotate(270deg);
}

.fa-flip-horizontal {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=0);
  -webkit-transform: scale(-1, 1);
  -ms-transform: scale(-1, 1);
  transform: scale(-1, 1);
}

.fa-flip-vertical {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2);
  -webkit-transform: scale(1, -1);
  -ms-transform: scale(1, -1);
  transform: scale(1, -1);
}

:root .fa-rotate-90,
:root .fa-rotate-180,
:root .fa-rotate-270,
:root .fa-flip-horizontal,
:root .fa-flip-vertical {
  filter: none;
}

.fa-stack {
  position: relative;
  display: inline-block;
  width: 2em;
  height: 2em;
  line-height: 2em;
  vertical-align: middle;
}

.fa-stack-1x, .fa-stack-2x {
  position: absolute;
  left: 0;
  width: 100%;
  text-align: center;
}

.fa-stack-1x {
  line-height: inherit;
}

.fa-stack-2x {
  font-size: 2em;
}

.fa-inverse {
  color: #fff;
}

/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
   readers do not read off random characters that represent icons */
.fa-glass:before {
  content: "";
}

.fa-music:before {
  content: "";
}

.fa-search:before {
  content: "";
}

.fa-envelope-o:before {
  content: "";
}

.fa-heart:before {
  content: "";
}

.fa-star:before {
  content: "";
}

.fa-star-o:before {
  content: "";
}

.fa-user:before {
  content: "";
}

.fa-film:before {
  content: "";
}

.fa-th-large:before {
  content: "";
}

.fa-th:before {
  content: "";
}

.fa-th-list:before {
  content: "";
}

.fa-check:before {
  content: "";
}

.fa-remove:before,
.fa-close:before,
.fa-times:before {
  content: "";
}

.fa-search-plus:before {
  content: "";
}

.fa-search-minus:before {
  content: "";
}

.fa-power-off:before {
  content: "";
}

.fa-signal:before {
  content: "";
}

.fa-gear:before,
.fa-cog:before {
  content: "";
}

.fa-trash-o:before {
  content: "";
}

.fa-home:before {
  content: "";
}

.fa-file-o:before {
  content: "";
}

.fa-clock-o:before {
  content: "";
}

.fa-road:before {
  content: "";
}

.fa-download:before {
  content: "";
}

.fa-arrow-circle-o-down:before {
  content: "";
}

.fa-arrow-circle-o-up:before {
  content: "";
}

.fa-inbox:before {
  content: "";
}

.fa-play-circle-o:before {
  content: "";
}

.fa-rotate-right:before,
.fa-repeat:before {
  content: "";
}

.fa-refresh:before {
  content: "";
}

.fa-list-alt:before {
  content: "";
}

.fa-lock:before {
  content: "";
}

.fa-flag:before {
  content: "";
}

.fa-headphones:before {
  content: "";
}

.fa-volume-off:before {
  content: "";
}

.fa-volume-down:before {
  content: "";
}

.fa-volume-up:before {
  content: "";
}

.fa-qrcode:before {
  content: "";
}

.fa-barcode:before {
  content: "";
}

.fa-tag:before {
  content: "";
}

.fa-tags:before {
  content: "";
}

.fa-book:before {
  content: "";
}

.fa-bookmark:before {
  content: "";
}

.fa-print:before {
  content: "";
}

.fa-camera:before {
  content: "";
}

.fa-font:before {
  content: "";
}

.fa-bold:before {
  content: "";
}

.fa-italic:before {
  content: "";
}

.fa-text-height:before {
  content: "";
}

.fa-text-width:before {
  content: "";
}

.fa-align-left:before {
  content: "";
}

.fa-align-center:before {
  content: "";
}

.fa-align-right:before {
  content: "";
}

.fa-align-justify:before {
  content: "";
}

.fa-list:before {
  content: "";
}

.fa-dedent:before,
.fa-outdent:before {
  content: "";
}

.fa-indent:before {
  content: "";
}

.fa-video-camera:before {
  content: "";
}

.fa-photo:before,
.fa-image:before,
.fa-picture-o:before {
  content: "";
}

.fa-pencil:before {
  content: "";
}

.fa-map-marker:before {
  content: "";
}

.fa-adjust:before {
  content: "";
}

.fa-tint:before {
  content: "";
}

.fa-edit:before,
.fa-pencil-square-o:before {
  content: "";
}

.fa-share-square-o:before {
  content: "";
}

.fa-check-square-o:before {
  content: "";
}

.fa-arrows:before {
  content: "";
}

.fa-step-backward:before {
  content: "";
}

.fa-fast-backward:before {
  content: "";
}

.fa-backward:before {
  content: "";
}

.fa-play:before {
  content: "";
}

.fa-pause:before {
  content: "";
}

.fa-stop:before {
  content: "";
}

.fa-forward:before {
  content: "";
}

.fa-fast-forward:before {
  content: "";
}

.fa-step-forward:before {
  content: "";
}

.fa-eject:before {
  content: "";
}

.fa-chevron-left:before {
  content: "";
}

.fa-chevron-right:before {
  content: "";
}

.fa-plus-circle:before {
  content: "";
}

.fa-minus-circle:before {
  content: "";
}

.fa-times-circle:before {
  content: "";
}

.fa-check-circle:before {
  content: "";
}

.fa-question-circle:before {
  content: "";
}

.fa-info-circle:before {
  content: "";
}

.fa-crosshairs:before {
  content: "";
}

.fa-times-circle-o:before {
  content: "";
}

.fa-check-circle-o:before {
  content: "";
}

.fa-ban:before {
  content: "";
}

.fa-arrow-left:before {
  content: "";
}

.fa-arrow-right:before {
  content: "";
}

.fa-arrow-up:before {
  content: "";
}

.fa-arrow-down:before {
  content: "";
}

.fa-mail-forward:before,
.fa-share:before {
  content: "";
}

.fa-expand:before {
  content: "";
}

.fa-compress:before {
  content: "";
}

.fa-plus:before {
  content: "";
}

.fa-minus:before {
  content: "";
}

.fa-asterisk:before {
  content: "";
}

.fa-exclamation-circle:before {
  content: "";
}

.fa-gift:before {
  content: "";
}

.fa-leaf:before {
  content: "";
}

.fa-fire:before {
  content: "";
}

.fa-eye:before {
  content: "";
}

.fa-eye-slash:before {
  content: "";
}

.fa-warning:before,
.fa-exclamation-triangle:before {
  content: "";
}

.fa-plane:before {
  content: "";
}

.fa-calendar:before {
  content: "";
}

.fa-random:before {
  content: "";
}

.fa-comment:before {
  content: "";
}

.fa-magnet:before {
  content: "";
}

.fa-chevron-up:before {
  content: "";
}

.fa-chevron-down:before {
  content: "";
}

.fa-retweet:before {
  content: "";
}

.fa-shopping-cart:before {
  content: "";
}

.fa-folder:before {
  content: "";
}

.fa-folder-open:before {
  content: "";
}

.fa-arrows-v:before {
  content: "";
}

.fa-arrows-h:before {
  content: "";
}

.fa-bar-chart-o:before,
.fa-bar-chart:before {
  content: "";
}

.fa-twitter-square:before {
  content: "";
}

.fa-facebook-square:before {
  content: "";
}

.fa-camera-retro:before {
  content: "";
}

.fa-key:before {
  content: "";
}

.fa-gears:before,
.fa-cogs:before {
  content: "";
}

.fa-comments:before {
  content: "";
}

.fa-thumbs-o-up:before {
  content: "";
}

.fa-thumbs-o-down:before {
  content: "";
}

.fa-star-half:before {
  content: "";
}

.fa-heart-o:before {
  content: "";
}

.fa-sign-out:before {
  content: "";
}

.fa-linkedin-square:before {
  content: "";
}

.fa-thumb-tack:before {
  content: "";
}

.fa-external-link:before {
  content: "";
}

.fa-sign-in:before {
  content: "";
}

.fa-trophy:before {
  content: "";
}

.fa-github-square:before {
  content: "";
}

.fa-upload:before {
  content: "";
}

.fa-lemon-o:before {
  content: "";
}

.fa-phone:before {
  content: "";
}

.fa-square-o:before {
  content: "";
}

.fa-bookmark-o:before {
  content: "";
}

.fa-phone-square:before {
  content: "";
}

.fa-twitter:before {
  content: "";
}

.fa-facebook-f:before,
.fa-facebook:before {
  content: "";
}

.fa-github:before {
  content: "";
}

.fa-unlock:before {
  content: "";
}

.fa-credit-card:before {
  content: "";
}

.fa-rss:before {
  content: "";
}

.fa-hdd-o:before {
  content: "";
}

.fa-bullhorn:before {
  content: "";
}

.fa-bell:before {
  content: "";
}

.fa-certificate:before {
  content: "";
}

.fa-hand-o-right:before {
  content: "";
}

.fa-hand-o-left:before {
  content: "";
}

.fa-hand-o-up:before {
  content: "";
}

.fa-hand-o-down:before {
  content: "";
}

.fa-arrow-circle-left:before {
  content: "";
}

.fa-arrow-circle-right:before {
  content: "";
}

.fa-arrow-circle-up:before {
  content: "";
}

.fa-arrow-circle-down:before {
  content: "";
}

.fa-globe:before {
  content: "";
}

.fa-wrench:before {
  content: "";
}

.fa-tasks:before {
  content: "";
}

.fa-filter:before {
  content: "";
}

.fa-briefcase:before {
  content: "";
}

.fa-arrows-alt:before {
  content: "";
}

.fa-group:before,
.fa-users:before {
  content: "";
}

.fa-chain:before,
.fa-link:before {
  content: "";
}

.fa-cloud:before {
  content: "";
}

.fa-flask:before {
  content: "";
}

.fa-cut:before,
.fa-scissors:before {
  content: "";
}

.fa-copy:before,
.fa-files-o:before {
  content: "";
}

.fa-paperclip:before {
  content: "";
}

.fa-save:before,
.fa-floppy-o:before {
  content: "";
}

.fa-square:before {
  content: "";
}

.fa-navicon:before,
.fa-reorder:before,
.fa-bars:before {
  content: "";
}

.fa-list-ul:before {
  content: "";
}

.fa-list-ol:before {
  content: "";
}

.fa-strikethrough:before {
  content: "";
}

.fa-underline:before {
  content: "";
}

.fa-table:before {
  content: "";
}

.fa-magic:before {
  content: "";
}

.fa-truck:before {
  content: "";
}

.fa-pinterest:before {
  content: "";
}

.fa-pinterest-square:before {
  content: "";
}

.fa-google-plus-square:before {
  content: "";
}

.fa-google-plus:before {
  content: "";
}

.fa-money:before {
  content: "";
}

.fa-caret-down:before {
  content: "";
}

.fa-caret-up:before {
  content: "";
}

.fa-caret-left:before {
  content: "";
}

.fa-caret-right:before {
  content: "";
}

.fa-columns:before {
  content: "";
}

.fa-unsorted:before,
.fa-sort:before {
  content: "";
}

.fa-sort-down:before,
.fa-sort-desc:before {
  content: "";
}

.fa-sort-up:before,
.fa-sort-asc:before {
  content: "";
}

.fa-envelope:before {
  content: "";
}

.fa-linkedin:before {
  content: "";
}

.fa-rotate-left:before,
.fa-undo:before {
  content: "";
}

.fa-legal:before,
.fa-gavel:before {
  content: "";
}

.fa-dashboard:before,
.fa-tachometer:before {
  content: "";
}

.fa-comment-o:before {
  content: "";
}

.fa-comments-o:before {
  content: "";
}

.fa-flash:before,
.fa-bolt:before {
  content: "";
}

.fa-sitemap:before {
  content: "";
}

.fa-umbrella:before {
  content: "";
}

.fa-paste:before,
.fa-clipboard:before {
  content: "";
}

.fa-lightbulb-o:before {
  content: "";
}

.fa-exchange:before {
  content: "";
}

.fa-cloud-download:before {
  content: "";
}

.fa-cloud-upload:before {
  content: "";
}

.fa-user-md:before {
  content: "";
}

.fa-stethoscope:before {
  content: "";
}

.fa-suitcase:before {
  content: "";
}

.fa-bell-o:before {
  content: "";
}

.fa-coffee:before {
  content: "";
}

.fa-cutlery:before {
  content: "";
}

.fa-file-text-o:before {
  content: "";
}

.fa-building-o:before {
  content: "";
}

.fa-hospital-o:before {
  content: "";
}

.fa-ambulance:before {
  content: "";
}

.fa-medkit:before {
  content: "";
}

.fa-fighter-jet:before {
  content: "";
}

.fa-beer:before {
  content: "";
}

.fa-h-square:before {
  content: "";
}

.fa-plus-square:before {
  content: "";
}

.fa-angle-double-left:before {
  content: "";
}

.fa-angle-double-right:before {
  content: "";
}

.fa-angle-double-up:before {
  content: "";
}

.fa-angle-double-down:before {
  content: "";
}

.fa-angle-left:before {
  content: "";
}

.fa-angle-right:before {
  content: "";
}

.fa-angle-up:before {
  content: "";
}

.fa-angle-down:before {
  content: "";
}

.fa-desktop:before {
  content: "";
}

.fa-laptop:before {
  content: "";
}

.fa-tablet:before {
  content: "";
}

.fa-mobile-phone:before,
.fa-mobile:before {
  content: "";
}

.fa-circle-o:before {
  content: "";
}

.fa-quote-left:before {
  content: "";
}

.fa-quote-right:before {
  content: "";
}

.fa-spinner:before {
  content: "";
}

.fa-circle:before {
  content: "";
}

.fa-mail-reply:before,
.fa-reply:before {
  content: "";
}

.fa-github-alt:before {
  content: "";
}

.fa-folder-o:before {
  content: "";
}

.fa-folder-open-o:before {
  content: "";
}

.fa-smile-o:before {
  content: "";
}

.fa-frown-o:before {
  content: "";
}

.fa-meh-o:before {
  content: "";
}

.fa-gamepad:before {
  content: "";
}

.fa-keyboard-o:before {
  content: "";
}

.fa-flag-o:before {
  content: "";
}

.fa-flag-checkered:before {
  content: "";
}

.fa-terminal:before {
  content: "";
}

.fa-code:before {
  content: "";
}

.fa-mail-reply-all:before,
.fa-reply-all:before {
  content: "";
}

.fa-star-half-empty:before,
.fa-star-half-full:before,
.fa-star-half-o:before {
  content: "";
}

.fa-location-arrow:before {
  content: "";
}

.fa-crop:before {
  content: "";
}

.fa-code-fork:before {
  content: "";
}

.fa-unlink:before,
.fa-chain-broken:before {
  content: "";
}

.fa-question:before {
  content: "";
}

.fa-info:before {
  content: "";
}

.fa-exclamation:before {
  content: "";
}

.fa-superscript:before {
  content: "";
}

.fa-subscript:before {
  content: "";
}

.fa-eraser:before {
  content: "";
}

.fa-puzzle-piece:before {
  content: "";
}

.fa-microphone:before {
  content: "";
}

.fa-microphone-slash:before {
  content: "";
}

.fa-shield:before {
  content: "";
}

.fa-calendar-o:before {
  content: "";
}

.fa-fire-extinguisher:before {
  content: "";
}

.fa-rocket:before {
  content: "";
}

.fa-maxcdn:before {
  content: "";
}

.fa-chevron-circle-left:before {
  content: "";
}

.fa-chevron-circle-right:before {
  content: "";
}

.fa-chevron-circle-up:before {
  content: "";
}

.fa-chevron-circle-down:before {
  content: "";
}

.fa-html5:before {
  content: "";
}

.fa-css3:before {
  content: "";
}

.fa-anchor:before {
  content: "";
}

.fa-unlock-alt:before {
  content: "";
}

.fa-bullseye:before {
  content: "";
}

.fa-ellipsis-h:before {
  content: "";
}

.fa-ellipsis-v:before {
  content: "";
}

.fa-rss-square:before {
  content: "";
}

.fa-play-circle:before {
  content: "";
}

.fa-ticket:before {
  content: "";
}

.fa-minus-square:before {
  content: "";
}

.fa-minus-square-o:before {
  content: "";
}

.fa-level-up:before {
  content: "";
}

.fa-level-down:before {
  content: "";
}

.fa-check-square:before {
  content: "";
}

.fa-pencil-square:before {
  content: "";
}

.fa-external-link-square:before {
  content: "";
}

.fa-share-square:before {
  content: "";
}

.fa-compass:before {
  content: "";
}

.fa-toggle-down:before,
.fa-caret-square-o-down:before {
  content: "";
}

.fa-toggle-up:before,
.fa-caret-square-o-up:before {
  content: "";
}

.fa-toggle-right:before,
.fa-caret-square-o-right:before {
  content: "";
}

.fa-euro:before,
.fa-eur:before {
  content: "";
}

.fa-gbp:before {
  content: "";
}

.fa-dollar:before,
.fa-usd:before {
  content: "";
}

.fa-rupee:before,
.fa-inr:before {
  content: "";
}

.fa-cny:before,
.fa-rmb:before,
.fa-yen:before,
.fa-jpy:before {
  content: "";
}

.fa-ruble:before,
.fa-rouble:before,
.fa-rub:before {
  content: "";
}

.fa-won:before,
.fa-krw:before {
  content: "";
}

.fa-bitcoin:before,
.fa-btc:before {
  content: "";
}

.fa-file:before {
  content: "";
}

.fa-file-text:before {
  content: "";
}

.fa-sort-alpha-asc:before {
  content: "";
}

.fa-sort-alpha-desc:before {
  content: "";
}

.fa-sort-amount-asc:before {
  content: "";
}

.fa-sort-amount-desc:before {
  content: "";
}

.fa-sort-numeric-asc:before {
  content: "";
}

.fa-sort-numeric-desc:before {
  content: "";
}

.fa-thumbs-up:before {
  content: "";
}

.fa-thumbs-down:before {
  content: "";
}

.fa-youtube-square:before {
  content: "";
}

.fa-youtube:before {
  content: "";
}

.fa-xing:before {
  content: "";
}

.fa-xing-square:before {
  content: "";
}

.fa-youtube-play:before {
  content: "";
}

.fa-dropbox:before {
  content: "";
}

.fa-stack-overflow:before {
  content: "";
}

.fa-instagram:before {
  content: "";
}

.fa-flickr:before {
  content: "";
}

.fa-adn:before {
  content: "";
}

.fa-bitbucket:before {
  content: "";
}

.fa-bitbucket-square:before {
  content: "";
}

.fa-tumblr:before {
  content: "";
}

.fa-tumblr-square:before {
  content: "";
}

.fa-long-arrow-down:before {
  content: "";
}

.fa-long-arrow-up:before {
  content: "";
}

.fa-long-arrow-left:before {
  content: "";
}

.fa-long-arrow-right:before {
  content: "";
}

.fa-apple:before {
  content: "";
}

.fa-windows:before {
  content: "";
}

.fa-android:before {
  content: "";
}

.fa-linux:before {
  content: "";
}

.fa-dribbble:before {
  content: "";
}

.fa-skype:before {
  content: "";
}

.fa-foursquare:before {
  content: "";
}

.fa-trello:before {
  content: "";
}

.fa-female:before {
  content: "";
}

.fa-male:before {
  content: "";
}

.fa-gittip:before,
.fa-gratipay:before {
  content: "";
}

.fa-sun-o:before {
  content: "";
}

.fa-moon-o:before {
  content: "";
}

.fa-archive:before {
  content: "";
}

.fa-bug:before {
  content: "";
}

.fa-vk:before {
  content: "";
}

.fa-weibo:before {
  content: "";
}

.fa-renren:before {
  content: "";
}

.fa-pagelines:before {
  content: "";
}

.fa-stack-exchange:before {
  content: "";
}

.fa-arrow-circle-o-right:before {
  content: "";
}

.fa-arrow-circle-o-left:before {
  content: "";
}

.fa-toggle-left:before,
.fa-caret-square-o-left:before {
  content: "";
}

.fa-dot-circle-o:before {
  content: "";
}

.fa-wheelchair:before {
  content: "";
}

.fa-vimeo-square:before {
  content: "";
}

.fa-turkish-lira:before,
.fa-try:before {
  content: "";
}

.fa-plus-square-o:before {
  content: "";
}

.fa-space-shuttle:before {
  content: "";
}

.fa-slack:before {
  content: "";
}

.fa-envelope-square:before {
  content: "";
}

.fa-wordpress:before {
  content: "";
}

.fa-openid:before {
  content: "";
}

.fa-institution:before,
.fa-bank:before,
.fa-university:before {
  content: "";
}

.fa-mortar-board:before,
.fa-graduation-cap:before {
  content: "";
}

.fa-yahoo:before {
  content: "";
}

.fa-google:before {
  content: "";
}

.fa-reddit:before {
  content: "";
}

.fa-reddit-square:before {
  content: "";
}

.fa-stumbleupon-circle:before {
  content: "";
}

.fa-stumbleupon:before {
  content: "";
}

.fa-delicious:before {
  content: "";
}

.fa-digg:before {
  content: "";
}

.fa-pied-piper:before {
  content: "";
}

.fa-pied-piper-alt:before {
  content: "";
}

.fa-drupal:before {
  content: "";
}

.fa-joomla:before {
  content: "";
}

.fa-language:before {
  content: "";
}

.fa-fax:before {
  content: "";
}

.fa-building:before {
  content: "";
}

.fa-child:before {
  content: "";
}

.fa-paw:before {
  content: "";
}

.fa-spoon:before {
  content: "";
}

.fa-cube:before {
  content: "";
}

.fa-cubes:before {
  content: "";
}

.fa-behance:before {
  content: "";
}

.fa-behance-square:before {
  content: "";
}

.fa-steam:before {
  content: "";
}

.fa-steam-square:before {
  content: "";
}

.fa-recycle:before {
  content: "";
}

.fa-automobile:before,
.fa-car:before {
  content: "";
}

.fa-cab:before,
.fa-taxi:before {
  content: "";
}

.fa-tree:before {
  content: "";
}

.fa-spotify:before {
  content: "";
}

.fa-deviantart:before {
  content: "";
}

.fa-soundcloud:before {
  content: "";
}

.fa-database:before {
  content: "";
}

.fa-file-pdf-o:before {
  content: "";
}

.fa-file-word-o:before {
  content: "";
}

.fa-file-excel-o:before {
  content: "";
}

.fa-file-powerpoint-o:before {
  content: "";
}

.fa-file-photo-o:before,
.fa-file-picture-o:before,
.fa-file-image-o:before {
  content: "";
}

.fa-file-zip-o:before,
.fa-file-archive-o:before {
  content: "";
}

.fa-file-sound-o:before,
.fa-file-audio-o:before {
  content: "";
}

.fa-file-movie-o:before,
.fa-file-video-o:before {
  content: "";
}

.fa-file-code-o:before {
  content: "";
}

.fa-vine:before {
  content: "";
}

.fa-codepen:before {
  content: "";
}

.fa-jsfiddle:before {
  content: "";
}

.fa-life-bouy:before,
.fa-life-buoy:before,
.fa-life-saver:before,
.fa-support:before,
.fa-life-ring:before {
  content: "";
}

.fa-circle-o-notch:before {
  content: "";
}

.fa-ra:before,
.fa-rebel:before {
  content: "";
}

.fa-ge:before,
.fa-empire:before {
  content: "";
}

.fa-git-square:before {
  content: "";
}

.fa-git:before {
  content: "";
}

.fa-hacker-news:before {
  content: "";
}

.fa-tencent-weibo:before {
  content: "";
}

.fa-qq:before {
  content: "";
}

.fa-wechat:before,
.fa-weixin:before {
  content: "";
}

.fa-send:before,
.fa-paper-plane:before {
  content: "";
}

.fa-send-o:before,
.fa-paper-plane-o:before {
  content: "";
}

.fa-history:before {
  content: "";
}

.fa-genderless:before,
.fa-circle-thin:before {
  content: "";
}

.fa-header:before {
  content: "";
}

.fa-paragraph:before {
  content: "";
}

.fa-sliders:before {
  content: "";
}

.fa-share-alt:before {
  content: "";
}

.fa-share-alt-square:before {
  content: "";
}

.fa-bomb:before {
  content: "";
}

.fa-soccer-ball-o:before,
.fa-futbol-o:before {
  content: "";
}

.fa-tty:before {
  content: "";
}

.fa-binoculars:before {
  content: "";
}

.fa-plug:before {
  content: "";
}

.fa-slideshare:before {
  content: "";
}

.fa-twitch:before {
  content: "";
}

.fa-yelp:before {
  content: "";
}

.fa-newspaper-o:before {
  content: "";
}

.fa-wifi:before {
  content: "";
}

.fa-calculator:before {
  content: "";
}

.fa-paypal:before {
  content: "";
}

.fa-google-wallet:before {
  content: "";
}

.fa-cc-visa:before {
  content: "";
}

.fa-cc-mastercard:before {
  content: "";
}

.fa-cc-discover:before {
  content: "";
}

.fa-cc-amex:before {
  content: "";
}

.fa-cc-paypal:before {
  content: "";
}

.fa-cc-stripe:before {
  content: "";
}

.fa-bell-slash:before {
  content: "";
}

.fa-bell-slash-o:before {
  content: "";
}

.fa-trash:before {
  content: "";
}

.fa-copyright:before {
  content: "";
}

.fa-at:before {
  content: "";
}

.fa-eyedropper:before {
  content: "";
}

.fa-paint-brush:before {
  content: "";
}

.fa-birthday-cake:before {
  content: "";
}

.fa-area-chart:before {
  content: "";
}

.fa-pie-chart:before {
  content: "";
}

.fa-line-chart:before {
  content: "";
}

.fa-lastfm:before {
  content: "";
}

.fa-lastfm-square:before {
  content: "";
}

.fa-toggle-off:before {
  content: "";
}

.fa-toggle-on:before {
  content: "";
}

.fa-bicycle:before {
  content: "";
}

.fa-bus:before {
  content: "";
}

.fa-ioxhost:before {
  content: "";
}

.fa-angellist:before {
  content: "";
}

.fa-cc:before {
  content: "";
}

.fa-shekel:before,
.fa-sheqel:before,
.fa-ils:before {
  content: "";
}

.fa-meanpath:before {
  content: "";
}

.fa-buysellads:before {
  content: "";
}

.fa-connectdevelop:before {
  content: "";
}

.fa-dashcube:before {
  content: "";
}

.fa-forumbee:before {
  content: "";
}

.fa-leanpub:before {
  content: "";
}

.fa-sellsy:before {
  content: "";
}

.fa-shirtsinbulk:before {
  content: "";
}

.fa-simplybuilt:before {
  content: "";
}

.fa-skyatlas:before {
  content: "";
}

.fa-cart-plus:before {
  content: "";
}

.fa-cart-arrow-down:before {
  content: "";
}

.fa-diamond:before {
  content: "";
}

.fa-ship:before {
  content: "";
}

.fa-user-secret:before {
  content: "";
}

.fa-motorcycle:before {
  content: "";
}

.fa-street-view:before {
  content: "";
}

.fa-heartbeat:before {
  content: "";
}

.fa-venus:before {
  content: "";
}

.fa-mars:before {
  content: "";
}

.fa-mercury:before {
  content: "";
}

.fa-transgender:before {
  content: "";
}

.fa-transgender-alt:before {
  content: "";
}

.fa-venus-double:before {
  content: "";
}

.fa-mars-double:before {
  content: "";
}

.fa-venus-mars:before {
  content: "";
}

.fa-mars-stroke:before {
  content: "";
}

.fa-mars-stroke-v:before {
  content: "";
}

.fa-mars-stroke-h:before {
  content: "";
}

.fa-neuter:before {
  content: "";
}

.fa-facebook-official:before {
  content: "";
}

.fa-pinterest-p:before {
  content: "";
}

.fa-whatsapp:before {
  content: "";
}

.fa-server:before {
  content: "";
}

.fa-user-plus:before {
  content: "";
}

.fa-user-times:before {
  content: "";
}

.fa-hotel:before,
.fa-bed:before {
  content: "";
}

.fa-viacoin:before {
  content: "";
}

.fa-train:before {
  content: "";
}

.fa-subway:before {
  content: "";
}

.fa-medium:before {
  content: "";
}

/*!
 * compass setting
 */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

html {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}

q, blockquote {
  quotes: none;
}
q:before, q:after, blockquote:before, blockquote:after {
  content: "";
  content: none;
}

a img {
  border: none;
}

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block;
}

/* clearfix extend */
.clearfix {
  *zoom: 1;
}
.clearfix:after {
  clear: both;
  content: " ";
  display: block;
  font-size: 0;
  height: 0;
  visibility: hidden;
}

/* opacity extend */
/* ******************************************
baseTag.scss
要素セレクタに対しての基本スタイルを管理
****************************************** */
/* -------------------------------------------
全体に関する指定
------------------------------------------- */
body {
  color: #333;
  font-family: 'メイリオ',Meiryo,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro',Verdana,'ＭＳ Ｐゴシック','MS PGothic',sans-serif;
  font-size: 82%;
  line-height: 1.8;
}
@media only screen and (min-width: 500px) and (max-width: 787px) {
  body {
    font-size: 16px;
  }
}
@media only screen and (max-width: 499px) {
  body {
    font-size: 16px;
  }
}

@media print {
  body {
    font-size: 13pt;
    width: 990px;
  }

  #header {
    display: none;
  }
}
/* -------------------------------------------
block要素
------------------------------------------- */
p {
  margin-bottom: 1em;
}
p:last-child {
  margin-bottom: 0;
}

table th {
  vertical-align: top;
}

li {
  list-style: none;
}

/* -------------------------------------------
inline要素
------------------------------------------- */
strong, b {
  font-weight: bold;
}

a:link {
  color: #0074be;
  text-decoration: underline;
}
a:visited {
  color: #0074be;
}
a:hover {
  text-decoration: none;
}

sup {
  bottom: -0.25em;
  font-size: 75%;
  line-height: 0;
  position: relative;
  top: -0.5em;
}

/* -------------------------------------------
置換要素
------------------------------------------- */
label {
  cursor: pointer;
}
label + label {
  margin-left: 1em;
}

img {
  vertical-align: top;
}

input[type=text], input[type=password] {
  border: 1px solid #ccc;
  margin: 0;
  padding: 5px 0;
}
input[type=submit], input[type=button], input[type=reset] {
  cursor: pointer;
  font-weight: bold;
  margin: 0;
  padding: 5px 10px;
  vertical-align: top;
}
input[type=submit] + input[type=submit],
input[type=submit] + input[type=button],
input[type=submit] + input[type=reset], input[type=button] + input[type=submit],
input[type=button] + input[type=button],
input[type=button] + input[type=reset], input[type=reset] + input[type=submit],
input[type=reset] + input[type=button],
input[type=reset] + input[type=reset] {
  margin-left: 1em;
}
label input[type=radio], label input[type=checkbox] {
  cursor: pointer;
  vertical-align: text-top;
}

/*
 * jQuery FlexSlider v2.4.0
 * http://www.woothemes.com/flexslider/
 *
 * Copyright 2012 WooThemes
 * Free to use under the GPLv2 and later license.
 * http://www.gnu.org/licenses/gpl-2.0.html
 *
 * Contributing author: Tyler Smith (@mbmufffin)
 * 
 */
/* ====================================================================================================================
 * RESETS
 * ====================================================================================================================*/
.flex-container a:hover,
.flex-slider a:hover,
.flex-container a:focus,
.flex-slider a:focus {
  outline: none;
}

.slides,
.slides > li,
.flex-control-nav,
.flex-direction-nav {
  margin: 0;
  padding: 0;
  list-style: none;
}

.flex-pauseplay span {
  text-transform: capitalize;
}

/* ====================================================================================================================
 * BASE STYLES
 * ====================================================================================================================*/
.flexslider {
  margin: 0;
  padding: 0;
}

.flexslider .slides > li {
  display: none;
  -webkit-backface-visibility: hidden;
}

.flexslider .slides img {
  width: 100%;
  display: block;
}

.flexslider .slides:after {
  content: "\0020";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0;
}

html[xmlns] .flexslider .slides {
  display: block;
}

* html .flexslider .slides {
  height: 1%;
}

.no-js .flexslider .slides > li:first-child {
  display: block;
}

/* ====================================================================================================================
 * DEFAULT THEME
 * ====================================================================================================================*/
.flexslider {
  margin: 0 0 40px;
  background: #ffffff;
  border: 4px solid #ffffff;
  position: relative;
  zoom: 1;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  -webkit-box-shadow: "" 0 1px 4px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: "" 0 1px 4px rgba(0, 0, 0, 0.2);
  -o-box-shadow: "" 0 1px 4px rgba(0, 0, 0, 0.2);
  box-shadow: "" 0 1px 4px rgba(0, 0, 0, 0.2);
}

.flexslider .slides {
  zoom: 1;
}

.flexslider .slides img {
  height: auto;
}

.flex-viewport {
  max-height: 2000px;
  -webkit-transition: all 1s ease;
  -moz-transition: all 1s ease;
  -ms-transition: all 1s ease;
  -o-transition: all 1s ease;
  transition: all 1s ease;
}

.loading .flex-viewport {
  max-height: 300px;
}

.carousel li {
  margin-right: 5px;
}

.flex-control-nav {
  width: 100%;
  position: absolute;
  bottom: -40px;
  text-align: center;
}

.flex-control-nav li {
  margin: 0 6px;
  display: inline-block;
  zoom: 1;
  *display: inline;
}

.flex-control-paging li a {
  width: 11px;
  height: 11px;
  display: block;
  background: #666;
  background: rgba(0, 0, 0, 0.5);
  cursor: pointer;
  text-indent: -9999px;
  -webkit-box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.3);
  -moz-box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.3);
  -o-box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.3);
  box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.3);
  -webkit-border-radius: 20px;
  -moz-border-radius: 20px;
  border-radius: 20px;
}

.flex-control-paging li a:hover {
  background: #ccc;
}

.flex-control-paging li a.flex-active {
  background: #193360;
  cursor: default;
}

/* ====================================================================================================================
 * RESPONSIVE
 * ====================================================================================================================*/
@media screen and (max-width: 860px) {
  .flex-direction-nav .flex-prev {
    opacity: 1;
    left: 10px;
  }

  .flex-direction-nav .flex-next {
    opacity: 1;
    right: 10px;
  }
}
/* ******************************************
layout.scss
プロジェクトのレイアウト（ユニークなもの）を管理します
※blockの接頭辞には、「l-」を付与
****************************************** */
/*
	@include mQuery_pc {
	}
	@include mQuery_tablet {
	}
	@include mQuery_sp {
	}
*/
/* -------------------------------------------
印刷用
------------------------------------------- */
/* -------------------------------------------
header
------------------------------------------- */
/* メインヘッダー */
.l-header {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.95);
  border-bottom: 1px solid #193360;
  box-sizing: border-box;
  left: 0;
  height: 60px;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 100;
}
.js .l-header {
  top: -60px;
}
.l-header:after {
  border-bottom: 3px solid rgba(0, 0, 0, 0.05);
  content: '';
  display: block;
  position: absolute;
  bottom: -4px;
  width: 100%;
}
@media only screen and (min-width: 788px) {
  .l-header {
    height: 80px;
    -moz-transition: height 0.3s;
    -o-transition: height 0.3s;
    -webkit-transition: height 0.3s;
    transition: height 0.3s;
  }
  .l-header.is-small {
    height: 50px;
  }
  .js .l-header {
    top: -83px;
  }
}
@media print {
  .l-header {
    height: 80px;
    -moz-transition: height 0.3s;
    -o-transition: height 0.3s;
    -webkit-transition: height 0.3s;
    transition: height 0.3s;
  }
  .l-header.is-small {
    height: 50px;
  }
  .js .l-header {
    top: -83px;
  }
}

/* ヘッダーコンテンツ（主にPCの時に使用） */
.l-header__inner {
  margin: 0 auto;
}
@media only screen and (min-width: 788px) {
  .l-header__inner {
    position: relative;
    max-width: 990px;
  }
}
@media print {
  .l-header__inner {
    position: relative;
    max-width: 990px;
  }
}

/* ヘッダーロゴ。PCの時にはサイズが可変 */
.l-header__logo {
  margin: 0;
}
.l-header__logo img {
  height: 20px;
  margin: 20px 0 0 10px;
  width: auto;
}
@media only screen and (min-width: 788px) {
  .l-header__logo a:hover {
    opacity: .6;
  }
  .l-header__logo img {
    height: auto;
    margin: 25px 0 0 20px;
    width: 110px;
    -moz-transition: all 0.5s;
    -o-transition: all 0.5s;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
  }
  .is-small .l-header__logo img {
    margin-top: 15px;
    width: 75px;
  }
}
@media print {
  .l-header__logo a:hover {
    opacity: .6;
  }
  .l-header__logo img {
    height: auto;
    margin: 25px 0 0 20px;
    width: 110px;
    -moz-transition: all 0.5s;
    -o-transition: all 0.5s;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
  }
  .is-small .l-header__logo img {
    margin-top: 15px;
    width: 75px;
  }
}

/* グローバルナビゲーション。デバイスサイズで大きくスタイルが変更 */
.l-gNav {
  z-index: 100;
  width: 100%;
  /* PC以外の時は、JSでスライド表示させるためデフォルトでは非表示 */
  /* PCの時はtable式可変表示 */
  /* リンクのレイアウトを調整 */
  /* アイコンの高さを調整 */
  /* アイコンのマージンで垂直揃えを実現させる */
  /* PCでのみスタイルを細かく設定 */
}
.l-gNav ul {
  display: none;
  background-color: rgba(25, 51, 96, 0.95);
  position: absolute;
  width: 100%;
  z-index: 100;
  /* PCの時は固定表示 */
  /* スクロールしたら高さを低くする */
}
@media only screen and (min-width: 788px) {
  .l-gNav ul {
    top: 0 !important;
    /* jsで設定した値を打ち消し*/
    display: table !important;
    /* jsで設定した値を打ち消し*/
    background: none;
    position: absolute;
    table-layout: fixed;
    text-align: center;
    width: 80%;
    /* right:0;だとIE9で正常に動作しないため */
    left: 0;
    margin-left: 20%;
  }
}
@media print {
  .l-gNav ul {
    top: 0 !important;
    /* jsで設定した値を打ち消し*/
    display: table !important;
    /* jsで設定した値を打ち消し*/
    background: none;
    position: absolute;
    table-layout: fixed;
    text-align: center;
    width: 80%;
    /* right:0;だとIE9で正常に動作しないため */
    left: 0;
    margin-left: 20%;
  }
}
.l-gNav li {
  display: block;
}
@media only screen and (min-width: 788px) {
  .l-gNav li {
    display: table-cell;
    overflow: hidden;
    position: relative;
    text-align: center;
    vertical-align: middle;
  }
  .is-small .l-gNav li {
    margin-top: 5px;
  }
  .l-gNav li:first-child a {
    border-left: 1px solid #eee;
  }
}
@media print {
  .l-gNav li {
    display: table-cell;
    overflow: hidden;
    position: relative;
    text-align: center;
    vertical-align: middle;
  }
  .is-small .l-gNav li {
    margin-top: 5px;
  }
  .l-gNav li:first-child a {
    border-left: 1px solid #eee;
  }
}
.l-gNav a {
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  color: #fff;
  display: block;
  padding: 10px;
  text-decoration: none;
  width: 100%;
}
@media only screen and (min-width: 788px) {
  .l-gNav a {
    border-right: 1px solid #eee;
    box-sizing: border-box;
    color: #193360;
    font-size: 1em;
    font-weight: bold;
    height: 79px;
    padding: 0;
    position: relative;
    -moz-transition: all 0.5s;
    -o-transition: all 0.5s;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
  }
  .l-gNav a:hover span {
    -moz-transform: rotate(10deg);
    -ms-transform: rotate(10deg);
    -webkit-transform: rotate(10deg);
    transform: rotate(10deg);
  }
  .is-small .l-gNav a {
    font-size: .9em;
    height: 49px;
  }
  .l-gNav a.is-active {
    color: #25b8cf;
  }
  .l-gNav a.is-active:before {
    background-color: #25b8cf;
    top: 0px;
    content: '';
    left: 0;
    height: 2px;
    position: absolute;
    width: 100%;
  }
}
@media print {
  .l-gNav a {
    border-right: 1px solid #eee;
    box-sizing: border-box;
    color: #193360;
    font-size: 1em;
    font-weight: bold;
    height: 79px;
    padding: 0;
    position: relative;
    -moz-transition: all 0.5s;
    -o-transition: all 0.5s;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
  }
  .l-gNav a:hover span {
    -moz-transform: rotate(10deg);
    -ms-transform: rotate(10deg);
    -webkit-transform: rotate(10deg);
    transform: rotate(10deg);
  }
  .is-small .l-gNav a {
    font-size: .9em;
    height: 49px;
  }
  .l-gNav a.is-active {
    color: #25b8cf;
  }
  .l-gNav a.is-active:before {
    background-color: #25b8cf;
    top: 0px;
    content: '';
    left: 0;
    height: 2px;
    position: absolute;
    width: 100%;
  }
}
@media only screen and (min-width: 788px) {
  .l-gNav span {
    display: block;
    font-size: 1.2em;
    padding-top: 20px;
    height: 20px;
    margin: 0 auto;
    -moz-transition: padding 0.5s;
    -o-transition: padding 0.5s;
    -webkit-transition: padding 0.5s;
    transition: padding 0.5s;
  }
  .is-small .l-gNav span {
    font-size: 1em;
    height: 16px;
    padding-top: 8px;
  }
}
@media print {
  .l-gNav span {
    display: block;
    font-size: 1.2em;
    padding-top: 20px;
    height: 20px;
    margin: 0 auto;
    -moz-transition: padding 0.5s;
    -o-transition: padding 0.5s;
    -webkit-transition: padding 0.5s;
    transition: padding 0.5s;
  }
  .is-small .l-gNav span {
    font-size: 1em;
    height: 16px;
    padding-top: 8px;
  }
}

/* gNavを表示させるボタン */
/* PC以外でのみ表示 */
.l-gNav__showBtn {
  background-color: #eee;
  border-radius: 8px;
  cursor: pointer;
  height: 36px;
  margin: -18px 0 0 0;
  line-height: 36px;
  padding: 0 10px;
  position: absolute;
  right: 20px;
  top: 50%;
}
.l-gNav__showBtn span {
  font-size: 1.5em;
  vertical-align: -2px;
}
@media only screen and (min-width: 788px) {
  .l-gNav__showBtn {
    display: none;
  }
}
@media print {
  .l-gNav__showBtn {
    display: none;
  }
}

/* -------------------------------------------
footer
------------------------------------------- */
.l-footer {
  background-color: #193360;
  position: relative;
  text-align: center;
  margin-top: 100px;
  width: 100%;
}

.l-pageTop {
  margin-top: -15px;
  text-align: center;
  position: absolute;
  z-index: 100;
  width: 100%;
}
.l-pageTop a {
  background-color: #193360;
  border-radius: 50%;
  color: #fff;
  font-size: 1.5em;
  padding: .5em 1.5em;
}

.l-copy {
  border-top: 1px solid #214480;
  color: #fff;
  color: rgba(255, 255, 255, 0.7);
  display: block;
  height: 60px;
  padding-top: 50px;
  width: 100%;
}

/* ******************************************
module.scss
プロジェクト内のモジュールをまとめて指定します
※blockの接頭辞には、「m-」を付与
****************************************** */
/* 大見出し
---------------------------------*/
.m-mainHead {
  color: #193360;
  font-size: 1.5em;
  margin-bottom: 20px;
  position: relative;
}
@media only screen and (min-width: 788px) {
  .m-mainHead {
    font-size: 2em;
    margin-bottom: 1.5em;
  }
}
@media print {
  .m-mainHead {
    font-size: 2em;
    margin-bottom: 1.5em;
  }
}
.m-mainHead:before {
  border-bottom: 8px solid rgba(37, 184, 207, 0.3);
  bottom: -4px;
  content: '';
  display: inline-block;
  left: -.2em;
  position: absolute;
  width: 100%;
  z-index: -1;
  -moz-transform: rotate(-1deg);
  -ms-transform: rotate(-1deg);
  -webkit-transform: rotate(-1deg);
  transform: rotate(-1deg);
}
.m-mainHead:after {
  border-bottom: 8px solid rgba(37, 184, 207, 0.2);
  bottom: -8px;
  content: '';
  display: inline-block;
  left: -.2em;
  position: absolute;
  width: 95%;
  z-index: -2;
  -moz-transform: rotate(0.2deg);
  -ms-transform: rotate(0.2deg);
  -webkit-transform: rotate(0.2deg);
  transform: rotate(0.2deg);
}

/* 各見出しパターン
---------------------------------*/
.m-headType01 {
  color: #25b8cf;
  font-size: 1.2em;
  font-weight: bold;
  display: inline-block;
  line-height: 1.5;
  margin-bottom: .7em;
}
@media only screen and (min-width: 788px) {
  .m-headType01 {
    font-size: 1.5em;
    margin-bottom: 1em;
  }
}
@media print {
  .m-headType01 {
    font-size: 1.5em;
    margin-bottom: 1em;
  }
}

.m-headType02 {
  background-color: #E7EAEE;
  color: #193360;
  display: inline-block;
  font-weight: bold;
  font-size: 1.1em;
  margin-bottom: 1em;
  padding: .5em 1em;
}
@media only screen and (min-width: 788px) {
  .m-headType02 {
    font-size: 1.3em;
    margin-bottom: 1.5em;
  }
}
@media print {
  .m-headType02 {
    font-size: 1.3em;
    margin-bottom: 1.5em;
  }
}

.m-headType03 {
  border-left: 3px solid #193360;
  color: #193360;
  font-size: 1.1em;
  font-weight: bold;
  margin-bottom: 0.7em;
  padding: 0 0 0 .7em;
}

.m-headType04 {
  border-bottom: 1px dashed #ccc;
  font-weight: bold;
  margin-bottom: 0.7em;
  padding-bottom: 0.3em;
}
.m-headType04:before {
  content: '■';
}

.m-headType05 {
  color: #193360;
  font-size: 1.3em;
  font-weight: bold;
  margin-bottom: 15px;
  padding: 0 0 0px 25px;
  position: relative;
}
.m-headType05:before {
  content: '';
  background-color: #193360;
  display: block;
  height: 10px;
  left: 0;
  top: 8px;
  position: absolute;
  width: 10px;
  z-index: 2;
}
.m-headType05:after {
  content: '';
  background-color: #25b8cf;
  display: block;
  height: 10px;
  left: 4px;
  top: 12px;
  position: absolute;
  width: 10px;
  z-index: 1;
}

/* リード文
---------------------------------*/
.m-readBody {
  border: 1px dashed #bbb;
  padding: 20px;
  margin-bottom: 30px;
}

/* 改行設定
---------------------------------*/
/* スマホの時のみ改行をする */
.m-brSp {
  display: none;
}
@media only screen and (max-width: 499px) {
  .m-brSp {
    display: block;
  }
}

/* タブレットの時のみ改行をする */
.m-brTab {
  display: none;
}
@media only screen and (min-width: 500px) and (max-width: 787px) {
  .m-brTab {
    display: block;
  }
}

/* PCの時のみ改行をする */
.m-brPc {
  display: none;
}
@media only screen and (min-width: 788px) {
  .m-brPc {
    display: block;
  }
}
@media print {
  .m-brPc {
    display: block;
  }
}

/* 背景ストライプ柄
---------------------------------*/
.m-stripeBox {
  background-color: #fff;
  box-sizing: border-box;
  border: 4px solid #193360;
  border-radius: 10px;
  margin: 0 10px 40px 0;
  padding: 10px;
  position: relative;
  text-align: center;
}
@media only screen and (min-width: 788px) {
  .m-stripeBox {
    padding: 30px;
    margin-bottom: 60px;
  }
  .m-stripeBox p {
    font-size: 1.1em;
  }
}
@media print {
  .m-stripeBox {
    padding: 30px;
    margin-bottom: 60px;
  }
  .m-stripeBox p {
    font-size: 1.1em;
  }
}
.m-stripeBox:before {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMCcgaGVpZ2h0PScyMCcgdmlld0JveD0nMCAwIDUgMTAnPgoJPHJlY3Qgd2lkdGg9JzExMCUnIHg9Jy01JScgeT0nLTUlJyBoZWlnaHQ9JzExMCUnIGZpbGw9JyNmZmZmZmYnLz4KCTxsaW5lIHgxPSctMicgeTE9JzEnIHgyPSc3JyB5Mj0nMTAnIHN0cm9rZT0nIzE5MzM2MCcgc3Ryb2tlLXdpZHRoPScxJy8+Cgk8bGluZSB4MT0nLTInIHkxPSc2JyB4Mj0nNycgeTI9JzE1JyBzdHJva2U9JyMxOTMzNjAnIHN0cm9rZS13aWR0aD0nMScvPgoJPGxpbmUgeDE9Jy0yJyB5MT0nLTQnIHgyPSc3JyB5Mj0nNScgc3Ryb2tlPScjMTkzMzYwJyBzdHJva2Utd2lkdGg9JzEnLz4KPC9zdmc+");
  background-repeat: repeat;
  content: '';
  display: block;
  height: 100%;
  left: 12px;
  opacity: .8;
  position: absolute;
  bottom: -12px;
  width: 100%;
  z-index: -1;
}

/*20220209 追加*/
.m-stripeBox_text {
	font-size: 1.6em;
	font-weight: bold;
}


/* テキスト位置
---------------------------------*/
.m-textR {
  text-align: right;
}

.m-textC {
  text-align: center;
}

.m-textL {
  text-align: left;
}

/* ******************************************
parts.scss
プロジェクト内のページごとのパーツをまとめて管理
汎用性のあるものは_module.scssの方へ
****************************************** */
/* -------------------------------------------
共通設定
------------------------------------------- */
.page {
  border-top: 1px solid #ccc;
  padding-top: 80px;
  padding-bottom: 50px;
  position: relative;
  z-index: 1;
}
.page:before {
  border: 20px solid transparent;
  border-top: 20px solid #ccc;
  top: 0px;
  content: '';
  height: 0;
  left: 50%;
  margin-left: -20px;
  position: absolute;
  width: 0;
  z-index: 0;
}
.page:after {
  border: 20px solid transparent;
  border-top: 20px solid #fff;
  top: -1px;
  content: '';
  height: 0;
  left: 50%;
  margin-left: -20px;
  position: absolute;
  width: 0;
  z-index: 1;
}
@media only screen and (min-width: 788px) {
  .page {
    padding-bottom: 70px;
    padding-top: 90px;
    /* l-headerの高さ分+α */
  }
}
@media print {
  .page {
    padding-bottom: 70px;
    padding-top: 90px;
    /* l-headerの高さ分+α */
  }
}
.page.is-reverse {
  background: #193360;
}
.is-reverse + .page:after {
  border-top-color: #193360;
}

.page__inner {
  overflow: hidden;
  position: relative;
  margin: 0 auto;
  height: 100%;
  width: 90%;
  z-index: 10;
}
@media only screen and (min-width: 788px) {
  .page__inner {
    max-width: 990px;
  }
}
@media print {
  .page__inner {
    max-width: 990px;
  }
}
.is-reverse .page__inner {
  background-color: #fff;
  border-bottom: 10px solid #14284c;
  box-sizing: border-box;
  padding: 30px;
}

/* -------------------------------------------
トップページ
------------------------------------------- */
.p-siteTop {
  border-top: none;
  padding-top: 130px;
  padding-bottom: 50px;
  height: 260px;
}
.p-siteTop:before, .p-siteTop:after {
  content: none;
}
@media only screen and (min-width: 788px) {
  .p-siteTop {
    padding-bottom: 70px;
    padding-top: 250px;
    height: 390px;
  }
}
@media print {
  .p-siteTop {
    padding-bottom: 70px;
    padding-top: 250px;
    height: 390px;
  }
}

.p-siteTop__logo {
  /* 一部ブラウザでheightが上手く効かないバグがあるため、親, img, object全てにサイズを指定する... */
  height: 70px;
  margin: 0 auto;
  position: relative;
  width: 250px;
  /* fallback or 処理後 */
}
@media only screen and (min-width: 788px) {
  .p-siteTop__logo {
    height: 112px;
    width: 400px;
  }
}
@media print {
  .p-siteTop__logo {
    height: 112px;
    width: 400px;
  }
}
.p-siteTop__logo object {
  /* androidの一部機種ではobjectに直接サイズを指定しないと正しく動作しないため */
  left: 0;
  position: absolute;
  top: 0;
  z-index: 0;
  height: 70px;
  width: 250px;
}
@media only screen and (min-width: 788px) {
  .p-siteTop__logo object {
    height: 112px;
    width: 400px;
  }
}
@media print {
  .p-siteTop__logo object {
    height: 112px;
    width: 400px;
  }
}
.p-siteTop__logo img {
  left: 0;
  height: 70px;
  position: absolute;
  top: 0;
  width: 250px;
  z-index: 1;
}
@media only screen and (min-width: 788px) {
  .p-siteTop__logo img {
    height: 112px;
    width: 400px;
  }
}
@media print {
  .p-siteTop__logo img {
    height: 112px;
    width: 400px;
  }
}
.svg .p-siteTop__logo img, .js .p-siteTop__logo img {
  display: none;
}

.p-siteTop__catch {
  font-size: 1.1em;
  left: 0;
  letter-spacing: .2em;
  line-height: 1.7;
  position: absolute;
  margin: 0 auto;
  right: 0;
  text-align: center;
  top: 100px;
}
@media only screen and (min-width: 788px) {
  .p-siteTop__catch {
    font-size: 2em;
    top: 170px;
  }
}
@media print {
  .p-siteTop__catch {
    font-size: 2em;
    top: 170px;
  }
}

/* キャッチコピーメイン */
.p-siteTop__mainText {
  position: relative;
  display: block;
  text-shadow: 0 3px 0 #fff;
}
.p-siteTop__mainText span {
  color: #193360;
  position: relative;
}
.p-siteTop__mainText span:before {
  border-bottom: 8px solid rgba(37, 184, 207, 0.3);
  bottom: 6px;
  content: '';
  display: block;
  left: -.2em;
  position: absolute;
  width: 100%;
  z-index: -1;
  -moz-transform: rotate(-1deg);
  -ms-transform: rotate(-1deg);
  -webkit-transform: rotate(-1deg);
  transform: rotate(-1deg);
}
.js .p-siteTop__mainText {
  opacity: 0;
}

/* キャッチコピーサブ*/
.p-siteTop__subText {
  font-size: 1.1em;
  display: inline-block;
  margin-top: 1em;
  position: relative;
}
@media only screen and (min-width: 788px) {
  .p-siteTop__subText {
    font-size: .9em;
  }
}
@media print {
  .p-siteTop__subText {
    font-size: .9em;
  }
}
.p-siteTop__subText:before {
  border-bottom: 10px solid rgba(255, 184, 1, 0.6);
  bottom: 6px;
  content: '';
  display: block;
  left: -.2em;
  position: 0 .2em;
  position: absolute;
  width: 100%;
  z-index: -1;
  -moz-transform: rotate(-1deg);
  -ms-transform: rotate(-1deg);
  -webkit-transform: rotate(-1deg);
  transform: rotate(-1deg);
}
.js .p-siteTop__subText {
  opacity: 0;
}

/* 矢印アイコン */
@-moz-keyframes scrollAnim {
  0% {
    -moz-transform: translate(0, 0);
    transform: translate(0, 0);
  }
  25% {
    -moz-transform: translate(0, 10px);
    transform: translate(0, 10px);
  }
  50% {
    -moz-transform: translate(0, 0);
    transform: translate(0, 0);
  }
  75% {
    -moz-transform: translate(0, 10px);
    transform: translate(0, 10px);
  }
  100% {
    -moz-transform: translate(0, 0);
    transform: translate(0, 0);
  }
}
@-webkit-keyframes scrollAnim {
  0% {
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
  }
  25% {
    -webkit-transform: translate(0, 10px);
    transform: translate(0, 10px);
  }
  50% {
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
  }
  75% {
    -webkit-transform: translate(0, 10px);
    transform: translate(0, 10px);
  }
  100% {
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
  }
}
@keyframes scrollAnim {
  0% {
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
  }
  25% {
    -moz-transform: translate(0, 10px);
    -ms-transform: translate(0, 10px);
    -webkit-transform: translate(0, 10px);
    transform: translate(0, 10px);
  }
  50% {
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
  }
  75% {
    -moz-transform: translate(0, 10px);
    -ms-transform: translate(0, 10px);
    -webkit-transform: translate(0, 10px);
    transform: translate(0, 10px);
  }
  100% {
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
  }
}
.p-siteTop__arrow {
  -moz-animation: scrollAnim 3s linear infinite;
  -webkit-animation: scrollAnim 3s linear infinite;
  animation: scrollAnim 3s linear infinite;
  bottom: 0;
  color: #193360;
  font-size: 2em;
  left: 0;
  position: absolute;
  right: 0;
  text-align: center;
}
.js .p-siteTop__arrow {
  display: none;
}

/* -------------------------------------------
事業案内ページ
------------------------------------------- */
.p-services__cat {
  margin-top: 30px;
}

.p-services__block {
  border: 5px solid #E7EAEE;
  box-sizing: border-box;
  margin: 0 0 4% 0;
  padding: 10px;
  text-align: center;
  width: 100%;
}
@media only screen and (min-width: 788px) {
  .p-services__block {
    padding: 20px;
    width: 48%;
    float: left;
  }
  .p-services__block:nth-of-type(even) {
    float: right;
  }
  .p-services__block.is-single {
    width: 100%;
  }
}
@media print {
  .p-services__block {
    padding: 20px;
    width: 48%;
    float: left;
  }
  .p-services__block:nth-of-type(even) {
    float: right;
  }
  .p-services__block.is-single {
    width: 100%;
  }
}

.p-services__blockHead {
  background-color: #E7EAEE;
  color: #193360;
  font-size: 1.2em;
  font-weight: bold;
  padding: .3em .5em;
  margin-bottom: .7em;
}

.p-services__blockIcon {
  border-bottom: 1px solid #E7EAEE;
  color: #193360;
  display: block;
  margin-bottom: 1em;
  padding-bottom: 1em;
}

.p-services__blockInner {
  text-align: left;
  margin: 20px 10px 0;
  /* PR・マーケティング, 直販サポート */
}
.is-pr .p-services__blockInner, .is-support .p-services__blockInner {
  text-align: left;
}
.is-pr .p-services__blockInner ul, .is-support .p-services__blockInner ul {
  margin: 0 0 1.5em 2em;
}
.is-pr .p-services__blockInner ul ul, .is-support .p-services__blockInner ul ul {
  margin-bottom: 0;
}
.is-pr .p-services__blockInner li, .is-support .p-services__blockInner li {
  list-style-type: disc;
}

/* -------------------------------------------
実績ページ
------------------------------------------- */
.p-works__cat {
  margin-top: 30px;
}

.p-works__block {
  border: 5px solid #E7EAEE;
  box-sizing: border-box;
  margin: 0 0 4% 0;
  padding: 10px;
  text-align: center;
  width: 100%;
}
@media only screen and (min-width: 788px) {
  .p-works__block {
    padding: 20px;
    width: 48%;
    /* flexが聞かない時のfallback(+jsで高さをそろえる) */
    float: left;
  }
  .p-works__block:nth-of-type(even) {
    float: right;
  }
  .p-works__block.is-single {
    width: 100%;
  }
}
@media print {
  .p-works__block {
    padding: 20px;
    width: 48%;
    /* flexが聞かない時のfallback(+jsで高さをそろえる) */
    float: left;
  }
  .p-works__block:nth-of-type(even) {
    float: right;
  }
  .p-works__block.is-single {
    width: 100%;
  }
}

.p-works__slider {
  border: none;
  margin: 0 auto 45px;
  max-width: 200px;
}
.p-works__slider img {
  max-width: 100%;
}
@media only screen and (min-width: 788px) {
  .p-works__slider {
    max-width: 425px;
  }
}
@media print {
  .p-works__slider {
    max-width: 425px;
  }
}

.p-works__blockHead {
  background-color: #E7EAEE;
  color: #193360;
  font-size: 1.2em;
  font-weight: bold;
  padding: .3em .5em;
  margin-bottom: 1em;
}

.p-works__blockInner {
  border-top: 1px solid #E7EAEE;
  text-align: left;
  margin: 20px 10px 0;
}
.p-works__blockInner ul {
  text-align: left;
  margin-bottom: 1em;
}
.p-works__blockInner li {
  display: inline;
}
.p-works__blockInner li + li:before {
  content: ' / ';
}
@media only screen and (min-width: 788px) {
  .p-works__blockInner {
    border-radius: 6px;
    margin: 0;
    padding: 15px 0;
  }
  .p-works__blockInner ul {
    margin-bottom: 1.5em;
  }
  .p-works__blockInner li {
    display: list-item;
    list-style-type: disc !important;
    margin-left: 1.5em;
  }
  .p-works__blockInner li + li:before {
    content: '';
  }
}
@media print {
  .p-works__blockInner {
    border-radius: 6px;
    margin: 0;
    padding: 15px 0;
  }
  .p-works__blockInner ul {
    margin-bottom: 1.5em;
  }
  .p-works__blockInner li {
    display: list-item;
    list-style-type: disc !important;
    margin-left: 1.5em;
  }
  .p-works__blockInner li + li:before {
    content: '';
  }
}

.p-works__blockHeadSub {
  color: #193360;
  font-size: 1.1em;
  font-weight: bold;
}
@media only screen and (min-width: 788px) {
  .p-works__blockHeadSub {
    margin-bottom: 0.5em;
  }
}
@media print {
  .p-works__blockHeadSub {
    margin-bottom: 0.5em;
  }
}

/* -------------------------------------------
会社概要ページ
------------------------------------------- */
.p-company__profile table {
  width: 100%;
}
.p-company__profile th {
  background-color: #E7EAEE;
  font-weight: bold;
  white-space: nowrap;
}
.p-company__profile th, .p-company__profile td {
  border-bottom: 1px solid #ccc;
  font-size: .8em;
  padding: .2em .5em;
}
.p-company__profile tr:last-child th, .p-company__profile tr:last-child td {
  border: none;
}
@media only screen and (min-width: 500px) and (max-width: 787px) {
  .p-company__profile th, .p-company__profile td {
    font-size: 1em;
    padding: .5em 1em;
  }
}
@media only screen and (min-width: 788px) {
  .p-company__profile th, .p-company__profile td {
    font-size: 1em;
    padding: .5em 1em;
  }
}
@media print {
  .p-company__profile th, .p-company__profile td {
    font-size: 1em;
    padding: .5em 1em;
  }
}

/* -------------------------------------------
お問い合わせページ
------------------------------------------- */
/* 別ページでも使えるよう接頭辞は付けない */
.contactBtn {
  text-align: center;
  margin-bottom: 4em;
}

.contactBtn__inner {
  background-color: #2ecc71;
  border-radius: 6px;
  color: #fff;
  font-size: 1.3em;
  display: inline-block;
  text-decoration: none;
  padding: .7em 1.5em;
  position: relative;
  white-space: nowrap;
  -moz-transition: all 0.3s;
  -o-transition: all 0.3s;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
@media only screen and (min-width: 788px) {
  .contactBtn__inner {
    margin-bottom: 4em;
    padding: .7em 7em;
  }
}
@media print {
  .contactBtn__inner {
    margin-bottom: 4em;
    padding: .7em 7em;
  }
}

/* privacy, terms */
.p-contact__info {
  margin-bottom: 3em;
}

.p-contact__infoBody {
  border: 5px solid #E7EAEE;
  overflow-y: scroll;
  padding: 20px;
  max-height: 300px;
  margin: 0 20px;
}
.p-contact__infoBody p {
  max-width: 700px;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (min-width: 788px) {
  .p-contact__infoBody {
    margin: 0;
  }
}
@media print {
  .p-contact__infoBody {
    margin: 0;
  }
}
