@charset "UTF-8";
/*!
 *  Font Awesome 4.7.0 by @davegandy - http://fontawesome.io - @fontawesome
 *  License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
 */
/* FONT PATH
 * -------------------------- */
@import url("https://fonts.googleapis.com/css?family=Roboto+Condensed:300,400,700");
@font-face {
  font-family: 'FontAwesome';
  src: url("../fonts/fontawesome-webfont.eot?v=4.7.0");
  src: url("../fonts/fontawesome-webfont.eot?#iefix&v=4.7.0") format("embedded-opentype"), url("../fonts/fontawesome-webfont.woff2?v=4.7.0") format("woff2"), url("../fonts/fontawesome-webfont.woff?v=4.7.0") format("woff"), url("../fonts/fontawesome-webfont.ttf?v=4.7.0") format("truetype"), url("../fonts/fontawesome-webfont.svg?v=4.7.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; }

/* makes the font 33% larger relative to the icon container */
.fa-lg {
  font-size: 1.33333333em;
  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.28571429em;
  text-align: center; }

.fa-ul {
  padding-left: 0;
  margin-left: 2.14285714em;
  list-style-type: none; }

.fa-ul > li {
  position: relative; }

.fa-li {
  position: absolute;
  left: -2.14285714em;
  width: 2.14285714em;
  top: 0.14285714em;
  text-align: center; }

.fa-li.fa-lg {
  left: -1.85714286em; }

.fa-border {
  padding: .2em .25em .15em;
  border: solid 0.08em #eeeeee;
  border-radius: .1em; }

.fa-pull-left {
  float: left; }

.fa-pull-right {
  float: right; }

.fa.fa-pull-left {
  margin-right: .3em; }

.fa.fa-pull-right {
  margin-left: .3em; }

/* Deprecated as of 4.4.0 */
.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 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg); }

.fa-rotate-180 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg); }

.fa-rotate-270 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";
  -webkit-transform: rotate(270deg);
  -ms-transform: rotate(270deg);
  transform: rotate(270deg); }

.fa-flip-horizontal {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";
  -webkit-transform: scale(-1, 1);
  -ms-transform: scale(-1, 1);
  transform: scale(-1, 1); }

.fa-flip-vertical {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
  -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: #ffffff; }

/* 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: "\f000"; }

.fa-music:before {
  content: "\f001"; }

.fa-search:before {
  content: "\f002"; }

.fa-envelope-o:before {
  content: "\f003"; }

.fa-heart:before {
  content: "\f004"; }

.fa-star:before {
  content: "\f005"; }

.fa-star-o:before {
  content: "\f006"; }

.fa-user:before {
  content: "\f007"; }

.fa-film:before {
  content: "\f008"; }

.fa-th-large:before {
  content: "\f009"; }

.fa-th:before {
  content: "\f00a"; }

.fa-th-list:before {
  content: "\f00b"; }

.fa-check:before {
  content: "\f00c"; }

.fa-remove:before,
.fa-close:before,
.fa-times:before {
  content: "\f00d"; }

.fa-search-plus:before {
  content: "\f00e"; }

.fa-search-minus:before {
  content: "\f010"; }

.fa-power-off:before {
  content: "\f011"; }

.fa-signal:before {
  content: "\f012"; }

.fa-gear:before,
.fa-cog:before {
  content: "\f013"; }

.fa-trash-o:before {
  content: "\f014"; }

.fa-home:before {
  content: "\f015"; }

.fa-file-o:before {
  content: "\f016"; }

.fa-clock-o:before {
  content: "\f017"; }

.fa-road:before {
  content: "\f018"; }

.fa-download:before {
  content: "\f019"; }

.fa-arrow-circle-o-down:before {
  content: "\f01a"; }

.fa-arrow-circle-o-up:before {
  content: "\f01b"; }

.fa-inbox:before {
  content: "\f01c"; }

.fa-play-circle-o:before {
  content: "\f01d"; }

.fa-rotate-right:before,
.fa-repeat:before {
  content: "\f01e"; }

.fa-refresh:before {
  content: "\f021"; }

.fa-list-alt:before {
  content: "\f022"; }

.fa-lock:before {
  content: "\f023"; }

.fa-flag:before {
  content: "\f024"; }

.fa-headphones:before {
  content: "\f025"; }

.fa-volume-off:before {
  content: "\f026"; }

.fa-volume-down:before {
  content: "\f027"; }

.fa-volume-up:before {
  content: "\f028"; }

.fa-qrcode:before {
  content: "\f029"; }

.fa-barcode:before {
  content: "\f02a"; }

.fa-tag:before {
  content: "\f02b"; }

.fa-tags:before {
  content: "\f02c"; }

.fa-book:before {
  content: "\f02d"; }

.fa-bookmark:before {
  content: "\f02e"; }

.fa-print:before {
  content: "\f02f"; }

.fa-camera:before {
  content: "\f030"; }

.fa-font:before {
  content: "\f031"; }

.fa-bold:before {
  content: "\f032"; }

.fa-italic:before {
  content: "\f033"; }

.fa-text-height:before {
  content: "\f034"; }

.fa-text-width:before {
  content: "\f035"; }

.fa-align-left:before {
  content: "\f036"; }

.fa-align-center:before {
  content: "\f037"; }

.fa-align-right:before {
  content: "\f038"; }

.fa-align-justify:before {
  content: "\f039"; }

.fa-list:before {
  content: "\f03a"; }

.fa-dedent:before,
.fa-outdent:before {
  content: "\f03b"; }

.fa-indent:before {
  content: "\f03c"; }

.fa-video-camera:before {
  content: "\f03d"; }

.fa-photo:before,
.fa-image:before,
.fa-picture-o:before {
  content: "\f03e"; }

.fa-pencil:before {
  content: "\f040"; }

.fa-map-marker:before {
  content: "\f041"; }

.fa-adjust:before {
  content: "\f042"; }

.fa-tint:before {
  content: "\f043"; }

.fa-edit:before,
.fa-pencil-square-o:before {
  content: "\f044"; }

.fa-share-square-o:before {
  content: "\f045"; }

.fa-check-square-o:before {
  content: "\f046"; }

.fa-arrows:before {
  content: "\f047"; }

.fa-step-backward:before {
  content: "\f048"; }

.fa-fast-backward:before {
  content: "\f049"; }

.fa-backward:before {
  content: "\f04a"; }

.fa-play:before {
  content: "\f04b"; }

.fa-pause:before {
  content: "\f04c"; }

.fa-stop:before {
  content: "\f04d"; }

.fa-forward:before {
  content: "\f04e"; }

.fa-fast-forward:before {
  content: "\f050"; }

.fa-step-forward:before {
  content: "\f051"; }

.fa-eject:before {
  content: "\f052"; }

.fa-chevron-left:before {
  content: "\f053"; }

.fa-chevron-right:before {
  content: "\f054"; }

.fa-plus-circle:before {
  content: "\f055"; }

.fa-minus-circle:before {
  content: "\f056"; }

.fa-times-circle:before {
  content: "\f057"; }

.fa-check-circle:before {
  content: "\f058"; }

.fa-question-circle:before {
  content: "\f059"; }

.fa-info-circle:before {
  content: "\f05a"; }

.fa-crosshairs:before {
  content: "\f05b"; }

.fa-times-circle-o:before {
  content: "\f05c"; }

.fa-check-circle-o:before {
  content: "\f05d"; }

.fa-ban:before {
  content: "\f05e"; }

.fa-arrow-left:before {
  content: "\f060"; }

.fa-arrow-right:before {
  content: "\f061"; }

.fa-arrow-up:before {
  content: "\f062"; }

.fa-arrow-down:before {
  content: "\f063"; }

.fa-mail-forward:before,
.fa-share:before {
  content: "\f064"; }

.fa-expand:before {
  content: "\f065"; }

.fa-compress:before {
  content: "\f066"; }

.fa-plus:before {
  content: "\f067"; }

.fa-minus:before {
  content: "\f068"; }

.fa-asterisk:before {
  content: "\f069"; }

.fa-exclamation-circle:before {
  content: "\f06a"; }

.fa-gift:before {
  content: "\f06b"; }

.fa-leaf:before {
  content: "\f06c"; }

.fa-fire:before {
  content: "\f06d"; }

.fa-eye:before {
  content: "\f06e"; }

.fa-eye-slash:before {
  content: "\f070"; }

.fa-warning:before,
.fa-exclamation-triangle:before {
  content: "\f071"; }

.fa-plane:before {
  content: "\f072"; }

.fa-calendar:before {
  content: "\f073"; }

.fa-random:before {
  content: "\f074"; }

.fa-comment:before {
  content: "\f075"; }

.fa-magnet:before {
  content: "\f076"; }

.fa-chevron-up:before {
  content: "\f077"; }

.fa-chevron-down:before {
  content: "\f078"; }

.fa-retweet:before {
  content: "\f079"; }

.fa-shopping-cart:before {
  content: "\f07a"; }

.fa-folder:before {
  content: "\f07b"; }

.fa-folder-open:before {
  content: "\f07c"; }

.fa-arrows-v:before {
  content: "\f07d"; }

.fa-arrows-h:before {
  content: "\f07e"; }

.fa-bar-chart-o:before,
.fa-bar-chart:before {
  content: "\f080"; }

.fa-twitter-square:before {
  content: "\f081"; }

.fa-facebook-square:before {
  content: "\f082"; }

.fa-camera-retro:before {
  content: "\f083"; }

.fa-key:before {
  content: "\f084"; }

.fa-gears:before,
.fa-cogs:before {
  content: "\f085"; }

.fa-comments:before {
  content: "\f086"; }

.fa-thumbs-o-up:before {
  content: "\f087"; }

.fa-thumbs-o-down:before {
  content: "\f088"; }

.fa-star-half:before {
  content: "\f089"; }

.fa-heart-o:before {
  content: "\f08a"; }

.fa-sign-out:before {
  content: "\f08b"; }

.fa-linkedin-square:before {
  content: "\f08c"; }

.fa-thumb-tack:before {
  content: "\f08d"; }

.fa-external-link:before {
  content: "\f08e"; }

.fa-sign-in:before {
  content: "\f090"; }

.fa-trophy:before {
  content: "\f091"; }

.fa-github-square:before {
  content: "\f092"; }

.fa-upload:before {
  content: "\f093"; }

.fa-lemon-o:before {
  content: "\f094"; }

.fa-phone:before {
  content: "\f095"; }

.fa-square-o:before {
  content: "\f096"; }

.fa-bookmark-o:before {
  content: "\f097"; }

.fa-phone-square:before {
  content: "\f098"; }

.fa-twitter:before {
  content: "\f099"; }

.fa-facebook-f:before,
.fa-facebook:before {
  content: "\f09a"; }

.fa-github:before {
  content: "\f09b"; }

.fa-unlock:before {
  content: "\f09c"; }

.fa-credit-card:before {
  content: "\f09d"; }

.fa-feed:before,
.fa-rss:before {
  content: "\f09e"; }

.fa-hdd-o:before {
  content: "\f0a0"; }

.fa-bullhorn:before {
  content: "\f0a1"; }

.fa-bell:before {
  content: "\f0f3"; }

.fa-certificate:before {
  content: "\f0a3"; }

.fa-hand-o-right:before {
  content: "\f0a4"; }

.fa-hand-o-left:before {
  content: "\f0a5"; }

.fa-hand-o-up:before {
  content: "\f0a6"; }

.fa-hand-o-down:before {
  content: "\f0a7"; }

.fa-arrow-circle-left:before {
  content: "\f0a8"; }

.fa-arrow-circle-right:before {
  content: "\f0a9"; }

.fa-arrow-circle-up:before {
  content: "\f0aa"; }

.fa-arrow-circle-down:before {
  content: "\f0ab"; }

.fa-globe:before {
  content: "\f0ac"; }

.fa-wrench:before {
  content: "\f0ad"; }

.fa-tasks:before {
  content: "\f0ae"; }

.fa-filter:before {
  content: "\f0b0"; }

.fa-briefcase:before {
  content: "\f0b1"; }

.fa-arrows-alt:before {
  content: "\f0b2"; }

.fa-group:before,
.fa-users:before {
  content: "\f0c0"; }

.fa-chain:before,
.fa-link:before {
  content: "\f0c1"; }

.fa-cloud:before {
  content: "\f0c2"; }

.fa-flask:before {
  content: "\f0c3"; }

.fa-cut:before,
.fa-scissors:before {
  content: "\f0c4"; }

.fa-copy:before,
.fa-files-o:before {
  content: "\f0c5"; }

.fa-paperclip:before {
  content: "\f0c6"; }

.fa-save:before,
.fa-floppy-o:before {
  content: "\f0c7"; }

.fa-square:before {
  content: "\f0c8"; }

.fa-navicon:before,
.fa-reorder:before,
.fa-bars:before {
  content: "\f0c9"; }

.fa-list-ul:before {
  content: "\f0ca"; }

.fa-list-ol:before {
  content: "\f0cb"; }

.fa-strikethrough:before {
  content: "\f0cc"; }

.fa-underline:before {
  content: "\f0cd"; }

.fa-table:before {
  content: "\f0ce"; }

.fa-magic:before {
  content: "\f0d0"; }

.fa-truck:before {
  content: "\f0d1"; }

.fa-pinterest:before {
  content: "\f0d2"; }

.fa-pinterest-square:before {
  content: "\f0d3"; }

.fa-google-plus-square:before {
  content: "\f0d4"; }

.fa-google-plus:before {
  content: "\f0d5"; }

.fa-money:before {
  content: "\f0d6"; }

.fa-caret-down:before {
  content: "\f0d7"; }

.fa-caret-up:before {
  content: "\f0d8"; }

.fa-caret-left:before {
  content: "\f0d9"; }

.fa-caret-right:before {
  content: "\f0da"; }

.fa-columns:before {
  content: "\f0db"; }

.fa-unsorted:before,
.fa-sort:before {
  content: "\f0dc"; }

.fa-sort-down:before,
.fa-sort-desc:before {
  content: "\f0dd"; }

.fa-sort-up:before,
.fa-sort-asc:before {
  content: "\f0de"; }

.fa-envelope:before {
  content: "\f0e0"; }

.fa-linkedin:before {
  content: "\f0e1"; }

.fa-rotate-left:before,
.fa-undo:before {
  content: "\f0e2"; }

.fa-legal:before,
.fa-gavel:before {
  content: "\f0e3"; }

.fa-dashboard:before,
.fa-tachometer:before {
  content: "\f0e4"; }

.fa-comment-o:before {
  content: "\f0e5"; }

.fa-comments-o:before {
  content: "\f0e6"; }

.fa-flash:before,
.fa-bolt:before {
  content: "\f0e7"; }

.fa-sitemap:before {
  content: "\f0e8"; }

.fa-umbrella:before {
  content: "\f0e9"; }

.fa-paste:before,
.fa-clipboard:before {
  content: "\f0ea"; }

.fa-lightbulb-o:before {
  content: "\f0eb"; }

.fa-exchange:before {
  content: "\f0ec"; }

.fa-cloud-download:before {
  content: "\f0ed"; }

.fa-cloud-upload:before {
  content: "\f0ee"; }

.fa-user-md:before {
  content: "\f0f0"; }

.fa-stethoscope:before {
  content: "\f0f1"; }

.fa-suitcase:before {
  content: "\f0f2"; }

.fa-bell-o:before {
  content: "\f0a2"; }

.fa-coffee:before {
  content: "\f0f4"; }

.fa-cutlery:before {
  content: "\f0f5"; }

.fa-file-text-o:before {
  content: "\f0f6"; }

.fa-building-o:before {
  content: "\f0f7"; }

.fa-hospital-o:before {
  content: "\f0f8"; }

.fa-ambulance:before {
  content: "\f0f9"; }

.fa-medkit:before {
  content: "\f0fa"; }

.fa-fighter-jet:before {
  content: "\f0fb"; }

.fa-beer:before {
  content: "\f0fc"; }

.fa-h-square:before {
  content: "\f0fd"; }

.fa-plus-square:before {
  content: "\f0fe"; }

.fa-angle-double-left:before {
  content: "\f100"; }

.fa-angle-double-right:before {
  content: "\f101"; }

.fa-angle-double-up:before {
  content: "\f102"; }

.fa-angle-double-down:before {
  content: "\f103"; }

.fa-angle-left:before {
  content: "\f104"; }

.fa-angle-right:before {
  content: "\f105"; }

.fa-angle-up:before {
  content: "\f106"; }

.fa-angle-down:before {
  content: "\f107"; }

.fa-desktop:before {
  content: "\f108"; }

.fa-laptop:before {
  content: "\f109"; }

.fa-tablet:before {
  content: "\f10a"; }

.fa-mobile-phone:before,
.fa-mobile:before {
  content: "\f10b"; }

.fa-circle-o:before {
  content: "\f10c"; }

.fa-quote-left:before {
  content: "\f10d"; }

.fa-quote-right:before {
  content: "\f10e"; }

.fa-spinner:before {
  content: "\f110"; }

.fa-circle:before {
  content: "\f111"; }

.fa-mail-reply:before,
.fa-reply:before {
  content: "\f112"; }

.fa-github-alt:before {
  content: "\f113"; }

.fa-folder-o:before {
  content: "\f114"; }

.fa-folder-open-o:before {
  content: "\f115"; }

.fa-smile-o:before {
  content: "\f118"; }

.fa-frown-o:before {
  content: "\f119"; }

.fa-meh-o:before {
  content: "\f11a"; }

.fa-gamepad:before {
  content: "\f11b"; }

.fa-keyboard-o:before {
  content: "\f11c"; }

.fa-flag-o:before {
  content: "\f11d"; }

.fa-flag-checkered:before {
  content: "\f11e"; }

.fa-terminal:before {
  content: "\f120"; }

.fa-code:before {
  content: "\f121"; }

.fa-mail-reply-all:before,
.fa-reply-all:before {
  content: "\f122"; }

.fa-star-half-empty:before,
.fa-star-half-full:before,
.fa-star-half-o:before {
  content: "\f123"; }

.fa-location-arrow:before {
  content: "\f124"; }

.fa-crop:before {
  content: "\f125"; }

.fa-code-fork:before {
  content: "\f126"; }

.fa-unlink:before,
.fa-chain-broken:before {
  content: "\f127"; }

.fa-question:before {
  content: "\f128"; }

.fa-info:before {
  content: "\f129"; }

.fa-exclamation:before {
  content: "\f12a"; }

.fa-superscript:before {
  content: "\f12b"; }

.fa-subscript:before {
  content: "\f12c"; }

.fa-eraser:before {
  content: "\f12d"; }

.fa-puzzle-piece:before {
  content: "\f12e"; }

.fa-microphone:before {
  content: "\f130"; }

.fa-microphone-slash:before {
  content: "\f131"; }

.fa-shield:before {
  content: "\f132"; }

.fa-calendar-o:before {
  content: "\f133"; }

.fa-fire-extinguisher:before {
  content: "\f134"; }

.fa-rocket:before {
  content: "\f135"; }

.fa-maxcdn:before {
  content: "\f136"; }

.fa-chevron-circle-left:before {
  content: "\f137"; }

.fa-chevron-circle-right:before {
  content: "\f138"; }

.fa-chevron-circle-up:before {
  content: "\f139"; }

.fa-chevron-circle-down:before {
  content: "\f13a"; }

.fa-html5:before {
  content: "\f13b"; }

.fa-css3:before {
  content: "\f13c"; }

.fa-anchor:before {
  content: "\f13d"; }

.fa-unlock-alt:before {
  content: "\f13e"; }

.fa-bullseye:before {
  content: "\f140"; }

.fa-ellipsis-h:before {
  content: "\f141"; }

.fa-ellipsis-v:before {
  content: "\f142"; }

.fa-rss-square:before {
  content: "\f143"; }

.fa-play-circle:before {
  content: "\f144"; }

.fa-ticket:before {
  content: "\f145"; }

.fa-minus-square:before {
  content: "\f146"; }

.fa-minus-square-o:before {
  content: "\f147"; }

.fa-level-up:before {
  content: "\f148"; }

.fa-level-down:before {
  content: "\f149"; }

.fa-check-square:before {
  content: "\f14a"; }

.fa-pencil-square:before {
  content: "\f14b"; }

.fa-external-link-square:before {
  content: "\f14c"; }

.fa-share-square:before {
  content: "\f14d"; }

.fa-compass:before {
  content: "\f14e"; }

.fa-toggle-down:before,
.fa-caret-square-o-down:before {
  content: "\f150"; }

.fa-toggle-up:before,
.fa-caret-square-o-up:before {
  content: "\f151"; }

.fa-toggle-right:before,
.fa-caret-square-o-right:before {
  content: "\f152"; }

.fa-euro:before,
.fa-eur:before {
  content: "\f153"; }

.fa-gbp:before {
  content: "\f154"; }

.fa-dollar:before,
.fa-usd:before {
  content: "\f155"; }

.fa-rupee:before,
.fa-inr:before {
  content: "\f156"; }

.fa-cny:before,
.fa-rmb:before,
.fa-yen:before,
.fa-jpy:before {
  content: "\f157"; }

.fa-ruble:before,
.fa-rouble:before,
.fa-rub:before {
  content: "\f158"; }

.fa-won:before,
.fa-krw:before {
  content: "\f159"; }

.fa-bitcoin:before,
.fa-btc:before {
  content: "\f15a"; }

.fa-file:before {
  content: "\f15b"; }

.fa-file-text:before {
  content: "\f15c"; }

.fa-sort-alpha-asc:before {
  content: "\f15d"; }

.fa-sort-alpha-desc:before {
  content: "\f15e"; }

.fa-sort-amount-asc:before {
  content: "\f160"; }

.fa-sort-amount-desc:before {
  content: "\f161"; }

.fa-sort-numeric-asc:before {
  content: "\f162"; }

.fa-sort-numeric-desc:before {
  content: "\f163"; }

.fa-thumbs-up:before {
  content: "\f164"; }

.fa-thumbs-down:before {
  content: "\f165"; }

.fa-youtube-square:before {
  content: "\f166"; }

.fa-youtube:before {
  content: "\f167"; }

.fa-xing:before {
  content: "\f168"; }

.fa-xing-square:before {
  content: "\f169"; }

.fa-youtube-play:before {
  content: "\f16a"; }

.fa-dropbox:before {
  content: "\f16b"; }

.fa-stack-overflow:before {
  content: "\f16c"; }

.fa-instagram:before {
  content: "\f16d"; }

.fa-flickr:before {
  content: "\f16e"; }

.fa-adn:before {
  content: "\f170"; }

.fa-bitbucket:before {
  content: "\f171"; }

.fa-bitbucket-square:before {
  content: "\f172"; }

.fa-tumblr:before {
  content: "\f173"; }

.fa-tumblr-square:before {
  content: "\f174"; }

.fa-long-arrow-down:before {
  content: "\f175"; }

.fa-long-arrow-up:before {
  content: "\f176"; }

.fa-long-arrow-left:before {
  content: "\f177"; }

.fa-long-arrow-right:before {
  content: "\f178"; }

.fa-apple:before {
  content: "\f179"; }

.fa-windows:before {
  content: "\f17a"; }

.fa-android:before {
  content: "\f17b"; }

.fa-linux:before {
  content: "\f17c"; }

.fa-dribbble:before {
  content: "\f17d"; }

.fa-skype:before {
  content: "\f17e"; }

.fa-foursquare:before {
  content: "\f180"; }

.fa-trello:before {
  content: "\f181"; }

.fa-female:before {
  content: "\f182"; }

.fa-male:before {
  content: "\f183"; }

.fa-gittip:before,
.fa-gratipay:before {
  content: "\f184"; }

.fa-sun-o:before {
  content: "\f185"; }

.fa-moon-o:before {
  content: "\f186"; }

.fa-archive:before {
  content: "\f187"; }

.fa-bug:before {
  content: "\f188"; }

.fa-vk:before {
  content: "\f189"; }

.fa-weibo:before {
  content: "\f18a"; }

.fa-renren:before {
  content: "\f18b"; }

.fa-pagelines:before {
  content: "\f18c"; }

.fa-stack-exchange:before {
  content: "\f18d"; }

.fa-arrow-circle-o-right:before {
  content: "\f18e"; }

.fa-arrow-circle-o-left:before {
  content: "\f190"; }

.fa-toggle-left:before,
.fa-caret-square-o-left:before {
  content: "\f191"; }

.fa-dot-circle-o:before {
  content: "\f192"; }

.fa-wheelchair:before {
  content: "\f193"; }

.fa-vimeo-square:before {
  content: "\f194"; }

.fa-turkish-lira:before,
.fa-try:before {
  content: "\f195"; }

.fa-plus-square-o:before {
  content: "\f196"; }

.fa-space-shuttle:before {
  content: "\f197"; }

.fa-slack:before {
  content: "\f198"; }

.fa-envelope-square:before {
  content: "\f199"; }

.fa-wordpress:before {
  content: "\f19a"; }

.fa-openid:before {
  content: "\f19b"; }

.fa-institution:before,
.fa-bank:before,
.fa-university:before {
  content: "\f19c"; }

.fa-mortar-board:before,
.fa-graduation-cap:before {
  content: "\f19d"; }

.fa-yahoo:before {
  content: "\f19e"; }

.fa-google:before {
  content: "\f1a0"; }

.fa-reddit:before {
  content: "\f1a1"; }

.fa-reddit-square:before {
  content: "\f1a2"; }

.fa-stumbleupon-circle:before {
  content: "\f1a3"; }

.fa-stumbleupon:before {
  content: "\f1a4"; }

.fa-delicious:before {
  content: "\f1a5"; }

.fa-digg:before {
  content: "\f1a6"; }

.fa-pied-piper-pp:before {
  content: "\f1a7"; }

.fa-pied-piper-alt:before {
  content: "\f1a8"; }

.fa-drupal:before {
  content: "\f1a9"; }

.fa-joomla:before {
  content: "\f1aa"; }

.fa-language:before {
  content: "\f1ab"; }

.fa-fax:before {
  content: "\f1ac"; }

.fa-building:before {
  content: "\f1ad"; }

.fa-child:before {
  content: "\f1ae"; }

.fa-paw:before {
  content: "\f1b0"; }

.fa-spoon:before {
  content: "\f1b1"; }

.fa-cube:before {
  content: "\f1b2"; }

.fa-cubes:before {
  content: "\f1b3"; }

.fa-behance:before {
  content: "\f1b4"; }

.fa-behance-square:before {
  content: "\f1b5"; }

.fa-steam:before {
  content: "\f1b6"; }

.fa-steam-square:before {
  content: "\f1b7"; }

.fa-recycle:before {
  content: "\f1b8"; }

.fa-automobile:before,
.fa-car:before {
  content: "\f1b9"; }

.fa-cab:before,
.fa-taxi:before {
  content: "\f1ba"; }

.fa-tree:before {
  content: "\f1bb"; }

.fa-spotify:before {
  content: "\f1bc"; }

.fa-deviantart:before {
  content: "\f1bd"; }

.fa-soundcloud:before {
  content: "\f1be"; }

.fa-database:before {
  content: "\f1c0"; }

.fa-file-pdf-o:before {
  content: "\f1c1"; }

.fa-file-word-o:before {
  content: "\f1c2"; }

.fa-file-excel-o:before {
  content: "\f1c3"; }

.fa-file-powerpoint-o:before {
  content: "\f1c4"; }

.fa-file-photo-o:before,
.fa-file-picture-o:before,
.fa-file-image-o:before {
  content: "\f1c5"; }

.fa-file-zip-o:before,
.fa-file-archive-o:before {
  content: "\f1c6"; }

.fa-file-sound-o:before,
.fa-file-audio-o:before {
  content: "\f1c7"; }

.fa-file-movie-o:before,
.fa-file-video-o:before {
  content: "\f1c8"; }

.fa-file-code-o:before {
  content: "\f1c9"; }

.fa-vine:before {
  content: "\f1ca"; }

.fa-codepen:before {
  content: "\f1cb"; }

.fa-jsfiddle:before {
  content: "\f1cc"; }

.fa-life-bouy:before,
.fa-life-buoy:before,
.fa-life-saver:before,
.fa-support:before,
.fa-life-ring:before {
  content: "\f1cd"; }

.fa-circle-o-notch:before {
  content: "\f1ce"; }

.fa-ra:before,
.fa-resistance:before,
.fa-rebel:before {
  content: "\f1d0"; }

.fa-ge:before,
.fa-empire:before {
  content: "\f1d1"; }

.fa-git-square:before {
  content: "\f1d2"; }

.fa-git:before {
  content: "\f1d3"; }

.fa-y-combinator-square:before,
.fa-yc-square:before,
.fa-hacker-news:before {
  content: "\f1d4"; }

.fa-tencent-weibo:before {
  content: "\f1d5"; }

.fa-qq:before {
  content: "\f1d6"; }

.fa-wechat:before,
.fa-weixin:before {
  content: "\f1d7"; }

.fa-send:before,
.fa-paper-plane:before {
  content: "\f1d8"; }

.fa-send-o:before,
.fa-paper-plane-o:before {
  content: "\f1d9"; }

.fa-history:before {
  content: "\f1da"; }

.fa-circle-thin:before {
  content: "\f1db"; }

.fa-header:before {
  content: "\f1dc"; }

.fa-paragraph:before {
  content: "\f1dd"; }

.fa-sliders:before {
  content: "\f1de"; }

.fa-share-alt:before {
  content: "\f1e0"; }

.fa-share-alt-square:before {
  content: "\f1e1"; }

.fa-bomb:before {
  content: "\f1e2"; }

.fa-soccer-ball-o:before,
.fa-futbol-o:before {
  content: "\f1e3"; }

.fa-tty:before {
  content: "\f1e4"; }

.fa-binoculars:before {
  content: "\f1e5"; }

.fa-plug:before {
  content: "\f1e6"; }

.fa-slideshare:before {
  content: "\f1e7"; }

.fa-twitch:before {
  content: "\f1e8"; }

.fa-yelp:before {
  content: "\f1e9"; }

.fa-newspaper-o:before {
  content: "\f1ea"; }

.fa-wifi:before {
  content: "\f1eb"; }

.fa-calculator:before {
  content: "\f1ec"; }

.fa-paypal:before {
  content: "\f1ed"; }

.fa-google-wallet:before {
  content: "\f1ee"; }

.fa-cc-visa:before {
  content: "\f1f0"; }

.fa-cc-mastercard:before {
  content: "\f1f1"; }

.fa-cc-discover:before {
  content: "\f1f2"; }

.fa-cc-amex:before {
  content: "\f1f3"; }

.fa-cc-paypal:before {
  content: "\f1f4"; }

.fa-cc-stripe:before {
  content: "\f1f5"; }

.fa-bell-slash:before {
  content: "\f1f6"; }

.fa-bell-slash-o:before {
  content: "\f1f7"; }

.fa-trash:before {
  content: "\f1f8"; }

.fa-copyright:before {
  content: "\f1f9"; }

.fa-at:before {
  content: "\f1fa"; }

.fa-eyedropper:before {
  content: "\f1fb"; }

.fa-paint-brush:before {
  content: "\f1fc"; }

.fa-birthday-cake:before {
  content: "\f1fd"; }

.fa-area-chart:before {
  content: "\f1fe"; }

.fa-pie-chart:before {
  content: "\f200"; }

.fa-line-chart:before {
  content: "\f201"; }

.fa-lastfm:before {
  content: "\f202"; }

.fa-lastfm-square:before {
  content: "\f203"; }

.fa-toggle-off:before {
  content: "\f204"; }

.fa-toggle-on:before {
  content: "\f205"; }

.fa-bicycle:before {
  content: "\f206"; }

.fa-bus:before {
  content: "\f207"; }

.fa-ioxhost:before {
  content: "\f208"; }

.fa-angellist:before {
  content: "\f209"; }

.fa-cc:before {
  content: "\f20a"; }

.fa-shekel:before,
.fa-sheqel:before,
.fa-ils:before {
  content: "\f20b"; }

.fa-meanpath:before {
  content: "\f20c"; }

.fa-buysellads:before {
  content: "\f20d"; }

.fa-connectdevelop:before {
  content: "\f20e"; }

.fa-dashcube:before {
  content: "\f210"; }

.fa-forumbee:before {
  content: "\f211"; }

.fa-leanpub:before {
  content: "\f212"; }

.fa-sellsy:before {
  content: "\f213"; }

.fa-shirtsinbulk:before {
  content: "\f214"; }

.fa-simplybuilt:before {
  content: "\f215"; }

.fa-skyatlas:before {
  content: "\f216"; }

.fa-cart-plus:before {
  content: "\f217"; }

.fa-cart-arrow-down:before {
  content: "\f218"; }

.fa-diamond:before {
  content: "\f219"; }

.fa-ship:before {
  content: "\f21a"; }

.fa-user-secret:before {
  content: "\f21b"; }

.fa-motorcycle:before {
  content: "\f21c"; }

.fa-street-view:before {
  content: "\f21d"; }

.fa-heartbeat:before {
  content: "\f21e"; }

.fa-venus:before {
  content: "\f221"; }

.fa-mars:before {
  content: "\f222"; }

.fa-mercury:before {
  content: "\f223"; }

.fa-intersex:before,
.fa-transgender:before {
  content: "\f224"; }

.fa-transgender-alt:before {
  content: "\f225"; }

.fa-venus-double:before {
  content: "\f226"; }

.fa-mars-double:before {
  content: "\f227"; }

.fa-venus-mars:before {
  content: "\f228"; }

.fa-mars-stroke:before {
  content: "\f229"; }

.fa-mars-stroke-v:before {
  content: "\f22a"; }

.fa-mars-stroke-h:before {
  content: "\f22b"; }

.fa-neuter:before {
  content: "\f22c"; }

.fa-genderless:before {
  content: "\f22d"; }

.fa-facebook-official:before {
  content: "\f230"; }

.fa-pinterest-p:before {
  content: "\f231"; }

.fa-whatsapp:before {
  content: "\f232"; }

.fa-server:before {
  content: "\f233"; }

.fa-user-plus:before {
  content: "\f234"; }

.fa-user-times:before {
  content: "\f235"; }

.fa-hotel:before,
.fa-bed:before {
  content: "\f236"; }

.fa-viacoin:before {
  content: "\f237"; }

.fa-train:before {
  content: "\f238"; }

.fa-subway:before {
  content: "\f239"; }

.fa-medium:before {
  content: "\f23a"; }

.fa-yc:before,
.fa-y-combinator:before {
  content: "\f23b"; }

.fa-optin-monster:before {
  content: "\f23c"; }

.fa-opencart:before {
  content: "\f23d"; }

.fa-expeditedssl:before {
  content: "\f23e"; }

.fa-battery-4:before,
.fa-battery:before,
.fa-battery-full:before {
  content: "\f240"; }

.fa-battery-3:before,
.fa-battery-three-quarters:before {
  content: "\f241"; }

.fa-battery-2:before,
.fa-battery-half:before {
  content: "\f242"; }

.fa-battery-1:before,
.fa-battery-quarter:before {
  content: "\f243"; }

.fa-battery-0:before,
.fa-battery-empty:before {
  content: "\f244"; }

.fa-mouse-pointer:before {
  content: "\f245"; }

.fa-i-cursor:before {
  content: "\f246"; }

.fa-object-group:before {
  content: "\f247"; }

.fa-object-ungroup:before {
  content: "\f248"; }

.fa-sticky-note:before {
  content: "\f249"; }

.fa-sticky-note-o:before {
  content: "\f24a"; }

.fa-cc-jcb:before {
  content: "\f24b"; }

.fa-cc-diners-club:before {
  content: "\f24c"; }

.fa-clone:before {
  content: "\f24d"; }

.fa-balance-scale:before {
  content: "\f24e"; }

.fa-hourglass-o:before {
  content: "\f250"; }

.fa-hourglass-1:before,
.fa-hourglass-start:before {
  content: "\f251"; }

.fa-hourglass-2:before,
.fa-hourglass-half:before {
  content: "\f252"; }

.fa-hourglass-3:before,
.fa-hourglass-end:before {
  content: "\f253"; }

.fa-hourglass:before {
  content: "\f254"; }

.fa-hand-grab-o:before,
.fa-hand-rock-o:before {
  content: "\f255"; }

.fa-hand-stop-o:before,
.fa-hand-paper-o:before {
  content: "\f256"; }

.fa-hand-scissors-o:before {
  content: "\f257"; }

.fa-hand-lizard-o:before {
  content: "\f258"; }

.fa-hand-spock-o:before {
  content: "\f259"; }

.fa-hand-pointer-o:before {
  content: "\f25a"; }

.fa-hand-peace-o:before {
  content: "\f25b"; }

.fa-trademark:before {
  content: "\f25c"; }

.fa-registered:before {
  content: "\f25d"; }

.fa-creative-commons:before {
  content: "\f25e"; }

.fa-gg:before {
  content: "\f260"; }

.fa-gg-circle:before {
  content: "\f261"; }

.fa-tripadvisor:before {
  content: "\f262"; }

.fa-odnoklassniki:before {
  content: "\f263"; }

.fa-odnoklassniki-square:before {
  content: "\f264"; }

.fa-get-pocket:before {
  content: "\f265"; }

.fa-wikipedia-w:before {
  content: "\f266"; }

.fa-safari:before {
  content: "\f267"; }

.fa-chrome:before {
  content: "\f268"; }

.fa-firefox:before {
  content: "\f269"; }

.fa-opera:before {
  content: "\f26a"; }

.fa-internet-explorer:before {
  content: "\f26b"; }

.fa-tv:before,
.fa-television:before {
  content: "\f26c"; }

.fa-contao:before {
  content: "\f26d"; }

.fa-500px:before {
  content: "\f26e"; }

.fa-amazon:before {
  content: "\f270"; }

.fa-calendar-plus-o:before {
  content: "\f271"; }

.fa-calendar-minus-o:before {
  content: "\f272"; }

.fa-calendar-times-o:before {
  content: "\f273"; }

.fa-calendar-check-o:before {
  content: "\f274"; }

.fa-industry:before {
  content: "\f275"; }

.fa-map-pin:before {
  content: "\f276"; }

.fa-map-signs:before {
  content: "\f277"; }

.fa-map-o:before {
  content: "\f278"; }

.fa-map:before {
  content: "\f279"; }

.fa-commenting:before {
  content: "\f27a"; }

.fa-commenting-o:before {
  content: "\f27b"; }

.fa-houzz:before {
  content: "\f27c"; }

.fa-vimeo:before {
  content: "\f27d"; }

.fa-black-tie:before {
  content: "\f27e"; }

.fa-fonticons:before {
  content: "\f280"; }

.fa-reddit-alien:before {
  content: "\f281"; }

.fa-edge:before {
  content: "\f282"; }

.fa-credit-card-alt:before {
  content: "\f283"; }

.fa-codiepie:before {
  content: "\f284"; }

.fa-modx:before {
  content: "\f285"; }

.fa-fort-awesome:before {
  content: "\f286"; }

.fa-usb:before {
  content: "\f287"; }

.fa-product-hunt:before {
  content: "\f288"; }

.fa-mixcloud:before {
  content: "\f289"; }

.fa-scribd:before {
  content: "\f28a"; }

.fa-pause-circle:before {
  content: "\f28b"; }

.fa-pause-circle-o:before {
  content: "\f28c"; }

.fa-stop-circle:before {
  content: "\f28d"; }

.fa-stop-circle-o:before {
  content: "\f28e"; }

.fa-shopping-bag:before {
  content: "\f290"; }

.fa-shopping-basket:before {
  content: "\f291"; }

.fa-hashtag:before {
  content: "\f292"; }

.fa-bluetooth:before {
  content: "\f293"; }

.fa-bluetooth-b:before {
  content: "\f294"; }

.fa-percent:before {
  content: "\f295"; }

.fa-gitlab:before {
  content: "\f296"; }

.fa-wpbeginner:before {
  content: "\f297"; }

.fa-wpforms:before {
  content: "\f298"; }

.fa-envira:before {
  content: "\f299"; }

.fa-universal-access:before {
  content: "\f29a"; }

.fa-wheelchair-alt:before {
  content: "\f29b"; }

.fa-question-circle-o:before {
  content: "\f29c"; }

.fa-blind:before {
  content: "\f29d"; }

.fa-audio-description:before {
  content: "\f29e"; }

.fa-volume-control-phone:before {
  content: "\f2a0"; }

.fa-braille:before {
  content: "\f2a1"; }

.fa-assistive-listening-systems:before {
  content: "\f2a2"; }

.fa-asl-interpreting:before,
.fa-american-sign-language-interpreting:before {
  content: "\f2a3"; }

.fa-deafness:before,
.fa-hard-of-hearing:before,
.fa-deaf:before {
  content: "\f2a4"; }

.fa-glide:before {
  content: "\f2a5"; }

.fa-glide-g:before {
  content: "\f2a6"; }

.fa-signing:before,
.fa-sign-language:before {
  content: "\f2a7"; }

.fa-low-vision:before {
  content: "\f2a8"; }

.fa-viadeo:before {
  content: "\f2a9"; }

.fa-viadeo-square:before {
  content: "\f2aa"; }

.fa-snapchat:before {
  content: "\f2ab"; }

.fa-snapchat-ghost:before {
  content: "\f2ac"; }

.fa-snapchat-square:before {
  content: "\f2ad"; }

.fa-pied-piper:before {
  content: "\f2ae"; }

.fa-first-order:before {
  content: "\f2b0"; }

.fa-yoast:before {
  content: "\f2b1"; }

.fa-themeisle:before {
  content: "\f2b2"; }

.fa-google-plus-circle:before,
.fa-google-plus-official:before {
  content: "\f2b3"; }

.fa-fa:before,
.fa-font-awesome:before {
  content: "\f2b4"; }

.fa-handshake-o:before {
  content: "\f2b5"; }

.fa-envelope-open:before {
  content: "\f2b6"; }

.fa-envelope-open-o:before {
  content: "\f2b7"; }

.fa-linode:before {
  content: "\f2b8"; }

.fa-address-book:before {
  content: "\f2b9"; }

.fa-address-book-o:before {
  content: "\f2ba"; }

.fa-vcard:before,
.fa-address-card:before {
  content: "\f2bb"; }

.fa-vcard-o:before,
.fa-address-card-o:before {
  content: "\f2bc"; }

.fa-user-circle:before {
  content: "\f2bd"; }

.fa-user-circle-o:before {
  content: "\f2be"; }

.fa-user-o:before {
  content: "\f2c0"; }

.fa-id-badge:before {
  content: "\f2c1"; }

.fa-drivers-license:before,
.fa-id-card:before {
  content: "\f2c2"; }

.fa-drivers-license-o:before,
.fa-id-card-o:before {
  content: "\f2c3"; }

.fa-quora:before {
  content: "\f2c4"; }

.fa-free-code-camp:before {
  content: "\f2c5"; }

.fa-telegram:before {
  content: "\f2c6"; }

.fa-thermometer-4:before,
.fa-thermometer:before,
.fa-thermometer-full:before {
  content: "\f2c7"; }

.fa-thermometer-3:before,
.fa-thermometer-three-quarters:before {
  content: "\f2c8"; }

.fa-thermometer-2:before,
.fa-thermometer-half:before {
  content: "\f2c9"; }

.fa-thermometer-1:before,
.fa-thermometer-quarter:before {
  content: "\f2ca"; }

.fa-thermometer-0:before,
.fa-thermometer-empty:before {
  content: "\f2cb"; }

.fa-shower:before {
  content: "\f2cc"; }

.fa-bathtub:before,
.fa-s15:before,
.fa-bath:before {
  content: "\f2cd"; }

.fa-podcast:before {
  content: "\f2ce"; }

.fa-window-maximize:before {
  content: "\f2d0"; }

.fa-window-minimize:before {
  content: "\f2d1"; }

.fa-window-restore:before {
  content: "\f2d2"; }

.fa-times-rectangle:before,
.fa-window-close:before {
  content: "\f2d3"; }

.fa-times-rectangle-o:before,
.fa-window-close-o:before {
  content: "\f2d4"; }

.fa-bandcamp:before {
  content: "\f2d5"; }

.fa-grav:before {
  content: "\f2d6"; }

.fa-etsy:before {
  content: "\f2d7"; }

.fa-imdb:before {
  content: "\f2d8"; }

.fa-ravelry:before {
  content: "\f2d9"; }

.fa-eercast:before {
  content: "\f2da"; }

.fa-microchip:before {
  content: "\f2db"; }

.fa-snowflake-o:before {
  content: "\f2dc"; }

.fa-superpowers:before {
  content: "\f2dd"; }

.fa-wpexplorer:before {
  content: "\f2de"; }

.fa-meetup:before {
  content: "\f2e0"; }

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  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; }

@font-face {
  font-family: "YuGothic-M";
  font-weight: normal;
  src: local("YuGothic-Medium"), local("Yu Gothic Medium"), local("YuGothic-Regular"); }

@font-face {
  font-family: "YuGothic-M";
  font-weight: bold;
  src: local("YoGothic-Bold"), local("Yu Gothic Bold"), local("Yu Gothic"); }

@font-face {
  font-family: "Hiragino Sans";
  src: local(HiraginoSans-W4);
  font-weight: normal; }

@font-face {
  font-family: "Hiragino Sans";
  src: local(HiraginoSans-W6);
  font-weight: bold; }

@font-face {
  font-family: "recruitTop";
  font-weight: bold;
  src: url("../fonts/recruitTop.eot") format("eot"), url("../fonts/recruitTop.woff") format("woff"), url("../fonts/recruitTop.ttf") format("truetype"); }

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  outline: 0;
  border: 0;
  word-wrap: break-word;
  word-break: normal;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

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

audio,
canvas,
video {
  display: inline-block; }

img {
  vertical-align: bottom; }

input,
select,
textarea {
  vertical-align: middle;
  font-size: 100%; }

ol,
ul {
  list-style-type: none; }

h1,
h2,
h3,
h4,
h5,
h6,
strong {
  letter-spacing: 0.01em;
  font-feature-settings: "palt"; }

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

html {
  font-size: 10px; }
  @media screen and (max-width: 767px) {
    html {
      font-size: 8px; } }

body {
  color: #333;
  letter-spacing: 0.05em;
  font-size: 1.6rem;
  font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", YuGothic-M, YuGothic, "游ゴシック", sans-serif;
  line-height: 2;
  -webkit-text-size-adjust: 100%;
  background: #f3f4f6; }

a {
  color: #333;
  text-decoration: none;
  transition: all 0.3s; }
  a img {
    transition: opacity 0.5s ease-in-out; }
  a:hover,
  a :active {
    color: #3290c1;
    text-decoration: none; }
    a:hover img,
    a :active img {
      opacity: 0.8; }
  a.target_blank::after {
    content: url("../img/content/blank.png");
    padding-left: 5px; }
  a.link-red:hover {
    color: #d90f3c; }

a img {
  transition: opacity 0.5s ease-in-out;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }

a:hover img {
  opacity: 0.8; }

.clearfix::after {
  content: "";
  display: block;
  clear: both; }

.slide01-container {
  height: auto;
  width: 80%;
  margin: 0 auto; }
  @media screen and (max-width: 1024px) {
    .slide01-container {
      width: 100%;
      padding: 30px 0; } }
  .slide01-container .swiper-wrapper {
    height: auto !important;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex; }
  .slide01-container .swiper-slide {
    text-align: center;
    font-size: 18px;
    background: #fff;
    width: 100%;
    background: none;
    position: relative; }
    .slide01-container .swiper-slide .slider_img {
      width: 70%;
      margin-left: auto;
      position: absolute;
      bottom: 0;
      right: 0; }
      .slide01-container .swiper-slide .slider_img img {
        width: 100%; }
      @media screen and (max-width: 767px) {
        .slide01-container .swiper-slide .slider_img {
          position: static;
          width: 100%; } }
    .slide01-container .swiper-slide .slider_txt {
      text-align: left;
      position: relative;
      z-index: 3; }
      .slide01-container .swiper-slide .slider_txt .slide_txt_number {
        border-bottom: 3px solid #333;
        width: 400px;
        padding-bottom: 2rem; }
        @media screen and (max-width: 1024px) {
          .slide01-container .swiper-slide .slider_txt .slide_txt_number {
            border-bottom: none;
            padding-bottom: 0;
            width: 100%;
            margin-top: 20px; }
            .slide01-container .swiper-slide .slider_txt .slide_txt_number img {
              width: 20%; } }
        @media screen and (max-width: 767px) {
          .slide01-container .swiper-slide .slider_txt .slide_txt_number {
            display: inline-block;
            width: 20%; }
            .slide01-container .swiper-slide .slider_txt .slide_txt_number img {
              width: 100%; } }
      .slide01-container .swiper-slide .slider_txt .slide_txt_title {
        margin-top: 5rem;
        font-weight: normal;
        letter-spacing: 0.3rem;
        font-size: 1.8rem;
        font-weight: bold; }
        @media screen and (max-width: 1024px) {
          .slide01-container .swiper-slide .slider_txt .slide_txt_title {
            margin-top: 3rem; } }
        @media screen and (max-width: 767px) {
          .slide01-container .swiper-slide .slider_txt .slide_txt_title {
            display: inline-block;
            margin-left: 20px; } }
      .slide01-container .swiper-slide .slider_txt .btn-black {
        margin-top: 5rem;
        margin-left: 10px;
        display: inline-block; }
        .slide01-container .swiper-slide .slider_txt .btn-black a {
          font-size: 1.6rem; }
        @media screen and (max-width: 1024px) {
          .slide01-container .swiper-slide .slider_txt .btn-black {
            margin-top: 3rem; }
            .slide01-container .swiper-slide .slider_txt .btn-black a {
              padding: 10px 40px 10px 30px; } }
        @media screen and (max-width: 767px) {
          .slide01-container .swiper-slide .slider_txt .btn-black {
            display: block;
            text-align: center;
            box-shadow: none; }
            .slide01-container .swiper-slide .slider_txt .btn-black a {
              display: inline-block;
              padding: 15px 80px;
              box-shadow: 0 5px 10px rgba(155, 155, 155, 0.5); } }
  .slide01-container .swiper-pagination {
    width: 30%;
    padding: 10px 20px;
    background: #fff;
    font-weight: bold;
    bottom: 0;
    left: 30%; }
    @media screen and (max-width: 767px) {
      .slide01-container .swiper-pagination {
        width: 50%;
        padding: 10px;
        line-height: 1;
        left: auto;
        bottom: auto;
        top: 43%;
        right: 0; } }
    @media screen and (max-width: 343px) {
      .slide01-container .swiper-pagination {
        top: 33%;
        right: 0; } }
  .slide01-container .swiper-button-next, .slide01-container .swiper-button-prev {
    top: auto;
    bottom: 20px;
    width: 44px;
    height: 14px;
    background-size: contain; }
    @media screen and (max-width: 767px) {
      .slide01-container .swiper-button-next, .slide01-container .swiper-button-prev {
        width: 22px;
        height: 7px;
        bottom: auto;
        top: 51%; } }
    @media screen and (max-width: 343px) {
      .slide01-container .swiper-button-next, .slide01-container .swiper-button-prev {
        top: 40%; } }
  .slide01-container .swiper-button-next {
    background-image: url(../img/slider/slide01/next.png);
    left: 52%; }
    @media screen and (max-width: 767px) {
      .slide01-container .swiper-button-next {
        left: auto;
        right: 5%; } }
  .slide01-container .swiper-button-prev {
    background-image: url(../img/slider/slide01/prev.png);
    left: 33%; }
    @media screen and (max-width: 767px) {
      .slide01-container .swiper-button-prev {
        left: 55%; } }

.slider02 {
  position: relative; }
  .slider02 .slide02_wrap {
    width: 85%;
    margin: 0 auto; }
    @media screen and (max-width: 767px) {
      .slider02 .slide02_wrap {
        width: 80%; } }
    .slider02 .slide02_wrap .slide02-container {
      width: 100%;
      padding: 100px 0;
      overflow: hidden;
      position: relative; }
      @media screen and (max-width: 767px) {
        .slider02 .slide02_wrap .slide02-container {
          padding: 50px 0 70px; } }
      .slider02 .slide02_wrap .slide02-container .swiper-slide {
        text-align: center;
        font-size: 18px;
        background: #fff;
        /* Center slide text vertically */
        display: -webkit-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        -webkit-justify-content: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        -webkit-align-items: center;
        align-items: center; }
        .slider02 .slide02_wrap .slide02-container .swiper-slide img {
          width: 100%;
          height: auto; }
    .slider02 .slide02_wrap .swiper-pagination {
      bottom: 50px; }
      @media screen and (max-width: 767px) {
        .slider02 .slide02_wrap .swiper-pagination {
          bottom: 40px; } }
    .slider02 .slide02_wrap .swiper-button-next {
      background-image: none;
      width: 20px;
      height: 20px;
      transform: rotate(-45deg);
      border-right: 2px solid #333;
      border-bottom: 2px solid #333; }
    .slider02 .slide02_wrap .swiper-button-prev {
      background-image: none;
      width: 20px;
      height: 20px;
      transform: rotate(45deg);
      border-left: 2px solid #333;
      border-bottom: 2px solid #333; }

.slide03-container {
  width: 100%;
  padding: 0 0 100px; }
  @media screen and (max-width: 767px) {
    .slide03-container {
      padding: 0 0 60px; } }
  .slide03-container .swiper-slide {
    font-size: 18px;
    background: #fff;
    position: relative; }
    .slide03-container .swiper-slide img {
      width: 73%; }
    .slide03-container .swiper-slide .slider_txt {
      position: absolute;
      bottom: -20px;
      right: 30px;
      width: 35%;
      background-image: linear-gradient(-45deg, #434343 25%, #333 25%, #333 50%, #434343 50%, #434343 75%, #333 75%, #333);
      background-size: 5px 5px;
      padding: 50px 40px;
      color: #fff; }
      @media screen and (max-width: 767px) {
        .slide03-container .swiper-slide .slider_txt {
          padding: 20px 10px;
          right: 0; } }
      .slide03-container .swiper-slide .slider_txt h3 {
        margin-bottom: 1rem; }
        @media screen and (max-width: 767px) {
          .slide03-container .swiper-slide .slider_txt h3 {
            margin-bottom: 0;
            text-align: center;
            font-size: 2rem; } }
      @media screen and (max-width: 767px) {
        .slide03-container .swiper-slide .slider_txt p {
          display: none; } }
  .slide03-container .swiper-pagination {
    bottom: 40px; }
    @media screen and (max-width: 767px) {
      .slide03-container .swiper-pagination {
        bottom: 10px; } }

main, footer {
  transition: all .5s; }
  main.open, footer.open {
    transform: translateX(-250px); }

.l-container-lg {
  margin: 0 auto;
  width: 95%;
  max-width: 1200px;
  background: #fff;
  position: relative; }
  @media screen and (max-width: 767px) {
    .l-container-lg {
      width: 98%; } }
  .l-container-lg > *:last-child {
    margin-bottom: 0; }
  .l-container-lg:after {
    display: block;
    clear: both;
    content: ''; }

.l-container-reg {
  margin: 0 auto;
  padding: 80px 30px;
  background: #fff;
  position: relative; }
  @media screen and (max-width: 767px) {
    .l-container-reg {
      padding: 30px 15px; } }
  .l-container-reg > *:last-child {
    margin-bottom: 0; }
  .l-container-reg:after {
    display: block;
    clear: both;
    content: ''; }

.l-container-min {
  margin: 0 auto;
  max-width: 600px;
  width: 94%; }
  @media screen and (max-width: 767px) {
    .l-container-min {
      padding: 0 30px; } }
  .l-container-min > *:last-child {
    margin-bottom: 0; }
  .l-container-min:after {
    display: block;
    clear: both;
    content: ''; }

.l-container-out {
  margin: -70px auto;
  width: 95%;
  max-width: 1200px;
  background: #fff;
  position: relative; }
  @media screen and (max-width: 767px) {
    .l-container-out {
      margin: -40px auto;
      width: 98%; } }
  .l-container-out > *:last-child {
    margin-bottom: 0; }
  .l-container-out:after {
    display: block;
    clear: both;
    content: ''; }

.l-container-1400 {
  padding: 100px 0;
  max-width: 1400px;
  margin: 0 auto; }
  @media screen and (max-width: 767px) {
    .l-container-1400 {
      padding: 30px 0 100px; } }

.inner {
  padding: 80px; }
  @media screen and (max-width: 767px) {
    .inner {
      padding: 60px 15px; } }

.l-wrap-90p {
  margin: 0 auto;
  width: 90%; }
  @media screen and (max-width: 767px) {
    .l-wrap-90p {
      width: 100%; } }

.l-wrap-80p {
  margin: 0 auto;
  width: 80%; }
  @media screen and (max-width: 767px) {
    .l-wrap-80p {
      width: 100%; } }

.l-wrap-70p {
  margin: 0 auto;
  width: 70%; }
  @media screen and (max-width: 767px) {
    .l-wrap-70p {
      width: 100%; } }

.l-wrap-60p {
  margin: 0 auto;
  width: 60%; }
  @media screen and (max-width: 767px) {
    .l-wrap-60p {
      width: 100%; } }

.l-wrap-50p {
  margin: 0 auto;
  width: 50%; }
  @media screen and (max-width: 767px) {
    .l-wrap-50p {
      width: 100%; } }

.l-wrap-45p {
  margin: 0 auto;
  width: 45%; }
  @media screen and (max-width: 767px) {
    .l-wrap-45p {
      width: 100%; } }

.l-wrap-40p {
  margin: 0 auto;
  width: 40%; }
  @media screen and (max-width: 767px) {
    .l-wrap-40p {
      width: 100%; } }

.l-wrap-30p {
  margin: 0 auto;
  width: 30%; }
  @media screen and (max-width: 767px) {
    .l-wrap-30p {
      width: 100%; } }

.l-wrap-20p {
  margin: 0 auto;
  width: 20%; }
  @media screen and (max-width: 767px) {
    .l-wrap-20p {
      width: 100%; } }

.l-wrap-10p {
  margin: 0 auto;
  width: 10%; }
  @media screen and (max-width: 767px) {
    .l-wrap-10p {
      width: 100%; } }

.l-flex-wrap {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  flex-wrap: wrap; }

.l-flex-jc-fe {
  justify-content: flex-end; }

.l-flex-jc-center {
  justify-content: center; }

.l-flex-jc-sa {
  justify-content: space-around; }

.l-flex-jc-sb {
  justify-content: space-between; }

.l-flex-ai-fs {
  align-items: flex-start; }

.l-flex-ai-fe {
  align-items: flex-end; }

.l-flex-ai-center {
  align-items: center; }

.l-flex-ai-bl {
  align-items: baseline; }

.l-flex-fd-rr {
  flex-direction: row-reverse; }

.l-flex-fd-column {
  flex-direction: column; }

.l-flex-fd-cr {
  flex-direction: column-reverse; }

.l-flex-nowrap {
  flex-wrap: nowrap; }

.l-flex-col-2 {
  margin-bottom: 2em;
  width: 48%; }
  @media screen and (max-width: 767px) {
    .l-flex-col-2 {
      margin-bottom: 4em;
      width: 100%; } }

.l-flex-parent-3:after {
  display: block;
  width: 30%;
  content: ''; }

.l-flex-col-3 {
  margin-bottom: 2em;
  width: 30%; }
  @media screen and (max-width: 767px) {
    .l-flex-col-3 {
      margin-bottom: 4em;
      width: 100%; } }

.l-flex-col-3-2 {
  margin-bottom: 2em;
  width: 30%; }
  @media screen and (max-width: 767px) {
    .l-flex-col-3-2 {
      margin-bottom: 4em;
      width: 48%; } }

.l-flex-parent-4:before {
  display: block;
  order: 1;
  width: 23%;
  content: ''; }

.l-flex-parent-4:after {
  display: block;
  width: 23%;
  content: ''; }

.l-flex-col-4 {
  margin-bottom: 2em;
  width: 23%; }
  @media screen and (max-width: 767px) {
    .l-flex-col-4 {
      margin-bottom: 4em;
      width: 48%; } }

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

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

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

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

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

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

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

.mb60 {
  margin-bottom: 60px !important; }

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

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

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

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

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

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

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

.mt60 {
  margin-top: 60px !important; }

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

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

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

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

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

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

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

.ml60 {
  margin-left: 60px !important; }

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

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

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

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

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

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

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

.mr60 {
  margin-right: 60px !important; }

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

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

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

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

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

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

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

.pb60 {
  padding-bottom: 60px !important; }

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

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

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

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

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

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

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

.pt60 {
  padding-top: 60px !important; }

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

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

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

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

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

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

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

.pl60 {
  padding-left: 60px !important; }

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

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

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

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

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

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

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

.pr60 {
  padding-right: 60px !important; }

.fz12 {
  font-size: 1.2rem; }

.fz14 {
  font-size: 1.4rem; }

.fz16 {
  font-size: 1.6rem; }

.fz18 {
  font-size: 1.8rem; }

.fz20 {
  font-size: 2rem; }

.cf:after {
  display: block;
  clear: both;
  content: ''; }

@media screen and (max-width: 767px) {
  .sp-only {
    display: block; } }

@media screen and (min-width: 768px) {
  .sp-only {
    display: none; } }

@media screen and (max-width: 1024px) {
  .tab-only {
    display: block; } }

@media screen and (min-width: 1025px) {
  .tab-only {
    display: none; } }

@media screen and (min-width: 768px) {
  .pc-only {
    display: block; } }

@media screen and (max-width: 767px) {
  .pc-only {
    display: none; } }

@media screen and (min-width: 1025px) {
  .pc-tab-only {
    display: inline-block; } }

@media screen and (max-width: 1024px) {
  .pc-tab-only {
    display: none; } }

.tac {
  text-align: center; }

.tal {
  text-align: left; }

.tar {
  text-align: right; }

.bg-white {
  background-color: #fff; }

.bg-gray {
  background-color: #666;
  color: #fff; }

.bg-light-gray {
  background-color: #f3f4f6; }

.bg-blue-gra {
  background: linear-gradient(to right, #20e7ae 0%, #1f3aec 100%);
  color: #fff; }

.bg-red-gra {
  background: linear-gradient(to right, #ff9a69 0%, #d90f3c 100%);
  color: #fff; }

.bg-dotted {
  background-image: radial-gradient(#92caff 20%, rgba(255, 255, 255, 0) 20%), radial-gradient(#92caff 20%, rgba(255, 255, 255, 0) 20%);
  background-size: 20px 20px;
  background-position: 0 0, 10px 10px; }

.index01::before, .index02::before, .index02::after, .iv_list::after {
  background-image: radial-gradient(#92caff 20%, rgba(255, 255, 255, 0) 20%), radial-gradient(#92caff 20%, rgba(255, 255, 255, 0) 20%);
  background-size: 10px 10px;
  background-position: 0 0, 0 0; }

.bg-gray-stripe {
  background-image: linear-gradient(-45deg, #434343 25%, #333 25%, #333 50%, #434343 50%, #434343 75%, #333 75%, #333);
  background-size: 5px 5px;
  background-attachment: fixed;
  color: #fff; }

.bg-parallax {
  min-height: 400px; }
  @media screen and (max-width: 1024px) {
    .bg-parallax {
      min-height: 300px; } }
  @media screen and (max-width: 767px) {
    .bg-parallax {
      min-height: 200px; } }

.title01-box {
  display: inline-block;
  overflow: hidden;
  position: relative; }
  .title01-box::before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    background: linear-gradient(to right, #20e7ae 0%, #1f3aec 100%);
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    transform: translateX(-110%); }
  .title01-box .title01 {
    font-family: "Roboto Condensed";
    font-size: 4rem;
    letter-spacing: 0.3rem;
    line-height: 1;
    padding: 0 20px;
    z-index: 1;
    visibility: hidden; }
    .title01-box .title01::after {
      content: attr(data-text);
      font-size: 1.6rem;
      color: #e60012;
      display: block;
      letter-spacing: 0.1rem;
      padding-top: 1rem; }

.title01-box-red::before {
  background: linear-gradient(to right, #ff9a69 0%, #d90f3c 100%);
  position: absolute; }

.title01-box.active::before {
  animation-name: BackgroundSlide;
  animation-timing-function: ease;
  animation-duration: 1.5s;
  animation-fill-mode: forwards; }

.title01-box.active .title01 {
  visibility: visible;
  animation-name: TitleAnimation;
  animation-duration: 1s; }

@keyframes BackgroundSlide {
  0% {
    transform: translateX(-110%); }
  45% {
    transform: translateX(0%); }
  60% {
    transform: translateX(0%); }
  100% {
    transform: translateX(110%); } }

@keyframes TitleAnimation {
  0% {
    opacity: 0; }
  59% {
    opacity: 0; }
  60% {
    opacity: 1; }
  100% {
    opacity: 1; } }

.title01-black {
  font-family: "Roboto Condensed";
  font-size: 5rem;
  letter-spacing: 0.3rem;
  line-height: 1;
  padding: 0 20px;
  z-index: 1;
  width: 98%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%); }
  .title01-black::after {
    content: attr(data-text);
    font-size: 2.2rem;
    color: #333;
    display: block;
    letter-spacing: 0.1rem;
    padding-top: 1rem; }
  @media screen and (max-width: 767px) {
    .title01-black {
      transform: translate(-50%, -30%);
      font-size: 3.5rem; }
      .title01-black::after {
        font-size: 2rem; } }

.title02-red {
  font-family: "Roboto Condensed";
  font-size: 3rem;
  color: #e60012;
  letter-spacing: 0.3rem;
  margin-bottom: 2rem; }
  @media screen and (max-width: 767px) {
    .title02-red {
      margin-bottom: 1.5rem; } }

.title02-white {
  font-family: "Roboto Condensed";
  font-size: 3.8rem;
  color: #fff;
  letter-spacing: 0.5rem;
  margin-bottom: 3rem;
  line-height: 1.5; }
  .title02-white span {
    display: block;
    font-size: 2.2rem;
    letter-spacing: 0.5rem;
    margin-top: 5px; }
  @media screen and (max-width: 767px) {
    .title02-white {
      margin-bottom: 2rem;
      font-size: 2.5rem; }
      .title02-white span {
        display: block;
        font-size: 1.4rem;
        letter-spacing: 0.5rem;
        margin-top: 5px; } }

.title03-red {
  font-family: "Roboto Condensed";
  font-size: 3.5rem;
  color: #e60012;
  margin-bottom: 1.5rem;
  letter-spacing: 0.2rem; }

.title03-white {
  font-family: "Roboto Condensed";
  font-size: 2.5rem;
  color: #fff;
  margin-bottom: 2rem; }
  @media screen and (max-width: 767px) {
    .title03-white {
      margin-bottom: 1.5rem; } }

.title03-black {
  font-size: 2.5rem;
  margin-bottom: 2rem;
  letter-spacing: 0.3rem; }
  @media screen and (max-width: 767px) {
    .title03-black {
      margin-bottom: 1.5rem;
      font-size: 2.5rem; } }
  .title03-black.underbar {
    padding-bottom: 10px;
    margin-bottom: 30px;
    border-bottom: 2px solid #eee; }
  .title03-black.bold_underbar {
    padding-bottom: 15px;
    margin-bottom: 30px;
    border-bottom: 10px solid #f3f4f6; }

.title03-blue-gra {
  margin-bottom: 4rem;
  font-family: "Roboto Condensed";
  font-size: 3rem;
  background: linear-gradient(to right, #20e7ae 0%, #1f3aec 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  /*IEで未対応の場合は以下で背景を非表示に*/ }
  @media all and (-ms-high-contrast: none) {
    .title03-blue-gra {
      background: none;
      color: #1f3aec; } }
  @media screen and (max-width: 767px) {
    .title03-blue-gra {
      font-size: 2.5rem;
      margin-bottom: 1.5rem; } }

.w-red {
  color: #e60012; }

.w-white {
  color: #fff; }

.w-blue {
  color: #448aca; }

.w-blue-gra {
  background: linear-gradient(to right, #20e7ae 0%, #1f3aec 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  /*IEで未対応の場合は以下で背景を非表示に*/ }
  @media all and (-ms-high-contrast: none) {
    .w-blue-gra {
      background: none;
      color: #1f3aec; } }

.w-none-gra {
  color: #1f3aec; }

.w-bold {
  font-weight: bold; }

.btn-gra, .btn-red-gra, .btn-white-gra, .btn-white, .btn-black {
  margin: 0 auto;
  text-align: center;
  box-shadow: 0 5px 8px rgba(155, 155, 155, 0.5); }
  .btn-gra a, .btn-red-gra a, .btn-white-gra a, .btn-white a, .btn-black a {
    display: block;
    padding: 15px 80px;
    font-weight: bold;
    position: relative; }
    .btn-gra a::after, .btn-red-gra a::after, .btn-white-gra a::after, .btn-white a::after, .btn-black a::after {
      font-family: FontAwesome;
      content: '\f054';
      position: absolute;
      right: 10px;
      top: 50%;
      transform: translateY(-50%); }
  .btn-gra:hover a, .btn-red-gra:hover a, .btn-white-gra:hover a, .btn-white:hover a, .btn-black:hover a {
    text-decoration: none;
    opacity: 1; }

.btn-gra {
  background: linear-gradient(to right, #20e7ae 0%, #1f3aec 100%);
  max-width: 540px;
  padding: 1px; }
  .btn-gra a {
    margin: 2px;
    background: linear-gradient(to right, #20e7ae 0%, #1f3aec 100%);
    color: #fff; }
    .btn-gra a:hover {
      background: #fff; }
      .btn-gra a:hover::after {
        color: #1f3aec; }
      .btn-gra a:hover span {
        background: linear-gradient(to right, #20e7ae 0%, #1f3aec 100%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent; }
        @media all and (-ms-high-contrast: none) {
          .btn-gra a:hover span {
            background: none;
            color: #1f3aec; } }

.btn-red-gra {
  background: linear-gradient(to right, #ff9a69 0%, #d90f3c 100%);
  max-width: 540px;
  padding: 1px; }
  .btn-red-gra a {
    margin: 2px;
    background: linear-gradient(to right, #ff9a69 0%, #d90f3c 100%);
    color: #fff; }
    .btn-red-gra a:hover {
      background: #fff; }
      .btn-red-gra a:hover::after {
        color: #d90f3c; }
      .btn-red-gra a:hover span {
        background: linear-gradient(to right, #ff9a69 0%, #d90f3c 100%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent; }
        @media all and (-ms-high-contrast: none) {
          .btn-red-gra a:hover span {
            background: none;
            color: #d90f3c; } }

.btn-white-gra a {
  background: #fff;
  color: #1f3aec;
  border: 2px solid #fff;
  font-size: 2.5rem;
  letter-spacing: 0.2rem; }
  .btn-white-gra a span {
    background: linear-gradient(to right, #20e7ae 0%, #1f3aec 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent; }
    @media all and (-ms-high-contrast: none) {
      .btn-white-gra a span {
        background: none;
        color: #1f3aec; } }
  .btn-white-gra a::after {
    font-size: 1.8rem;
    top: 50%;
    transform: translateY(-50%); }

.btn-white-gra:hover a {
  background: none; }
  .btn-white-gra:hover a::after {
    color: #fff; }
  .btn-white-gra:hover a span {
    background: #fff;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent; }
    @media all and (-ms-high-contrast: none) {
      .btn-white-gra:hover a span {
        background: none;
        color: #fff; } }

.btn-white a {
  border: 2px solid #fff;
  color: #fff; }

.btn-white:hover a {
  background: #fff;
  color: #333; }

.btn-black a {
  background: #333;
  color: #fff;
  border: 2px solid #333; }

.btn-black:hover a {
  background: #fff;
  color: #333; }

.topbar_list {
  margin-top: 60px; }
  @media screen and (max-width: 767px) {
    .topbar_list {
      margin-top: 40px; } }
  .topbar_list > li {
    border-top: 10px solid #f3f4f6;
    padding-top: 3rem;
    text-align: center; }

.fade_in {
  transition: all 1000ms 0s ease;
  transform: translateY(30px);
  visibility: hidden;
  opacity: 0; }

.fade_in.js_active {
  visibility: visible;
  transform: translateY(0px);
  opacity: 1; }

.table-basic {
  width: 100%;
  margin-bottom: 60px; }
  @media screen and (max-width: 767px) {
    .table-basic {
      margin-bottom: 30px; } }
  .table-basic th {
    width: 20%;
    text-align: left;
    color: #888;
    padding: 20px 0 20px 2em;
    border-bottom: 1px solid #ccc; }
    @media screen and (max-width: 767px) {
      .table-basic th {
        display: block;
        width: 100%;
        padding: 10px 0 0 1em;
        border-bottom: none; } }
  .table-basic td {
    width: 80%;
    padding: 20px 0 20px 2em;
    border-bottom: 1px solid #ccc; }
    .table-basic td a {
      color: #3290c1; }
      .table-basic td a:hover {
        opacity: 1;
        text-decoration: underline; }
    @media screen and (max-width: 767px) {
      .table-basic td {
        display: block;
        width: 100%;
        padding: 0 0 10px 1em; } }

.table_modal th {
  width: 25%;
  text-align: left;
  padding: 0 20px 10px 15px;
  position: relative; }
  .table_modal th::before {
    font-family: FontAwesome;
    content: '\f0c8';
    font-size: 1rem;
    padding-right: 5px;
    position: absolute;
    top: 6px;
    left: 0; }
  @media screen and (max-width: 767px) {
    .table_modal th {
      display: block;
      width: 100%;
      padding: 0 0 0 15px; }
      .table_modal th::before {
        top: 2px; } }

.table_modal td {
  padding: 0 0 10px;
  text-align: left; }
  @media screen and (max-width: 767px) {
    .table_modal td {
      display: block;
      width: 100%;
      padding: 0 0 10px 1em; } }

.remodal-close {
  left: auto;
  right: 0; }

.twitter .cls-1 {
  fill: #7ba9d8;
  fill-rule: evenodd; }

.twitter .cls-2 {
  fill: #fff; }

.facebook .cls-1 {
  fill: #485c93;
  fill-rule: evenodd; }

.facebook .cls-2 {
  fill: #fff; }

.insta .cls-1 {
  fill: url(#insta_gradation); }

.insta .cls-2 {
  fill: #fff; }

.blog .cls-1 {
  fill: #333;
  fill-rule: evenodd; }

.blog .cls-2 {
  fill: #fff; }

.line .cls-1 {
  fill: #1bb71f;
  fill-rule: evenodd; }

.line .cls-2 {
  fill: #fff; }

.header_inner {
  position: fixed;
  z-index: 98;
  width: 100%;
  height: 60px; }
  .header_inner.mix {
    mix-blend-mode: difference; }
    .header_inner.mix .logo svg {
      fill: #fff; }
    .header_inner.mix .gnav li a {
      color: #fff; }
      .header_inner.mix .gnav li a:after {
        background: #fff; }

.logo {
  padding: 15px 0 0 30px;
  display: flex;
  justify-content: flex-start;
  align-items: center; }
  .logo a {
    display: block;
    width: 20vw;
    max-width: 150px; }
  .logo span {
    width: 15vw;
    max-width: 100px;
    margin-left: 2rem;
    padding-bottom: 7px;
    display: block; }
  .logo svg {
    fill: #333; }
  @media screen and (max-width: 767px) {
    .logo {
      padding: 20px 0 0 30px; }
      .logo a {
        width: 30vw; } }

.pc_nav {
  width: 60%;
  max-width: 500px;
  margin-right: 40px;
  padding-top: 30px; }
  @media screen and (max-width: 1024px) {
    .pc_nav {
      display: none; } }

.recruit_nav {
  margin-right: 200px; }

.gnav li a {
  font-family: "Roboto Condensed";
  color: #333;
  font-weight: bold;
  letter-spacing: 0.15rem;
  font-size: 2rem; }
  .gnav li a::after {
    content: '';
    display: block;
    width: 0;
    height: 1px;
    background: #333;
    transition: all 0.3s; }
    @media screen and (max-width: 1024px) {
      .gnav li a::after {
        display: none; } }
  .gnav li a:hover {
    opacity: 1; }
    .gnav li a:hover::after {
      width: 100%; }

.nav_entry {
  margin: 0;
  position: fixed;
  z-index: 1000;
  top: 0;
  right: 0;
  width: 20vw;
  max-width: 170px;
  font-size: 2.5rem;
  letter-spacing: 0.15rem; }
  .nav_entry a {
    font-family: "Roboto Condensed";
    padding: 20px 0; }
  @media screen and (max-width: 1024px) {
    .nav_entry {
      display: none; } }
  .nav_entry a::after {
    content: ''; }

.humberger_btn {
  display: none;
  width: 40px;
  height: 30px;
  position: fixed;
  top: 25px;
  right: 25px;
  z-index: 1000;
  cursor: pointer; }
  .humberger_btn.mix {
    mix-blend-mode: difference; }
    .humberger_btn.mix span {
      background: #fff; }
  @media screen and (max-width: 767px) {
    .humberger_btn {
      width: 30px;
      height: 20px; } }
  .humberger_btn span {
    width: 100%;
    height: 4px;
    background: #333;
    position: absolute;
    transition: all 0.5s; }
    .humberger_btn span:first-child {
      top: 0; }
    .humberger_btn span:nth-child(2) {
      top: 50%;
      transform: translateY(-50%); }
    .humberger_btn span:last-child {
      bottom: 0; }
  .humberger_btn.open span {
    width: 100%;
    height: 4px;
    background: #fff;
    position: absolute; }
    .humberger_btn.open span:first-child {
      top: 50%;
      transform: translateY(-50%);
      transform: rotate(45deg); }
    .humberger_btn.open span:nth-child(2) {
      display: none; }
    .humberger_btn.open span:last-child {
      top: 50%;
      transform: translateY(-50%);
      transform: rotate(-45deg); }
  @media screen and (max-width: 1024px) {
    .humberger_btn {
      display: block; } }

.humberger_menu {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 99;
  overflow: auto;
  transform: translate(300px);
  width: 300px;
  height: 100%;
  padding: 100px 20px 0;
  transition: all 0.5s; }
  .humberger_menu .sp_nav > ul > li > a {
    display: block;
    padding: 10px 0;
    margin: 5px 0;
    height: 100%;
    color: #fff;
    font-weight: bold; }
  .humberger_menu .sp_nav > ul > li.sp_btn_entry {
    box-shadow: none;
    padding: 2px;
    margin-top: 30px; }
    .humberger_menu .sp_nav > ul > li.sp_btn_entry a {
      margin: 0; }
  .humberger_menu .sp_nav > ul .accordion span {
    display: block;
    padding: 10px 0;
    margin: 5px 0;
    color: #fff;
    font-weight: bold; }
    .humberger_menu .sp_nav > ul .accordion span::after {
      font-family: FontAwesome;
      content: "\f107";
      margin-left: 10px;
      display: inline-block; }
  .humberger_menu .sp_nav > ul .accordion ul {
    display: none; }
    .humberger_menu .sp_nav > ul .accordion ul li a {
      display: block;
      text-indent: 1rem;
      padding: 5px 0;
      margin: 5px 0;
      height: 100%;
      color: #fff; }
  .humberger_menu .sp_nav > ul .accordion.open span::after {
    transform: rotate(180deg); }
  .humberger_menu.open {
    transform: translateZ(0); }

.cta .cta01 {
  height: 220px;
  background: url("../img/recruit/cta.jpg") center center no-repeat;
  background-size: cover;
  position: relative; }
  @media screen and (max-width: 767px) {
    .cta .cta01 {
      height: 190px;
      flex-direction: column; } }
  .cta .cta01::before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    background-color: rgba(51, 51, 51, 0.5);
    position: absolute;
    top: 0;
    left: 0; }
  .cta .cta01 .btn-white {
    display: inline-block;
    margin: 0 20px; }
    @media screen and (max-width: 767px) {
      .cta .cta01 .btn-white {
        margin: 10px 0; } }
    .cta .cta01 .btn-white a {
      width: 300px; }

.cta .cta01_test {
  height: 220px;
  background: url("../img/recruit/cta.jpg") center center no-repeat;
  background-size: cover;
  position: relative; }
  @media screen and (max-width: 767px) {
    .cta .cta01_test {
      height: 270px;
      flex-direction: column; } }
  .cta .cta01_test::before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    background-color: rgba(51, 51, 51, 0.5);
    position: absolute;
    top: 0;
    left: 0; }
  .cta .cta01_test .btn-white {
    display: inline-block;
    margin: 0 20px; }
    .cta .cta01_test .btn-white svg {
      width: 100px;
      vertical-align: middle;
      fill: #fff;
      transition: all .3s; }
    .cta .cta01_test .btn-white:hover svg {
      fill: #333; }
    @media screen and (max-width: 767px) {
      .cta .cta01_test .btn-white {
        margin: 10px 0; } }
    .cta .cta01_test .btn-white a {
      width: 300px; }

.cta .cta02 {
  padding: 50px 0; }

.cta .btn-white-gra {
  display: inline-block;
  box-shadow: none;
  width: 90%; }
  .cta .btn-white-gra a {
    max-width: 350px;
    font-family: "Roboto Condensed";
    margin: 0 auto;
    padding: 15px 50px; }

.footer {
  padding: 80px 30px; }
  @media screen and (max-width: 1024px) {
    .footer {
      display: block;
      padding: 50px 30px; } }
  .footer a {
    display: block;
    color: #fff;
    line-height: 3rem; }
  .footer .footer_logo {
    width: 130px; }
    @media screen and (max-width: 1024px) {
      .footer .footer_logo {
        margin: 0 auto 20px; } }
    .footer .footer_logo img {
      width: 100%; }
  .footer .footer_nav {
    width: 50%; }
    @media screen and (max-width: 1024px) {
      .footer .footer_nav {
        display: none; } }
    .footer .footer_nav > li > ul li a {
      font-size: 1.4rem; }
    .footer .footer_nav .footer_nav01 > ul > li {
      margin-bottom: 2rem; }
      .footer .footer_nav .footer_nav01 > ul > li > a {
        font-size: 1.6rem; }
    .footer .footer_nav .footer_nav03 > ul {
      margin-bottom: 2rem; }
  @media screen and (max-width: 1024px) {
    .footer .sns {
      justify-content: center; } }
  .footer .sns li {
    margin: 0 0.5rem; }
    .footer .sns li a {
      display: block;
      width: 40px;
      height: auto;
      transition: all 0.3s; }
      .footer .sns li a:hover {
        opacity: 0.8; }

.copyright {
  text-align: center;
  padding-bottom: 60px; }
  @media screen and (max-width: 1024px) {
    .copyright {
      padding-bottom: 30px; } }

#page_top {
  position: fixed;
  z-index: 1000;
  bottom: 40px;
  right: 40px; }
  @media screen and (max-width: 1024px) {
    #page_top {
      bottom: 20px;
      right: 20px; } }
  #page_top .page_top {
    width: 40px;
    height: 40px; }
    #page_top .page_top .cls-1 {
      fill: none;
      stroke: #333;
      stroke-width: 4px; }
    #page_top .page_top .cls-2 {
      fill: #333; }
  #page_top.mix {
    mix-blend-mode: difference; }
    #page_top.mix .page_top .cls-1 {
      fill: none;
      stroke: #fff;
      stroke-width: 4px; }
    #page_top.mix .page_top .cls-2 {
      fill: #fff; }

.mainvisual {
  width: 100%;
  height: 100vh;
  position: relative;
  z-index: -10; }
  .mainvisual.hidden .main-slide {
    display: none;
    background: none; }
  .mainvisual .main-slide {
    width: 100%;
    height: 100vh;
    margin: 0 auto;
    position: relative; }
    .mainvisual .main-slide .sld_fade {
      width: 100%;
      height: 100vh;
      position: fixed;
      left: 0;
      top: 0;
      display: none;
      background-position: center;
      background-size: cover;
      background-repeat: no-repeat; }
      .mainvisual .main-slide .sld_fade:nth-child(1) {
        background-image: url("../img/slider/corp_top/mainvisual01.jpg"); }
      .mainvisual .main-slide .sld_fade:nth-child(2) {
        background-image: url("../img/slider/corp_top/mainvisual02.jpg"); }
      .mainvisual .main-slide .sld_fade:nth-child(3) {
        background-image: url("../img/slider/corp_top/mainvisual03.jpg"); }
      .mainvisual .main-slide .sld_fade:nth-child(4) {
        background-image: url("../img/slider/corp_top/mainvisual04.jpg"); }
  .mainvisual .scroll {
    width: 15vh;
    padding: 10px 0;
    box-sizing: content-box;
    position: absolute;
    bottom: 4vh;
    left: 50%;
    transform: translateX(-50%) rotate(90deg);
    overflow-x: hidden; }
    .mainvisual .scroll .scroll_txt {
      font-family: "Roboto Condensed";
      color: #333;
      font-weight: bold;
      letter-spacing: 0.2rem; }
      .mainvisual .scroll .scroll_txt::before {
        content: '';
        display: block;
        height: 1px;
        width: 100%;
        background: #333;
        position: absolute;
        bottom: 0;
        left: 0;
        -webkit-animation: scrollmovement 4000ms 0s infinite;
        -moz-animation: scrollmovement 4000ms 0s infinite;
        -o-animation: scrollmovement 4000ms 0s infinite;
        -ms-animation: scrollmovement 4000ms 0s infinite;
        animation: scrollmovement 4000ms 0s infinite; }

@keyframes scrollmovement {
  0% {
    width: 0;
    transform: translateX(0); }
  20% {
    width: 100%;
    transform: translateX(0); }
  80% {
    width: 100%;
    transform: translateX(0); }
  100% {
    width: 100%;
    transform: translateX(100%); } }

.square {
  width: 50vw;
  max-width: 219px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%); }
  .square .st0 {
    fill: none;
    stroke: #000000;
    stroke-width: 4;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-miterlimit: 10; }
  .square .st1 {
    fill: none;
    stroke: #000000;
    stroke-width: 4;
    stroke-miterlimit: 10; }
  .square .svg-fadein01 {
    visibility: hidden;
    animation-name: svgFadein;
    animation-duration: 1.5s;
    animation-delay: 5.5s;
    animation-fill-mode: forwards; }
  .square .svg-fadein02 {
    visibility: hidden;
    animation-name: svgFadein;
    animation-duration: 1.5s;
    animation-delay: 6s;
    animation-fill-mode: forwards; }

@keyframes svgFadein {
  0% {
    opacity: 0;
    visibility: visible; }
  100% {
    opacity: 1;
    visibility: visible; } }

.dogear {
  position: relative;
  background: #fff; }
  .dogear::before {
    content: "";
    z-index: 3;
    position: absolute;
    top: -40px;
    left: 0;
    width: 0;
    height: 0;
    border-bottom: 40px solid #272822;
    border-left: 40px solid transparent; }
    @media screen and (max-width: 767px) {
      .dogear::before {
        top: -20px;
        border-bottom: 20px solid #272822;
        border-left: 20px solid transparent; } }
  .dogear:after {
    content: "";
    width: calc(100% - 40px);
    height: 0;
    display: block;
    position: absolute;
    left: 0;
    z-index: 2;
    border-bottom: solid 40px #fff;
    border-left: solid 40px transparent;
    bottom: 100%; }
    @media screen and (max-width: 767px) {
      .dogear:after {
        width: calc(100% - 20px);
        border-bottom: solid 20px #fff;
        border-left: solid 20px transparent; } }

.section02, .section03, .section04 {
  margin: -30px auto -70px;
  width: 90%;
  text-align: center;
  position: relative; }
  @media screen and (max-width: 767px) {
    .section02, .section03, .section04 {
      margin: -10px auto -30px; } }

.section01 {
  position: relative;
  height: 200px;
  width: 100%;
  background: #f3f4f6; }
  @media screen and (max-width: 767px) {
    .section01 {
      height: 100px; } }

.section02 .inner {
  padding-top: 40px; }

.section02 p {
  font-size: 1.8rem;
  line-height: 3;
  letter-spacing: 0.3rem; }
  @media screen and (max-width: 767px) {
    .section02 p {
      line-height: 2.5; } }

.section02 .btn-gra {
  display: inline-block; }

.section03 .inner {
  padding-top: 40px; }

.section03 .news_list {
  margin: 0 auto 10px; }

.section03 .btn-gra {
  display: inline-block; }

.section04 .l-container-1400 {
  padding: 0; }

.section04 .inner {
  padding-top: 40px; }

.section04 .btn-gra {
  max-width: 710px;
  margin-top: 40px; }
  @media screen and (max-width: 767px) {
    .section04 .btn-gra {
      margin-top: 0; } }

.section04 .index_service_list01 li {
  position: relative;
  margin: 60px 0; }
  .section04 .index_service_list01 li:first-child {
    flex-direction: row-reverse; }
    @media screen and (max-width: 1023px) {
      .section04 .index_service_list01 li:first-child {
        flex-direction: row; } }
  @media screen and (max-width: 767px) {
    .section04 .index_service_list01 li {
      width: 100%;
      margin: 0 0 60px; } }
  .section04 .index_service_list01 li .title-v {
    width: 10%;
    font-size: 2.8rem;
    letter-spacing: 0.5rem;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    text-align: left;
    font-weight: bold; }
    .section04 .index_service_list01 li .title-v span {
      display: block;
      font-size: 1.8rem; }
    @media screen and (max-width: 1023px) {
      .section04 .index_service_list01 li .title-v {
        width: 100%;
        font-size: 2.8rem;
        letter-spacing: 0.5rem;
        -ms-writing-mode: lr-tb;
        writing-mode: horizontal-tb;
        text-align: left; } }
    @media screen and (max-width: 767px) {
      .section04 .index_service_list01 li .title-v {
        font-size: 2.5rem;
        letter-spacing: 0.2rem;
        margin-bottom: 10px; } }
  .section04 .index_service_list01 li .service_list_box {
    width: 90%;
    max-width: 910px; }
    @media screen and (max-width: 1023px) {
      .section04 .index_service_list01 li .service_list_box {
        width: 100%; } }
    .section04 .index_service_list01 li .service_list_box a {
      display: block;
      width: 100%;
      position: relative;
      overflow: hidden; }
      .section04 .index_service_list01 li .service_list_box a img {
        width: 100%;
        height: auto;
        object-fit: cover;
        transition: all 0.5s; }
      .section04 .index_service_list01 li .service_list_box a:hover img {
        transform: scale(1.1); }
      .section04 .index_service_list01 li .service_list_box a.hover img {
        transform: scale(1.1); }
    .section04 .index_service_list01 li .service_list_box .hikki01 {
      display: block;
      max-width: 50%;
      position: absolute;
      z-index: 3;
      right: 19%;
      bottom: 70px; }
      @media screen and (max-width: 1023px) {
        .section04 .index_service_list01 li .service_list_box .hikki01 {
          display: none; } }
    .section04 .index_service_list01 li .service_list_box .hikki02 {
      display: block;
      max-width: 50%;
      position: absolute;
      z-index: 3;
      left: 15%;
      bottom: 70px; }
      @media screen and (max-width: 1023px) {
        .section04 .index_service_list01 li .service_list_box .hikki02 {
          display: none; } }
  .section04 .index_service_list01 li .service_list01_txt {
    margin-top: 20px;
    flex-wrap: nowrap; }
    @media screen and (max-width: 1023px) {
      .section04 .index_service_list01 li .service_list01_txt {
        flex-wrap: wrap; } }
    .section04 .index_service_list01 li .service_list01_txt .txt {
      text-align: left;
      margin-right: 30px; }
      @media screen and (max-width: 767px) {
        .section04 .index_service_list01 li .service_list01_txt .txt {
          margin-right: 0; } }
    .section04 .index_service_list01 li .service_list01_txt .btn-black {
      display: inline-block;
      width: 220px;
      margin: 0; }
      @media screen and (max-width: 1023px) {
        .section04 .index_service_list01 li .service_list01_txt .btn-black {
          margin: 10px auto 0; } }
      .section04 .index_service_list01 li .service_list01_txt .btn-black a {
        padding: 10px 40px 10px 20px; }

.section04 .index_service_list02 li {
  width: 48%;
  margin: 0 0 60px;
  overflow: hidden; }
  .section04 .index_service_list02 li a {
    display: block;
    overflow: hidden; }
    .section04 .index_service_list02 li a h3 {
      font-size: 2rem;
      letter-spacing: 0.3rem; }
    .section04 .index_service_list02 li a p {
      overflow: hidden; }
      .section04 .index_service_list02 li a p img {
        width: 100%;
        height: auto;
        object-fit: cover;
        transition: all 0.5s; }
    .section04 .index_service_list02 li a:hover img {
      transform: scale(1.1); }

.shopping {
  margin: 80px auto 0;
  width: 90%; }
  @media screen and (max-width: 767px) {
    .shopping {
      margin-top: 40px;
      width: 100%; } }
  .shopping.inner {
    padding: 30px; }
  @media screen and (max-width: 1024px) {
    .shopping .shop_list .l-flex-col-2 {
      width: 100%;
      margin: 0; } }
  .shopping .shop_list > li {
    margin: 0;
    text-align: center;
    position: relative;
    box-shadow: 0 5px 8px rgba(155, 155, 155, 0.5); }
    .shopping .shop_list > li a {
      padding: 20px 0;
      width: 100%;
      height: 100%; }
      .shopping .shop_list > li a p {
        width: 50%;
        padding: 0 10px;
        display: flex;
        align-items: center; }
        @media screen and (max-width: 767px) {
          .shopping .shop_list > li a p {
            padding: 0 5px;
            width: 65%; } }
        .shopping .shop_list > li a p img {
          max-width: 100%; }
    .shopping .shop_list > li::after {
      content: url("../img/content/blank.png");
      position: absolute;
      top: 10px;
      right: 20px; }
  .shopping .shop_list ul {
    margin: 0 !important; }
    @media screen and (max-width: 1024px) {
      .shopping .shop_list ul {
        margin: 40px 0 0 !important; } }
    @media screen and (max-width: 767px) {
      .shopping .shop_list ul {
        margin: 20px 0 0 !important; } }
    .shopping .shop_list ul li {
      position: relative;
      box-shadow: 0 5px 8px rgba(155, 155, 155, 0.5); }
      .shopping .shop_list ul li::after {
        content: url("../img/content/blank.png");
        position: absolute;
        top: 10px;
        right: 20px; }
      .shopping .shop_list ul li a {
        display: block;
        padding: 20px 0;
        width: 100%;
        height: 100%; }
        .shopping .shop_list ul li a p {
          margin: 0 auto;
          text-align: center; }
          .shopping .shop_list ul li a p img {
            max-width: 100%; }
          .shopping .shop_list ul li a p.yahoo {
            width: 50%; }
            @media screen and (max-width: 767px) {
              .shopping .shop_list ul li a p.yahoo {
                width: 65%; } }
          .shopping .shop_list ul li a p.rakuten {
            width: 30%; }
            @media screen and (max-width: 767px) {
              .shopping .shop_list ul li a p.rakuten {
                width: 40%; } }
      .shopping .shop_list ul li:last-child {
        margin-top: 40px; }
        @media screen and (max-width: 767px) {
          .shopping .shop_list ul li:last-child {
            margin-top: 20px; } }

.section05 {
  background: #fff; }
  .section05 .l-container-1400 {
    padding-top: 80px; }
    @media screen and (max-width: 767px) {
      .section05 .l-container-1400 {
        padding-top: 60px; } }
  @media screen and (max-width: 767px) {
    .section05 .inner {
      padding-top: 30px; } }
  .section05 .sec05_inner {
    padding: 0 80px; }
    @media screen and (max-width: 767px) {
      .section05 .sec05_inner {
        padding: 0; } }
  .section05 .sec05_ttl {
    text-align: center; }
  .section05 .index_rec_txt {
    width: 35%;
    margin: 0 auto; }
    @media screen and (max-width: 767px) {
      .section05 .index_rec_txt {
        width: 100%;
        text-align: center; } }
    .section05 .index_rec_txt h3 {
      letter-spacing: 0.2rem;
      text-align: left; }
    .section05 .index_rec_txt p {
      text-align: left; }
    .section05 .index_rec_txt .btn-red-gra {
      display: inline-block; }
      .section05 .index_rec_txt .btn-red-gra a {
        padding: 20px 50px; }
  .section05 .index_rec_img {
    width: 55%; }
    .section05 .index_rec_img img {
      display: block;
      width: 100%;
      height: auto; }
    @media screen and (max-width: 767px) {
      .section05 .index_rec_img {
        width: 80%;
        margin: 0 auto 30px; } }

.bg-master {
  background: #f3f4f6;
  padding-bottom: 200px;
  z-index: -2; }
  @media screen and (max-width: 767px) {
    .bg-master {
      padding-bottom: 100px; } }

.content_mainvisual {
  width: 100%;
  height: 320px;
  position: relative;
  background: url("../img/content/content_mainvisual.jpg");
  background-size: cover;
  background-position: center center; }
  @media screen and (max-width: 767px) {
    .content_mainvisual {
      height: 200px; } }

.pankuzu ul {
  padding: 20px 0 0 5vw;
  display: flex; }
  .pankuzu ul li {
    font-size: 1.3rem; }
    .pankuzu ul li::after {
      content: '>';
      font-weight: bold;
      padding: 0 10px; }
    .pankuzu ul li:last-child::after {
      content: none; }
    .pankuzu ul li a {
      font-size: 1.3rem; }
      .pankuzu ul li a:hover {
        color: #333;
        opacity: 0.8; }

.news_list {
  display: flex;
  margin: 0 auto 30px;
  max-width: 600px;
  width: 60%; }
  @media screen and (max-width: 1024px) {
    .news_list {
      width: 70%; } }
  @media screen and (max-width: 767px) {
    .news_list {
      display: block;
      text-align: left;
      width: 90%; } }
  .news_list dt {
    margin-right: 50px; }
  .news_list dd {
    text-align: left; }
    .news_list dd .new {
      display: inline-block;
      margin-left: 10px;
      padding: 2px 5px;
      color: #fff;
      font-weight: bold;
      line-height: 1;
      background: #e60012; }

.page_number {
  margin-top: 60px; }
  .page_number span, .page_number a {
    margin: 0 10px; }
    .page_number span.current, .page_number a.current {
      color: #ababab; }
  .page_number a:hover {
    color: #d90f3c; }

.news_detail {
  clear: both; }
  .news_detail .news_ttl {
    font-size: 2.8rem;
    margin-bottom: 40px;
    padding-bottom: 10px;
    border-bottom: 2px solid #eee; }
  .news_detail .news_img {
    width: 50%;
    vertical-align: bottom;
    display: inline-block;
    margin: 0 0 10px 10px;
    float: right; }
    @media screen and (max-width: 767px) {
      .news_detail .news_img {
        margin: 0 0 20px;
        float: none;
        width: 100%; } }
    .news_detail .news_img img {
      max-width: 100%; }
      @media screen and (max-width: 767px) {
        .news_detail .news_img img {
          width: 100%; } }
  .news_detail .news_txt {
    letter-spacing: 0.05em;
    padding-bottom: 40px;
    border-bottom: 2px solid #eee; }
  .news_detail .btn-red-gra {
    max-width: 300px; }

.mission_title {
  display: inline-block;
  text-align: center;
  font-weight: normal;
  letter-spacing: 1rem;
  font-size: 2.5rem;
  margin-bottom: 80px;
  position: relative; }
  .mission_title::before {
    content: '';
    display: block;
    width: 2px;
    height: 3rem;
    background: #333;
    position: absolute;
    top: 50%;
    left: -20px;
    transform: translateY(-50%) rotate(-15deg); }
  .mission_title::after {
    content: '';
    display: block;
    width: 2px;
    height: 3rem;
    background: #333;
    position: absolute;
    top: 50%;
    right: -20px;
    transform: translateY(-50%) rotate(15deg); }
  @media screen and (max-width: 767px) {
    .mission_title {
      font-size: 2rem;
      letter-spacing: 0.5rem;
      margin-bottom: 40px; }
      .mission_title::before {
        top: auto;
        bottom: 0;
        left: -10px;
        transform: translateY(0) rotate(-15deg); }
      .mission_title::after {
        top: auto;
        bottom: 0;
        right: -10px;
        transform: translateY(0) rotate(15deg); } }

.mission_message {
  position: relative; }
  .mission_message::after {
    content: "";
    display: block;
    clear: both; }
  .mission_message .mission_txt {
    position: absolute;
    margin-bottom: 6rem;
    top: 45%;
    transform: translateY(-50%);
    width: 55%;
    z-index: 5; }
    .mission_message .mission_txt .title03-black {
      letter-spacing: 1rem;
      font-size: 3.8rem;
      margin-bottom: 5rem; }
    @media screen and (max-width: 1024px) {
      .mission_message .mission_txt {
        top: 0;
        transform: translateY(0); }
        .mission_message .mission_txt .title03-black {
          font-size: 3.0rem;
          margin-bottom: 2rem; } }
    @media screen and (max-width: 837px) {
      .mission_message .mission_txt {
        width: 100%;
        position: static; }
        .mission_message .mission_txt .title03-black {
          letter-spacing: 0.5rem; } }
  .mission_message .mission_img {
    width: 50%;
    margin-left: auto;
    vertical-align: middle;
    position: relative;
    z-index: 2; }
    .mission_message .mission_img::before {
      content: '';
      display: block;
      width: 100%;
      height: 100%;
      background: #edf3f6;
      position: absolute;
      top: 5%;
      left: -5%;
      z-index: 0; }
    .mission_message .mission_img img {
      width: 100%;
      position: relative;
      z-index: 3; }
    @media screen and (max-width: 837px) {
      .mission_message .mission_img {
        width: 95%;
        margin-bottom: 50px; } }
  .mission_message .mission_img02 {
    width: 50%;
    height: auto;
    position: absolute;
    bottom: -150px;
    right: 0;
    z-index: 5; }
    @media screen and (max-width: 1024px) {
      .mission_message .mission_img02 {
        bottom: -70px; } }
    @media screen and (max-width: 837px) {
      .mission_message .mission_img02 {
        position: static;
        margin: 30px 0 0 auto; } }
    .mission_message .mission_img02 img {
      width: 100%; }

.mission_list {
  margin-top: 80px; }
  @media screen and (max-width: 767px) {
    .mission_list {
      margin-top: 60px; } }
  .mission_list ul .l-flex-col-3 {
    width: 32%; }
    @media screen and (max-width: 767px) {
      .mission_list ul .l-flex-col-3 {
        width: 100%; } }
  .mission_list ul li {
    border-right: 1px solid #333;
    padding-right: 25px; }
    .mission_list ul li:last-child {
      border-right: none; }
    .mission_list ul li h4 {
      font-size: 2.2rem;
      margin-bottom: 20px;
      letter-spacing: 0.05em; }
    @media screen and (max-width: 767px) {
      .mission_list ul li {
        border-right: none;
        padding-right: 0; } }
  .mission_list .president_name {
    padding-top: 20px;
    font-weight: bold; }
    .mission_list .president_name span {
      display: inline-block;
      width: 220px;
      margin-left: 10px; }
      .mission_list .president_name span img {
        width: 100%; }
    @media screen and (max-width: 767px) {
      .mission_list .president_name {
        padding-top: 0; }
        .mission_list .president_name span {
          display: inline-block;
          width: 170px;
          margin-left: 10px; } }

.health_img {
	width:100%;
	overflow:hidden;
}
.health_img img{
	max-width: 100%; 
    height:auto;
}

.service_content01 {
  position: relative;
  margin-bottom: 80px; }
  @media screen and (max-width: 767px) {
    .service_content01 {
      margin-bottom: 60px; } }
  .service_content01 .service_content_img {
    width: 60%;
    max-width: 780px;
    overflow: hidden; }
    .service_content01 .service_content_img img {
      display: block;
      width: 100%;
      height: auto;
      transition: all 0.5s; }
    .service_content01 .service_content_img:hover a img {
      transform: scale(1.1); }
    .service_content01 .service_content_img.hover a img {
      transform: scale(1.1); }
    @media screen and (max-width: 1024px) {
      .service_content01 .service_content_img {
        width: 100%; } }
  .service_content01 .service_content_txt {
    width: 50%;
    background: #fff;
    padding: 50px;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    z-index: 5; }
    @media screen and (max-width: 1024px) {
      .service_content01 .service_content_txt {
        width: 100%;
        padding: 20px 0 10px;
        position: static;
        top: 0;
        left: 0;
        transform: translate(0); } }
    .service_content01 .service_content_txt h3 {
      margin-bottom: 20px;
      letter-spacing: 0.3rem; }
    .service_content01 .service_content_txt .btn-black {
      display: inline-block;
      margin: 20px 20px 10px 0; }
      @media screen and (max-width: 767px) {
        .service_content01 .service_content_txt .btn-black {
          display: block;
          width: 90%;
          max-width: 250px;
          margin: 20px auto 10px; }
          .service_content01 .service_content_txt .btn-black a {
            padding: 15px 40px; } }
    .service_content01 .service_content_txt .service_content_link {
      display: inline-block; }
      .service_content01 .service_content_txt .service_content_link a {
        font-size: 1.5rem;
        color: #d90f3c; }
        .service_content01 .service_content_txt .service_content_link a:hover {
          opacity: 1;
          text-decoration: underline; }
      @media screen and (max-width: 767px) {
        .service_content01 .service_content_txt .service_content_link {
          display: block;
          text-align: center; } }
    .service_content01 .service_content_txt ul > .service_content_link {
      display: inline-block; }
      .service_content01 .service_content_txt ul > .service_content_link:before {
        content: '/';
        padding: 0 10px; }
      .service_content01 .service_content_txt ul > .service_content_link a {
        color: #d90f3c; }
        .service_content01 .service_content_txt ul > .service_content_link a:hover {
          opacity: 1;
          text-decoration: underline; }
      .service_content01 .service_content_txt ul > .service_content_link:first-child::before {
        display: none; }
      @media screen and (max-width: 767px) {
        .service_content01 .service_content_txt ul > .service_content_link {
          display: block; }
          .service_content01 .service_content_txt ul > .service_content_link::before {
            display: none; } }
    .service_content01 .service_content_txt .table th {
      text-align: left;
      margin-bottom: 5px;
      font-size: 1.5rem; }
    .service_content01 .service_content_txt .table td {
      display: inline-block;
      text-align: left;
      margin-left: 1em;
      font-size: 1.5rem; }
    @media screen and (max-width: 767px) {
      .service_content01 .service_content_txt .table th {
        display: block;
        margin-bottom: 0; }
      .service_content01 .service_content_txt .table td {
        display: block;
        margin-bottom: 5px; } }

.service_content02 {
  position: relative;
  margin-bottom: 60px; }
  .service_content02 .service_content_img {
    width: 60%;
    max-width: 780px;
    margin-left: auto;
    overflow: hidden; }
    .service_content02 .service_content_img img {
      display: block;
      width: 100%;
      height: auto;
      transition: all 0.5s; }
    .service_content02 .service_content_img:hover a img {
      transform: scale(1.1); }
    .service_content02 .service_content_img.hover a img {
      transform: scale(1.1); }
    @media screen and (max-width: 1024px) {
      .service_content02 .service_content_img {
        width: 100%; } }
  .service_content02 .service_content_txt {
    width: 50%;
    background: #fff;
    padding: 50px;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    z-index: 5; }
    @media screen and (max-width: 1024px) {
      .service_content02 .service_content_txt {
        width: 100%;
        padding: 20px 0 10px;
        position: static;
        top: 0;
        left: 0;
        transform: translate(0); } }
    .service_content02 .service_content_txt h3 {
      margin-bottom: 20px;
      letter-spacing: 0.3rem; }
    .service_content02 .service_content_txt .btn-black {
      display: inline-block;
      margin: 20px 20px 10px 0; }
      @media screen and (max-width: 767px) {
        .service_content02 .service_content_txt .btn-black {
          display: block;
          width: 90%;
          max-width: 250px;
          margin: 20px auto 10px; }
          .service_content02 .service_content_txt .btn-black a {
            padding: 15px 40px; } }
    .service_content02 .service_content_txt .service_content_link {
      display: inline-block; }
      .service_content02 .service_content_txt .service_content_link a {
        font-size: 1.5rem;
        color: #d90f3c; }
        .service_content02 .service_content_txt .service_content_link a:hover {
          opacity: 1;
          text-decoration: underline; }
      @media screen and (max-width: 767px) {
        .service_content02 .service_content_txt .service_content_link {
          display: block;
          text-align: center; } }
    .service_content02 .service_content_txt ul > .service_content_link {
      display: inline-block; }
      .service_content02 .service_content_txt ul > .service_content_link:before {
        content: '/';
        padding: 0 10px; }
      .service_content02 .service_content_txt ul > .service_content_link:first-child::before {
        display: none; }
      @media screen and (max-width: 767px) {
        .service_content02 .service_content_txt ul > .service_content_link {
          display: block;
          text-align: center; }
          .service_content02 .service_content_txt ul > .service_content_link::before {
            display: none; } }

#company .table-basic {
  width: 60%;
  border-top: 1px solid #ccc; }
  @media screen and (max-width: 767px) {
    #company .table-basic {
      width: 100%; } }
  #company .table-basic a {
    color: #d90f3c; }

#company .table_img {
  width: 35%; }
  @media screen and (max-width: 767px) {
    #company .table_img {
      width: 100%;
      margin-bottom: 30px; } }
  #company .table_img img {
    width: 100%; }

#history {
  margin-top: 60px; }
  #history .table-basic {
    width: 70%;
    border-top: 1px solid #ccc; }
    @media screen and (max-width: 767px) {
      #history .table-basic {
        width: 100%; } }

.company_map ul {
  margin-top: 20px; }
  .company_map ul li:first-child {
    background: #eee;
    padding: 20px 20px;
    font-weight: bold;
    margin: 0 20px 20px 0; }
    @media screen and (max-width: 767px) {
      .company_map ul li:first-child {
        padding: 10px;
        margin: 0 0 10px 0; } }
  .company_map ul li dl:first-child {
    margin-bottom: 10px; }
  .company_map ul li dl dt {
    width: 100px;
    color: #888;
    font-weight: bold; }
    @media screen and (max-width: 767px) {
      .company_map ul li dl dt {
        width: 100%; } }

.company_photo {
  padding: 80px 0; }
  .company_photo ul {
    width: 95%;
    max-width: 1200px;
    margin: 0 auto; }
    .company_photo ul li {
      width: 24%;
      margin-bottom: 15px; }
      .company_photo ul li img {
        width: 100%;
        height: auto; }
  @media screen and (max-width: 767px) {
    .company_photo {
      padding: 30px 0; }
      .company_photo ul li {
        width: 49%; } }

.shop_underbar {
  margin-bottom: 90px;
  padding-bottom: 10px;
  border-bottom: 10px solid #edf3f6; }
  @media screen and (max-width: 767px) {
    .shop_underbar {
      margin-bottom: 50px; } }

.shop_sidebar {
  width: 10px;
  background: #edf3f6; }

.shop01 {
  margin-bottom: 90px; }
  @media screen and (max-width: 767px) {
    .shop01 {
      margin-bottom: 60px !important; } }
  .shop01 .title03-black {
    margin-bottom: 3rem; }
    @media screen and (max-width: 767px) {
      .shop01 .title03-black {
        margin-bottom: 2rem; } }
  .shop01 .table-basic {
    width: 48%;
    margin-bottom: 0;
    border-top: 1px solid #ccc; }
    .shop01 .table-basic th {
      padding-left: 0; }
    .shop01 .table-basic a {
      color: #d90f3c; }
    @media screen and (max-width: 767px) {
      .shop01 .table-basic {
        width: 100%; }
        .shop01 .table-basic th {
          border-bottom: none; } }
  .shop01 .table_inner {
    width: 48%; }
    .shop01 .table_inner > .table-basic {
      width: 100%; }
    @media screen and (max-width: 767px) {
      .shop01 .table_inner {
        width: 100%; } }
  .shop01 .table_img {
    width: 45%;
    height: auto;
    position: relative;
    z-index: 3; }
    .shop01 .table_img::after {
      content: '';
      display: block;
      width: 100%;
      height: 100%;
      background: #edf3f6;
      position: absolute;
      top: 20px;
      left: 20px; }
    .shop01 .table_img img {
      display: block;
      width: 100%;
      position: relative;
      z-index: 3; }
    @media screen and (max-width: 767px) {
      .shop01 .table_img {
        width: 100%;
        margin-bottom: 20px; }
        .shop01 .table_img::after {
          display: none; } }

.shop_img {
  width: 100%;
  margin-bottom: 100px;
  position: relative; }
  .shop_img::after {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    background: #edf3f6;
    position: absolute;
    top: 20px;
    left: 20px; }
  @media screen and (max-width: 767px) {
    .shop_img {
      margin-bottom: 50px; }
      .shop_img::after {
        display: none; } }
  .shop_img img {
    display: block;
    width: 100%;
    position: relative;
    z-index: 3; }

.shop02 > li {
  margin-bottom: 90px; }
  @media screen and (max-width: 767px) {
    .shop02 > li {
      margin-bottom: 60px; } }
  .shop02 > li .title03-black {
    line-height: 1.3;
    margin-bottom: 3rem; }
    .shop02 > li .title03-black span {
      font-size: 1.6rem;
      padding-left: 10px; }
  .shop02 > li .table-basic {
    margin-bottom: 0;
    border-top: 1px solid #ccc; }
    .shop02 > li .table-basic th {
      padding-left: 0; }
    .shop02 > li .table-basic a {
      color: #d90f3c; }

.shop_sns {
  margin-top: 20px; }
  .shop_sns > li {
    display: flex;
    margin-right: 10px;
    width: 40px; }
    .shop_sns > li a {
      display: block;
      width: 100%;
      height: auto; }

.privacy_txt {
  margin-bottom: 70px; }

.mainvisual01 {
  width: 100%;
  height: 100vh;
  position: relative;
  z-index: -10; }
  .mainvisual01.hidden .main-slide {
    display: none;
    background: none; }
  .mainvisual01 .main-slide {
    width: 100%;
    height: 100vh;
    margin: 0 auto;
    position: relative; }
    .mainvisual01 .main-slide .sld_fade {
      width: 100%;
      height: 100vh;
      position: fixed;
      left: 0;
      top: 0;
      display: none;
      background-position: center;
      background-size: cover;
      background-repeat: no-repeat; }
      @media screen and (max-width: 1024px) {
        .mainvisual01 .main-slide .sld_fade {
          background-position: 29% center; } }
      .mainvisual01 .main-slide .sld_fade:nth-child(1) {
        background-image: url("../img/slider/rec_top/mainvisual01-01.png"); }
      .mainvisual01 .main-slide .sld_fade:nth-child(2) {
        background-image: url("../img/slider/rec_top/mainvisual01-02.jpg"); }
      .mainvisual01 .main-slide .sld_fade:nth-child(3) {
        background-image: url("../img/slider/rec_top/mainvisual01-03.jpg"); }
  .mainvisual01 .r_top_word {
    position: absolute;
    left: 55%;
    top: 35%;
    font-size: 11rem;
    font-family: "recruitTop";
    line-height: 1;
    font-weight: bold;
    transition: all 2s;
    background: linear-gradient(to right, #20e7ae 0%, #1f3aec 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent; }
    @media all and (-ms-high-contrast: none) {
      .mainvisual01 .r_top_word {
        background: none;
        color: #1f3aec; } }
    @media screen and (max-width: 1024px) {
      .mainvisual01 .r_top_word {
        font-size: 8rem; } }
    @media screen and (max-width: 768px) {
      .mainvisual01 .r_top_word {
        font-size: 6rem;
        left: auto;
        right: 20px; } }
    @media screen and (max-width: 767px) {
      .mainvisual01 .r_top_word {
        font-size: 8rem;
        width: auto;
        height: auto;
        right: 20px;
        top: auto;
        bottom: 20px; } }
  .mainvisual01 .r_top_img {
    width: 40vw;
    position: absolute;
    left: 55%;
    top: 35%; }
    .mainvisual01 .r_top_img img {
      max-width: 100%; }
    @media screen and (max-width: 768px) {
      .mainvisual01 .r_top_img {
        left: auto;
        right: 20px; } }
    @media screen and (max-width: 767px) {
      .mainvisual01 .r_top_img {
        right: 20px;
        top: auto;
        bottom: 60px; } }
  .mainvisual01 .white {
    color: #fff;
    background: none;
    -webkit-background-clip: text;
    -webkit-text-fill-color: #fff; }
  .mainvisual01 .scroll {
    width: 120px;
    padding: 10px 20px;
    text-align: center;
    box-sizing: content-box;
    position: absolute;
    bottom: 10%;
    right: 3%;
    transform: rotate(90deg);
    overflow-x: hidden; }
    @media screen and (max-width: 767px) {
      .mainvisual01 .scroll {
        left: 0;
        bottom: 5%; } }
    .mainvisual01 .scroll .scroll_txt {
      font-family: "Roboto Condensed";
      color: #333;
      font-weight: bold;
      font-size: 2rem;
      letter-spacing: 0.2rem; }
      .mainvisual01 .scroll .scroll_txt::before {
        content: '';
        display: block;
        height: 1px;
        width: 100%;
        background: #333;
        position: absolute;
        bottom: 0;
        left: 0;
        -webkit-animation: scrollmovement 4000ms 0s infinite;
        -moz-animation: scrollmovement 4000ms 0s infinite;
        -o-animation: scrollmovement 4000ms 0s infinite;
        -ms-animation: scrollmovement 4000ms 0s infinite;
        animation: scrollmovement 4000ms 0s infinite; }

@keyframes scrollmovement {
  0% {
    width: 0;
    transform: translateX(0); }
  20% {
    width: 100%;
    transform: translateX(0); }
  80% {
    width: 100%;
    transform: translateX(0); }
  100% {
    width: 100%;
    transform: translateX(100%); } }

.mainvisual02 {
  width: 50%;
  height: 640px;
  background: url("../img/recruit/mainvisual02.png") center center no-repeat;
  background-size: cover; }
  @media screen and (max-width: 767px) {
    .mainvisual02 {
      height: 470px;
      background: none; } }

.mainvisual03 {
  width: 50%;
  height: 640px;
  background: url("../img/recruit/mainvisual03.png") right center no-repeat;
  background-size: cover; }
  @media screen and (max-width: 767px) {
    .mainvisual03 {
      height: 470px;
      background: none; } }

.index_intro {
  position: relative; }
  .index_intro .index_intro_inner {
    position: absolute;
    top: -30px;
    right: 0;
    left: 0;
    padding: 60px;
    z-index: 10; }
    @media screen and (max-width: 767px) {
      .index_intro .index_intro_inner {
        padding: 30px 20px; } }
  .index_intro .president_name {
    margin-top: 30px;
    font-size: 1.4rem; }
    .index_intro .president_name span {
      display: inline-block;
      width: 150px;
      margin-left: 2rem; }
      @media screen and (max-width: 767px) {
        .index_intro .president_name span {
          width: 100px; } }
      .index_intro .president_name span img {
        width: 100%; }

.index01 {
  position: relative;
  padding-top: 120px; }
  .index01::before {
    content: '';
    display: block;
    width: 50%;
    height: 500px;
    position: absolute;
    top: 220px;
    left: 50%;
    transform: translateX(-50%); }
    @media screen and (max-width: 1024px) {
      .index01::before {
        width: 100%;
        height: 62%;
        top: 200px; } }
  .index01 .l-container-1400 {
    padding: 0; }
  .index01 .title01-box {
    margin-bottom: 60px; }
    @media screen and (max-width: 767px) {
      .index01 .title01-box {
        margin-bottom: 20px; } }

.index02 > ul .index02_txt {
  margin-left: 2rem; }
  @media screen and (max-width: 767px) {
    .index02 > ul .index02_txt {
      margin-left: 0;
      margin-bottom: 3rem; } }

.index02 {
  padding: 60px 0 80px;
  position: relative; }
  @media screen and (max-width: 767px) {
    .index02 {
      padding: 50px 30px; } }
  .index02::before {
    content: '';
    display: block;
    width: 50%;
    height: 30%;
    position: absolute;
    top: 20%;
    left: 40%;
    transform: translateX(-50%);
    z-index: 1; }
    @media screen and (max-width: 767px) {
      .index02::before {
        display: none; } }
  .index02::after {
    content: '';
    display: block;
    width: 50%;
    height: 30%;
    position: absolute;
    bottom: 320px;
    left: 40%;
    transform: translateX(-50%);
    z-index: 1; }
    @media screen and (max-width: 767px) {
      .index02::after {
        display: none; } }
  .index02 .index02_caption {
    margin: 20px 0 60px;
    text-align: center; }
    @media screen and (max-width: 767px) {
      .index02 .index02_caption {
        margin-bottom: 20px;
        text-align: left; } }
  .index02 > ul {
    margin-top: 6rem;
    position: relative;
    z-index: 2; }
    @media screen and (max-width: 767px) {
      .index02 > ul {
        margin-top: 6rem; } }
    .index02 > ul img {
      max-width: 100%; }
    .index02 > ul .index02_txt {
      width: 40%;
      position: relative;
      clear: both; }
      @media screen and (max-width: 767px) {
        .index02 > ul .index02_txt {
          width: 100%; } }
      .index02 > ul .index02_txt h3 {
        width: 80%;
        margin: 0 auto; }
        .index02 > ul .index02_txt h3 img {
          width: 80%; }
        .index02 > ul .index02_txt h3 span {
          display: block;
          font-size: 2.5rem;
          padding-top: 1.5rem;
          letter-spacing: 0.3rem; }
          @media screen and (max-width: 767px) {
            .index02 > ul .index02_txt h3 span {
              font-size: 2rem;
              padding-top: 1rem; } }
      .index02 > ul .index02_txt p {
        margin-top: 5rem;
        width: 60%; }
        @media screen and (max-width: 767px) {
          .index02 > ul .index02_txt p {
            margin-top: 2rem;
            width: 100%; } }
      .index02 > ul .index02_txt .index02_icon01, .index02 > ul .index02_txt .index02_icon02, .index02 > ul .index02_txt .index02_icon03, .index02 > ul .index02_txt .index02_icon04 {
        position: absolute;
        left: 65%;
        top: 50%; }
        @media screen and (max-width: 767px) {
          .index02 > ul .index02_txt .index02_icon01, .index02 > ul .index02_txt .index02_icon02, .index02 > ul .index02_txt .index02_icon03, .index02 > ul .index02_txt .index02_icon04 {
            display: none; } }
      @media screen and (max-width: 1024px) {
        .index02 > ul .index02_txt .index02_icon01 {
          width: 40%; } }
      @media screen and (max-width: 1024px) {
        .index02 > ul .index02_txt .index02_icon02 {
          width: 60%; } }
      @media screen and (max-width: 1024px) {
        .index02 > ul .index02_txt .index02_icon03 {
          width: 40%; } }
      @media screen and (max-width: 1024px) {
        .index02 > ul .index02_txt .index02_icon04 {
          width: 60%; } }
    .index02 > ul .index02_img {
      width: 55%; }
      .index02 > ul .index02_img img {
        width: 100%; }
      @media screen and (max-width: 767px) {
        .index02 > ul .index02_img {
          width: 100%; } }
  .index02 .index02_other {
    padding: 20px 30px;
    margin: 60px auto 40px;
    text-align: center; }
    @media screen and (max-width: 767px) {
      .index02 .index02_other {
        margin-top: 50px;
        text-align: left; } }
  @media screen and (max-width: 767px) {
    .index02 .btn-gra a {
      padding: 15px 30px; } }

.index03.l-container-out {
  width: 90%; }

.index03 .index03_img {
  margin: 6rem 0 5rem;
  position: relative; }
  .index03 .index03_img img {
    width: 100%;
    height: auto; }
  .index03 .index03_img a {
    position: absolute;
    top: -9%;
    right: 5%; }
    .index03 .index03_img a img {
      width: 20vw;
      max-width: 234px; }
    .index03 .index03_img a:hover img {
      opacity: 1; }

.index03 .index03_caption {
  margin: 20px 0 60px;
  text-align: center; }
  @media screen and (max-width: 767px) {
    .index03 .index03_caption {
      margin-bottom: 20px;
      text-align: left; } }

.index03 .index03_list li h4 {
  font-size: 2rem;
  margin-bottom: 1.5rem; }

.index03 .index03_list li > ul > li {
  color: #a9a9a9;
  margin-top: 0.5rem; }
  .index03 .index03_list li > ul > li::before {
    content: '-';
    padding-right: 5px; }

.index03 .btn-gra {
  margin-top: 4rem; }
  @media screen and (max-width: 767px) {
    .index03 .btn-gra {
      margin-top: 0; }
      .index03 .btn-gra a {
        padding: 15px 40px; } }

.index04.l-container-out {
  width: 90%; }

.index04 .index04_list li h4 {
  font-size: 2rem;
  margin: 1.5rem 0 2rem;
  line-height: 1.2; }

.index04 .index04_list li p {
  width: 90%;
  margin: 0 auto 2rem;
  text-align: left; }
  .index04 .index04_list li p:last-child {
    margin: 0 auto; }

.index04 .btn-gra {
  margin-top: 4rem; }
  @media screen and (max-width: 767px) {
    .index04 .btn-gra {
      margin-top: 0; } }

.index05 {
  margin-bottom: 100px; }
  .index05.l-container-out {
    width: 90%; }
  @media screen and (max-width: 767px) {
    .index05 {
      margin-bottom: 60px; } }
  .index05 .index05_box {
    width: 100%;
    height: 350px;
    background-color: #f0f5f8;
    background-image: url("../img/recruit/interview.jpg");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    position: relative;
    overflow: hidden; }
  .index05 .index05_ttl {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 30px; }
    @media screen and (max-width: 767px) {
      .index05 .index05_ttl {
        transform: translateY(0);
        top: auto;
        bottom: 10px;
        left: 10px; }
        .index05 .index05_ttl .title01 {
          color: #fff;
          padding: 0 20px 0 0;
          text-shadow: 1px 1px 3px #333; } }
    .index05 .index05_ttl .btn-black {
      margin: 3rem 0 0; }
      @media screen and (max-width: 767px) {
        .index05 .index05_ttl .btn-black {
          margin: 1rem 0 0; } }
      .index05 .index05_ttl .btn-black a {
        display: block;
        padding: 15px 50px; }
        @media screen and (max-width: 767px) {
          .index05 .index05_ttl .btn-black a {
            padding: 10px 0; } }
  .index05 .btn-recruit-more {
    display: inline-block; }
    .index05 .btn-recruit-more a {
      padding: 20px 90px 20px 40px;
      position: relative; }
      .index05 .btn-recruit-more a::after {
        content: url(../img/recruit/video.png);
        position: absolute;
        right: 20px;
        line-height: 1; }
      .index05 .btn-recruit-more a:hover::after {
        content: url(../img/recruit/video_hover.png); }

.iv_list {
  position: relative;
  margin-bottom: 150px; }
  .iv_list::after {
    content: '';
    display: block;
    width: 60%;
    height: 100%;
    position: absolute;
    z-index: 0; }
  @media screen and (max-width: 1024px) {
    .iv_list {
      margin-bottom: 80px; }
      .iv_list::after {
        width: 100%;
        height: 95%; } }
  .iv_list .iv_list_icon {
    height: auto;
    position: absolute;
    z-index: 5; }
    .iv_list .iv_list_icon img {
      max-width: 100%; }
    @media screen and (max-width: 1024px) {
      .iv_list .iv_list_icon {
        width: 20%; } }
    .iv_list .iv_list_icon:hover {
      animation: iconRotate 600ms 0s ease-in-out; }

@keyframes iconRotate {
  0% {
    transform: rotate(0); }
  25% {
    transform: rotate(20deg); }
  50% {
    transform: rotate(-20deg); }
  75% {
    transform: rotate(20deg); }
  90% {
    transform: rotate(-10deg); }
  100% {
    transform: rotate(0); } }
  .iv_list .iv_list_img {
    display: inline-block;
    position: relative;
    z-index: 2;
    overflow: hidden; }
    .iv_list .iv_list_img a img {
      max-width: 100%;
      transition: all 0.5s; }
    .iv_list .iv_list_img a:hover img {
      opacity: 1;
      transform: scale(1.1); }
    .iv_list .iv_list_img.hover a img {
      opacity: 1;
      transform: scale(1.1); }
    @media screen and (max-width: 1024px) {
      .iv_list .iv_list_img {
        display: block; }
        .iv_list .iv_list_img a img {
          width: 100%;
          max-width: auto; } }
  .iv_list .iv_list_txt {
    position: absolute;
    z-index: 3; }
    .iv_list .iv_list_txt a {
      display: block;
      padding: 60px;
      color: #333; }
      .iv_list .iv_list_txt a img {
        max-width: 100%; }
      .iv_list .iv_list_txt a p {
        margin-top: 30px; }
        @media screen and (max-width: 767px) {
          .iv_list .iv_list_txt a p {
            margin-top: 20px; } }
      .iv_list .iv_list_txt a:hover p {
        color: #333; }
    .iv_list .iv_list_txt span {
      display: inline-block; }
      @media screen and (max-width: 767px) {
        .iv_list .iv_list_txt span {
          display: none; } }
    @media screen and (max-width: 1024px) {
      .iv_list .iv_list_txt {
        width: 90%;
        position: relative;
        margin: -30px auto 0;
        text-align: center; } }
    @media screen and (max-width: 1024px) {
      .iv_list .iv_list_txt a {
        padding: 30px; } }
  .iv_list .iv_list_num {
    position: absolute;
    z-index: 4; }
    .iv_list .iv_list_num::after {
      content: '';
      display: block;
      width: 80%;
      height: 2px;
      background: #e60012;
      position: absolute; }
    @media screen and (max-width: 1024px) {
      .iv_list .iv_list_num {
        width: 12%; }
        .iv_list .iv_list_num img {
          width: 100%; } }

.iv_list01::after {
  right: 0;
  top: 10%; }

@media screen and (max-width: 1024px) {
  .iv_list01::after {
    left: 0; } }

.iv_list01 .iv_list01_icon {
  top: -30px;
  left: -30px; }
  @media screen and (max-width: 1024px) {
    .iv_list01 .iv_list01_icon {
      top: 10px;
      left: 10px; } }

.iv_list01 .iv_list01_txt {
  right: 50px;
  bottom: 0; }
  .iv_list01 .iv_list01_txt a::after {
    top: 0;
    left: 0; }
  @media screen and (max-width: 1024px) {
    .iv_list01 .iv_list01_txt {
      right: auto; } }

.iv_list01 .iv_list01_num {
  right: 0;
  top: -50px; }
  .iv_list01 .iv_list01_num::after {
    bottom: -20px;
    right: -20px; }
  @media screen and (max-width: 1024px) {
    .iv_list01 .iv_list01_num {
      top: -30px; }
      .iv_list01 .iv_list01_num::after {
        bottom: -10px;
        right: -10px; } }

.iv_list02::after {
  left: 0;
  top: 10%; }

.iv_list02 .iv_list02_icon {
  bottom: -30px;
  right: -30px; }
  @media screen and (max-width: 1024px) {
    .iv_list02 .iv_list02_icon {
      left: auto;
      top: 40%;
      right: 0;
      bottom: auto; } }
  @media screen and (max-width: 767px) {
    .iv_list02 .iv_list02_icon {
      top: auto;
      bottom: 0; } }

.iv_list02 .iv_list02_img {
  text-align: right;
  display: block;
  z-index: 2;
  overflow: hidden; }
  .iv_list02 .iv_list02_img a {
    display: inline-block;
    overflow: hidden; }
  @media screen and (max-width: 1024px) {
    .iv_list02 .iv_list02_img a {
      display: block; } }

.iv_list02 .iv_list02_txt {
  left: 50px;
  bottom: 0; }
  .iv_list02 .iv_list02_txt a {
    display: inline-block; }
    .iv_list02 .iv_list02_txt a::after {
      top: 0;
      left: 0; }
  @media screen and (max-width: 1024px) {
    .iv_list02 .iv_list02_txt {
      left: auto; } }

.iv_list02 .iv_list02_num {
  top: -55px;
  left: 0px; }
  .iv_list02 .iv_list02_num::after {
    bottom: -20px;
    left: -20px; }
  @media screen and (max-width: 1024px) {
    .iv_list02 .iv_list02_num {
      top: -30px; }
      .iv_list02 .iv_list02_num::after {
        bottom: -10px;
        left: -10px; } }

.iv_ttl {
  letter-spacing: 0.8rem; }
  @media screen and (max-width: 767px) {
    .iv_ttl {
      letter-spacing: 0.5rem; } }

.iv_name span {
  font-size: 2.4rem;
  font-weight: bold;
  letter-spacing: 0.3rem; }

.iv_txt_box {
  background: #fff;
  padding: 50px; }
  .iv_txt_box h4 {
    font-size: 2.2rem;
    letter-spacing: 0.3rem;
    margin-bottom: 30px; }
    .iv_txt_box h4 span {
      font-size: 3rem;
      color: #e60012;
      padding: 0 1rem 15px 0;
      border-bottom: 2px solid #e60012; }
  @media screen and (max-width: 1024px) {
    .iv_txt_box {
      padding: 30px; }
      .iv_txt_box .l-wrap-70p {
        width: 100%; } }
  .iv_txt_box.first h4 {
    margin-bottom: 50px; }
  @media screen and (max-width: 1024px) {
    .iv_txt_box.first {
      padding-top: 30px; }
      .iv_txt_box.first h4 {
        margin-bottom: 30px; } }

.iv_img img {
  width: 100%; }

.iv_01 {
  margin-top: 60px; }
  @media screen and (max-width: 767px) {
    .iv_01 {
      margin-top: 30px; } }
  .iv_01 .iv_img {
    width: 90%; }
    @media screen and (max-width: 1024px) {
      .iv_01 .iv_img {
        width: 100%; } }

.iv_02 {
  margin-top: 20px;
  position: relative; }
  .iv_02 .iv_img {
    width: 60%;
    margin-left: auto; }
  .iv_02 .iv_txt_box {
    width: 60%;
    position: absolute;
    top: 50%;
    left: 0; }
  @media screen and (max-width: 1024px) {
    .iv_02 {
      margin-top: 60px; }
      .iv_02 .iv_img {
        width: 100%; }
      .iv_02 .iv_txt_box {
        position: static;
        width: 100%; }
        .iv_02 .iv_txt_box h4 {
          text-align: center; } }
  @media screen and (max-width: 767px) {
    .iv_02 {
      margin-top: 10px; } }

.iv_03 {
  margin-top: 220px;
  position: relative; }
  .iv_03 .iv_img {
    width: 55%; }
  .iv_03 .iv_txt_box {
    width: 50%;
    position: absolute;
    top: 30%;
    right: 0; }
  .iv_03 .iv_sign {
    display: block;
    width: 150px;
    margin-left: auto;
    margin-top: 20px; }
    .iv_03 .iv_sign img {
      width: 100%; }
  @media screen and (max-width: 1024px) {
    .iv_03 {
      margin: 60px 0 100px !important; }
      .iv_03 .iv_img {
        width: 100%; }
      .iv_03 .iv_txt_box {
        position: static;
        width: 100%; }
        .iv_03 .iv_txt_box h4 {
          text-align: center; } }
  @media screen and (max-width: 767px) {
    .iv_03 {
      margin: 30px 0 60px !important; }
      .iv_03 .iv_sign {
        width: 120px; } }

.iv_btn {
  margin: 0 30px; }
  .iv_btn .space {
    display: inline-block; }
    @media screen and (max-width: 767px) {
      .iv_btn .space {
        display: none; } }

.job_list_box {
  margin: 100px 0; }
  @media screen and (max-width: 767px) {
    .job_list_box {
      margin: 50px 10px; } }
  .job_list_box .job_list_table {
    padding: 20px;
    border-bottom: 1px solid #333; }
    @media screen and (max-width: 768px) {
      .job_list_box .job_list_table {
        padding: 20px 10px; } }
    @media screen and (max-width: 787px) {
      .job_list_box .job_list_table dt {
        width: 100%;
        font-size: 2rem;
        margin-bottom: 10px; } }
    .job_list_box .job_list_table dd {
      padding: 10px 0;
      width: 300px;
      text-align: center;
      background: rgba(155, 155, 155, 0.5);
      color: #fff; }
    .job_list_box .job_list_table .btn-black {
      margin: 0;
      padding: 0;
      background: none; }
      .job_list_box .job_list_table .btn-black a {
        padding: 10px 0;
        width: 300px; }

.job_list_box_test {
  margin: 100px 0; }
  @media screen and (max-width: 767px) {
    .job_list_box_test {
      margin: 50px 10px; } }
  .job_list_box_test .job_list_table {
    padding: 20px;
    border-bottom: 1px solid #333; }
    @media screen and (max-width: 768px) {
      .job_list_box_test .job_list_table {
        padding: 20px 10px; } }
    @media screen and (max-width: 787px) {
      .job_list_box_test .job_list_table dt {
        width: 100%;
        font-size: 2rem;
        margin-bottom: 10px; } }
    .job_list_box_test .job_list_table dd p {
      width: 300px;
      text-align: center;
      background: rgba(155, 155, 155, 0.5);
      color: #fff;
      padding: 10px 0; }
    .job_list_box_test .job_list_table dd .btn-black {
      margin: 0;
      padding: 0;
      background: none; }
      .job_list_box_test .job_list_table dd .btn-black a {
        padding: 10px 40px;
        width: 300px; }

.job_detail .table-basic td span {
  display: block;
  width: 70%; }
  @media screen and (max-width: 767px) {
    .job_detail .table-basic td span {
      width: 100%; } }

.job_detail .btn-gra {
  font-size: 2.2rem; }

.job_back {
  padding: 10px 0 10px 15px;
  margin: 0 30px;
  font-size: 1.4rem;
  position: relative; }
  .job_back::before {
    font-family: fontawesome;
    content: '\f104';
    font-size: 2rem;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%); }

.faq_side {
  width: 30%; }
  .faq_side li::before {
    font-family: fontawesome;
    content: '\f105';
    font-size: 2rem;
    padding-right: 10px;
    color: #3290c1; }
  @media screen and (max-width: 1023px) {
    .faq_side {
      width: 100%;
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap;
      margin-bottom: 80px; }
      .faq_side li {
        width: 48%; } }
  @media screen and (max-width: 767px) {
    .faq_side {
      margin-bottom: 40px; }
      .faq_side li {
        width: 100%; } }

.faq_main {
  width: 65%; }
  @media screen and (max-width: 1023px) {
    .faq_main {
      width: 100%; } }
  .faq_main .faq_list {
    padding-bottom: 100px;
    margin-top: 20px; }
    @media screen and (max-width: 767px) {
      .faq_main .faq_list {
        margin-top: 0;
        padding-bottom: 60px; } }
    .faq_main .faq_list li {
      padding: 0 20px;
      border-bottom: 1px solid #ccc;
      position: relative;
      transition: 0.5s; }
      .faq_main .faq_list li::after {
        content: '';
        display: block;
        vertical-align: bottom;
        width: 30px;
        height: 30px;
        background-image: url(../img/recruit/plus.png);
        background-size: contain;
        position: absolute;
        top: 30px;
        right: 20px; }
    .faq_main .faq_list li.active::after {
      background-image: url(../img/recruit/minus.png);
      transition: 0.5s; }
    .faq_main .faq_list h4 {
      cursor: pointer;
      padding: 30px 40px;
      position: relative; }
      .faq_main .faq_list h4::before {
        content: 'Q.';
        position: absolute;
        top: 50%;
        left: 0;
        transform: translate(0, -50%);
        font-size: 2.5rem;
        font-weight: normal; }
    .faq_main .faq_list .faq_inner {
      display: none;
      padding: 20px 40px 30px;
      position: relative; }
      .faq_main .faq_list .faq_inner::before {
        content: 'A.';
        position: absolute;
        font-weight: bold;
        top: 20px;
        left: 0;
        font-size: 2.5rem;
        font-weight: normal; }

.entry_box {
  margin: 30px 0 100px; }
  @media screen and (max-width: 767px) {
    .entry_box {
      margin: 50px 0; } }
  @media screen and (max-width: 767px) {
    .entry_box .l-container-lg {
      width: 100%; } }

.entry {
  width: 80%;
  margin: 0 auto; }
  @media screen and (max-width: 1023px) {
    .entry {
      width: 100%; } }

.table-entry {
  width: 100%;
  table-layout: fixed;
  word-break: break-all;
  word-wrap: break-all; }
  .table-entry th {
    width: 30%;
    text-align: left;
    padding: 0 20px 30px 0;
    vertical-align: top; }
    @media screen and (max-width: 1024px) {
      .table-entry th {
        display: block;
        width: 100%;
        padding: 0 20px 10px 0; } }
    .table-entry th::before {
      content: '任意';
      line-height: 1;
      background: #eee;
      padding: 5px 10px;
      font-size: 1.3rem;
      margin-right: 30px; }
    .table-entry th.req::before {
      content: '必須';
      line-height: 1;
      color: #fff;
      background: #3290c1; }
    .table-entry th .last {
      padding-bottom: 0; }
      @media screen and (max-width: 1024px) {
        .table-entry th .last {
          padding-bottom: 10px; } }
  .table-entry td {
    width: 70%;
    padding-bottom: 30px; }
    @media screen and (max-width: 1024px) {
      .table-entry td {
        display: block;
        width: 100%; } }
    .table-entry td .text, .table-entry td textarea {
      display: block;
      border: 1px solid #ccc;
      padding: 10px;
      width: 100%; }
    .table-entry td textarea {
      height: 300px; }
    .table-entry td.birth {
      display: flex;
      width: 100%; }
      .table-entry td.birth .birth_input {
        display: inline-block;
        width: 120px; }
        @media screen and (max-width: 768px) {
          .table-entry td.birth .birth_input {
            width: 75px; } }
      .table-entry td.birth .birth_txt {
        display: inline-block;
        padding-left: 10px;
        margin-right: 20px; }
    .table-entry td .last {
      padding-bottom: 0; }

.entry_privacy {
  margin-top: 40px;
  font-size: 1.8rem; }
  @media screen and (max-width: 768px) {
    .entry_privacy {
      margin-top: 30px; } }

.entry_privacy_link a {
  color: #3290c1; }
  .entry_privacy_link a:hover {
    opacity: 1;
    text-decoration: underline; }

.submit {
  margin-top: 40px;
  text-align: center; }
  .submit .return {
    margin-top: 30px; }
    @media screen and (max-width: 767px) {
      .submit .return {
        margin-top: 20px; } }
    .submit .return .return_btn {
      background: none;
      font-size: 1.6rem;
      text-decoration: underline; }
  .submit .btn-gra {
    text-align: center; }
    .submit .btn-gra .submit_btn {
      width: 100%;
      display: block;
      background: none;
      font-weight: bold;
      color: #fff;
      padding: 15px 80px; }
    .submit .btn-gra:hover .submit_btn {
      background: #fff;
      color: #1f3aec; }

#js-loader {
  background: #fff;
  width: 100%;
  height: 100%;
  position: fixed;
  left: 0;
  top: 0;
  z-index: 10000; }
  #js-loader .loader-animation {
    width: 50vw;
    max-width: 300px;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); }
    #js-loader .loader-animation .loader-image {
      fill: #666; }
      #js-loader .loader-animation .loader-image .loader-rotate {
        display: inline-block;
        animation: rotate-animation 1s linear infinite;
        transform-origin: 47% center; }

@keyframes rotate-animation {
  0% {
    transform: rotateY(0deg); }
  100% {
    transform: rotateY(360deg); } }
