@charset "UTF-8";
/*
Theme Name: TCS Wordpress theme
Author: TCS
Author URI: taiyo-cs.co.jp
Description: TCSのコーポレートサイトのWordrepssテーマ
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
*/
/* color */
/* space */
/**
* メディアクエリ設定用
* ブレイクポイントはは別scssで定義する
*/
/**
* 透明度の設定
*/
/**
* remに対応していないブラウザ用
*/
/**
* 絶対位置で配置する
*/
/**
* 絶対位置で中央に配置する
*/
/**
* ボックスの中央に文字を配置する
*/
/**
* clearfix
*/
/* Slider */
.slick-loading .slick-list {
  background: #fff url("ajax-loader.gif") center center no-repeat; }

/* Icons */
@font-face {
  font-family: "slick";
  src: url("fonts/slick.eot");
  src: url("fonts/slick.eot?#iefix") format("embedded-opentype"), url("fonts/slick.woff") format("woff"), url("fonts/slick.ttf") format("truetype"), url("fonts/slick.svg#slick") format("svg");
  font-weight: normal;
  font-style: normal; }

/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  display: block;
  height: 40px;
  width: 40px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: #CCCCCC;
  border-radius: 20px;
  color: transparent;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none; }
  .slick-prev:hover, .slick-prev:focus,
  .slick-next:hover,
  .slick-next:focus {
    outline: none;
    background: transparent;
    color: transparent; }
    .slick-prev:hover:before, .slick-prev:focus:before,
    .slick-next:hover:before,
    .slick-next:focus:before {
      opacity: 1;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
  .slick-prev.slick-disabled:before,
  .slick-next.slick-disabled:before {
    opacity: 0.25;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=25)"; }
  .slick-prev:before,
  .slick-next:before {
    font-family: "slick";
    font-size: 20px;
    line-height: 1;
    color: white;
    opacity: 0.75;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=75)";
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }

.slick-prev {
  left: -50px; }
  [dir="rtl"] .slick-prev {
    left: auto;
    right: -50px; }
  .slick-prev:before {
    content: "←"; }
    [dir="rtl"] .slick-prev:before {
      content: "→"; }

.slick-next {
  right: -50px; }
  [dir="rtl"] .slick-next {
    left: -50px;
    right: auto; }
  .slick-next:before {
    content: "→"; }
    [dir="rtl"] .slick-next:before {
      content: "←"; }

/* Dots */
.slick-dotted.slick-slider {
  margin-bottom: 30px; }

.slick-dots {
  position: absolute;
  bottom: -25px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%; }
  .slick-dots li {
    position: relative;
    display: inline-block;
    height: 20px;
    width: 20px;
    margin: 0 5px;
    padding: 0;
    cursor: pointer; }
    .slick-dots li button {
      border: 0;
      background: transparent;
      display: block;
      height: 20px;
      width: 20px;
      outline: none;
      line-height: 0px;
      font-size: 0px;
      color: transparent;
      padding: 5px;
      cursor: pointer; }
      .slick-dots li button:hover, .slick-dots li button:focus {
        outline: none; }
        .slick-dots li button:hover:before, .slick-dots li button:focus:before {
          opacity: 1;
          -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
      .slick-dots li button:before {
        position: absolute;
        top: 0;
        left: 0;
        content: "•";
        width: 20px;
        height: 20px;
        font-family: "slick";
        font-size: 6px;
        line-height: 20px;
        text-align: center;
        color: black;
        opacity: 0.25;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=25)";
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale; }
    .slick-dots li.slick-active button:before {
      color: black;
      opacity: 0.75;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=75)"; }

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0; }
  .slick-list:focus {
    outline: none; }
  .slick-list.dragging {
    cursor: pointer;
    cursor: hand; }

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto; }
  .slick-track:before, .slick-track:after {
    content: "";
    display: table; }
  .slick-track:after {
    clear: both; }
  .slick-loading .slick-track {
    visibility: hidden; }

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none; }
  [dir="rtl"] .slick-slide {
    float: right; }
  .slick-slide img {
    display: block; }
  .slick-slide.slick-loading img {
    display: none; }
  .slick-slide.dragging img {
    pointer-events: none; }
  .slick-initialized .slick-slide {
    display: block; }
  .slick-loading .slick-slide {
    visibility: hidden; }
  .slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent; }

.slick-arrow.slick-hidden {
  display: none; }

/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

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

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

/** 追加 **/
*, :after, :before {
  box-sizing: border-box; }

.mg1x {
  margin: 4px; }

.mgTop1x {
  margin-top: 4px; }

.mgBottom1x {
  margin-bottom: 4px; }

.mgLeft1x {
  margin-left: 4px; }

.mgRight1x {
  margin-right: 4px; }

.pd1x {
  padding: 4px; }

.pdTop1x {
  padding-top: 4px; }

.pdBottom1x {
  padding-bottom: 4px; }

.pdLeft1x {
  padding-left: 4px; }

.pdRight1x {
  padding-right: 4px; }

.mg2x {
  margin: 8px; }

.mgTop2x {
  margin-top: 8px; }

.mgBottom2x {
  margin-bottom: 8px; }

.mgLeft2x {
  margin-left: 8px; }

.mgRight2x {
  margin-right: 8px; }

.pd2x {
  padding: 8px; }

.pdTop2x {
  padding-top: 8px; }

.pdBottom2x {
  padding-bottom: 8px; }

.pdLeft2x {
  padding-left: 8px; }

.pdRight2x {
  padding-right: 8px; }

.mg3x {
  margin: 12px; }

.mgTop3x {
  margin-top: 12px; }

.mgBottom3x {
  margin-bottom: 12px; }

.mgLeft3x {
  margin-left: 12px; }

.mgRight3x {
  margin-right: 12px; }

.pd3x {
  padding: 12px; }

.pdTop3x {
  padding-top: 12px; }

.pdBottom3x {
  padding-bottom: 12px; }

.pdLeft3x {
  padding-left: 12px; }

.pdRight3x {
  padding-right: 12px; }

.mg4x {
  margin: 16px; }

.mgTop4x {
  margin-top: 16px; }

.mgBottom4x {
  margin-bottom: 16px; }

.mgLeft4x {
  margin-left: 16px; }

.mgRight4x {
  margin-right: 16px; }

.pd4x {
  padding: 16px; }

.pdTop4x {
  padding-top: 16px; }

.pdBottom4x {
  padding-bottom: 16px; }

.pdLeft4x {
  padding-left: 16px; }

.pdRight4x {
  padding-right: 16px; }

.mg5x {
  margin: 20px; }

.mgTop5x {
  margin-top: 20px; }

.mgBottom5x {
  margin-bottom: 20px; }

.mgLeft5x {
  margin-left: 20px; }

.mgRight5x {
  margin-right: 20px; }

.pd5x {
  padding: 20px; }

.pdTop5x {
  padding-top: 20px; }

.pdBottom5x {
  padding-bottom: 20px; }

.pdLeft5x {
  padding-left: 20px; }

.pdRight5x {
  padding-right: 20px; }

.mg6x {
  margin: 24px; }

.mgTop6x {
  margin-top: 24px; }

.mgBottom6x {
  margin-bottom: 24px; }

.mgLeft6x {
  margin-left: 24px; }

.mgRight6x {
  margin-right: 24px; }

.pd6x {
  padding: 24px; }

.pdTop6x {
  padding-top: 24px; }

.pdBottom6x {
  padding-bottom: 24px; }

.pdLeft6x {
  padding-left: 24px; }

.pdRight6x {
  padding-right: 24px; }

.mg7x {
  margin: 28px; }

.mgTop7x {
  margin-top: 28px; }

.mgBottom7x {
  margin-bottom: 28px; }

.mgLeft7x {
  margin-left: 28px; }

.mgRight7x {
  margin-right: 28px; }

.pd7x {
  padding: 28px; }

.pdTop7x {
  padding-top: 28px; }

.pdBottom7x {
  padding-bottom: 28px; }

.pdLeft7x {
  padding-left: 28px; }

.pdRight7x {
  padding-right: 28px; }

.mg8x {
  margin: 32px; }

.mgTop8x {
  margin-top: 32px; }

.mgBottom8x {
  margin-bottom: 32px; }

.mgLeft8x {
  margin-left: 32px; }

.mgRight8x {
  margin-right: 32px; }

.pd8x {
  padding: 32px; }

.pdTop8x {
  padding-top: 32px; }

.pdBottom8x {
  padding-bottom: 32px; }

.pdLeft8x {
  padding-left: 32px; }

.pdRight8x {
  padding-right: 32px; }

.mg9x {
  margin: 36px; }

.mgTop9x {
  margin-top: 36px; }

.mgBottom9x {
  margin-bottom: 36px; }

.mgLeft9x {
  margin-left: 36px; }

.mgRight9x {
  margin-right: 36px; }

.pd9x {
  padding: 36px; }

.pdTop9x {
  padding-top: 36px; }

.pdBottom9x {
  padding-bottom: 36px; }

.pdLeft9x {
  padding-left: 36px; }

.pdRight9x {
  padding-right: 36px; }

.mg10x {
  margin: 40px; }

.mgTop10x {
  margin-top: 40px; }

.mgBottom10x {
  margin-bottom: 40px; }

.mgLeft10x {
  margin-left: 40px; }

.mgRight10x {
  margin-right: 40px; }

.pd10x {
  padding: 40px; }

.pdTop10x {
  padding-top: 40px; }

.pdBottom10x {
  padding-bottom: 40px; }

.pdLeft10x {
  padding-left: 40px; }

.pdRight10x {
  padding-right: 40px; }

.mg11x {
  margin: 44px; }

.mgTop11x {
  margin-top: 44px; }

.mgBottom11x {
  margin-bottom: 44px; }

.mgLeft11x {
  margin-left: 44px; }

.mgRight11x {
  margin-right: 44px; }

.pd11x {
  padding: 44px; }

.pdTop11x {
  padding-top: 44px; }

.pdBottom11x {
  padding-bottom: 44px; }

.pdLeft11x {
  padding-left: 44px; }

.pdRight11x {
  padding-right: 44px; }

.mg12x {
  margin: 48px; }

.mgTop12x {
  margin-top: 48px; }

.mgBottom12x {
  margin-bottom: 48px; }

.mgLeft12x {
  margin-left: 48px; }

.mgRight12x {
  margin-right: 48px; }

.pd12x {
  padding: 48px; }

.pdTop12x {
  padding-top: 48px; }

.pdBottom12x {
  padding-bottom: 48px; }

.pdLeft12x {
  padding-left: 48px; }

.pdRight12x {
  padding-right: 48px; }

.mg13x {
  margin: 52px; }

.mgTop13x {
  margin-top: 52px; }

.mgBottom13x {
  margin-bottom: 52px; }

.mgLeft13x {
  margin-left: 52px; }

.mgRight13x {
  margin-right: 52px; }

.pd13x {
  padding: 52px; }

.pdTop13x {
  padding-top: 52px; }

.pdBottom13x {
  padding-bottom: 52px; }

.pdLeft13x {
  padding-left: 52px; }

.pdRight13x {
  padding-right: 52px; }

.mg14x {
  margin: 56px; }

.mgTop14x {
  margin-top: 56px; }

.mgBottom14x {
  margin-bottom: 56px; }

.mgLeft14x {
  margin-left: 56px; }

.mgRight14x {
  margin-right: 56px; }

.pd14x {
  padding: 56px; }

.pdTop14x {
  padding-top: 56px; }

.pdBottom14x {
  padding-bottom: 56px; }

.pdLeft14x {
  padding-left: 56px; }

.pdRight14x {
  padding-right: 56px; }

.mg15x {
  margin: 60px; }

.mgTop15x {
  margin-top: 60px; }

.mgBottom15x {
  margin-bottom: 60px; }

.mgLeft15x {
  margin-left: 60px; }

.mgRight15x {
  margin-right: 60px; }

.pd15x {
  padding: 60px; }

.pdTop15x {
  padding-top: 60px; }

.pdBottom15x {
  padding-bottom: 60px; }

.pdLeft15x {
  padding-left: 60px; }

.pdRight15x {
  padding-right: 60px; }

.mg16x {
  margin: 64px; }

.mgTop16x {
  margin-top: 64px; }

.mgBottom16x {
  margin-bottom: 64px; }

.mgLeft16x {
  margin-left: 64px; }

.mgRight16x {
  margin-right: 64px; }

.pd16x {
  padding: 64px; }

.pdTop16x {
  padding-top: 64px; }

.pdBottom16x {
  padding-bottom: 64px; }

.pdLeft16x {
  padding-left: 64px; }

.pdRight16x {
  padding-right: 64px; }

.mg17x {
  margin: 68px; }

.mgTop17x {
  margin-top: 68px; }

.mgBottom17x {
  margin-bottom: 68px; }

.mgLeft17x {
  margin-left: 68px; }

.mgRight17x {
  margin-right: 68px; }

.pd17x {
  padding: 68px; }

.pdTop17x {
  padding-top: 68px; }

.pdBottom17x {
  padding-bottom: 68px; }

.pdLeft17x {
  padding-left: 68px; }

.pdRight17x {
  padding-right: 68px; }

.mg18x {
  margin: 72px; }

.mgTop18x {
  margin-top: 72px; }

.mgBottom18x {
  margin-bottom: 72px; }

.mgLeft18x {
  margin-left: 72px; }

.mgRight18x {
  margin-right: 72px; }

.pd18x {
  padding: 72px; }

.pdTop18x {
  padding-top: 72px; }

.pdBottom18x {
  padding-bottom: 72px; }

.pdLeft18x {
  padding-left: 72px; }

.pdRight18x {
  padding-right: 72px; }

.mg19x {
  margin: 76px; }

.mgTop19x {
  margin-top: 76px; }

.mgBottom19x {
  margin-bottom: 76px; }

.mgLeft19x {
  margin-left: 76px; }

.mgRight19x {
  margin-right: 76px; }

.pd19x {
  padding: 76px; }

.pdTop19x {
  padding-top: 76px; }

.pdBottom19x {
  padding-bottom: 76px; }

.pdLeft19x {
  padding-left: 76px; }

.pdRight19x {
  padding-right: 76px; }

.mg20x {
  margin: 80px; }

.mgTop20x {
  margin-top: 80px; }

.mgBottom20x {
  margin-bottom: 80px; }

.mgLeft20x {
  margin-left: 80px; }

.mgRight20x {
  margin-right: 80px; }

.pd20x {
  padding: 80px; }

.pdTop20x {
  padding-top: 80px; }

.pdBottom20x {
  padding-bottom: 80px; }

.pdLeft20x {
  padding-left: 80px; }

.pdRight20x {
  padding-right: 80px; }

.mg21x {
  margin: 84px; }

.mgTop21x {
  margin-top: 84px; }

.mgBottom21x {
  margin-bottom: 84px; }

.mgLeft21x {
  margin-left: 84px; }

.mgRight21x {
  margin-right: 84px; }

.pd21x {
  padding: 84px; }

.pdTop21x {
  padding-top: 84px; }

.pdBottom21x {
  padding-bottom: 84px; }

.pdLeft21x {
  padding-left: 84px; }

.pdRight21x {
  padding-right: 84px; }

.mg22x {
  margin: 88px; }

.mgTop22x {
  margin-top: 88px; }

.mgBottom22x {
  margin-bottom: 88px; }

.mgLeft22x {
  margin-left: 88px; }

.mgRight22x {
  margin-right: 88px; }

.pd22x {
  padding: 88px; }

.pdTop22x {
  padding-top: 88px; }

.pdBottom22x {
  padding-bottom: 88px; }

.pdLeft22x {
  padding-left: 88px; }

.pdRight22x {
  padding-right: 88px; }

.mg23x {
  margin: 92px; }

.mgTop23x {
  margin-top: 92px; }

.mgBottom23x {
  margin-bottom: 92px; }

.mgLeft23x {
  margin-left: 92px; }

.mgRight23x {
  margin-right: 92px; }

.pd23x {
  padding: 92px; }

.pdTop23x {
  padding-top: 92px; }

.pdBottom23x {
  padding-bottom: 92px; }

.pdLeft23x {
  padding-left: 92px; }

.pdRight23x {
  padding-right: 92px; }

.mg24x {
  margin: 96px; }

.mgTop24x {
  margin-top: 96px; }

.mgBottom24x {
  margin-bottom: 96px; }

.mgLeft24x {
  margin-left: 96px; }

.mgRight24x {
  margin-right: 96px; }

.pd24x {
  padding: 96px; }

.pdTop24x {
  padding-top: 96px; }

.pdBottom24x {
  padding-bottom: 96px; }

.pdLeft24x {
  padding-left: 96px; }

.pdRight24x {
  padding-right: 96px; }

.mg25x {
  margin: 100px; }

.mgTop25x {
  margin-top: 100px; }

.mgBottom25x {
  margin-bottom: 100px; }

.mgLeft25x {
  margin-left: 100px; }

.mgRight25x {
  margin-right: 100px; }

.pd25x {
  padding: 100px; }

.pdTop25x {
  padding-top: 100px; }

.pdBottom25x {
  padding-bottom: 100px; }

.pdLeft25x {
  padding-left: 100px; }

.pdRight25x {
  padding-right: 100px; }

.mg26x {
  margin: 104px; }

.mgTop26x {
  margin-top: 104px; }

.mgBottom26x {
  margin-bottom: 104px; }

.mgLeft26x {
  margin-left: 104px; }

.mgRight26x {
  margin-right: 104px; }

.pd26x {
  padding: 104px; }

.pdTop26x {
  padding-top: 104px; }

.pdBottom26x {
  padding-bottom: 104px; }

.pdLeft26x {
  padding-left: 104px; }

.pdRight26x {
  padding-right: 104px; }

.mg27x {
  margin: 108px; }

.mgTop27x {
  margin-top: 108px; }

.mgBottom27x {
  margin-bottom: 108px; }

.mgLeft27x {
  margin-left: 108px; }

.mgRight27x {
  margin-right: 108px; }

.pd27x {
  padding: 108px; }

.pdTop27x {
  padding-top: 108px; }

.pdBottom27x {
  padding-bottom: 108px; }

.pdLeft27x {
  padding-left: 108px; }

.pdRight27x {
  padding-right: 108px; }

.mg28x {
  margin: 112px; }

.mgTop28x {
  margin-top: 112px; }

.mgBottom28x {
  margin-bottom: 112px; }

.mgLeft28x {
  margin-left: 112px; }

.mgRight28x {
  margin-right: 112px; }

.pd28x {
  padding: 112px; }

.pdTop28x {
  padding-top: 112px; }

.pdBottom28x {
  padding-bottom: 112px; }

.pdLeft28x {
  padding-left: 112px; }

.pdRight28x {
  padding-right: 112px; }

.mg29x {
  margin: 116px; }

.mgTop29x {
  margin-top: 116px; }

.mgBottom29x {
  margin-bottom: 116px; }

.mgLeft29x {
  margin-left: 116px; }

.mgRight29x {
  margin-right: 116px; }

.pd29x {
  padding: 116px; }

.pdTop29x {
  padding-top: 116px; }

.pdBottom29x {
  padding-bottom: 116px; }

.pdLeft29x {
  padding-left: 116px; }

.pdRight29x {
  padding-right: 116px; }

/** フォントを読み込む場合 **/
.fontRaleway200, .Business_bottomHeading span, .BusinessDetail_serviceItemApealHeading span, .DefaultFooter_navTitle-en, .DefaultMenu_navTitle-en {
  font-family: 'Montserrat', sans-serif;
  -ms-font-feature-settings: "normal";
  font-weight: 200; }

.fontRaleway400, .Business_serviceItemTitle, .CompanyDetail_pricipleItemTitle, .DefaultFooter_copyright {
  font-family: 'Montserrat', sans-serif;
  -ms-font-feature-settings: "normal";
  font-weight: 400; }

.fontRaleway700, .Business_titleHeading, .Business_servicesTitle, .Business_bottomHeading, .Business_buttonLink, .BusinessDetail_aboutSubTitle span, .BusinessDetail_modelTitle, .BusinessDetail_modelFlowText, .BusinessDetail_serviceTitle, .BusinessDetail_serviceItemTitle span, .BusinessDetail_serviceItemTitle em, .BusinessDetail_serviceItemApealHeading, .BusinessDetail_serviceItemApealButtonLink, .BusinessDetail_afterTitle, .BusinessDetail_afterItemTitle span, .CompanyDetail_serviceItemTitle span, .CompanyDetail_ceoName em, .CompanyDetail_pricipleTitle, .CompanyDetail_profileTitle, .CompanyDetail_accessTitle, .Contact_button, .DefaultFooter_navItem .DefaultFooter_link, .DefaultMenu_navItem .DefaultMenu_link, .EstateAbout_title em, .EstateAbout_itemTitleLeft, .EstateAbout_cvTitle em, .EstateKeyword_title, .EstateProperty-detail .EstateProperty_buttonLink, .EstateProperty_lists-full .EstateProperty_icon, .Key_pageName, .Key_title-main, .About_titleMain, .About_missionHeading, .About_buttonLink, .News_heading, .News_itemCategory, .News_buttonLink, .NewsDetail_itemCategory, .NewsDetail_bottomButtonLink, .NewsDetail_detailButton, .Recruit_heading, .Recruit_buttonLink, .RecruitDetail_headTitle, .RecruitDetail_headButtonInner, .RecruitDetail_flowTitle, .RecruitDetail_listTitle, .RecruitDetail_listButtonInner, .DefaultFooter_contactImage, .DefaultFooter_telImage {
  font-family: 'Montserrat', sans-serif;
  -ms-font-feature-settings: "normal";
  font-weight: 700; }

.fontRaleway800, .BusinessDetail_aboutTitle, .CompanyDetail_aboutTitle {
  font-family: 'Montserrat', sans-serif;
  -ms-font-feature-settings: "normal";
  font-weight: 800; }

.fontRaleway900 {
  font-family: 'Montserrat', sans-serif;
  -ms-font-feature-settings: "normal";
  font-weight: 900; }

html {
  font-size: 62.5%; }

body {
  font-size: 16px;
  font-size: 1.6rem;
  color: #3c4444;
  background-color: #0a2356;
  -webkit-font-feature-settings: "palt" 1;
     -moz-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-family: 游ゴシック, YuGothic, Hiragino Sans, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, Verdana, sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: subpixel-antialiased;
  -moz-osx-font-smoothing: unset;
  letter-spacing: 1.2px;
  line-height: 1;
  width: 100%;
  height: 100%; }
  @media only screen and (-webkit-min-device-pixel-ratio: 2), (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
    body {
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale; } }

.wrapper {
  background-color: #fff; }

a {
  color: #333;
  text-decoration: none; }
  a:hover {
    color: #333;
    text-decoration: underline; }
  a:visited {
    color: #333; }
  a:active {
    color: #333; }

.Border_border {
  position: relative;
  width: 100vw; }
  @media (max-width: 749px) {
    .Border_border {
      position: fixed;
      height: 100vh;
      z-index: 0; } }
  .Border_border-black .Border_borderV1 {
    border-color: #eee; }
  .Border_border-black .Border_borderV2 {
    border-color: #eee; }
  .Border_border-black .Border_borderS1 {
    border-color: #eee; }
  .Border_border-black .Border_borderS2 {
    border-color: #eee; }
  .Border_borderV1 {
    width: 1px;
    height: 100vh;
    position: fixed;
    z-index: 1;
    left: 10vw;
    top: 0;
    background: rgba(172, 172, 172, 0.2); }
    @media (max-width: 749px) {
      .Border_borderV1 {
        left: 10vw; } }
  .Border_borderV2 {
    height: 100vh;
    width: 1px;
    position: fixed;
    z-index: 1;
    left: 90vw;
    top: 0;
    background: rgba(172, 172, 172, 0.2); }
    @media (max-width: 749px) {
      .Border_borderV2 {
        left: 90vw; } }
  .Border_borderV3 {
    width: 1px;
    height: 100vh;
    position: fixed;
    z-index: -1;
    left: 50vw;
    top: 0;
    background: rgba(172, 172, 172, 0.2); }
    @media (max-width: 749px) {
      .Border_borderV3 {
        display: none; } }
  .Border_borderS1 {
    height: 1px;
    width: 100%;
    position: fixed;
    z-index: 200;
    left: 0;
    top: 20vh;
    background: rgba(172, 172, 172, 0.2); }
    @media (max-width: 749px) {
      .Border_borderS1 {
        top: 10vw; } }
  .Border_borderS2 {
    height: 1px;
    width: 100%;
    position: absolute;
    left: 0;
    top: 80vh;
    z-index: 200;
    background: rgba(255, 255, 255, 0.2); }
    @media (max-width: 749px) {
      .Border_borderS2 {
        top: inherit;
        bottom: 10vw; } }

.Business {
  background-image: url(./img/bg_map.svg), url(./img/bg_line.png);
  background-repeat: no-repeat, repeat;
  background-size: 93.75% auto, 1280px auto;
  background-position: 50% 40px, 50% 0;
  padding-bottom: 80px; }
  @media (max-width: 749px) {
    .Business {
      background-size: 100% auto, 200% auto;
      padding-bottom: 30px; } }
  .Business_inner {
    width: 80%;
    margin: 0 auto;
    height: 100%;
    position: relative;
    display: block;
    box-sizing: border-box;
    padding-top: 100px; }
    @media (max-width: 749px) {
      .Business_inner {
        width: 80%;
        width: 80vw;
        padding-top: 60px; } }
  .Business_titleHeading {
    font-size: 56px;
    font-size: 56px;
    font-size: 5.6rem;
    margin-bottom: 32px;
    margin-left: -120px;
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    transition: all 0.2s cubic-bezier(0.5, 0.24, 0, 1);
    position: relative; }
    @media (max-width: 749px) {
      .Business_titleHeading {
        font-size: 32px;
        font-size: 3.2rem;
        margin-bottom: 14px; } }
    .Business_titleHeading:after {
      content: "";
      display: block;
      position: absolute;
      width: 100%;
      height: 100%;
      left: 0;
      bottom: 0; }
    .Business_titleHeading.is-active {
      margin-left: 0;
      opacity: 1;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
      .Business_titleHeading.is-active:after {
        transition: all 0.2s cubic-bezier(0.5, 0.24, 0, 1);
        -webkit-animation: hideMotion 1s;
                animation: hideMotion 1s; }
  .Business_titleMain {
    font-size: 40px;
    font-size: 40px;
    font-size: 4rem;
    font-weight: bold;
    margin-bottom: 32px;
    margin-left: -120px;
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    transition: all 0.2s cubic-bezier(0.5, 0.24, 0, 1);
    position: relative; }
    @media (max-width: 749px) {
      .Business_titleMain {
        font-size: 16px;
        font-size: 1.6rem;
        margin-bottom: 13px; } }
    .Business_titleMain:after {
      content: "";
      display: block;
      position: absolute;
      width: 100%;
      height: 100%;
      left: 0;
      bottom: 0; }
    .Business_titleMain.is-active {
      margin-left: 0;
      opacity: 1;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
      .Business_titleMain.is-active:after {
        transition: all 0.2s cubic-bezier(0.5, 0.24, 0, 1);
        -webkit-animation: hideMotion 1s;
                animation: hideMotion 1s; }
  .Business_titleSub {
    font-size: 20px;
    font-size: 20px;
    font-size: 2rem;
    font-weight: bold;
    line-height: 36px;
    margin-left: -120px;
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    transition: all 0.8s cubic-bezier(0.5, 0.24, 0, 1); }
    @media (max-width: 749px) {
      .Business_titleSub {
        font-size: 13px;
        font-size: 1.3rem;
        font-weight: normal;
        line-height: 2; } }
    .Business_titleSub.is-active {
      margin-left: 0;
      opacity: 1;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
  .Business_block {
    display: block;
    border: 2px solid #0a2356;
    padding: 48px;
    margin-top: 54px;
    margin-left: -120px;
    position: relative;
    overflow: hidden; }
    @media (max-width: 749px) {
      .Business_block {
        border: none;
        padding: 0;
        overflow: visible;
        margin-top: 28px; } }
    .Business_block:before {
      content: "";
      width: 100%;
      height: 100%;
      position: absolute;
      bottom: 0;
      right: 0;
      background: #0a2356;
      transition: all 0.5s cubic-bezier(0.98, 0.01, 0, 1.02) 0.5s; }
      @media (max-width: 749px) {
        .Business_block:before {
          width: 110%;
          left: -5%; } }
    .Business_block.is-active {
      margin-left: 0; }
      .Business_block.is-active:before {
        width: 0; }
    .Business_blockTitle {
      font-size: 28px;
      font-size: 28px;
      font-size: 2.8rem;
      text-align: center;
      font-weight: bold;
      line-height: 1.5; }
    .Business_blockImage {
      background: url(./img/img_business_block.svg) no-repeat 50% 50%;
      width: 100%;
      height: auto;
      background-size: 100% auto;
      margin-top: 40px;
      padding-top: 22%; }
      @media (max-width: 749px) {
        .Business_blockImage {
          background: url(./img/business_about.svg) no-repeat 50% 0;
          background-size: 100% auto;
          padding-top: 123%;
          width: 110%;
          margin: 0 auto;
          margin-left: -5%; } }
  .Business_services {
    margin-top: 40px;
    padding-top: 16px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start; }
    @media (max-width: 749px) {
      .Business_services {
        -webkit-flex-direction: column;
            -ms-flex-direction: column;
                flex-direction: column;
        margin-top: 0; } }
    .Business_servicesTitle {
      font-size: 24px;
      font-size: 24px;
      font-size: 2.4rem;
      margin-right: 4vw; }
  .Business_serviceItems {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
  .Business_serviceItem {
    margin-bottom: 32px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    transition: all 0.8s cubic-bezier(0.5, 0.24, 0, 1); }
    .Business_serviceItemTitle {
      font-size: 20px;
      font-size: 20px;
      font-size: 2rem;
      font-weight: bold;
      letter-spacing: 0.1em;
      white-space: inherit;
      position: relative;
      line-height: 1.5;
      transition: all 0.3s cubic-bezier(0.98, 0.01, 1, 1) 0.2s;
       }
      .Business_serviceItemTitle:after {
        content: "";
        position: absolute;
        top: 0;
        right: 0;
        width: 100%;
        height: 100%;
        background: #0a2356;
        transition: all 0.3s cubic-bezier(0.98, 0.01, 1, 1) 0.2s; }
      .Business_serviceItemTitle.is-active:after {
        width: 0; }
    .Business_serviceItemText {
      font-size: 12px;
      font-size: 12px;
      font-size: 1.2rem;
      margin-left: 12px;
      letter-spacing: 0.1em;
      font-family: 'Montserrat', sans-serif; }
  .Business_bottom {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-top: 20px;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    @media (max-width: 749px) {
      .Business_bottom {
        -webkit-flex-direction: column-reverse;
            -ms-flex-direction: column-reverse;
                flex-direction: column-reverse;
        margin-top: 0; } }
    .Business_bottomLeft {
      background: #fff;
      padding: 38px 38px 18px;
      margin-left: -120px;
      width: 0;
      position: relative;
      overflow: hidden; }
      @media (max-width: 749px) {
        .Business_bottomLeft {
          padding: 6.5vw; } }
      .Business_bottomLeft .Business_button {
        margin: 20px 0;
        width: 240px;
        height: 60px; }
        @media (max-width: 749px) {
          .Business_bottomLeft .Business_button {
            width: 100%;
            margin: 20px 0 0; } }
      .Business_bottomLeft .Business_buttonLink {
        font-size: 14px;
        font-size: 14px;
        font-size: 1.4rem;
        font-weight: bold;
        width: 240px;
        height: 60px;
        line-height: 60px;
        font-family: "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif; }
        @media (max-width: 749px) {
          .Business_bottomLeft .Business_buttonLink {
            width: 100%;
            font-size: 16px;
            font-size: 1.6rem; } }
      @media (max-width: 749px) {
        .Business_bottomLeft {
          margin-left: 0; } }
      .Business_bottomLeft:before {
        content: "";
        width: 100%;
        height: 100%;
        position: absolute;
        bottom: 0;
        right: 0;
        background: #0a2356;
        transition: all 0.5s cubic-bezier(0.98, 0.01, 0, 1.02) 0.5s; }
      .Business_bottomLeft.is-active {
        margin-left: 0;
        width: 60vw; }
        @media (max-width: 749px) {
          .Business_bottomLeft.is-active {
            width: 93.5vw;
            padding-right: 13vw;
            margin-left: 6.5vw; } }
        .Business_bottomLeft.is-active:before {
          width: 0; }
    .Business_bottomRight {
      margin-left: -120px;
      width: auto;
      transition: all 0.8s cubic-bezier(0.5, 0.24, 0, 1);
      margin-left: 50px; }
      @media (max-width: 749px) {
        .Business_bottomRight {
          margin-left: 0;
          margin-top: 20px;
          width: 100%;
          margin-bottom: 20px; } }
    .Business_bottomHeading {
      font-size: 27px;
      font-size: 27px;
      font-size: 2.7rem;
      letter-spacing: 2px;
      text-align: left;
      margin-bottom: 20px; }
      @media (max-width: 749px) {
        .Business_bottomHeading {
          font-size: 18px;
          font-size: 1.8rem;
          line-height: 1.4;
          margin-bottom: 4px; }
          .Business_bottomHeading span {
            display: block;
            padding-bottom: 1px; } }
    .Business_bottomTitle {
      font-size: 18px;
      font-size: 18px;
      font-size: 1.8rem;
      text-align: left;
      font-weight: bold;
      margin-bottom: 36px; }
      @media (max-width: 749px) {
        .Business_bottomTitle {
          font-size: 17px;
          font-size: 1.7rem;
          margin-bottom: 18px; } }
    .Business_bottomText {
      font-size: 13px;
      font-size: 13px;
      font-size: 1.3rem;
      line-height: 24px;
      letter-spacing: 1.86px; }
  .Business_button {
    position: relative;
    width: 320px;
    height: 76px;
    background: rgba(0, 0, 0, 0.8);
    margin: 18px auto 30px; }
    @media (max-width: 749px) {
      .Business_button {
        width: 100%;
        height: 60px;
        margin: 12px auto 24px; } }
    .Business_button:after {
      content: "";
      width: 100%;
      height: 100%;
      position: absolute;
      top: 0;
      right: 0;
      background: #B92B2B;
      transition: 0.3s cubic-bezier(0.5, 0.24, 0, 1); }
    .Business_button:hover:after {
      width: 0; }
  .Business_buttonLink {
    position: absolute;
    top: 0;
    left: 0;
    width: 320px;
    height: 76px;
    padding-left: 24px;
    box-sizing: border-box;
    line-height: 76px;
    font-size: 20px;
    font-size: 20px;
    font-size: 2rem;
    text-align: left;
    color: #fff !important;
    transition: .1s;
    background: url(./img/icon_arrow_white.svg) no-repeat right 24px top 50%;
    background-size: 26px 26px;
    box-sizing: border-box;
    cursor: pointer;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
    transition: .1s;
    display: block;
    z-index: 1; }
    .Business_buttonLink:hover {
      background-position: right 16px top 50%;
      text-decoration: none; }
    @media (max-width: 749px) {
      .Business_buttonLink {
        width: 100%;
        height: 60px;
        font-size: 16px;
        font-size: 1.6rem;
        line-height: 60px; } }
  .Business_buttonText {
    font-size: 13px;
    font-size: 13px;
    font-size: 1.3rem;
    margin-bottom: 12px;
    text-align: left; }
    @media (max-width: 749px) {
      .Business_buttonText {
        letter-spacing: 0; } }

.BusinessDetail_about {
  background: url(./img/bg_map.svg) no-repeat 50% 152px;
  background-size: 90% auto;
  padding-top: 130px;
  position: relative;
  z-index: 1;
  padding-bottom: 80px; }
  @media (max-width: 749px) {
    .BusinessDetail_about {
      padding: 60px 0; } }
  .BusinessDetail_aboutTitle {
    font-size: 80px;
    font-size: 80px;
    font-size: 8rem;
    color: #B92B2B;
    font-weight: medium;
    position: relative;
    overflow: hidden;
    transition: all 0.2s cubic-bezier(0.98, 0.01, 1, 1) 0.2s;
    letter-spacing: .04em; }
    @media (max-width: 749px) {
      .BusinessDetail_aboutTitle {
        font-size: 32px;
        font-size: 3.2rem; } }
    .BusinessDetail_aboutTitle:after {
      content: "";
      background: #0a2356;
      position: absolute;
      z-index: 0;
      bottom: 0;
      left: 0;
      width: 100%;
      height: 100%;
      display: inline-block;
      transition: all 0.2s cubic-bezier(0.98, 0.01, 1, 1) 1s; }
    .BusinessDetail_aboutTitle.is-active {
      width: 100%; }
      .BusinessDetail_aboutTitle.is-active:after {
        width: 100%;
        height: 0; }
  .BusinessDetail_aboutSubTitle {
    font-size: 20px;
    font-size: 20px;
    font-size: 2rem;
    font-weight: bold;
    margin: 30px 0 60px;
    letter-spacing: .1em;
    position: relative;
    overflow: hidden;
    transition: all 0.2s cubic-bezier(0.98, 0.01, 1, 1) 0.2s; }
    @media (max-width: 749px) {
      .BusinessDetail_aboutSubTitle {
        font-size: 16px;
        font-size: 1.6rem;
        line-height: 1.5;
        margin: 10px 0 30px; } }
    .BusinessDetail_aboutSubTitle-large {
      font-size: 42px;
      font-size: 42px;
      font-size: 4.2rem;
      line-height: 1.5; }
    .BusinessDetail_aboutSubTitle span {
      line-height: 1.5; }
    .BusinessDetail_aboutSubTitle em {
      font-size: 47px;
      font-size: 47px;
      font-size: 4.7rem;
      line-height: 1.5;
      font-weight: bold;
      display: block;
      margin-top: 30px; }
      @media (max-width: 749px) {
        .BusinessDetail_aboutSubTitle em {
          font-size: 28px;
          font-size: 2.8rem;
          line-height: 1.5;
          margin-top: 10px; } }
    .BusinessDetail_aboutSubTitle:after {
      content: "";
      background: #0a2356;
      position: absolute;
      z-index: 0;
      bottom: 0;
      left: 0;
      width: 100%;
      height: 100%;
      display: inline-block;
      transition: all 0.2s cubic-bezier(0.98, 0.01, 1, 1) 1s; }
    .BusinessDetail_aboutSubTitle.is-active {
      width: 100%; }
      .BusinessDetail_aboutSubTitle.is-active:after {
        width: 100%;
        height: 0; }
  .BusinessDetail_aboutBlock {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
    @media (max-width: 749px) {
      .BusinessDetail_aboutBlock {
        -webkit-flex-direction: column;
            -ms-flex-direction: column;
                flex-direction: column; } }
    .BusinessDetail_aboutBlockLeft {
      margin-right: 80px; }
      @media (max-width: 749px) {
        .BusinessDetail_aboutBlockLeft {
          margin-right: 0; } }
  .BusinessDetail_aboutText {
    font-size: 18px;
    font-size: 18px;
    font-size: 1.8rem;
    letter-spacing: .1em;
    line-height: 2;
    color: #222; }
    @media (max-width: 749px) {
      .BusinessDetail_aboutText {
        font-size: 13px;
        font-size: 1.3rem;
        line-height: 2; } }
  .BusinessDetail_aboutImage {
    width: 430px;
    height: 480px;
    background: url(./img/business_about.svg) no-repeat 0 0;
    background-size: 100% auto;
    position: relative;
    overflow: hidden;
    transition: all 0.2s cubic-bezier(0.98, 0.01, 1, 1) 0.2s; }
    @media (max-width: 749px) {
      .BusinessDetail_aboutImage {
        width: 100%;
        height: auto;
        padding-top: 112%;
        margin-top: 20px; } }
    .BusinessDetail_aboutImage-japan {
      background: url(./img/img_japan.svg) no-repeat 0 0;
      width: 345px;
      height: 336px; }
    .BusinessDetail_aboutImage:after {
      content: "";
      background: #0a2356;
      position: absolute;
      z-index: 0;
      bottom: 0;
      right: 0;
      width: 100%;
      height: 100%;
      display: inline-block;
      transition: all 0.2s cubic-bezier(0.98, 0.01, 1, 1) 1s; }
    .BusinessDetail_aboutImage.is-active:after {
      width: 0;
      height: 100%; }

.BusinessDetail_model {
  background: url(./img/bg_line.png) 50% 0;
  background-size: 100% auto;
  padding: 80px 0 130px; }
  @media (max-width: 749px) {
    .BusinessDetail_model {
      padding: 60px 0 40px;
      background-size: 200% auto; } }
  .BusinessDetail_modelTitle {
    font-size: 48px;
    font-size: 48px;
    font-size: 4.8rem;
    color: #B92B2B;
    font-weight: medium;
    margin-bottom: 30px; }
    @media (max-width: 749px) {
      .BusinessDetail_modelTitle {
        font-size: 28px;
        font-size: 2.8rem;
        line-height: 1.5;
        margin-bottom: 10px; } }
    .BusinessDetail_modelTitle span {
      font-size: 24px;
      font-size: 24px;
      font-size: 2.4rem;
      color: #222;
      font-weight: bold;
      font-family: 游ゴシック, YuGothic, Hiragino Sans, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, Verdana, sans-serif;
      margin-left: 24px; }
      @media (max-width: 749px) {
        .BusinessDetail_modelTitle span {
          font-size: 16px;
          font-size: 1.6rem;
          display: block;
          margin-left: 0; } }
  .BusinessDetail_modelText {
    font-size: 18px;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 2;
    color: #222; }
    @media (max-width: 749px) {
      .BusinessDetail_modelText {
        font-size: 13px;
        font-size: 1.3rem;
        line-height: 2; } }
  .BusinessDetail_modelFlows {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-top: 32px; }
    @media (max-width: 749px) {
      .BusinessDetail_modelFlows {
        overflow-x: scroll;
        -webkit-overflow-scrolling: touch; } }
  .BusinessDetail_modelFlow {
    width: 22%;
    height: auto;
    padding-top: 26%;
    transition: all 0.2s cubic-bezier(0.98, 0.01, 1, 1) 0.2s; }
    @media (max-width: 749px) {
      .BusinessDetail_modelFlow {
        width: 200px;
        height: auto;
        margin-right: 30px;
        padding-top: 18%; } }
    .BusinessDetail_modelFlow:before {
      content: "";
      background: #0a2356;
      position: absolute;
      z-index: 0;
      bottom: 0;
      right: 0;
      width: 100%;
      height: 100%;
      display: inline-block;
      transition: all 0.2s cubic-bezier(0.98, 0.01, 1, 1) 0.6s; }
    .BusinessDetail_modelFlow.is-active:before {
      width: 0;
      height: 100%; }
    .BusinessDetail_modelFlow:nth-child(1) {
      background: url(./img/img_business_flow1.svg) no-repeat 50% 0;
      background-size: 100% auto;
      position: relative; }
      .BusinessDetail_modelFlow:nth-child(1):after {
        content: "";
        background: url(./img/icon_flow_arrow.svg) no-repeat 50% 50%;
        background-size: 100% auto;
        width: 15%;
        height: auto;
        padding-top: 6%;
        position: absolute;
        right: -17%;
        top: 50%;
        margin-top: -28%; }
        @media (max-width: 749px) {
          .BusinessDetail_modelFlow:nth-child(1):after {
            top: 42%; } }
    .BusinessDetail_modelFlow:nth-child(2) {
      background: url(./img/img_business_flow2.svg) no-repeat 50% 0;
      background-size: 100% auto;
      position: relative; }
      .BusinessDetail_modelFlow:nth-child(2):after {
        content: "";
        background: url(./img/icon_flow_arrow.svg) no-repeat 50% 50%;
        background-size: 100% auto;
        width: 15%;
        height: auto;
        padding-top: 6%;
        position: absolute;
        right: -17%;
        top: 50%;
        margin-top: -28%; }
        @media (max-width: 749px) {
          .BusinessDetail_modelFlow:nth-child(2):after {
            top: 42%; } }
    .BusinessDetail_modelFlow:nth-child(3) {
      background: url(./img/img_business_flow3.svg) no-repeat 50% 0;
      background-size: 100% auto;
      position: relative; }
      .BusinessDetail_modelFlow:nth-child(3):after {
        content: "";
        background: url(./img/icon_flow_arrow.svg) no-repeat 50% 50%;
        background-size: 100% auto;
        width: 15%;
        height: auto;
        padding-top: 6%;
        position: absolute;
        right: -17%;
        top: 50%;
        margin-top: -28%; }
        @media (max-width: 749px) {
          .BusinessDetail_modelFlow:nth-child(3):after {
            top: 42%; } }
    .BusinessDetail_modelFlow:nth-child(4) {
      background: url(./img/img_business_flow4.svg) no-repeat 50% 0;
      background-size: 100% auto;
      position: relative; }
    .BusinessDetail_modelFlowImage {
      width: 100%;
      height: auto; }
      @media (max-width: 749px) {
        .BusinessDetail_modelFlowImage {
          width: 150px;
          height: 106px; } }
      .BusinessDetail_modelFlowImage span {
        font-size: 20px;
        font-size: 20px;
        font-size: 2rem;
        font-size: 2vw;
        font-weight: bold;
        text-align: center;
        padding-top: 32px;
        display: block;
        position: absolute;
        top: 12px;
        width: 100%; }
        @media (max-width: 749px) {
          .BusinessDetail_modelFlowImage span {
            font-size: 18px;
            font-size: 1.8rem;
            top: 0; } }
    .BusinessDetail_modelFlowText {
      font-size: 18px;
      font-size: 18px;
      font-size: 1.8rem;
      font-size: 1.4vw;
      margin-top: 8px;
      text-align: center;
      line-height: 1.2; }
      @media (max-width: 749px) {
        .BusinessDetail_modelFlowText {
          font-size: 14px;
          font-size: 1.4rem;
          margin-top: 20px; } }

.BusinessDetail_service {
  padding: 80px 0; }
  @media (max-width: 749px) {
    .BusinessDetail_service {
      padding: 60px 0; } }
  .BusinessDetail_service-estate {
    padding-top: 0; }
  .BusinessDetail_serviceHead {
    background: url(./img/icon_business.svg) no-repeat 94% 50%;
    background-size: 290px auto;
    width: 100%;
    min-height: 300px; }
    @media (max-width: 749px) {
      .BusinessDetail_serviceHead {
        display: none; } }
  .BusinessDetail_serviceTitle {
    font-size: 48px;
    font-size: 48px;
    font-size: 4.8rem;
    color: #B92B2B;
    font-weight: medium;
    margin-bottom: 30px; }
    @media (max-width: 749px) {
      .BusinessDetail_serviceTitle {
        font-size: 28px;
        font-size: 2.8rem; } }
    .BusinessDetail_serviceTitle span {
      font-size: 24px;
      font-size: 24px;
      font-size: 2.4rem;
      color: #222;
      font-weight: bold;
      font-family: 游ゴシック, YuGothic, Hiragino Sans, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, Verdana, sans-serif;
      margin-left: 24px; }
      @media (max-width: 749px) {
        .BusinessDetail_serviceTitle span {
          display: block; } }
  .BusinessDetail_serviceText {
    font-size: 18px;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 2;
    color: #222;
    margin-right: 400px; }
    @media (max-width: 749px) {
      .BusinessDetail_serviceText {
        font-size: 13px;
        font-size: 1.3rem;
        line-height: 2;
        margin-right: 0; } }
  .BusinessDetail_serviceItems {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
  .BusinessDetail_serviceItem:first-child .BusinessDetail_serviceItemTitle {
    margin-top: 0; }
  .BusinessDetail_serviceItemTitle {
    font-size: 30px;
    font-size: 30px;
    font-size: 3rem;
    font-weight: bold;
    position: relative;
    margin-top: 32px;
    transition: all 0.3s cubic-bezier(0.98, 0.01, 1, 1) 0.2s; }
    @media (max-width: 749px) {
      .BusinessDetail_serviceItemTitle {
        font-size: 20px;
        font-size: 2rem;
        line-height: 1.5; } }
    .BusinessDetail_serviceItemTitle span {
      color: #9b9b9b;
      font-size: 20px;
      font-size: 20px;
      font-size: 2rem;
      display: block;
      margin-top: 20px; }
      @media (max-width: 749px) {
        .BusinessDetail_serviceItemTitle span {
          font-size: 13px;
          font-size: 1.3rem;
          line-height: 2;
          margin-top: 12px; } }
    .BusinessDetail_serviceItemTitle em {
      color: #B92B2B;
      font-size: 20px;
      font-size: 20px;
      font-size: 2rem;
      display: block;
      margin-top: 20px; }
      @media (max-width: 749px) {
        .BusinessDetail_serviceItemTitle em {
          font-size: 12px;
          font-size: 1.2rem; } }
    .BusinessDetail_serviceItemTitle:before {
      content: "";
      width: 300px;
      height: 1px;
      background: #0a2356;
      position: absolute;
      left: -320px;
      top: 15px; }
    .BusinessDetail_serviceItemTitle:after {
      content: "";
      position: absolute;
      top: 0;
      right: 0;
      width: 100%;
      height: 100%;
      background: #fff;
      transition: all 0.3s cubic-bezier(0.98, 0.01, 1, 1) 0.2s; }
    .BusinessDetail_serviceItemTitle.is-active:after {
      width: 0; }
  .BusinessDetail_serviceItemText {
    margin: 30px 0;
    padding: 24px;
    font-size: 18px;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.8;
    border: 1px solid #222;
    margin-left: 10vw;
    position: relative;
    transition: all 0.2s cubic-bezier(0.98, 0.01, 1, 1) 0.2s; }
    @media (max-width: 749px) {
      .BusinessDetail_serviceItemText {
        font-size: 13px;
        font-size: 1.3rem;
        line-height: 2;
        margin-left: 0;
        margin: 14px 0 0; } }
    .BusinessDetail_serviceItemText-noborder {
      border: none;
      padding: 0; }
    .BusinessDetail_serviceItemText:before {
      content: "";
      background: #0a2356;
      position: absolute;
      z-index: 0;
      bottom: 0;
      right: 0;
      width: 100%;
      height: 100%;
      display: inline-block;
      transition: all 0.2s cubic-bezier(0.98, 0.01, 1, 1) 0.5s; }
    .BusinessDetail_serviceItemText.is-active:before {
      width: 0;
      height: 100%; }
  .BusinessDetail_serviceItemApeal {
    background: #B92B2B;
    padding: 32px 24px;
    color: #fff;
    margin-left: 10vw;
    margin-bottom: 30px;
    position: relative;
    transition: all 0.2s cubic-bezier(0.98, 0.01, 1, 1) 0.2s;
    width: 0; }
    @media (max-width: 749px) {
      .BusinessDetail_serviceItemApeal {
        margin-left: 0;
        margin-bottom: 0;
        margin-top: 20px;
        padding: 5vw; } }
    .BusinessDetail_serviceItemApeal.is-active {
      width: auto; }
    .BusinessDetail_serviceItemApealHeading {
      font-size: 27px;
      font-size: 27px;
      font-size: 2.7rem;
      letter-spacing: 0.15em;
      margin-bottom: 20px; }
      @media (max-width: 749px) {
        .BusinessDetail_serviceItemApealHeading {
          font-size: 18px;
          font-size: 1.8rem;
          line-height: 1.5; }
          .BusinessDetail_serviceItemApealHeading span {
            display: block; } }
    .BusinessDetail_serviceItemApealTitle {
      font-size: 18px;
      font-size: 18px;
      font-size: 1.8rem;
      color: #fff;
      font-weight: bold;
      margin-bottom: 20px; }
      @media (max-width: 749px) {
        .BusinessDetail_serviceItemApealTitle {
          font-size: 16px;
          font-size: 1.6rem;
          line-height: 1.5; } }
    .BusinessDetail_serviceItemApealText {
      font-size: 13px;
      font-size: 13px;
      font-size: 1.3rem;
      line-height: 1.8; }
      @media (max-width: 749px) {
        .BusinessDetail_serviceItemApealText {
          margin-bottom: 20px; } }
    .BusinessDetail_serviceItemApealBottom {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center; }
      @media (max-width: 749px) {
        .BusinessDetail_serviceItemApealBottom {
          -webkit-flex-direction: column;
              -ms-flex-direction: column;
                  flex-direction: column; } }
    .BusinessDetail_serviceItemApealButton {
      position: relative;
      width: 280px;
      height: 60px;
      min-width: 280px;
      margin-left: 20px;
      background: rgba(0, 0, 0, 0.8); }
      @media (max-width: 749px) {
        .BusinessDetail_serviceItemApealButton {
          width: 100%;
          margin-left: 0; } }
      .BusinessDetail_serviceItemApealButton:after {
        content: "";
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        right: 0;
        background: #fff;
        transition: 0.3s cubic-bezier(0.5, 0.24, 0, 1); }
      .BusinessDetail_serviceItemApealButton:hover:after {
        width: 0; }
      @media (max-width: 749px) {
        .BusinessDetail_serviceItemApealButton {
          width: 100%; } }
    .BusinessDetail_serviceItemApealButtonLink {
      position: absolute;
      top: 0;
      left: 0;
      width: 280px;
      height: 60px;
      padding-left: 24px;
      box-sizing: border-box;
      line-height: 60px;
      text-align: left;
      color: #333;
      transition: .1s;
      background: url(./img/icon_arrow_black.svg) no-repeat right 24px top 50%;
      background-size: 26px 26px;
      box-sizing: border-box;
      cursor: pointer;
      box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
      transition: .1s;
      display: block;
      z-index: 1; }
      @media (max-width: 749px) {
        .BusinessDetail_serviceItemApealButtonLink {
          width: 100%; } }
      .BusinessDetail_serviceItemApealButtonLink:hover {
        background: url(./img/icon_arrow_white.svg) no-repeat right 16px top 50%;
        background-size: 26px 26px;
        text-decoration: none;
        color: #fff !important; }
      @media (max-width: 749px) {
        .BusinessDetail_serviceItemApealButtonLink {
          width: 100%;
          font-size: 16px;
          font-size: 1.6rem; } }

.BusinessDetail_after {
  background: url(./img/bg_line.png) 50% 0;
  background-size: 100% auto;
  padding: 80px 0; }
  @media (max-width: 749px) {
    .BusinessDetail_after {
      padding: 60px 0;
      background-size: 200% auto; } }
  .BusinessDetail_afterTitle {
    font-size: 48px;
    font-size: 48px;
    font-size: 4.8rem;
    color: #B92B2B;
    font-weight: medium;
    margin-bottom: 30px; }
    @media (max-width: 749px) {
      .BusinessDetail_afterTitle {
        font-size: 28px;
        font-size: 2.8rem;
        line-height: 1.5;
        margin-bottom: 12px; } }
    .BusinessDetail_afterTitle span {
      font-size: 24px;
      font-size: 24px;
      font-size: 2.4rem;
      color: #222;
      font-weight: bold;
      font-family: 游ゴシック, YuGothic, Hiragino Sans, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, Verdana, sans-serif;
      margin-left: 24px; }
      @media (max-width: 749px) {
        .BusinessDetail_afterTitle span {
          font-size: 16px;
          font-size: 1.6rem;
          display: block;
          margin-left: 0; } }
  .BusinessDetail_afterSubTitle {
    font-size: 40px;
    font-size: 40px;
    font-size: 4rem;
    line-height: 54px;
    font-weight: bold;
    margin: 50px 0 40px; }
    @media (max-width: 749px) {
      .BusinessDetail_afterSubTitle {
        font-size: 28px;
        font-size: 2.8rem;
        margin: 20px 0 24px;
        line-height: 1.5; } }
  .BusinessDetail_afterText {
    font-size: 18px;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 2;
    color: #222; }
    @media (max-width: 749px) {
      .BusinessDetail_afterText {
        font-size: 13px;
        font-size: 1.3rem;
        line-height: 2; } }
  .BusinessDetail_afterItems {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
  .BusinessDetail_afterItem:first-child .BusinessDetail_afterItemTitle {
    margin-top: 0; }
  .BusinessDetail_afterItemTitle {
    font-size: 24px;
    font-size: 24px;
    font-size: 2.4rem;
    font-weight: bold;
    position: relative;
    margin-top: 32px; }
    @media (max-width: 749px) {
      .BusinessDetail_afterItemTitle {
        font-size: 20px;
        font-size: 2rem;
        line-height: 1.5; } }
    .BusinessDetail_afterItemTitle span {
      color: #9b9b9b;
      font-size: 20px;
      font-size: 20px;
      font-size: 2rem;
      display: block;
      margin-top: 20px; }
      @media (max-width: 749px) {
        .BusinessDetail_afterItemTitle span {
          font-size: 13px;
          font-size: 1.3rem; } }
    .BusinessDetail_afterItemTitle:before {
      content: "";
      width: 300px;
      height: 1px;
      background: #0a2356;
      position: absolute;
      left: -320px;
      top: 15px; }
  .BusinessDetail_afterItemText {
    margin: 30px 0;
    font-size: 18px;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.8;
    margin-left: 10vw; }
    @media (max-width: 749px) {
      .BusinessDetail_afterItemText {
        font-size: 13px;
        font-size: 1.3rem;
        line-height: 2;
        margin-left: 0;
        margin: 14px 0 0; } }

.CompanyDetail {
  background: url(./img/bg_map.svg) no-repeat 50% 152px;
  background-size: 90% auto; }
  .CompanyDetail_about {
    padding-top: 130px;
    position: relative;
    z-index: 1;
    padding-bottom: 80px; }
    @media (max-width: 749px) {
      .CompanyDetail_about {
        padding: 60px 0 0; } }
    .CompanyDetail_aboutTitle {
      font-size: 80px;
      font-size: 80px;
      font-size: 8rem;
      color: #DB1F1F;
      font-weight: medium;
      letter-spacing: .04em; }
      @media (max-width: 749px) {
        .CompanyDetail_aboutTitle {
          font-size: 32px;
          font-size: 3.2rem; } }
    .CompanyDetail_aboutSubTitle {
      font-size: 20px;
      font-size: 20px;
      font-size: 2rem;
      font-weight: bold;
      margin: 30px 0 60px;
      letter-spacing: .1em; }
      @media (max-width: 749px) {
        .CompanyDetail_aboutSubTitle {
          font-size: 13px;
          font-size: 1.3rem;
          margin: 16px 0 0; } }
      .CompanyDetail_aboutSubTitle em {
        font-size: 47px;
        font-size: 47px;
        font-size: 4.7rem;
        font-weight: bold;
        display: block;
        margin-top: 20px;
        line-height: 1.5; }
        @media (max-width: 749px) {
          .CompanyDetail_aboutSubTitle em {
            font-size: 24px;
            font-size: 2.4rem;
            margin-top: 10px; } }
    .CompanyDetail_aboutBlock {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex; }
      @media (max-width: 749px) {
        .CompanyDetail_aboutBlock {
          -webkit-flex-direction: column;
              -ms-flex-direction: column;
                  flex-direction: column; } }
      .CompanyDetail_aboutBlockLeft {
        margin-right: 80px; }
    .CompanyDetail_aboutText {
      font-size: 18px;
      font-size: 18px;
      font-size: 1.8rem;
      letter-spacing: .1em;
      line-height: 2;
      color: #222; }
    .CompanyDetail_aboutImage {
      width: 430px;
      height: 480px;
      background: url(./img/business_about.svg) no-repeat 0 0;
      background-size: 100% auto; }
  .CompanyDetail_service {
    background: url(./img/bg_line.svg) 50% 50%;
    background-size: 100% auto;
    padding: 80px 0; }
    @media (max-width: 749px) {
      .CompanyDetail_service {
        padding: 60px 0; } }
    .CompanyDetail_serviceItems {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; }
    .CompanyDetail_serviceItem:first-child .CompanyDetail_afterItemTitle {
      margin-top: 0; }
    .CompanyDetail_serviceItemTitle {
      font-size: 30px;
      font-size: 30px;
      font-size: 3rem;
      letter-spacing: .1em;
      font-weight: bold;
      position: relative;
      margin-top: 32px;
      position: relative; }
      @media (max-width: 749px) {
        .CompanyDetail_serviceItemTitle {
          font-size: 20px;
          font-size: 2rem;
          line-height: 1.5; } }
      .CompanyDetail_serviceItemTitle span {
        color: #9b9b9b;
        font-size: 20px;
        font-size: 20px;
        font-size: 2rem;
        display: block;
        margin-top: 20px; }
        @media (max-width: 749px) {
          .CompanyDetail_serviceItemTitle span {
            font-size: 13px;
            font-size: 1.3rem;
            line-height: 2; } }
      .CompanyDetail_serviceItemTitle:before {
        content: "";
        width: 300px;
        height: 1px;
        background: #0a2356;
        position: absolute;
        left: -320px;
        top: 15px; }
      .CompanyDetail_serviceItemTitle:after {
        content: "";
        position: absolute;
        width: 100%;
        height: 100%;
        right: 0;
        top: 0;
        background: #fff;
        transition: all 1s cubic-bezier(0.98, 0.01, 1, 1) 0.2s; }
      .CompanyDetail_serviceItemTitle.is-active:after {
        width: 0; }
    .CompanyDetail_serviceItemText {
      margin: 30px 0;
      font-size: 18px;
      font-size: 18px;
      font-size: 1.8rem;
      line-height: 2;
      margin-left: 128px; }
      @media (max-width: 749px) {
        .CompanyDetail_serviceItemText {
          font-size: 13px;
          font-size: 1.3rem;
          line-height: 2;
          margin-left: 0;
          margin-top: 8px;
          margin-bottom: 0; } }
  .CompanyDetail_ceo {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 80px 0; }
    @media (max-width: 749px) {
      .CompanyDetail_ceo {
        -webkit-flex-direction: column-reverse;
            -ms-flex-direction: column-reverse;
                flex-direction: column-reverse;
        padding: 40px 0 60px; } }
    .CompanyDetail_ceoRight {
      width: 384px;
      min-width: 384px;
      margin-left: 40px; }
      @media (max-width: 749px) {
        .CompanyDetail_ceoRight {
          width: 100%;
          margin-left: 0;
          min-width: inherit; } }
    .CompanyDetail_ceoImage {
      background: url(./img/img_ceo.png) no-repeat 50% 50%;
      background-size: 384px auto;
      width: 384px;
      height: 384px;
      position: relative; }
      @media (max-width: 749px) {
        .CompanyD80ail_ceoImage {
          width: 80vw;
          background-size: 100% auto;
          height: auto;
          padding-top: 100%;
          margin-bottom: 28px; } }
      .CompanyDetail_ceoImage:after {
        content: "";
        position: absolute;
        width: 100%;
        height: 100%;
        right: 0;
        top: 0;
        background: #0a2356;
        transition: all 0.5s cubic-bezier(0.98, 0.01, 1, 1) 0.2s; }
      .CompanyDetail_ceoImage.is-active:after {
        width: 0; }
    .CompanyDetail_ceoName {
      font-size: 36px;
      font-size: 36px;
      font-size: 3.6rem;
      letter-spacing: .1em;
      font-weight: bold;
      position: relative; }
      @media (max-width: 749px) {
        .CompanyDetail_ceoName {
          font-size: 24px;
          font-size: 2.4rem;
          line-height: 1.5; } }
      .CompanyDetail_ceoName span {
        display: block;
        font-size: 16px;
        font-size: 16px;
        font-size: 1.6rem;
        margin-bottom: 16px; }
        @media (max-width: 749px) {
          .CompanyDetail_ceoName span {
            font-size: 13px;
            font-size: 1.3rem;
            margin-bottom: 8px; } }
      .CompanyDetail_ceoName em {
        font-size: 18px;
        font-size: 18px;
        font-size: 1.8rem;
        color: #DB1F1F;
        margin-left: 24px;
        letter-spacing: 0em; }
        @media (max-width: 749px) {
          .CompanyDetail_ceoName em {
            font-size: 16px;
            font-size: 1.6rem;
            display: block;
            margin-left: 0; } }
      .CompanyDetail_ceoName:after {
        content: "";
        position: absolute;
        width: 100%;
        height: 100%;
        right: 0;
        bottom: 0;
        background: #0a2356;
        transition: all 0.3s cubic-bezier(0.98, 0.01, 1, 1) 0.2s; }
      .CompanyDetail_ceoName.is-active:after {
        height: 0; }
    .CompanyDetail_ceoText {
      padding: 32px;
      border: 1px solid #0a2356;
      font-size: 16px;
      font-size: 16px;
      font-size: 1.6rem;
      line-height: 2;
      margin-left: 64px;
      margin-top: 42px; }
      @media (max-width: 749px) {
        .CompanyDetail_ceoText {
          font-size: 13px;
          font-size: 1.3rem;
          line-height: 2;
          margin-left: 0;
          padding: 5vw;
          margin-top: 16px; } }
  .CompanyDetail_priciple {
    padding: 80px 0;
    background: url(./img/bg_line.svg) 50% 50%;
    background-size: 100% auto; }
    @media (max-width: 749px) {
      .CompanyDetail_priciple {
        padding: 48px 0 40px;
        background-size: 200% auto; } }
    .CompanyDetail_pricipleTitle {
      font-size: 48px;
      font-size: 48px;
      font-size: 4.8rem;
      color: #DB1F1F;
      font-weight: medium;
      margin-bottom: 30px;
      position: relative; }
      @media (max-width: 749px) {
        .CompanyDetail_pricipleTitle {
          font-size: 20px;
          font-size: 2rem;
          line-height: 1.5;
          margin-bottom: 0; } }
      .CompanyDetail_pricipleTitle span {
        font-size: 24px;
        font-size: 24px;
        font-size: 2.4rem;
        color: #222;
        font-weight: bold;
        font-family: 游ゴシック, YuGothic, Hiragino Sans, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, Verdana, sans-serif;
        margin-left: 24px; }
        @media (max-width: 749px) {
          .CompanyDetail_pricipleTitle span {
            font-size: 16px;
            font-size: 1.6rem;
            line-height: 1.5;
            display: block;
            margin-left: 0; } }
      .CompanyDetail_pricipleTitle:after {
        content: "";
        position: absolute;
        width: 100%;
        height: 100%;
        right: 0;
        bottom: 0;
        background: #0a2356;
        transition: all 0.3s cubic-bezier(0.98, 0.01, 1, 1) 0.2s; }
      .CompanyDetail_pricipleTitle.is-active:after {
        height: 0; }
    .CompanyDetail_pricipleItems {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; }
    .CompanyDetail_pricipleItem:first-child .CompanyDetail_afterItemTitle {
      margin-top: 0; }
    .CompanyDetail_pricipleItemTitle {
      font-size: 30px;
      font-size: 30px;
      font-size: 3rem;
      letter-spacing: .1em;
      font-weight: bold;
      position: relative;
      margin-top: 32px;
      color: #777; }
      @media (max-width: 749px) {
        .CompanyDetail_pricipleItemTitle {
          font-size: 16px;
          font-size: 1.6rem;
          line-height: 1.5;
          margin-top: 20px; } }
      .CompanyDetail_pricipleItemTitle:before {
        content: "";
        width: 300px;
        height: 1px;
        background: #777;
        position: absolute;
        left: -320px;
        top: 15px; }
        @media (max-width: 749px) {
          .CompanyDetail_pricipleItemTitle:before {
            top: 12px; } }
    .CompanyDetail_pricipleItemText {
      margin: 15px 0;
      font-size: 36px;
      font-size: 36px;
      font-size: 3.6rem;
      font-weight: bold;
      line-height: 1.6;
      margin-left: 128px; }
      @media (max-width: 749px) {
        .CompanyDetail_pricipleItemText {
          font-size: 20px;
          font-size: 2rem;
          line-height: 1.4;
          margin: 8px 0 16px; } }
      .CompanyDetail_pricipleItemText span {
        font-weight: normal;
        font-size: 20px;
        font-size: 20px;
        font-size: 2rem;
        margin-left: 32px; }
        @media (max-width: 749px) {
          .CompanyDetail_pricipleItemText span {
            font-size: 13px;
            font-size: 1.3rem;
            line-height: 1.5;
            margin-left: 0;
            display: block;
            padding-top: 8px; } }
  .CompanyDetail_profile {
    padding: 80px 0;
    background: url(./img/bg_line.svg) 50% 0;
    background-size: 100% auto;
    padding: 80px 0; }
    @media (max-width: 749px) {
      .CompanyDetail_profile {
        padding: 60px 0; } }
    .CompanyDetail_profileTitle {
      font-size: 48px;
      font-size: 48px;
      font-size: 4.8rem;
      font-weight: medium;
      margin-bottom: 60px; }
      @media (max-width: 749px) {
        .CompanyDetail_profileTitle {
          font-size: 28px;
          font-size: 2.8rem;
          margin-bottom: 20px; } }
      .CompanyDetail_profileTitle span {
        font-size: 24px;
        font-size: 24px;
        font-size: 2.4rem;
        color: #222;
        font-weight: bold;
        font-family: 游ゴシック, YuGothic, Hiragino Sans, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, Verdana, sans-serif;
        margin-left: 24px; }
        @media (max-width: 749px) {
          .CompanyDetail_profileTitle span {
            font-size: 16px;
            font-size: 1.6rem;
            margin-left: 0;
            display: block;
            margin-top: 16px; } }
    @media (max-width: 749px) {
      .CompanyDetail_profileTable {
        padding: 4vw 4vw 0;
        text-align: center; } }
    .CompanyDetail_profileTable dl {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex; }
      @media (max-width: 749px) {
        .CompanyDetail_profileTable dl {
          -webkit-flex-direction: column;
              -ms-flex-direction: column;
                  flex-direction: column;
          margin-bottom: 12px; } }
      .CompanyDetail_profileTable dl:first-child dt {
        border-top: 1px solid #777777; }
        @media (max-width: 749px) {
          .CompanyDetail_profileTable dl:first-child dt {
            border-top: none; } }
      .CompanyDetail_profileTable dl:first-child dd {
        border-top: 1px solid #777777; }
        @media (max-width: 749px) {
          .CompanyDetail_profileTable dl:first-child dd {
            border-top: none; } }
    .CompanyDetail_profileTable dt {
      font-size: 16px;
      font-size: 16px;
      font-size: 1.6rem;
      font-weight: bold;
      border-bottom: 1px solid #777777;
      padding: 30px 0;
      min-width: 150px;
      margin-right: 20px;
      line-height: 1.5; }
      @media (max-width: 749px) {
        .CompanyDetail_profileTable dt {
          margin-right: 0;
          border-bottom: none;
          color: #0f339a;
          padding: 0;
          padding-bottom: 8px;
          font-size: 14px;
          font-size: 1.4rem; } }
    .CompanyDetail_profileTable dd {
      font-size: 16px;
      font-size: 16px;
      font-size: 1.6rem;
      border-bottom: 1px solid #0a2356;
      padding: 30px 0;
      width: 100%;
      line-height: 1.5; }
      @media (max-width: 749px) {
        .CompanyDetail_profileTable dd {
          border-bottom: none;
          padding: 0;
          padding-bottom: 4px;
          font-size: 14px;
          font-size: 1.4rem; } }
      @media (max-width: 749px) {
        .CompanyDetail_profileTable dd img {
          text-align: center;} }
  .CompanyDetail_access {
    background: url(./img/bg_line.svg) 50% 0;
    background-size: 100% auto;
    padding: 80px 0; }
    @media (max-width: 749px) {
      .CompanyDetail_access {
        padding: 48px 0;
        background-size: 200% auto; } }
    .CompanyDetail_accessTitle {
      font-size: 48px;
      font-size: 48px;
      font-size: 4.8rem;
      font-weight: medium;
      margin-bottom: 28px; }
      @media (max-width: 749px) {
        .CompanyDetail_accessTitle {
          font-size: 28px;
          font-size: 2.8rem;
          margin-bottom: 16px; } }
      .CompanyDetail_accessTitle span {
        font-size: 24px;
        font-size: 24px;
        font-size: 2.4rem;
        font-weight: bold;
        font-family: 游ゴシック, YuGothic, Hiragino Sans, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, Verdana, sans-serif;
        margin-left: 24px; }
        @media (max-width: 749px) {
          .CompanyDetail_accessTitle span {
            font-size: 16px;
            font-size: 1.6rem;
            display: block;
            margin-left: 0;
            margin-top: 20px; } }
    .CompanyDetail_access iframe {
      width: 100%; }
      @media (max-width: 749px) {
        .CompanyDetail_access iframe {
          height: 240px; } }
    .CompanyDetail_accessText {
      font-size: 20px;
      font-size: 20px;
      font-size: 2rem;
      color: #fff;
      font-weight: bold;
      margin-top: 24px;
      letter-spacing: .1em;
      text-align: right; }
      @media (max-width: 749px) {
        .CompanyDetail_accessText {
          font-size: 13px;
          font-size: 1.3rem;
          line-height: 2;
          margin-top: 16px;
          text-align: left; } }

.Contact {
  padding: 80px 0; }
  @media (max-width: 749px) {
    .Contact {
      padding: 40px 0; } }
  .Contact_flow {
    width: 100%;
    height: auto;
    background: url(./img/img_contact.svg) no-repeat 50% 0;
    background-size: 100% auto;
    padding-top: 12%; }
    @media (max-width: 749px) {
      .Contact_flow {
        background: url(./img/img_contact_sp.svg) no-repeat 50% 0;
        background-size: 100% auto;
        padding-top: 96%; } }
    .Contact_flow-us {
      background: url(./img/img_contact_us.svg) no-repeat 50% 0;
      background-size: 100% auto; }
      @media (max-width: 749px) {
        .Contact_flow-us {
          background: url(./img/img_contact_sp_us.svg) no-repeat 50% 0;
          background-size: 100% auto;
          padding-top: 96%; } }
  .Contact_form {
    padding-left: 40px;
    box-sizing: border-box; }
    @media (max-width: 749px) {
      .Contact_form {
        border: none;
        padding: 0; } }
    .Contact_form .Contact_form {
      padding: 0; }
    .Contact_form .contact {
      padding: 12px 0; }
    .Contact_form table {
      width: 100%; }
    @media (max-width: 749px) {
      .Contact_form tr {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-direction: column;
            -ms-flex-direction: column;
                flex-direction: column;
        -webkit-justify-content: flex-start;
            -ms-flex-pack: start;
                justify-content: flex-start;
        text-align: left; } }
    .Contact_form th {
      text-align: right;
      padding-right: 40px; }
      @media (max-width: 749px) {
        .Contact_form th {
          text-align: left;
          padding-right: 0;
          font-size: 14px;
          font-size: 1.4rem; } }
    .Contact_form td {
      padding: 12px 0; }
    .Contact_form input[type=text],
    .Contact_form input[type=tel],
    .Contact_form input[type=url],
    .Contact_form input[type=email],
    .Contact_form textarea {
      -webkit-appearance: none;
         -moz-appearance: none;
              appearance: none;
      background: #FFFFFF;
      border: 1px solid #979797;
      padding: 12px;
      font-size: 14px;
      font-size: 14px;
      font-size: 1.4rem; }
      @media (max-width: 749px) {
        .Contact_form input[type=text],
        .Contact_form input[type=tel],
        .Contact_form input[type=url],
        .Contact_form input[type=email],
        .Contact_form textarea {
          max-width: inherit; } }
      .Contact_form input[type=text]:focus,
      .Contact_form input[type=tel]:focus,
      .Contact_form input[type=url]:focus,
      .Contact_form input[type=email]:focus,
      .Contact_form textarea:focus {
        outline: none;
        box-shadow: none;
        border: 1px solid #B92B2B; }
    .Contact_form input[type=submit] {
      width: 240px;
      margin: 0 auto;
      background: #B92B2B;
      color: #fff;
      font-size: 16px;
      font-size: 16px;
      font-size: 1.6rem;
      font-weight: bold;
      padding: 16px 0;
      border: none; }
      @media (max-width: 749px) {
        .Contact_form input[type=submit] {
          width: 240px;
          min-width: inherit; } }
      .Contact_form input[type=submit]:hover {
        filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feComponentTransfer color-interpolation-filters="sRGB"><feFuncR type="linear" slope="0.8" /><feFuncG type="linear" slope="0.8" /><feFuncB type="linear" slope="0.8" /></feComponentTransfer></filter></svg>#filter');
        -webkit-filter: brightness(0.8);
                filter: brightness(0.8);
        color: #fff;
        text-decoration: none; }
  .Contact_button {
    border: none;
    position: relative;
    padding: 32px 24px;
    text-align: right;
    color: #fff !important;
    transition: .1s;
    background: url(./img/icon_arrow_white.svg) no-repeat right 24px top 50% #B92B2B;
    background-size: 26px 26px;
    box-sizing: border-box;
    cursor: pointer;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
    transition: .1s;
    display: block;
    font-size: 22px;
    font-size: 22px;
    font-size: 2.2rem;
    width: 340px;
    margin: 32px auto; }
    @media (max-width: 749px) {
      .Contact_button {
        width: 100%;
        font-size: 16px;
        font-size: 1.6rem; } }
    .Contact_button:before {
      content: '';
      position: absolute;
      left: 0px;
      bottom: 0px;
      z-index: -1;
      width: 100%;
      height: 100%;
      background: transparent;
      box-shadow: inset 0 0px 0px rgba(0, 0, 0, 0.8);
      display: block;
      transition: all 0.4s cubic-bezier(0.5, 0.24, 0, 1);
      box-sizing: border-box; }
    .Contact_button:hover {
      color: #fff;
      background: url(./img/icon_arrow_white_left.svg) no-repeat left 24px top 50%;
      background-size: 26px 26px;
      box-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);
      text-decoration: none; }
      .Contact_button:hover:before {
        content: "";
        box-shadow: inset -340px 0px 0 rgba(0, 0, 0, 0.8); }

.content {
  position: relative;
  background-color: #fff; }

.DefaultFooter {
  background: #edeff2;
  position: relative;
  width: 100%;
  z-index: 1; }
  .DefaultFooter_contacts {
    width: 100%;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    box-sizing: border-box;
    position: relative;
    z-index: 1; }
    @media (max-width: 749px) {
      .DefaultFooter_contacts {
        -webkit-flex-direction: column;
            -ms-flex-direction: column;
                flex-direction: column; } }
  .DefaultFooter_contact {
    width: 100%;
    text-align: center;
    transition: .3s;
    padding: 30px 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 180px; }
    @media (max-width: 749px) {
      .DefaultFooter_contact {
        width: 100%;
        height: auto;
        padding: 6vw 0; }
        .DefaultFooter_contact:last-child {
          padding: 7vw 0; } }
    .DefaultFooter_contact:hover {
      filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feComponentTransfer color-interpolation-filters="sRGB"><feFuncR type="linear" slope="0.6" /><feFuncG type="linear" slope="0.6" /><feFuncB type="linear" slope="0.6" /></feComponentTransfer></filter></svg>#filter');
      -webkit-filter: brightness(0.6);
              filter: brightness(0.6);
      text-decoration: none; }
      .DefaultFooter_contact:hover .DefaultFooter_contactTitle {
        text-decoration: none; }
    .DefaultFooter_contact-tel {
      background: #001237; }
      .DefaultFooter_contact-tel .DefaultFooter_telImage {
        font-size: 3.6rem;
        color: #fff;
        font-weight: bold;
        margin: 18px auto 0;}
        @media (max-width: 749px) {
          .DefaultFooter_contact-tel .DefaultFooter_telImage {
            width: 72vw;
            margin-top: 12px;
            background-size: 100% auto; } }
    .DefaultFooter_contact-form {
      background: #0a2356; }
      .DefaultFooter_contact-form .DefaultFooter_contactImage {
        font-size: 3.6rem;
        color: #fff;
        font-weight: bold;
        margin: 18px auto 0;}
        @media (max-width: 749px) {
          .DefaultFooter_contact-form .DefaultFooter_contactImage {
            width: 64vw;
            margin-top: 12px;
            padding-bottom: 0;
            background-size: 100% auto; } }
    .DefaultFooter_contactTitle {
      color: #fff;
      font-size: 18px;
      font-size: 18px;
      font-size: 1.8rem;
      letter-spacing: 0.1em;
      font-weight: bold; }
      @media (max-width: 749px) {
        .DefaultFooter_contactTitle {
          line-height: 1.5; } }
  .DefaultFooter_inner {
    width: calc(100% - 256px);
    margin: 0 auto;
    height: 100%;
    position: relative;
    display: block;
    box-sizing: border-box; }
    @media (max-width: 749px) {
      .DefaultFooter_inner {
        width: 80vw; } }
  .DefaultFooter_logo a {
    display: block;
    background: url(./img/logo_taiyo.svg) no-repeat 0 0;
    background-size: cover;
    width: 231px;
    height: 97px; }
    .DefaultFooter_logo a:hover {
      text-decoration: none;
      filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feComponentTransfer color-interpolation-filters="sRGB"><feFuncR type="linear" slope="0.8" /><feFuncG type="linear" slope="0.8" /><feFuncB type="linear" slope="0.8" /></feComponentTransfer></filter></svg>#filter');
      -webkit-filter: brightness(0.8);
              filter: brightness(0.8); }
    @media (max-width: 749px) {
      .DefaultFooter_logo a {
        background: url(./img/logo_taiyo.svg) no-repeat 0 0;
        background-size: 100% auto;
        width: 240px;
        height: 147px; } }
  .DefaultFooter_body {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    padding: 68px 0; }
    @media (max-width: 749px) {
      .DefaultFooter_body {
        -webkit-flex-direction: column-reverse;
            -ms-flex-direction: column-reverse;
                flex-direction: column-reverse; } }
  .DefaultFooter_main {
    width: 30%;
    position: relative;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    flex-direction: column;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    @media (max-width: 749px) {
      .DefaultFooter_main {
        width: 80vw;
        min-height: inherit; } }
    .DefaultFooter_main .DefaultFooter_link {
      display: block;
      color: #fff;
      font-size: 14px;
      font-size: 14px;
      font-size: 1.4rem;
      margin-bottom: 24px;
      font-weight: bold;
      transition: .3s; }
      .DefaultFooter_main .DefaultFooter_link:hover {
        text-decoration: none;
        filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feComponentTransfer color-interpolation-filters="sRGB"><feFuncR type="linear" slope="0.8" /><feFuncG type="linear" slope="0.8" /><feFuncB type="linear" slope="0.8" /></feComponentTransfer></filter></svg>#filter');
        -webkit-filter: brightness(0.8);
                filter: brightness(0.8); }
      @media (max-width: 749px) {
        .DefaultFooter_main .DefaultFooter_link {
          text-align: center; } }
  .DefaultFooter_list {
    text-align: right; }
    @media (max-width: 749px) {
      .DefaultFooter_list {
        -webkit-justify-content: center;
            -ms-flex-pack: center;
                justify-content: center; } }
  .DefaultFooter_sns {
    width: 100%;
    height: 100%;
    display: block;
    transition: 0.3s;
    margin-left: 16px; }
    .DefaultFooter_sns:first-child {
      margin-left: 0; }
    .DefaultFooter_sns:hover {
      filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feComponentTransfer color-interpolation-filters="sRGB"><feFuncR type="linear" slope="0.8" /><feFuncG type="linear" slope="0.8" /><feFuncB type="linear" slope="0.8" /></feComponentTransfer></filter></svg>#filter');
      -webkit-filter: brightness(0.8);
              filter: brightness(0.8); }
    .DefaultFooter_sns-facebook {
      width: 118px;
      height: 35px;
      background: url(./img/img_footer_facebook.svg) no-repeat 0 0;
      background-size: 118px 35px; }
      @media (max-width: 749px) {
        .DefaultFooter_sns-facebook {
          width: 48%;
          min-height: 42px;
          height: auto;
          padding-top: 12%;
          background-size: 100% auto; } }
    .DefaultFooter_sns-instagram {
      width: 118px;
      height: 35px;
      background: url(./img/img_footer_instagram.svg) no-repeat 0 0;
      background-size: 118px 35px; }
      @media (max-width: 749px) {
        .DefaultFooter_sns-instagram {
          width: 48%;
          min-height: 42px;
          height: auto;
          padding-top: 12%;
          background-size: 100% auto; } }
  .DefaultFooter_navs {
    margin-left: 48px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start; }
    @media (max-width: 749px) {
      .DefaultFooter_navs {
        -webkit-flex-direction: column;
            -ms-flex-direction: column;
                flex-direction: column;
        margin-left: 0;
        width: 100%;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center; } }
  .DefaultFooter_nav {}
    @media (max-width: 749px) {
      .DefaultFooter_nav {
        margin-left: 0;
        text-align: center;
        width: 80vw;
        margin-bottom: 6px; } }
    .DefaultFooter_nav:first-child {
      margin-left: 0; }
    .DefaultFooter_navTitle {
      font-size: 24px;
      font-size: 24px;
      font-size: 2.4rem;
      font-weight: bold;
      color: #001237;
      margin-bottom: 18px;
      display: block;
      transition: .3s; }
      .DefaultFooter_navTitle:hover {
        filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feComponentTransfer color-interpolation-filters="sRGB"><feFuncR type="linear" slope="0.8" /><feFuncG type="linear" slope="0.8" /><feFuncB type="linear" slope="0.8" /></feComponentTransfer></filter></svg>#filter');
        -webkit-filter: brightness(0.8);
                filter: brightness(0.8);
        text-decoration: none;
        color: #001237; }
      .DefaultFooter_navTitle:visited {
        color: #001237; }
      @media (max-width: 749px) {
        .DefaultFooter_navTitle {
          color: #001237; }
          .DefaultFooter_navTitle:visited {
            color: #001237; } }
      .DefaultFooter_navTitle-en {
        font-size: 13px;
        font-size: 13px;
        font-size: 1.3rem;
        font-weight: bold;
        margin-bottom: 40px;
        letter-spacing: 0.1em;
        color: #001237; }
        @media (max-width: 749px) {
          .DefaultFooter_navTitle-en {
            margin-bottom: 32px; } }
        .DefaultFooter_navTitle-en:hover {
          filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feComponentTransfer color-interpolation-filters="sRGB"><feFuncR type="linear" slope="1" /><feFuncG type="linear" slope="1" /><feFuncB type="linear" slope="1" /></feComponentTransfer></filter></svg>#filter');
          -webkit-filter: brightness(1);
                  filter: brightness(1);
          text-decoration: none;
          color: #fff; }
    .DefaultFooter_navItems {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; }
      @media (max-width: 749px) {
        .DefaultFooter_navItems {
          width: auto;
          -webkit-flex-direction: column;
              -ms-flex-direction: column;
                  flex-direction: column; } }
    .DefaultFooter_navItem {
      margin-bottom: 20px;
      margin-right: 20px; }
      @media (max-width: 749px) {
        .DefaultFooter_navItem {
          width: auto;
          margin-right: 0;
          margin-bottom: 24px; } }
      .DefaultFooter_navItem .DefaultFooter_link {
        color: #001237;
        font-size: 24px;
        font-size: 24px;
        font-size: 2.4rem;
        transition: .3s;
        letter-spacing: 0.1em; }
        .DefaultFooter_navItem .DefaultFooter_link:hover {
          cursor: pointer;
          text-decoration: none;
          filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feComponentTransfer color-interpolation-filters="sRGB"><feFuncR type="linear" slope="0.8" /><feFuncG type="linear" slope="0.8" /><feFuncB type="linear" slope="0.8" /></feComponentTransfer></filter></svg>#filter');
          -webkit-filter: brightness(0.8);
                  filter: brightness(0.8); }
  .DefaultFooter_copyright {
    color: #333333;
    width: 300px;
    font-size: 12px;
    font-size: 12px;
    font-size: 1.2rem;
    text-align: left;
    letter-spacing: 0.1em; }
    @media (max-width: 749px) {
      .DefaultFooter_copyright {
        position: static;
        width: 100%;
        text-align: center;
        line-height: 1.5; } }

/* color */
/* space */
.DefaultHeader_logo {
  background: url(./img/logo_taiyo_white.svg) no-repeat 50% 50% #00339a;
  background-size: 75% auto;
  width: 10vw;
  height: 20vh;
  text-indent: -9999px;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 900;
  transition: .3s; }
  @media (max-width: 749px) {
    .DefaultHeader_logo {
      background-size: 75% auto;
      width: 26vw;
      height: 26vw;
      position: absolute;
      top: 0; } }
  .DefaultHeader_logo:hover {
    filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feComponentTransfer color-interpolation-filters="sRGB"><feFuncR type="linear" slope="0.8" /><feFuncG type="linear" slope="0.8" /><feFuncB type="linear" slope="0.8" /></feComponentTransfer></filter></svg>#filter');
    -webkit-filter: brightness(0.8);
            filter: brightness(0.8); }
  .DefaultHeader_logo a {
    display: block;
    height: 100%;
    width: 100%; }

.DefaultHeader_navs {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 900;
  width: 10vw;
  height: 20vh; }
  @media (max-width: 749px) {
    .DefaultHeader_navs {
      width: 13vw;
      height: 13vw;
      position: static;
      height: auto; } }

.DefaultHeader_langs {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-top: 1px;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  @media (max-width: 749px) {
    .DefaultHeader_langs {
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      position: absolute;
      top: 13vw;
      right: 0;
      z-index: 199; } }

.DefaultHeader_lang {
  width: 5vw;
  height: 5vh;
  background: #fff;
  box-sizing: border-box;
  text-indent: -9999px;
  transition: .3s;
  min-height: 26px;
  text-align: center; }
  .DefaultHeader_lang:hover {
    filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feComponentTransfer color-interpolation-filters="sRGB"><feFuncR type="linear" slope="0.8" /><feFuncG type="linear" slope="0.8" /><feFuncB type="linear" slope="0.8" /></feComponentTransfer></filter></svg>#filter');
    -webkit-filter: brightness(0.8);
            filter: brightness(0.8); }
  @media (max-width: 749px) {
    .DefaultHeader_lang {
      width: 13vw;
      height: 13vw;
      margin-top: 1px; } }
  .DefaultHeader_lang-jp .DefaultHeader_langLink {
    background: url(./img/icon_lang_jp_white.svg) no-repeat 50% 50%;
    background-size: 30% auto;
    width: 5vw;
    height: 5vh; }
    @media (max-width: 749px) {
      .DefaultHeader_lang-jp .DefaultHeader_langLink {
        width: 13vw;
        height: 13vw;
        min-height: 26px;
        background-size: 42% auto; } }
  .DefaultHeader_lang-jp.is-active .DefaultHeader_langLink {
    background: url(./img/icon_lang_jp_white.svg) no-repeat 50% 50%;
    background-size: 30% auto;
    width: 5vw;
    height: 5vh; }
    @media (max-width: 749px) {
      .DefaultHeader_lang-jp.is-active .DefaultHeader_langLink {
        width: 13vw;
        height: 13vw;
        min-height: 26px;
        background-size: 42% auto; } }
  .DefaultHeader_lang-en .DefaultHeader_langLink {
    background: url(./img/icon_lang_en_black.svg) no-repeat 50% 50%;
    background-size: 33% auto;
    width: 5vw;
    height: 5vh; }
    @media (max-width: 749px) {
      .DefaultHeader_lang-en .DefaultHeader_langLink {
        width: 13vw;
        height: 13vw;
        min-height: 26px;
        background-size: 46% auto; } }
  .DefaultHeader_lang-en.is-active .DefaultHeader_langLink {
    background: url(./img/icon_lang_en_white.svg) no-repeat 50% 50%;
    background-size: 33% auto;
    width: 5vw;
    height: 5vh; }
    @media (max-width: 749px) {
      .DefaultHeader_lang-en.is-active .DefaultHeader_langLink {
        width: 13vw;
        height: 13vw;
        min-height: 26px;
        background-size: 46% auto; } }
  .DefaultHeader_lang-ch .DefaultHeader_langLink {
    background: url(./img/icon_lang_ch_black.svg) no-repeat 50% 50%;
    background-size: 30% auto;
    width: 5vw;
    height: 5vh; }
    @media (max-width: 749px) {
      .DefaultHeader_lang-ch .DefaultHeader_langLink {
        width: 13vw;
        height: 13vw;
        min-height: 26px;
        background-size: 50% auto; } }
  .DefaultHeader_lang-ch.is-active .DefaultHeader_langLink {
    background: url(./img/icon_lang_ch_white.svg) no-repeat 50% 50%;
    background-size: 30% auto;
    width: 5vw;
    height: 5vh; }
    @media (max-width: 749px) {
      .DefaultHeader_lang-ch.is-active .DefaultHeader_langLink {
        width: 13vw;
        height: 13vw;
        min-height: 26px;
        background-size: 50% auto; } }
  .DefaultHeader_lang.is-active {
    background: #00339a; }
  .DefaultHeader_langLink {
    display: block; }

.DefaultHeader_menu {
  width: 10vw;
  height: 15vh;
  box-sizing: border-box;
  background: #00339a;
  cursor: pointer;
  position: relative;
  transition: .3s; }
  .DefaultHeader_menu:hover {
    filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feComponentTransfer color-interpolation-filters="sRGB"><feFuncR type="linear" slope="0.8" /><feFuncG type="linear" slope="0.8" /><feFuncB type="linear" slope="0.8" /></feComponentTransfer></filter></svg>#filter');
    -webkit-filter: brightness(0.8);
            filter: brightness(0.8); }
  @media (max-width: 749px) {
    .DefaultHeader_menu {
      width: 13vw;
      height: 13vw;
      position: fixed;
      top: 0;
      right: 0;
      z-index: 200; } }
  .DefaultHeader_menuItem {
    position: absolute;
    top: 50%;
    left: 50%;
    margin-left: -18px;
    margin-left: -1.5vw;
    margin-top: -10px;
    margin-top: -1vw; }
    @media (max-width: 749px) {
      .DefaultHeader_menuItem {
        margin-left: -3vw;
        margin-top: -2vw; } }
    .DefaultHeader_menuItem.is-active .DefaultHeader_menuIcon:before {
      -webkit-transform: rotate(45deg);
              transform: rotate(45deg);
      top: 5px; }
    .DefaultHeader_menuItem.is-active .DefaultHeader_menuIcon:after {
      -webkit-transform: rotate(-45deg);
              transform: rotate(-45deg);
      top: 5px; }
  .DefaultHeader_menuIcon {
    position: relative;
    width: 3vw;
    height: 2vw;
    transition: .3s;
    -webkit-transform: scale(1);
            transform: scale(1); }
    @media (max-width: 749px) {
      .DefaultHeader_menuIcon {
        width: 6vw;
        height: 4vw; } }
    .DefaultHeader_menuIcon:hover {
      -webkit-transform: scale(0.8);
              transform: scale(0.8); }
    .DefaultHeader_menuIcon:before {
      content: "";
      display: block;
      position: absolute;
      left: 0;
      top: 0;
      width: 3vw;
      height: 0.5vw;
      background: #fff;
      transition: all 0.2s cubic-bezier(0.5, 0.24, 0, 1); }
      @media (max-width: 749px) {
        .DefaultHeader_menuIcon:before {
          width: 6vw;
          height: 1vw; } }
    .DefaultHeader_menuIcon:after {
      content: "";
      display: block;
      position: absolute;
      left: 0;
      bottom: 0;
      width: 3vw;
      height: .5vw;
      background: #fff;
      transition: all 0.2s cubic-bezier(0.5, 0.24, 0, 1); }
      @media (max-width: 749px) {
        .DefaultHeader_menuIcon:after {
          width: 6vw;
          height: 1vw; } }

.DefaultMenu {
  background: #001237;
  display: block;
  position: fixed;
  z-index: 100;
  top: 0;
  right: 0;
  width: 50vw;
  padding-top: 160px;
  height: 100vh;
  transition: all 0.3s cubic-bezier(0.5, 0.24, 0, 1);
  -webkit-transform: scale(0);
          transform: scale(0);
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }
  @media (max-width: 749px) {
    .DefaultMenu {
      width: 100%;
      overflow: scroll;
      padding-top: 36vw; } }
  .DefaultMenu.is-open {
    -webkit-transform: scale(1);
            transform: scale(1);
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
  .DefaultMenu_bg {
    background: #00339a;
    position: fixed;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    z-index: 99;
    display: none; }
    .DefaultMenu_bg.is-open {
      display: block; }
  .DefaultMenu_navs {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    text-align: left; }
    @media (max-width: 749px) {
      .DefaultMenu_navs {
        -webkit-flex-direction: column;
            -ms-flex-direction: column;
                flex-direction: column; } }
  .DefaultMenu_nav {
    width: 50%;
    margin-left: 100px;
    margin-left: 10vw; }
    @media (max-width: 749px) {
      .DefaultMenu_nav {
        width: 100%;
        margin-left: 0;
        margin-bottom: 40px; } }
    .DefaultMenu_navTitle {
      font-size: 28px;
      font-size: 28px;
      font-size: 2.8rem;
      font-weight: bold;
      color: #fff;
      letter-spacing: .1em;
      margin-bottom: 20px; }
      @media (max-width: 749px) {
        .DefaultMenu_navTitle {
          font-size: 20px;
          font-size: 2rem;
          margin-bottom: 12px; } }
      .DefaultMenu_navTitle-en {
        font-size: 13px;
        font-size: 13px;
        font-size: 1.3rem;
        font-weight: bold;
        margin-bottom: 40px;
        letter-spacing: 0.1em; }
        @media (max-width: 749px) {
          .DefaultMenu_navTitle-en {
            margin-bottom: 32px; } }
    .DefaultMenu_navItems {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; }
    .DefaultMenu_navItem {
      margin-bottom: 20px; }
      .DefaultMenu_navItem .DefaultMenu_link {
        color: #fff;
        font-size: 24px;
        font-size: 24px;
        font-size: 2.4rem;
        transition: .3s;
        letter-spacing: 0.1em; }
        @media (max-width: 749px) {
          .DefaultMenu_navItem .DefaultMenu_link {
            font-size: 24px;
            font-size: 2.4rem; } }
        .DefaultMenu_navItem .DefaultMenu_link:hover {
          cursor: pointer;
          text-decoration: none;
          filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feComponentTransfer color-interpolation-filters="sRGB"><feFuncR type="linear" slope="0.8" /><feFuncG type="linear" slope="0.8" /><feFuncB type="linear" slope="0.8" /></feComponentTransfer></filter></svg>#filter');
          -webkit-filter: brightness(0.8);
                  filter: brightness(0.8); }
  .DefaultMenu_link:hover {
    filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feComponentTransfer color-interpolation-filters="sRGB"><feFuncR type="linear" slope="0.8" /><feFuncG type="linear" slope="0.8" /><feFuncB type="linear" slope="0.8" /></feComponentTransfer></filter></svg>#filter');
    -webkit-filter: brightness(0.8);
            filter: brightness(0.8); }
  .DefaultMenu_link span {
    font-size: 14px;
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: normal;
    font-family: 游ゴシック, YuGothic, Hiragino Sans, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, Verdana, sans-serif;
    margin-left: 20px; }
    @media (max-width: 749px) {
      .DefaultMenu_link span {
        display: block;
        margin-left: 0;
        font-size: 12px;
        font-size: 1.2rem;
        margin-top: 4px; } }

.Estate {
  position: relative;
  z-index: 1;
  background: #F4F4F4; }
  .Estate_scrollInner {
    position: absolute;
    bottom: 0;
    left: 50%;
    margin-left: -20px;
    width: 40px;
    height: 100px; }
  .Estate_scrollItem {
    -webkit-pointer-events: none;
    pointer-events: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
        user-select: none;
    z-index: 10000;
    position: relative;
    margin: auto;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    height: 100px;
    width: 1px;
    background: #2a2a2a;
    overflow: hidden; }
    .Estate_scrollItem:after {
      content: "";
      display: block;
      height: 20px;
      width: 1px;
      position: absolute;
      top: 0;
      background: rgba(255, 255, 255, 0.8);
      -webkit-animation: scroll 1.5s infinite;
              animation: scroll 1.5s infinite;
      transition: all 1.4s cubic-bezier(1, -0.29, 0.24, 0.99) 2s; }
  .Estate_key {
    background: url(./img/bg_header_toshi_top2.png) no-repeat 50% 0;
    background-size: cover;
    position: relative;
    z-index: -2; }
    .Estate_keyInner {
      margin: 0 auto;
      position: relative;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      height: 100%;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      text-align: center; }
    .Estate_keyTitleBlock {
      transition: all 0.4s cubic-bezier(0.5, 0.24, 0, 1); }
    .Estate_keyTitleLogo {
      width: 400px;
      height: 40px;
      background: url(./img/logo_estate.svg) no-repeat 0 0;
      background-size: 400px auto;
      text-indent: -9999px;
      margin-top: 80px; }
      @media (max-width: 749px) {
        .Estate_keyTitleLogo {
          width: auto; } }
    .Estate_keyTitle {
      background: url(./img/key_text_toshi_top.svg) no-repeat 50% 0;
      background-size: 100% auto;
      padding-top: 7%;
      width: 720px;
      overflow: hidden;
      text-indent: 100%;
      white-space: nowrap;
      opacity: .2;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=20)";
      margin: 0 auto 12px;
      position: relative;
      transition: 0.4s cubic-bezier(0.5, 0.24, 0, 1) 0.5s; }
      @media (max-width: 749px) {
        .Estate_keyTitle {
          width: auto; } }
      .Estate_keyTitle:after {
        content: "";
        position: absolute;
        width: 100%;
        height: 100%;
        left: 0;
        background: #0a2356;
        bottom: 0;
        transition: 0.4s cubic-bezier(0.5, 0.24, 0, 1) 1s; }
      .Estate_keyTitle.is-active {
        opacity: 1;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
        .Estate_keyTitle.is-active:after {
          height: 0; }
    .Estate_keySubTitle {
      font-size: 1.2vw;
      color: #fff;
      font-weight: bold;
      line-height: 1.7;
      margin-top: 60px;
      letter-spacing: .1em;
      transition: 0.4s cubic-bezier(0.5, 0.24, 0, 1) 0.5s;
      opacity: .2;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=20)";
      margin-left: -120px;
      position: relative; }
      .Estate_keySubTitle span {
        font-size: 1vw;
        font-weight: normal;
        display: block; }
      .Estate_keySubTitle:after {
        content: "";
        position: absolute;
        width: 100%;
        height: 100%;
        background: #0a2356;
        bottom: 0;
        transition: 0.4s cubic-bezier(0.5, 0.24, 0, 1) 1s; }
      .Estate_keySubTitle.is-active {
        margin-left: 0;
        opacity: 1;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
        .Estate_keySubTitle.is-active:after {
          height: 0; }
    .Estate_keyBottom {
      background: #2F363B;
      width: 100%;
      padding: 32px 0; }
      .Estate_keyBottomInner {
        width: 1166px;
        margin: 0 auto;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-align-items: flex-start;
            -ms-flex-align: start;
                align-items: flex-start;
        -webkit-justify-content: space-around;
            -ms-flex-pack: distribute;
                justify-content: space-around; }
        @media (max-width: 749px) {
          .Estate_keyBottomInner {
            width: auto;
            -webkit-flex-direction: column;
                -ms-flex-direction: column;
                    flex-direction: column; } }
      .Estate_keyBottomTitle {
        font-size: 24px;
        font-size: 24px;
        font-size: 2.4rem;
        line-height: 1.3;
        color: #fff;
        font-weight: bold;
        text-align: left; }
        .Estate_keyBottomTitle em {
          border-bottom: 1px solid #fff; }
        .Estate_keyBottomTitle span {
          font-size: 20px;
          font-size: 20px;
          font-size: 2rem; }
      .Estate_keyBottomText {
        font-size: 12px;
        font-size: 12px;
        font-size: 1.2rem;
        color: #fff;
        text-align: left;
        line-height: 1.5;
        margin: 32px 0 12px; }
      .Estate_keyBottomLists {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-direction: column;
            -ms-flex-direction: column;
                flex-direction: column; }
      .Estate_keyBottomList {
        display: block;
        font-size: 14px;
        font-size: 14px;
        font-size: 1.4rem;
        text-decoration: underline;
        margin-bottom: 8px;
        color: #fff;
        font-weight: bold;
        transition: 0.3s cubic-bezier(0.5, 0.24, 0, 1);
        text-align: left; }
        .Estate_keyBottomList:hover {
          filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feComponentTransfer color-interpolation-filters="sRGB"><feFuncR type="linear" slope="0.8" /><feFuncG type="linear" slope="0.8" /><feFuncB type="linear" slope="0.8" /></feComponentTransfer></filter></svg>#filter');
          -webkit-filter: brightness(0.8);
                  filter: brightness(0.8);
          cursor: pointer;
          color: #fff; }
          .Estate_keyBottomList:hover:before {
            margin-left: 4px; }
        .Estate_keyBottomList:before {
          content: "";
          width: 18px;
          height: 18px;
          background: url(./img/icon_estate_qa.svg) no-repeat 50% 50%;
          background-size: 18px auto;
          display: inline-block;
          margin-right: 4px;
          margin-bottom: -2px;
          transition: 0.3s cubic-bezier(0.5, 0.24, 0, 1); }
      .Estate_keyBottomLeft {
        width: 220px; }
        @media (max-width: 749px) {
          .Estate_keyBottomLeft {
            width: auto; } }
      .Estate_keyBottomRight {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center; }
        @media (max-width: 749px) {
          .Estate_keyBottomRight {
            -webkit-flex-direction: column;
                -ms-flex-direction: column;
                    flex-direction: column;
            padding: 0 12px; } }
      .Estate_keyBottomItem {
        background: #1F2327;
        border: 2px solid #16191C;
        border-radius: 8px;
        padding: 28px;
        width: 400px;
        text-align: left;
        margin-left: 20px; }
        @media (max-width: 749px) {
          .Estate_keyBottomItem {
            width: auto;
            margin: 0 auto 12px; } }
        .Estate_keyBottomItemTitle {
          font-size: 22px;
          font-size: 22px;
          font-size: 2.2rem;
          margin-bottom: 12px;
          color: #fff;
          font-weight: bold; }
        .Estate_keyBottomItemText {
          font-size: 14px;
          font-size: 14px;
          font-size: 1.4rem;
          line-height: 1.8;
          color: #fff; }
          .Estate_keyBottomItemText span {
            color: #C51C21; }
        .Estate_keyBottomItemLink {
          font-size: 16px;
          font-size: 16px;
          font-size: 1.6rem;
          color: #B51318;
          font-weight: bold;
          margin-top: 16px;
          display: block;
          transition: 0.3s cubic-bezier(0.5, 0.24, 0, 1); }
          .Estate_keyBottomItemLink:before {
            content: "";
            width: 15px;
            height: 15px;
            background: url(./img/icon_arrow_estate_red.svg) no-repeat 50% 50%;
            background-size: 15px auto;
            display: inline-block;
            margin-right: 8px;
            transition: 0.3s cubic-bezier(0.5, 0.24, 0, 1); }
          .Estate_keyBottomItemLink:hover {
            filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feComponentTransfer color-interpolation-filters="sRGB"><feFuncR type="linear" slope="0.8" /><feFuncG type="linear" slope="0.8" /><feFuncB type="linear" slope="0.8" /></feComponentTransfer></filter></svg>#filter');
            -webkit-filter: brightness(0.8);
                    filter: brightness(0.8);
            cursor: pointer; }
            .Estate_keyBottomItemLink:hover:before {
              margin-left: 4px; }
  .Estate_cv {
    transition: 0.4s cubic-bezier(0.5, 0.24, 0, 1) 0.5s;
    z-index: 1;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-bottom: 40px; }
    @media (max-width: 749px) {
      .Estate_cv {
        -webkit-flex-direction: column;
            -ms-flex-direction: column;
                flex-direction: column;
        padding: 0 12px; } }
    .Estate_cvHead {
      background: rgba(255, 255, 255, 0.8);
      border-radius: 6px;
      padding: 4vh;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      min-height: 240px;
      width: 400px;
      margin-right: 1vw;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center; }
      .Estate_cvHeadText {
        color: #333;
        font-size: 18px;
        font-size: 18px;
        font-size: 1.8rem;
        text-align: center;
        font-weight: bold; }
      @media (max-width: 749px) {
        .Estate_cvHead {
          width: auto;
          min-width: inherit; } }
    .Estate_cvBottom {
      background: rgba(0, 0, 0, 0.3);
      border: 1px solid #FFFFFF;
      border-radius: 3px;
      box-sizing: border-box;
      padding: 3vh 4vh;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      min-height: 240px;
      width: 400px;
      margin-left: 1vw;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-justify-content: space-around;
          -ms-flex-pack: distribute;
              justify-content: space-around; }
      @media (max-width: 749px) {
        .Estate_cvBottom {
          width: auto;
          min-width: inherit; } }
    .Estate_cvButton {
      width: 100%;
      background: #AF262B;
      color: #fff;
      font-size: 18px;
      font-size: 18px;
      font-size: 1.8rem;
      padding: 16px 0;
      border-radius: 30px;
      transition: 0.3s cubic-bezier(0.5, 0.24, 0, 1);
      font-weight: bold;
      text-align: center;
      margin: 20px auto; }
      .Estate_cvButton:hover {
        color: #fff;
        filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feComponentTransfer color-interpolation-filters="sRGB"><feFuncR type="linear" slope="0.8" /><feFuncG type="linear" slope="0.8" /><feFuncB type="linear" slope="0.8" /></feComponentTransfer></filter></svg>#filter');
        -webkit-filter: brightness(0.8);
                filter: brightness(0.8);
        text-decoration: none; }
    .Estate_cvButtonText {
      color: #333;
      font-size: 12px;
      font-size: 12px;
      font-size: 1.2rem;
      line-height: 1.5;
      text-align: left; }
    .Estate_cvForm {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; }
      .Estate_cvFormLabel {
        color: #fff;
        font-size: 14px;
        font-size: 14px;
        font-size: 1.4rem;
        margin-bottom: 12px;
        color: #fff;
        transition: .3s;
        padding: 12px;
        position: relative; }
        .Estate_cvFormLabel:after {
          content: "";
          width: 100%;
          height: 1px;
          background: #fff;
          position: absolute;
          bottom: 0;
          left: 0;
          z-index: 1; }
      .Estate_cvFormInput {
        width: auto;
        height: 100%;
        -webkit-appearance: none;
           -moz-appearance: none;
                appearance: none;
        -webki-appearrance: none;
        border: none;
        outline: none;
        background: none;
        color: #fff;
        font-size: 14px;
        font-size: 14px;
        font-size: 1.4rem; }
        .Estate_cvFormInput:focus + .Estate_cvFormLine {
          width: 100%; }
      .Estate_cvFormLine {
        position: absolute;
        z-index: 2;
        left: 0;
        bottom: 0;
        width: 0;
        height: 1px;
        background: #AF262B;
        transition: 0.3s cubic-bezier(0.5, 0.24, 0, 1); }
      .Estate_cvFormSubmit {
        -webkit-appearance: none;
           -moz-appearance: none;
                appearance: none;
        width: 100%;
        margin-top: 12px;
        padding: 12px 0;
        background: #fff;
        border-radius: 30px;
        color: #333;
        font-weight: bold;
        font-size: 18px;
        font-size: 18px;
        font-size: 1.8rem;
        transition: 0.3s cubic-bezier(0.5, 0.24, 0, 1); }
        .Estate_cvFormSubmit:hover {
          filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feComponentTransfer color-interpolation-filters="sRGB"><feFuncR type="linear" slope="0.8" /><feFuncG type="linear" slope="0.8" /><feFuncB type="linear" slope="0.8" /></feComponentTransfer></filter></svg>#filter');
          -webkit-filter: brightness(0.8);
                  filter: brightness(0.8);
          text-decoration: none; }

#wrap {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }

#slider {
  width: 100%;
  margin-top: 20px; }

.slide-item img {
  width: 100%; }

#thumbnail-list {
  width: 100%;
  margin: 12px auto 20px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }

.thumbnail-item {
  width: 16%;
  height: 100px;
  overflow: hidden;
  margin-bottom: 10px;
  box-sizing: border-box;
  position: relative;
  text-align: center;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }
  .thumbnail-item:after {
    content: '';
    background-color: rgba(0, 0, 0, 0.5);
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    transition: .3s opacity linear; }
  .thumbnail-item.thumbnail-current:after {
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }
  .thumbnail-item img {
    width: 100%;
    margin: 0 auto; }

.EstateAbout {
  background: url(./img/bg_estate_about.png) no-repeat 50% 0;
  background-size: cover;
  padding: 60px 0; }
  .EstateAbout_inner {
    width: 1166px;
    margin: 0 auto; }
    @media (max-width: 749px) {
      .EstateAbout_inner {
        width: auto;
        padding: 0 12px; } }
  .EstateAbout_title {
    font-size: 32px;
    font-size: 32px;
    font-size: 3.2rem;
    font-weight: bold;
    text-align: center;
    color: #fff; }
    @media (max-width: 749px) {
      .EstateAbout_title {
        line-height: 1.5; } }
    .EstateAbout_titleBottom {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      margin-top: 40px; }
      @media (max-width: 749px) {
        .EstateAbout_titleBottom {
          -webkit-flex-direction: column;
              -ms-flex-direction: column;
                  flex-direction: column; } }
  .EstateAbout_subTitle {
    font-size: 32px;
    font-size: 32px;
    font-size: 3.2rem;
    font-weight: bold;
    line-height: 1.5;
    color: #fff;
    width: 50%;
    min-width: 50%; }
    @media (max-width: 749px) {
      .EstateAbout_subTitle {
        width: 100%;
        font-size: 20px;
        font-size: 2rem; } }
  .EstateAbout_text {
    font-size: 15px;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 2;
    color: #fff;
    width: 50%;
    min-width: 50%; }
    @media (max-width: 749px) {
      .EstateAbout_text {
        width: 100%;
        font-size: 13px;
        font-size: 1.3rem; } }
  .EstateAbout_items {
    margin-top: 40px; }
  .EstateAbout_item {
    margin-bottom: 20px; }
    .EstateAbout_itemTitle {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      border: 1px solid #fff;
      padding: 20px 40px;
      border-radius: 50px;
      position: relative;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      cursor: pointer; }
      @media (max-width: 749px) {
        .EstateAbout_itemTitle {
          -webkit-flex-direction: column;
              -ms-flex-direction: column;
                  flex-direction: column; } }
      .EstateAbout_itemTitle:hover {
        border-color: #B92B2B; }
        .EstateAbout_itemTitle:hover:after {
          -webkit-transform: scale(1.1, 1.1);
                  transform: scale(1.1, 1.1); }
        .EstateAbout_itemTitle:hover .EstateAbout_itemTitleLeft {
          color: #B92B2B; }
        .EstateAbout_itemTitle:hover .EstateAbout_itemTitleMain {
          color: #B92B2B; }
      .EstateAbout_itemTitle:after {
        content: "";
        display: block;
        position: absolute;
        right: 40px;
        top: 24px;
        width: 33px;
        height: 33px;
        background: url(./img/icon_estate_plus.svg) no-repeat 50% 50%;
        background-size: 100% auto;
        transition: 0.3s cubic-bezier(0.5, 0.24, 0, 1);
        -webkit-transform: rotate(0deg) scale(1, 1);
                transform: rotate(0deg) scale(1, 1); }
      .EstateAbout_itemTitle.is-active:after {
        content: "";
        -webkit-transform: rotate(135deg) scale(0.9, 0.9);
                transform: rotate(135deg) scale(0.9, 0.9); }
      .EstateAbout_itemTitleLeft {
        width: 60px;
        font-size: 36px;
        font-size: 36px;
        font-size: 3.6rem;
        color: #fff;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-direction: column;
            -ms-flex-direction: column;
                flex-direction: column;
        -webkit-justify-content: center;
            -ms-flex-pack: center;
                justify-content: center;
        text-align: center;
        transition: 0.3s cubic-bezier(0.5, 0.24, 0, 1); }
        .EstateAbout_itemTitleLeft span {
          font-size: 10px;
          font-size: 10px;
          font-size: 1rem;
          display: inline; }
      .EstateAbout_itemTitleMain {
        font-size: 30px;
        font-size: 30px;
        font-size: 3rem;
        color: #fff;
        line-height: 1.5;
        font-weight: bold;
        margin-left: 12px;
        letter-spacing: .1em;
        transition: 0.3s cubic-bezier(0.5, 0.24, 0, 1); }
    .EstateAbout_itemDescription {
      font-size: 14px;
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 2;
      color: #fff;
      padding: 20px 40px 0;
      transition: 0.4s cubic-bezier(0.5, 0.24, 0, 1);
      display: none;
      height: 0; }
      .EstateAbout_itemDescription.is-open {
        display: block;
        height: auto; }
  .EstateAbout_cv {
    background: rgba(0, 0, 0, 0.6);
    margin: 40px;
    padding: 40px 40px 44px; }
    .EstateAbout_cvTitle {
      font-size: 28px;
      font-size: 28px;
      font-size: 2.8rem;
      font-weight: bold;
      text-align: center;
      line-height: 1.5;
      color: #fff; }
    .EstateAbout_cvButton {
      background: #B92B2B;
      color: #fff;
      display: block;
      width: 300px;
      margin: 20px auto 0;
      padding: 12px 28px;
      border-radius: 30px;
      font-weight: bold;
      transition: 0.3s cubic-bezier(0.5, 0.24, 0, 1);
      font-size: 20px;
      font-size: 20px;
      font-size: 2rem; }
      .EstateAbout_cvButton:hover {
        filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feComponentTransfer color-interpolation-filters="sRGB"><feFuncR type="linear" slope="0.8" /><feFuncG type="linear" slope="0.8" /><feFuncB type="linear" slope="0.8" /></feComponentTransfer></filter></svg>#filter');
        -webkit-filter: brightness(0.8);
                filter: brightness(0.8);
        text-decoration: none;
        color: #fff; }

.EstateHeader {
  background: #2F363B;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 28px 20px;
  box-sizing: border-box; }
  .EstateHeader_logo {
    width: 330px;
    height: 23px;
    background: url(./img/logo_estate.svg) no-repeat 0 0;
    background-size: 330px  auto;
    text-indent: -9999px; }
  .EstateHeader_navs {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .EstateHeader_nav {
    margin-left: 20px; }
    .EstateHeader_nav .EstateHeader_link {
      color: #fff;
      font-size: 14px;
      font-size: 14px;
      font-size: 1.4rem;
      font-weight: bold;
      transition: 0.3s cubic-bezier(0.5, 0.24, 0, 1); }
      .EstateHeader_nav .EstateHeader_link:hover {
        filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feComponentTransfer color-interpolation-filters="sRGB"><feFuncR type="linear" slope="0.8" /><feFuncG type="linear" slope="0.8" /><feFuncB type="linear" slope="0.8" /></feComponentTransfer></filter></svg>#filter');
        -webkit-filter: brightness(0.8);
                filter: brightness(0.8);
        text-decoration: none; }
    .EstateHeader_nav-login .EstateHeader_link {
      color: #fff;
      font-size: 15px;
      font-size: 15px;
      font-size: 1.5rem;
      font-weight: bold;
      border: 1px solid #fff;
      padding: 10px 20px;
      border-radius: 30px;
      box-sizing: border-box;
      transition: 0.3s cubic-bezier(0.5, 0.24, 0, 1); }
      .EstateHeader_nav-login .EstateHeader_link:hover {
        background: #B51318;
        border-color: transparent;
        text-decoration: none; }
    .EstateHeader_nav-signin {
      margin-left: 12px; }
      .EstateHeader_nav-signin .EstateHeader_link {
        color: #fff;
        font-size: 15px;
        font-size: 15px;
        font-size: 1.5rem;
        font-weight: bold;
        padding: 10px 20px;
        border-radius: 30px;
        background: #B51318;
        box-sizing: border-box;
        transition: 0.3s cubic-bezier(0.5, 0.24, 0, 1); }
        .EstateHeader_nav-signin .EstateHeader_link:hover {
          filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feComponentTransfer color-interpolation-filters="sRGB"><feFuncR type="linear" slope="0.8" /><feFuncG type="linear" slope="0.8" /><feFuncB type="linear" slope="0.8" /></feComponentTransfer></filter></svg>#filter');
          -webkit-filter: brightness(0.8);
                  filter: brightness(0.8);
          text-decoration: none; }

.EstateInterview {
  padding: 80px 0; }
  .EstateInterview_title {
    font-size: 32px;
    font-size: 32px;
    font-size: 3.2rem;
    font-weight: bold;
    text-align: left;
    position: relative;
    margin-bottom: 28px;
    transition: 2s cubic-bezier(0.5, 0.24, 0, 1) 0.2s; }
    .EstateInterview_title:after {
      content: "";
      position: absolute;
      width: 100%;
      height: 100%;
      right: 0;
      top: 0;
      background: #F4F4F4;
      bottom: 0;
      transition: 0.8s cubic-bezier(0.5, 0.24, 0, 1) 0.2s; }
    .EstateInterview_title.is-active:after {
      width: 0; }
  .EstateInterview_item {
    width: 100%;
    height: 320px;
    background: #fff;
    display: -webkit-flex !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    .EstateInterview_itemLeft {
      width: 30%;
      min-width: 30%;
      padding: 40px; }
    .EstateInterview_itemRight {
      width: 70%; }
    .EstateInterview_itemName {
      font-size: 20px;
      font-size: 20px;
      font-size: 2rem;
      color: #B92B2B;
      margin-bottom: 20px;
      font-weight: bold; }
    .EstateInterview_itemText {
      line-height: 1.5;
      font-size: 22px;
      font-size: 22px;
      font-size: 2.2rem;
      color: #333;
      font-weight: bold; }
    .EstateInterview_itemPlace {
      font-size: 12px;
      font-size: 12px;
      font-size: 1.2rem;
      color: #767676;
      border: 1px solid #767676;
      padding: 4px 8px;
      border-radius: 3px;
      display: inline-block;
      margin-top: 12px; }
    .EstateInterview_itemImage {
      width: 100%;
      height: 320px;
      background: url() no-repeat 50% 50%;
      background-size: 100% auto; }

.EstateKeyword {
  padding: 40px 0;
  background: #fff; }
  .EstateKeyword_title {
    font-size: 28px;
    font-size: 28px;
    font-size: 2.8rem;
    font-weight: bold;
    text-align: left;
    position: relative;
    margin-bottom: 28px;
    transition: 2s cubic-bezier(0.5, 0.24, 0, 1) 0.2s; }
    .EstateKeyword_title:after {
      content: "";
      position: absolute;
      width: 100%;
      height: 100%;
      right: 0;
      top: 0;
      background: #fff;
      bottom: 0;
      transition: 0.8s cubic-bezier(0.5, 0.24, 0, 1) 0.2s; }
    .EstateKeyword_title.is-active:after {
      width: 0; }
  .EstateKeyword_items {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-top: 40px; }
  .EstateKeyword_item {
    width: 100%;
    background: #fff;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    margin-bottom: 20px; }
    .EstateKeyword_itemTitle {
      line-height: 1.5;
      font-size: 16px;
      font-size: 16px;
      font-size: 1.6rem;
      color: #333;
      font-weight: bold;
      margin-right: 80px; }
    .EstateKeyword_itemTags {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-justify-content: flex-start;
          -ms-flex-pack: start;
              justify-content: flex-start; }
    .EstateKeyword_itemTag {
      color: #555;
      text-decoration: underline;
      font-size: 14px;
      font-size: 14px;
      font-size: 1.4rem;
      margin-right: 20px; }

.EstateProperty {
  padding: 80px 0 0;
  text-align: center;
  position: relative;
  z-index: 1; }
  .EstateProperty_key {
    width: 100%;
    overflow: hidden; }
    .EstateProperty_keyItem {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      opacity: 0.5;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
      transition: 0.3s cubic-bezier(0.5, 0.24, 0, 1);
      position: relative;
      padding-bottom: 60px; }
      .EstateProperty_keyItem.slick-current {
        opacity: 1;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
        background-size: auto 100%; }
    .EstateProperty_keyCaption {
      font-size: 13px;
      font-size: 13px;
      font-size: 1.3rem;
      text-align: center;
      position: absolute;
      bottom: 0;
      left: 50%;
      width: 100%;
      margin-left: -50%;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      line-height: 60px; }
    .EstateProperty_keyImage {
      width: auto;
      height: 512px;
      overflow: hidden;
      background: url() no-repeat 50% 0;
      background-size: cover; }
    .EstateProperty_key .slide_arrow-prev {
      left: 5%;
      z-index: 10; }
    .EstateProperty_key .slide_arrow-next {
      right: 5%;
      z-index: 10; }
  .EstateProperty-detail {
    padding: 0 0 60px; }
    .EstateProperty-detail .EstateProperty_title {
      color: #767676;
      font-size: 20px;
      font-size: 20px;
      font-size: 2rem;
      margin-bottom: 0; }
      .EstateProperty-detail .EstateProperty_title:after {
        content: none; }
    .EstateProperty-detail .EstateProperty_category {
      background: #767676;
      color: #fff;
      font-size: 14px !important;
      font-size: 1.4rem !important;
      padding: 8px 10px;
      height: auto;
      width: auto;
      margin-right: 8px; }
    .EstateProperty-detail .EstateProperty_name {
      padding: 0;
      text-align: left;
      font-size: 20px;
      font-size: 20px;
      font-size: 2rem;
      color: #484848;
      line-height: 1.5;
      margin: 14px 0 22px; }
    .EstateProperty-detail .EstateProperty_top {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      height: auto; }
    .EstateProperty-detail .EstateProperty_flex {
      padding: 0;
      width: 100%;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row;
      margin-top: 20px; }
    .EstateProperty-detail .EstateProperty_left {
      width: 70%;
      min-width: 70%;
      height: 100%;
      text-align: left;
      background: #fff;
      padding: 40px 32px; }
    .EstateProperty-detail .EstateProperty_right {
      box-sizing: border-box;
      margin-left: 3%; }
    .EstateProperty-detail .EstateProperty_name {
      font-size: 36px;
      font-size: 36px;
      font-size: 3.6rem; }
    .EstateProperty-detail .EstateProperty_category {
      font-size: 24px;
      font-size: 24px;
      font-size: 2.4rem;
      padding: 6px 12px;
      font-weight: normal; }
    .EstateProperty-detail .EstateProperty_title:after {
      content: none; }
    .EstateProperty-detail .EstateProperty_attr {
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; }
    .EstateProperty-detail .EstateProperty_attrItem {
      width: 300px;
      margin: 0;
      display: block;
      padding: 20px 0;
      text-align: center;
      border: 1px solid #ccc;
      font-size: 30px;
      font-size: 30px;
      font-size: 3rem;
      margin-bottom: 12px; }
      .EstateProperty-detail .EstateProperty_attrItem span {
        font-size: 18px;
        font-size: 18px;
        font-size: 1.8rem; }
      .EstateProperty-detail .EstateProperty_attrItem:last-child {
        margin-bottom: 0; }
    .EstateProperty-detail .EstateProperty_table {
      background: #f2f2f2;
      padding: 20px;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      width: 100%;
      box-sizing: border-box;
      margin-left: 32px; }
      .EstateProperty-detail .EstateProperty_table dt, .EstateProperty-detail .EstateProperty_table dd {
        font-size: 14px;
        font-size: 14px;
        font-size: 1.4rem;
        font-weight: normal; }
    .EstateProperty-detail .EstateProperty_button {
      position: relative;
      width: 100%;
      height: 76px;
      background: rgba(0, 0, 0, 0.8);
      margin: 0;
      margin-bottom: 12px;
      border-radius: 0; }
      @media (max-width: 749px) {
        .EstateProperty-detail .EstateProperty_button {
          width: 100%; } }
      .EstateProperty-detail .EstateProperty_button:after {
        content: "";
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        right: 0;
        background: #B92B2B;
        transition: 0.3s cubic-bezier(0.5, 0.24, 0, 1); }
      .EstateProperty-detail .EstateProperty_button:hover:after {
        width: 0; }
    .EstateProperty-detail .EstateProperty_buttonLink {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 76px;
      padding-left: 24px;
      box-sizing: border-box;
      line-height: 76px;
      font-size: 16px;
      font-size: 16px;
      font-size: 1.6rem;
      text-align: left;
      color: #fff !important;
      transition: .1s;
      background: url(./img/icon_arrow_white.svg) no-repeat right 24px top 50%;
      background-size: 26px 26px;
      box-sizing: border-box;
      cursor: pointer;
      box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
      transition: .1s;
      display: block;
      z-index: 1; }
      .EstateProperty-detail .EstateProperty_buttonLink:hover {
        background-position: right 16px top 50%;
        text-decoration: none; }
      @media (max-width: 749px) {
        .EstateProperty-detail .EstateProperty_buttonLink {
          width: 100%;
          font-size: 16px;
          font-size: 1.6rem; } }
  .EstateProperty_title {
    font-size: 32px;
    font-size: 32px;
    font-size: 3.2rem;
    font-weight: bold;
    text-align: left;
    position: relative;
    margin-bottom: 28px;
    transition: 2s cubic-bezier(0.5, 0.24, 0, 1) 0.2s; }
    .EstateProperty_title:after {
      content: "";
      position: absolute;
      width: 100%;
      height: 100%;
      right: 0;
      top: 0;
      background: #F4F4F4;
      bottom: 0;
      transition: 0.8s cubic-bezier(0.5, 0.24, 0, 1) 0.2s; }
    .EstateProperty_title.is-active:after {
      width: 0; }
  .EstateProperty_lists {
    padding-left: 1vw; }
    .EstateProperty_lists-full .EstateProperty_title {
      color: #767676;
      font-size: 18px;
      font-size: 18px;
      font-size: 1.8rem;
      margin-bottom: 0; }
      .EstateProperty_lists-full .EstateProperty_title:after {
        content: none; }
    .EstateProperty_lists-full .EstateProperty_category {
      background: #767676;
      color: #fff;
      font-size: 12px;
      font-size: 12px;
      font-size: 1.2rem;
      padding: 8px 10px;
      height: auto;
      width: auto;
      margin-right: 8px; }
    .EstateProperty_lists-full .EstateProperty_name {
      padding: 0;
      text-align: left;
      font-size: 20px;
      font-size: 20px;
      font-size: 2rem;
      color: #484848;
      line-height: 1.5;
      margin: 14px 0 22px; }
    .EstateProperty_lists-full .EstateProperty_attr {
      margin: 0;
      padding: 0;
      -webkit-justify-content: flex-start;
          -ms-flex-pack: start;
              justify-content: flex-start; }
    .EstateProperty_lists-full .EstateProperty_attrItem {
      font-size: 30px;
      font-size: 30px;
      font-size: 3rem;
      margin-bottom: 14px; }
      .EstateProperty_lists-full .EstateProperty_attrItem span {
        font-size: 16px;
        font-size: 16px;
        font-size: 1.6rem; }
    .EstateProperty_lists-full .EstateProperty_list {
      width: 100%;
      height: 260px;
      padding: 20px; }
      .EstateProperty_lists-full .EstateProperty_list-private {
        padding: 0; }
        .EstateProperty_lists-full .EstateProperty_list-private .EstateProperty_flex {
          background: url(./img/img_property_private_large.png) no-repeat 50% 0;
          background-size: cover;
          height: 260px;
          border-radius: 6px; }
        .EstateProperty_lists-full .EstateProperty_list-private .EstateProperty_flexInner {
          height: 260px;
          width: 100%; }
    .EstateProperty_lists-full .EstateProperty_flex {
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row; }
      .EstateProperty_lists-full .EstateProperty_flexInner {
        height: 100%; }
    .EstateProperty_lists-full .EstateProperty_image {
      width: 320px;
      height: 210px;
      background-size: cover;
      position: relative; }
    .EstateProperty_lists-full .EstateProperty_top {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      height: auto; }
    .EstateProperty_lists-full .EstateProperty_left {
      width: 320px;
      min-width: 320px;
      position: relative; }
    .EstateProperty_lists-full .EstateProperty_icon {
      background: #B92B2B;
      font-size: 13px;
      font-size: 13px;
      font-size: 1.3rem;
      padding: 8px 10px;
      color: #fff;
      position: absolute;
      right: 0;
      top: 0;
      height: auto;
      width: auto; }
    .EstateProperty_lists-full .EstateProperty_right {
      margin-left: 20px; }
    .EstateProperty_lists-full .EstateProperty_attrList {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      width: 100%; }
      .EstateProperty_lists-full .EstateProperty_attrList dl {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        margin-bottom: 6px; }
        .EstateProperty_lists-full .EstateProperty_attrList dl:last-child {
          margin-bottom: 0; }
        .EstateProperty_lists-full .EstateProperty_attrList dl:first-child dt {
          margin-left: 0; }
        .EstateProperty_lists-full .EstateProperty_attrList dl dt {
          font-size: 14px;
          font-size: 14px;
          font-size: 1.4rem;
          font-weight: bold;
          margin-left: 20px; }
        .EstateProperty_lists-full .EstateProperty_attrList dl dd {
          font-size: 14px;
          font-size: 14px;
          font-size: 1.4rem;
          margin-left: 12px; }
  .EstateProperty_list {
    width: 19vw;
    height: 328px;
    background: #fff;
    border-radius: 6px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.15);
    box-sizing: border-box;
    text-align: left;
    margin-right: 1vw;
    margin-bottom: 1vw;
    text-align: center; }
    .EstateProperty_list-private .EstateProperty_flex {
      background: url(./img/img_property_private.png) no-repeat 50% 0;
      background-size: cover;
      height: 328px;
      border-radius: 6px; }
      .EstateProperty_list-private .EstateProperty_flexInner {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-direction: column;
            -ms-flex-direction: column;
                flex-direction: column;
        -webkit-justify-content: center;
            -ms-flex-pack: center;
                justify-content: center;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center;
        height: 328px; }
      .EstateProperty_list-private .EstateProperty_flexTitle {
        font-size: 20px;
        font-size: 20px;
        font-size: 2rem;
        font-weight: bold;
        color: #fff;
        margin-bottom: 12px; }
      .EstateProperty_list-private .EstateProperty_flexText {
        font-size: 14px;
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 1.6;
        color: #fff;
        margin-bottom: 12px; }
      .EstateProperty_list-private .EstateProperty_flexbuttons {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center; }
      .EstateProperty_list-private .EstateProperty_flexbutton {
        margin: 0 6px;
        border: 1px solid #fff;
        color: #fff;
        padding: 12px 20px;
        font-size: 16px;
        font-size: 16px;
        font-size: 1.6rem;
        border-radius: 40px;
        font-weight: bold; }
        .EstateProperty_list-private .EstateProperty_flexbutton-add {
          background: #B92B2B;
          color: #fff;
          border-color: #B92B2B; }
  .EstateProperty_image {
    width: 100%;
    height: 180px;
    background: url() no-repeat 50% 50%;
    background-size: cover;
    position: relative;
    border-top-left-radius: 6px;
    border-top-right-radius: 6px; }
    .EstateProperty_imageAttr {
      position: absolute;
      left: 0;
      bottom: 0;
      background: #333;
      color: #fff;
      padding: 3px 5px; }
  .EstateProperty_flex {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    height: 100%; }
  .EstateProperty_left {
    width: 100%; }
  .EstateProperty_right {
    width: 100%; }
  .EstateProperty_name {
    font-size: 14px;
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: bold;
    line-height: 1.6;
    padding: 16px 12px 0; }
  .EstateProperty_attr {
    margin-top: 20px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 0 12px;
    text-align: center; }
    .EstateProperty_attrItem {
      font-size: 17px;
      font-size: 17px;
      font-size: 1.7rem;
      display: inline-block;
      margin-right: 12px;
      letter-spacing: .1em;
      font-weight: bold;
      margin-bottom: 12px;
      color: #B92B2B; }
      .EstateProperty_attrItem span {
        font-size: 13px;
        font-size: 13px;
        font-size: 1.3rem; }
  .EstateProperty_place {
    font-size: 13px;
    font-size: 13px;
    font-size: 1.3rem;
    color: #767676;
    font-weight: bold;
    margin: 6px 12px 20px; }
  .EstateProperty_table {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-top: 20px; }
    .EstateProperty_table table th {
      background: #fafafa;
      font-size: 14px;
      font-size: 14px;
      font-size: 1.4rem;
      padding: 12px;
      border-left: 1px solid #ccc;
      border-top: 1px solid #ccc;
      width: 20%;
      line-height: 1.5;
      font-weight: bold; }
    .EstateProperty_table table td {
      background: #fff;
      font-size: 14px;
      font-size: 14px;
      font-size: 1.4rem;
      border-left: 1px solid #ccc;
      border-right: 1px solid #ccc;
      border-top: 1px solid #ccc;
      width: 80%;
      line-height: 1.5;
      padding: 12px; }
    .EstateProperty_table table tr:last-child th, .EstateProperty_table table tr:last-child td {
      border-bottom: 1px solid #ccc; }
    .EstateProperty_table dl {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      margin-right: 20px;
      margin-bottom: 8px; }
      .EstateProperty_table dl dt {
        font-weight: bold;
        font-size: 12px;
        font-size: 12px;
        font-size: 1.2rem;
        margin-right: 12px;
        line-height: 1.5; }
      .EstateProperty_table dl dd {
        font-size: 13px;
        font-size: 13px;
        font-size: 1.3rem;
        line-height: 1.5; }
  .EstateProperty_tables {
    margin-top: 40px; }
    .EstateProperty_tables table {
      width: 100%; }
      .EstateProperty_tables table th {
        background: #fafafa;
        font-size: 14px;
        font-size: 14px;
        font-size: 1.4rem;
        padding: 12px;
        border-left: 1px solid #ccc;
        border-top: 1px solid #ccc;
        width: 20%;
        line-height: 1.5;
        font-weight: bold; }
      .EstateProperty_tables table td {
        background: #fff;
        font-size: 14px;
        font-size: 14px;
        font-size: 1.4rem;
        border-left: 1px solid #ccc;
        border-right: 1px solid #ccc;
        border-top: 1px solid #ccc;
        width: 80%;
        line-height: 1.5;
        padding: 12px; }
      .EstateProperty_tables table tr:last-child th, .EstateProperty_tables table tr:last-child td {
        border-bottom: 1px solid #ccc; }
  .EstateProperty_bottom {
    padding: 20px; }
  .EstateProperty_buttons {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .EstateProperty_buttons-column {
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; }
      .EstateProperty_buttons-column .EstateProperty_button {
        margin-bottom: 12px; }
  .EstateProperty_button {
    position: relative;
    width: 300px;
    padding: 12px 28px;
    background: #B92B2B;
    border-radius: 30px;
    margin: 28px auto 0;
    font-size: 18px;
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: bold;
    display: block;
    color: #fff;
    transition: 0.3s cubic-bezier(0.5, 0.24, 0, 1); }
    .EstateProperty_button:hover {
      filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feComponentTransfer color-interpolation-filters="sRGB"><feFuncR type="linear" slope="0.8" /><feFuncG type="linear" slope="0.8" /><feFuncB type="linear" slope="0.8" /></feComponentTransfer></filter></svg>#filter');
      -webkit-filter: brightness(0.8);
              filter: brightness(0.8);
      text-decoration: none;
      color: #fff; }
  .EstateProperty_button {
    position: relative;
    width: 300px;
    padding: 12px 28px;
    background: #B92B2B;
    border-radius: 30px;
    margin: 28px auto 0;
    font-size: 18px;
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: bold;
    display: block;
    color: #fff;
    transition: 0.3s cubic-bezier(0.5, 0.24, 0, 1); }
    .EstateProperty_button:hover {
      filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feComponentTransfer color-interpolation-filters="sRGB"><feFuncR type="linear" slope="0.8" /><feFuncG type="linear" slope="0.8" /><feFuncB type="linear" slope="0.8" /></feComponentTransfer></filter></svg>#filter');
      -webkit-filter: brightness(0.8);
              filter: brightness(0.8);
      text-decoration: none;
      color: #fff; }
    .EstateProperty_button-black {
      background: #B92B2B; }
  .EstateProperty_recomend {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    margin-top: 40px; }
  .EstateProperty_icon {
    width: 104px;
    height: 104px;
    min-width: 104px; }
    .EstateProperty_iconImage {
      background: url() no-repeat 50% 50%;
      width: 104px;
      height: 104px;
      min-width: 104px;
      background-size: cover; }
  .EstateProperty_comment {
    margin-left: 20px; }
    .EstateProperty_commentInner {
      border: 2px solid #ccc;
      font-size: 14px;
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 2;
      padding: 20px;
      position: relative; }
      .EstateProperty_commentInner em {
        font-size: 18px;
        font-size: 18px;
        font-size: 1.8rem;
        font-weight: bold;
        margin-bottom: 24px; }
      .EstateProperty_commentInner:before {
        content: "";
        position: absolute;
        top: 40px;
        left: -15px;
        z-index: 1;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 10px 20px 10px 0;
        border-color: transparent #fff transparent transparent; }
      .EstateProperty_commentInner:after {
        content: "";
        position: absolute;
        top: 40px;
        left: -20px;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 10px 20px 10px 0;
        border-color: transparent #ccc transparent transparent; }
  .EstateProperty_description {
    margin-top: 40px; }
    .EstateProperty_descriptionTitle {
      font-size: 18px;
      font-size: 18px;
      font-size: 1.8rem;
      font-weight: bold;
      margin-bottom: 20px; }
    .EstateProperty_descriptionText {
      font-size: 16px;
      font-size: 16px;
      font-size: 1.6rem;
      line-height: 2.2; }
  .EstateProperty_contact {
    margin-top: 20px; }
    .EstateProperty_contactButton {
      border: 1px solid #979797;
      padding: 16px;
      text-align: center;
      height: 124px;
      display: block;
      background: url(./img/img_estate_tel.svg) no-repeat left 50% bottom 16px #fff;
      background-size: 80% auto;
      transition: 0.3s cubic-bezier(0.5, 0.24, 0, 1); }
      .EstateProperty_contactButton:hover {
        text-decoration: none;
        filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feComponentTransfer color-interpolation-filters="sRGB"><feFuncR type="linear" slope="0.8" /><feFuncG type="linear" slope="0.8" /><feFuncB type="linear" slope="0.8" /></feComponentTransfer></filter></svg>#filter');
        -webkit-filter: brightness(0.8);
                filter: brightness(0.8);
        box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
        border-color: #B92B2B; }

.slide-dots {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  right: 10px;
  top: -33px;
  position: absolute; }
  .slide-dots li {
    margin-right: 4px; }
    .slide-dots li.slick-active button {
      background: #B92B2B; }
    .slide-dots li button {
      -webkit-appearance: none;
         -moz-appearance: none;
              appearance: none;
      width: 24px;
      border: none;
      background: none;
      text-indent: -9999px;
      width: 24px;
      height: 6px;
      border-radius: 3px;
      background: #A9A9A9;
      transition: 0.3s cubic-bezier(0.5, 0.24, 0, 1); }
      .slide-dots li button:focus {
        box-shadow: none;
        outline: none; }

.slide_arrow {
  width: 48px;
  height: 48px;
  border-radius: 24px;
  transition: .3s; }
  .slide_arrow-prev {
    position: absolute;
    top: 50%;
    margin-top: -24px;
    left: -60px;
    background: url(./img/icon_arrow_estate_red.svg) no-repeat 50% 50% #fff;
    background-size: 20px auto;
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg);
    box-shadow: 0 0 12px rgba(0, 0, 0, 0.25); }
    .slide_arrow-prev.slick-disabled {
      -webkit-transform: rotate(0deg);
              transform: rotate(0deg);
      background: url(./img/icon_arrow_estate_white.svg) no-repeat 50% 50% #ccc;
      box-shadow: none; }
  .slide_arrow-next {
    position: absolute;
    top: 50%;
    margin-top: -24px;
    right: -60px;
    background: url(./img/icon_arrow_estate_red.svg) no-repeat 50% 50% #fff;
    background-size: 20px auto;
    box-shadow: 0 0 12px rgba(0, 0, 0, 0.25); }
    .slide_arrow-next.slick-disabled {
      -webkit-transform: rotate(180deg);
              transform: rotate(180deg);
      background: url(./img/icon_arrow_estate_white.svg) no-repeat 50% 50% #ccc;
      box-shadow: none; }

.EstateSeminar {
  padding: 80px 0;
  text-align: center; }
  @media (max-width: 749px) {
    .EstateSeminar {
      padding: 48px 0; } }
  .EstateSeminar-list {
    background: none;
    height: auto; }
    .EstateSeminar-list .EstateSeminar_title:after {
      background: #fff; }
    .EstateSeminar-list .EstateSeminar_lists-slide {
      width: 100%;
      display: block;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      padding: 0 0 20px; }
      .EstateSeminar-list .EstateSeminar_lists-slide .EstateSeminar_list {
        margin: 0;
        margin: 0 10px; }
    .EstateSeminar-list .EstateSeminar_list {
      background: #fff;
      border: 1px solid #ccc;
      box-shadow: 0 10px 10px rgba(0, 0, 0, 0.2);
      border-radius: 6px;
      width: 100%;
      box-sizing: border-box;
      padding: 20px;
      transition: 0.3s cubic-bezier(0.5, 0.24, 0, 1);
      margin-right: 0; }
      .EstateSeminar-list .EstateSeminar_list:hover {
        box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1); }
    .EstateSeminar-list .EstateSeminar_listTitle {
      font-size: 20px;
      font-size: 20px;
      font-size: 2rem; }
    .EstateSeminar-list .EstateSeminar_listLeft {
      width: 270px;
      margin-right: 20px; }
    .EstateSeminar-list .EstateSeminar_image {
      min-height: 185px;
      width: 270px;
      height: 185px; }
    .EstateSeminar-list .EstateSeminar_attr {
      margin-top: 16px; }
      .EstateSeminar-list .EstateSeminar_attr dl {
        border-top: 1px solid #ccc;
        margin-bottom: 0; }
        .EstateSeminar-list .EstateSeminar_attr dl dt {
          padding: 8px 12px;
          font-weight: bold;
          background: #F2F2F2; }
        .EstateSeminar-list .EstateSeminar_attr dl:last-child {
          border-bottom: 1px solid #ccc; }
  .EstateSeminar-detail {
    background: none; }
    .EstateSeminar-detail .EstateSeminar_left {
      background: #fff;
      padding: 32px 20px; }
    .EstateSeminar-detail .EstateSeminar_rightInner {
      background: #fff; }
    .EstateSeminar-detail .EstateSeminar_map {
      background: #fff; }
    .EstateSeminar-detail .EstateSeminar_button {
      color: #fff; }
  .EstateSeminar_title {
    font-size: 32px;
    font-size: 32px;
    font-size: 3.2rem;
    font-weight: bold;
    text-align: left;
    position: relative;
    margin-bottom: 28px;
    transition: 2s cubic-bezier(0.5, 0.24, 0, 1) 0.2s; }
    .EstateSeminar_title:after {
      content: "";
      position: absolute;
      width: 100%;
      height: 100%;
      right: 0;
      top: 0;
      background: #F4F4F4;
      bottom: 0;
      transition: 0.8s cubic-bezier(0.5, 0.24, 0, 1) 0.2s; }
    .EstateSeminar_title.is-active:after {
      width: 0; }
  .EstateSeminar_lists {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between; }
  .EstateSeminar_list {
    width: 38vw;
    margin-right: 2vw;
    margin-bottom: 20px;
    position: relative;
    text-align: left;
    transition: 0.3s cubic-bezier(0.5, 0.24, 0, 1); }
    .EstateSeminar_list:nth-child(2n) {
      margin-right: 0; }
    .EstateSeminar_list-appeal {
      width: 100%; }
    .EstateSeminar_listTitle {
      font-size: 14px;
      font-size: 14px;
      font-size: 1.4rem;
      font-weight: bold;
      line-height: 1.5; }
  .EstateSeminar_listLeft {
    width: 30vw; }
  .EstateSeminar_flex {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    .EstateSeminar_flex-large {
      -webkit-align-items: flex-start;
          -ms-flex-align: start;
              align-items: flex-start; }
  .EstateSeminar_link {
    width: 100%;
    height: 100%;
    display: block;
    transition: .3s;
    position: relative;
    border-radius: 6px; }
    .EstateSeminar_link:hover {
      text-decoration: none; }
  .EstateSeminar_left {
    min-width: 200px; }
  .EstateSeminar_right {
    margin-left: 12px; }
    .EstateSeminar_right .EstateSeminar_Button {
      margin: 0; }
  .EstateSeminar_image {
    display: block;
    background: url() no-repeat 50% 50%;
    background-size: cover;
    min-height: 200;
    width: 200px;
    height: 124px;
    border-radius: 6px; }
  .EstateSeminar_tags {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    margin-top: 12px; }
  .EstateSeminar_tag {
    color: #333;
    border: 1px solid #333;
    font-size: 12px;
    font-size: 12px;
    font-size: 1.2rem;
    padding: 5px 8px;
    font-weight: bold;
    margin-left: 4px; }
    .EstateSeminar_tag:first-child {
      margin-left: 0; }
    .EstateSeminar_tag-text {
      background: none;
      color: #333; }
  .EstateSeminar_attr {
    margin-top: 12px; }
    .EstateSeminar_attr dl {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-justify-content: flex-start;
          -ms-flex-pack: start;
              justify-content: flex-start;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      margin-bottom: 4px; }
      .EstateSeminar_attr dl dt {
        font-size: 12px;
        font-size: 12px;
        font-size: 1.2rem; }
      .EstateSeminar_attr dl dd {
        margin-left: 12px;
        font-size: 12px;
        font-size: 12px;
        font-size: 1.2rem; }
  .EstateSeminar_button {
    position: relative;
    width: 300px;
    padding: 16px 28px;
    background: #B92B2B;
    border-radius: 30px;
    margin: 28px auto 0;
    font-size: 18px;
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: bold;
    display: block;
    color: #fff;
    transition: 0.3s cubic-bezier(0.5, 0.24, 0, 1); }
    .EstateSeminar_button:hover {
      filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feComponentTransfer color-interpolation-filters="sRGB"><feFuncR type="linear" slope="0.8" /><feFuncG type="linear" slope="0.8" /><feFuncB type="linear" slope="0.8" /></feComponentTransfer></filter></svg>#filter');
      -webkit-filter: brightness(0.8);
              filter: brightness(0.8);
      text-decoration: none;
      color: #fff; }
  .EstateSeminar_description {
    text-align: left; }
    .EstateSeminar_descriptionTitle {
      font-size: 16px;
      font-size: 16px;
      font-size: 1.6rem;
      border-bottom: 1px solid #ccc;
      padding: 16px 0;
      font-weight: bold; }
    .EstateSeminar_description h1, .EstateSeminar_description h2, .EstateSeminar_description h3, .EstateSeminar_description h4, .EstateSeminar_description h5, .EstateSeminar_description h6 {
      font-weight: bold; }
    .EstateSeminar_description h2 {
      font-size: 18px;
      font-size: 18px;
      font-size: 1.8rem;
      font-weight: bold;
      line-height: 2;
      margin: 16px 0; }
    .EstateSeminar_description p {
      font-size: 14px;
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 2.4; }
    .EstateSeminar_description img {
      margin-bottom: 28px;
      width: 100%;
      height: auto; }
  .EstateSeminar_detailImage {
    width: 100%;
    height: auto;
    margin: 32px 0 20px; }
  .EstateSeminar_detailTitle {
    font-size: 24px;
    font-size: 24px;
    font-size: 2.4rem;
    font-weight: bold;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    text-align: left;
    line-height: 1.5; }
  .EstateSeminar_detailDate {
    background: #B92B2B;
    color: #fff;
    min-width: 80px;
    width: 80px;
    height: 80px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    text-align: center;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-right: 12px; }
    .EstateSeminar_detailDate span {
      font-size: 14px;
      font-size: 14px;
      font-size: 1.4rem;
      display: block;
      margin-bottom: 4px; }
    .EstateSeminar_detailDate em {
      font-size: 24px;
      font-size: 24px;
      font-size: 2.4rem;
      display: block; }
  .EstateSeminar_rightInner {
    border: 1px solid #ccc;
    border-radius: 6px;
    background: #F2F2F2;
    padding: 2vw;
    box-sizing: border-box;
    margin-bottom: 20px;
    max-width: 25vw; }
  .EstateSeminar_map {
    border: 1px solid #ccc;
    border-radius: 6px;
    padding: 20px;
    text-align: left; }
    .EstateSeminar_mapTitle {
      font-size: 16px;
      font-size: 16px;
      font-size: 1.6rem;
      font-weight: bold;
      margin-bottom: 12px;
      display: block; }
    .EstateSeminar_mapText {
      font-size: 14px;
      font-size: 14px;
      font-size: 1.4rem;
      font-weight: bold;
      line-height: 1.5;
      margin-top: 20px; }
      .EstateSeminar_mapText span {
        font-weight: normal;
        display: block;
        margin-top: 12px; }
    .EstateSeminar_map iframe {
      width: 100%;
      height: 400px;
      margin: 20px 0; }
  .EstateSeminar_sub {
    padding: 20px;
    background: #fff;
    margin-top: 16px; }
    .EstateSeminar_sub dl {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      text-align: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center; }
      .EstateSeminar_sub dl dt, .EstateSeminar_sub dl dd {
        font-size: 14px;
        font-size: 14px;
        font-size: 1.4rem; }
  .EstateSeminar_date {
    font-size: 28px;
    font-size: 28px;
    font-size: 2.8rem;
    font-weight: bold;
    color: #333;
    background: #fff;
    padding: 16px;
    margin-bottom: 12px; }
    .EstateSeminar_date span {
      font-size: 18px;
      font-size: 18px;
      font-size: 1.8rem;
      display: block;
      font-weight: normal;
      margin-top: 12px; }

.Key {
  width: 100%;
  height: 870px;
  background: url(./img/bg_header_top.jpg) no-repeat 50% 50% #041e52;
  background-size: cover;
  position: relative;
  overflow: hidden;
  z-index: 0; }
  @media (max-width: 749px) {
    .Key {
      height: 100vh; } }
  .Key-top {
    height: none;
    background:#041e52; }
    .Key-top .Key_bg {
      position: absolute;
      top: 0;
      left: 0;
      z-index: -1;
      width: 100%;
      height: 100vh;
      opacity: 0.6;
      background: #041e52; }
      .Key-top .Key_bgInner {
        width: 100%;
        height: 100vh;
        display: block;
        background: url() no-repeat 50% 50%;
        background-size: cover; }
    .Key-top .Key_inner {
      z-index: 2;
      top: 0; }
  .Key-business {
    background: url(./img/bg_header_business.jpg) no-repeat 50% 50% #041e52;
    background-size: cover; }
  .Key-company {
    background: url(./img/bg_header_company.jpg) no-repeat 50% 50% #041e52;
    background-size: cover; }
  .Key-info {
    background: url(./img/bg_header_info.jpg) no-repeat 50% 50% #041e52;
    background-size: cover; }
  .Key-recruit {
    background: url(./img/bg_header_recruit.jpg) no-repeat 50% 50% #041e52;
    background-size: cover; }
  .Key-info {
    background: url(./img/bg_header_info.jpg) no-repeat 50% 50% #041e52;
    background-size: cover; }
  .Key-news {
    background: url(./img/bg_header_news.jpg) no-repeat 50% 50% #041e52;
    background-size: cover;
    height: 40vh; }
    @media (max-width: 749px) {
      .Key-news {
        height: 30vh; }
        .Key-news .Key_page {
          top: 11.5vh; } }
  .Key-estate {
    background: url(./img/bg_header_estate_about.jpg) no-repeat 50% 50% #001237;
    background-size: cover;
    height: 40vh; }
  .Key-estateDetail {
    background: url() no-repeat 50% 50%;
    background-size: cover;
    height: 40vh;
    position: relative; }
    .Key-estateDetail:after {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: rgba(0, 0, 0, 0.6);
      content: ""; }
  .Key-contact {
    background: url(./img/bg_header_contact.jpg) no-repeat 50% 50% #001237;
    background-size: cover;
    height: 40vh; }
    @media (max-width: 749px) {
      .Key-contact {
        height: 30vh; }
        .Key-contact .Key_page {
          top: 11.5vh; } }
  .Key_page {
    width: 400px;
    position: absolute;
    left: 50%;
    margin-left: -200px;
    top: 15.5vh;
    text-align: center; }
    @media (max-width: 749px) {
      .Key_page{
        width: 80vw;
        margin-left: -40vw; } }
    .Key_pageName {
      font-size: 28px;
      font-size: 28px;
      font-size: 2.8rem;
      letter-spacing: .1em;
      color: #fff; }
      @media (max-width: 749px) {
        .Key_pageName {
          font-size: 20px;
          color:#fff;
          font-size: 2rem;
          line-height: 1.5; } }
    .Key_pageText {
      font-size: 16px;
      font-size: 16px;
      font-size: 1.6rem;
      display: block;
      margin-top: 16px;
      letter-spacing: .1em;
      color: #fff; }
      @media (max-width: 749px) {
        .Key_pageText {
          font-size: 13px;
          font-size: 1.3rem;
          line-height: 1.5;
          margin-top: 4px; } }
  .Key_inner {
    width: 80%;
    position: relative;
    margin: 0 auto;
    height: 100%;
    position: relative;
    display: block;
    box-sizing: border-box; }
    @media (max-width: 749px) {
      .Key_inner {
        width: calc(100% - 20vw); } }
  .Key_title {
    text-shadow: 0 0 20px rgba(255, 255, 255, 0.2); }
    .Key_title-main {
      font-size: 5.2vw;
      line-height: 1.15;
      position: absolute;
      bottom: 32.5vh;
      left: 0;
      letter-spacing: .02em;
      color: #fff;
      overflow: hidden;
      display: inline-block;
      width: 0;
      transition: all 0.5s cubic-bezier(1, -0.29, 0, 1) 0.5s;
      text-indent: -9999;
      overflow: hidden; }
      @media (max-width: 749px) {
        .Key_title-main {
          font-size: 12.2vw;
          line-height: 1.2;
          bottom: 31vh;
          LETTER-SPACING: 0.1px; } }
      .Key_title-main em {
        color: #fff;
        display: block; }
      .Key_title-main.is-active {
        width: 100%;
        text-indent: 0; }
        .Key_title-main.is-active:before {
          width: 100%;
          height: 0; }
      .Key_title-main:before {
        content: "";
        background: #0a2356;
        position: absolute;
        z-index: 0;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 100%;
        display: inline-block;
        transition: all 0.2s cubic-bezier(0.98, 0.01, 1, 1) 2s; }
    .Key_title-sub {
      width: 0;
      height: 0;
      font-size: 2vw;
      line-height: 6vw;
      font-weight: bold;
      box-sizing: border-box;
      padding-right: 12px;
      position: absolute;
      bottom: 20vh;
      left: 1px;
      transition: all 1.4s cubic-bezier(1, -0.29, 0.24, 0.99);
      letter-spacing: 0.1em;
      color: transparent;
      text-align: left;
      opacity: 0;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
      color: #3c4444;
      background: #0a2356; }
      @media (max-width: 749px) {
        .Key_title-sub {
          font-size: 4.8vw;
          line-height: 1.2;
          bottom: 10vh; } }
      .Key_title-sub.is-active {
        opacity: 1;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
        width: 100%;
        height: 6vw;
        display: inline-block;
        text-align: right;
        color: #fff; }
        @media (max-width: 749px) {
          .Key_title-sub.is-active {
            height: auto;
            padding: 10px;
            word-break: break-all;
            line-height: 1.4; } }
  .Key_scrollInner {
    position: absolute;
    bottom: 0;
    left: 50%;
    margin-left: -20px;
    width: 40px;
    height: 100px; }
  .Key_scrollItem {
    -webkit-pointer-events: none;
    pointer-events: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
        user-select: none;
    z-index: 10000;
    position: relative;
    margin: auto;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    height: 100px;
    width: 1px;
    overflow: hidden; }
    .Key_scrollItem:after {
      content: "";
      display: block;
      height: 20px;
      width: 1px;
      position: absolute;
      top: 0;
      background: rgba(255, 255, 255, 0.8);
      -webkit-animation: scroll 1.5s infinite;
              animation: scroll 1.5s infinite;
      transition: all 1.4s cubic-bezier(1, -0.29, 0.24, 0.99); }

.About {
  padding-top: 120px;
  position: relative;
  padding-bottom: 120px; }
  @media (max-width: 749px) {
    .About {
      padding: 60px 0; } }
  .About_inner {
    width: 80%;
    margin: 0 auto;
    height: 100%;
    display: block;
    box-sizing: border-box; }
    @media (max-width: 749px) {
      .About_inner {
        width: 74%; } }
  .About_logo {
    position: absolute;
    right: 10vw;
    top: 20%;
    width: 30%;
    height: 300px;
    background: url(./img/logo_taiyo.svg) no-repeat 50% 20%;
    background-size: 80% auto; }
    @media (max-width: 749px) {
      .About_logo {
        display: none; } }
  .About_title {
    padding: 56px 10vw 56px 15vw;
    width: 60vw;
    display: inline-block;
    margin-left: -20vw;
    transition: all 0.1s cubic-bezier(0.5, 0.24, 0, 1);
    background: #edeff3;
    position: relative;
    overflow: hidden; }
    @media (max-width: 749px) {
      .About_title {
        width: 88vw;
        margin-left: -13vw;
        padding: 36px 5vw 36px 14vw; } }
    .About_title:before {
      content: "";
      width: 100%;
      height: 100%;
      position: absolute;
      bottom: 0;
      right: 0;
      background: #0a2356;
      transition: all 0.5s cubic-bezier(0.98, 0.01, 0, 1.02) 0.5s; }
    .About_title.is-active {
      margin-left: -15vw; }
      @media (max-width: 749px) {
        .About_title.is-active {
          margin-left: -13vw; } }
      .About_title.is-active:before {
        width: 0; }
    .About_titleMain {
      font-size: 60px;
      font-size: 60px;
      font-size: 6rem;
      line-height: 68px;
      margin-bottom: 23px; }
      @media (max-width: 749px) {
        .About_titleMain {
          font-size: 40px;
          font-size: 4rem;
          line-height: 1.2;
          margin-bottom: 10px; } }
    .About_titleSub {
      font-size: 32px;
      font-size: 32px;
      font-size: 2.4rem;
      line-height: 54px;
      font-weight: bold; }
      @media (max-width: 749px) {
        .About_titleSub {
          font-size: 16px;
          font-size: 1.6rem;
          line-height: 2; } }
  .About_mission {
    padding: 40px 20px;
    margin-top: 60px; }
    @media (max-width: 749px) {
      .About_mission {
        padding: 20px 0;
        margin-top: 40px; } }
    .About_missionHeading {
      font-size: 40px;
      font-size: 4rem;
      text-align: center;
      font-weight: bold;
      color: #00339a;
      margin-bottom: 32px;
      margin-left: -120px;
      opacity: 0;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
      transition: all 0.4s cubic-bezier(0.5, 0.24, 0, 1); }
      @media (max-width: 749px) {
        .About_missionHeading {
          font-size: 18px;
          font-size: 1.8rem;
          margin-bottom: 16px; } }
      .About_missionHeading.is-active {
        margin-left: 0;
        opacity: 1;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
    .About_missionTitle {
      font-size: 28px;
      font-size: 28px;
      font-size: 1.8rem;
      font-weight: bold;
      color: #333;
      margin-bottom: 16px;
      margin-left: -120px;
      opacity: 0;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
      transition: all 0.8s cubic-bezier(0.5, 0.24, 0, 1);
      line-height: 1.5; }
      @media (max-width: 749px) {
        .About_missionTitle {
          font-size: 16px;
          font-size: 1.6rem;
          margin-bottom: 8px;
          line-height: 1.8; } }
      .About_missionTitle.is-active {
        margin-left: 0;
        opacity: 1;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
    .About_missionText {
      font-size: 17px;
      font-size: 17px;
      font-size: 1.7rem;
      line-height: 34px;
      letter-spacing: 1.2;
      margin-left: -120px;
      opacity: 0;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
      transition: all 1.2s cubic-bezier(0.5, 0.24, 0, 1); }
      @media (max-width: 749px) {
        .About_missionText {
          font-size: 13px;
          font-size: 1.3rem;
          line-height: 2; } }
      .About_missionText.is-active {
        margin-left: 0;
        opacity: 1;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
      .About_missionItems {
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
        flex-wrap: wrap;
      }
      .About_missionItem {
        width: calc(50% - 16px);
        padding: 24px;
        margin-bottom: 16px;
        background: #00339a;
        color: #fff;
        box-shadow: 0 0 24px rgba(0,0,0,0.1);
        font-weight: bold;
        font-size: 1.8rem;
        line-height: 1.5;
      }
      @media (max-width: 749px) {
        .About_missionItems {
          flex-wrap: wrap;
        }
        .About_missionItem {
          width: 100%;
          font-size: 1.4rem;
          padding: 16px;
        }
      }
  .About_button {
    position: relative;
    width: 320px;
    height: 76px;
    background: #00339a;
    margin: 60px auto 20px; }
    @media (max-width: 749px) {
      .About_button {
        width: 100%;
        height: 60px; } }
    .About_button:after {
      content: "";
      width: 100%;
      height: 100%;
      position: absolute;
      top: 0;
      right: 0;
      background: #16bd92;
      transition: 0.3s cubic-bezier(0.5, 0.24, 0, 1); }
    @media (max-width: 749px) {
      .About_button {
        margin-top: 20px; } }
    .About_button:hover:after {
      width: 0; }
  .About_buttonLink {
    position: absolute;
    top: 0;
    left: 0;
    width: 320px;
    height: 76px;
    padding-left: 24px;
    box-sizing: border-box;
    line-height: 76px;
    font-size: 20px;
    font-size: 20px;
    font-size: 2rem;
    text-align: left;
    color: #fff !important;
    transition: .1s;
    background: url(./img/icon_arrow_white.svg) no-repeat right 24px top 50%;
    background-size: 26px 26px;
    box-sizing: border-box;
    cursor: pointer;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
    transition: .1s;
    display: block;
    z-index: 1; }
    .About_buttonLink:hover {
      background-position: right 16px top 50%;
      text-decoration: none; }
    @media (max-width: 749px) {
      .About_buttonLink {
        width: 100%;
        height: 60px;
        line-height: 60px;
        font-size: 16px;
        font-size: 1.6rem; } }
  .About_text {
    font-size: 14px;
    font-size: 14px;
    font-size: 1.4rem;
    color: #333;
    text-align: center; }
    @media (max-width: 749px) {
      .About_text {
        line-height: 1.5; } }
  .About_items {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: flex-start;
  }
  .About_item {
    background: #fff;
    /* border: 1px solid #73C3C4; */
    box-shadow: 0 0 20px rgba(0,0,0,0.2);
    margin-bottom: 24px;
    padding: 24px;
    font-weight: bold;
    font-size: 1.6rem;
    border-top: 4px solid #00339a;
  }
  @media (max-width: 749px){
    .About_item {
      font-size: 1.2rem;
      padding: 24px 16px;
      margin-right:0;
      margin-bottom: 12px;
    }
  }
  .About_itemTitle {
    font-size: 2.4rem;
    margin-bottom: 24px;
    color: #00339a;
  }
  .About_itemText {
    font-size: 1.4rem;
    font-weight: normal;
    line-height: 1.5;
  }
  .About_itemAppeal {
    padding-top: 32px;
  }
  .About_itemAppeal em {
    font-size: 1.8rem;
    background: #00339a;
    padding: 8px 16px;
    color: #fff;
  }
  .About_itemAppeal p {
    font-size: 1.4rem;
    font-weight: normal;
    margin-top: 16px;
    line-height: 1.5;
  }
  @media (max-width: 749px){
    .About_itemTitle {
      font-size: 1.8rem;
    }
    .About_itemAppeal em {
      font-size: 1.8rem;
      width: 100%;
      text-align:center;
      display: block;
      background: none;
      color:#00339a;

    }
    .About_itemAppeal p {
      font-size: 1.2rem;
    }
  }
  .About_itemLogo {
    text-align: center;
  }
  .About_itemLogo img {
    width: auto;
  }
  @media (max-width: 749px){
    .About_itemLogo img {
      width: 100%;
    }
  }
  @-webkit-keyframes scroll {
  0% {
    top: 0; }
  100% {
    top: 120%; } }

@keyframes scroll {
  0% {
    top: 0; }
  100% {
    top: 120%; } }

.Infographic {
  padding: 60px 0;
  background: url(./img/bg_line.svg) 50% 0;
  background-size: 100% auto; }
  .Infographic_inner {
    width: 80%;
    margin: 0 auto;
    height: 100%;
    position: relative;
    display: block;
    box-sizing: border-box;
    padding-bottom: 120px; }
    @media (max-width: 749px) {
      .Infographic_inner {
        width: 74%; } }
    @media (max-width: 749px) {
      .Infographic_inner {
        padding-bottom: 32px; } }
  .Infographic_items {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    width: 100%; }
  .Infographic_item {
    margin-bottom: 3%; }
    .Infographic_item-transparent {
      background: none;
      padding: 0;
      border: none; }
      .Infographic_item-transparent:after {
        content: none; }
    .Infographic_item-right {
      margin-left: 3%; }
      @media (max-width: 749px) {
        .Infographic_item-right {
          margin-left: 0; } }
    .Infographic_item-small {
      width: 31%;
      min-width: 31%; }
      @media (max-width: 749px) {
        .Infographic_item-small {
          width: 100%; } }
    .Infographic_item-medium {
      width: 48.5%;
      min-width: 48.5%; }
      @media (max-width: 749px) {
        .Infographic_item-medium {
          width: 100%; } }
    .Infographic_item-large {
      width: 66%;
      min-width: 66%; }
      @media (max-width: 749px) {
        .Infographic_item-large {
          width: 100%; } }
    .Infographic_item-full {
      width: 100%;
      padding: 3%;
      background: #fff;
      border: 1px solid #ccc; }
      .Infographic_item-full:after {
        content: none; }
    .Infographic_itemTitle {
      font-size: 28px;
      font-size: 28px;
      font-size: 2.8rem;
      font-weight: bold;
      color: #4a4a4a; }
    .Infographic_itemSub {
      font-size: 12px;
      font-size: 12px;
      font-size: 1.2rem; }
    .Infographic_itemImg {
      text-align: center;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      transition: 0.3s cubic-bezier(0.5, 0.24, 0, 1) 0.5s;
      position: relative;
      width: 0; }
      .Infographic_itemImg:after {
        content: "";
        width: 100%;
        height: 100%;
        background: rgba(0, 0, 0, 0.8);
        position: absolute;
        top: 0;
        right: 0;
        transition: 0.3s cubic-bezier(0.5, 0.24, 0, 1) 0.2s; }
      .Infographic_itemImg img {
        width: 100%;
        height: auto; }
      .Infographic_itemImg.is-active {
        width: auto; }
        .Infographic_itemImg.is-active:after {
          width: 0; }
    .Infographic_itemSubTitle {
      font-size: 22px;
      font-size: 22px;
      font-size: 2.2rem;
      font-weight: bold;
      color: #888;
      margin: 20px 0;
      line-height: 1.8; }
    .Infographic_itemText {
      font-size: 16px;
      font-size: 16px;
      font-size: 1.6rem;
      line-height: 1.8;
      color: #4a4a4a;
      margin-top: 12px; }
    .Infographic_itemInner {
      margin-bottom: 3%;
      position: relative;
      transition: 0.3s cubic-bezier(0.5, 0.24, 0, 1) 0.2s; }
      .Infographic_itemInner img {
        width: 100%;
        height: auto;
        position: relative; }
      .Infographic_itemInnerTitle {
        font-size: 22px;
        font-size: 22px;
        font-size: 2.2rem;
        font-weight: bold;
        color: #4a4a4a; }
    .Infographic_itemLists {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-justify-content: space-around;
          -ms-flex-pack: distribute;
              justify-content: space-around;
      margin-top: 20px; }
      @media (max-width: 749px) {
        .Infographic_itemLists {
          -webkit-flex-direction: column;
              -ms-flex-direction: column;
                  flex-direction: column; } }
    .Infographic_itemListTitle {
      font-size: 24px;
      font-size: 24px;
      font-size: 2.4rem;
      color: #4a4a4a;
      font-weight: bold;
      text-align: center; }
  .Infographic_heading {
    background: #B61A1A;
    color: #fff;
    font-size: 28px;
    font-size: 28px;
    font-size: 2.8rem;
    padding: 20px;
    font-weight: bold;
    margin-bottom: 20px; }
    @media (max-width: 749px) {
      .Infographic_heading {
        font-size: 18px;
        font-size: 1.8rem; } }

.l_full {
  width: 100%; }

.l_inner {
  width: 80vw;
  margin: 0 auto;
  height: 100%;
  display: block;
  box-sizing: border-box; }
  @media (max-width: 749px) {
    .l_inner80
      width: 80vw; } }

.Loading {
  width: 100vw;
  height: 100vh;
  background: #fff;
  display: block;
  position: fixed;
  z-index: 999999; }
  .Loading_inner {
    width: 400px;
    height: 4px;
    position: fixed;
    left: 50%;
    top: 50%;
    margin-left: -200px;
    margin-top: -1px; }
  .Loading_img {
    -webkit-pointer-events: none;
    pointer-events: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
        user-select: none;
    z-index: 10000;
    position: relative;
    margin: auto;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    height: 2px;
    width: 200px;
    background: #00339a;
    overflow: hidden; }
    .Loading_img:after {
      content: "";
      display: block;
      height: 2px;
      width: 10%;
      position: absolute;
      top: 0;
      background: rgba(255, 255, 255, 0.8);
      -webkit-animation: loading 3s infinite;
              animation: loading 3s infinite;
      transition: all 1.4s cubic-bezier(1, -0.29, 0.24, 0.99); }

@-webkit-keyframes loading {
  0% {
    left: -15%; }
  50% {
    left: 105%; }
  100% {
    left: -15%; } }

@keyframes loading {
  0% {
    left: -15%; }
  50% {
    left: 105%; }
  100% {
    left: -15%; } }

.News {
  margin-top: 120px; }
  @media (max-width: 749px) {
    .News {
      margin-top: 28px; } }
  .News_inner {
    width: 80%;
    margin: 0 auto;
    height: 100%;
    position: relative;
    display: block;
    box-sizing: border-box;
    padding-bottom: 120px; }
    @media (max-width: 749px) {
      .News_inner {
        width: 80%;
        width: 80vw;
        padding-bottom: 60px; } }
  .News_heading {
    font-size: 52px;
    font-size: 52px;
    font-size: 5.2rem;
    letter-spacing: 0.1em;
    text-align: center; }
    @media (max-width: 749px) {
      .News_heading {
        font-size: 32px;
        font-size: 3.2rem; } }
  .News_text {
    font-size: 16px;
    font-size: 16px;
    font-size: 1.6rem;
    margin-top: 25px;
    text-align: center;
    letter-spacing: 0.1em; }
    @media (max-width: 749px) {
      .News_text {
        font-size: 13px;
        font-si80: 1.3rem;
        width: 80vw;
        margin: 0 auto;
        line-height: 1.5;
        margin-top: 20px; } }
  .News_items {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-top: 48px; }
    @media (max-width: 749px) {
      .News_items {
        -webkit-flex-direction: column;
            -ms-flex-direction: column;
                flex-direction: column;
        margin-top: 37px; } }
  .News_item {
    margin-left: 20px;
    background: #fff;
    box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.3);
    border: 1px solid #F4F4F4;
    transition: .3s;
    padding: 24px 20px; }
    @media (max-width: 749px) {
      .News_item {
        margin-left: 0;
        margin-bottom: 16px; } }
    .News_item:first-child {
      margin-left: 0; }
    .News_item:hover {
      background: #FFFFFF;
      box-shadow: 0 7px 4px 0 rgba(0, 0, 0, 0.2);
      text-decoration: none;
      cursor: pointer; }
    .News_itemCategory {
      font-size: 15px;
      font-size: 15px;
      font-size: 1.5rem; }
      .News_itemCategory-press {
        color: #B61A82; }
      .News_itemCategory-media {
        color: #1AB67D; }
      .News_itemCategory-news {
        color: #1A63B6; }
    .News_itemDate {
      margin-top: 8px;
      color: #888;
      font-size: 12px;
      font-size: 12px;
      font-size: 1.2rem; }
    .News_itemTitle {
      font-size: 16px;
      font-size: 16px;
      font-size: 1.6rem;
      color: #333;
      margin-top: 24px;
      font-weight: bold;
      line-height: 22px;
      letter-spacing: 0.1em; }
      @media (max-width: 749px) {
        .News_itemTitle {
          margin-top: 14px; } }
    .News_itemText {
      font-size: 13px;
      font-size: 13px;
      font-size: 1.3rem;
      color: #333;
      margin-top: 12px;
      line-height: 18px; }
      @media (max-width: 749px) {
        .News_itemText {
          display: none; } }
  .News_button {
    position: relative;
    width: 100%;
    max-width: 320px;
    height: 76px;
    background: #00339a;
    margin: 60px auto 20px; }
    @media (max-width: 749px) {
      .News_button {
        margin-top: 24px;
        height: 60px; } }
    .News_button:after {
      content: "";
      width: 100%;
      height: 100%;
      position: absolute;
      top: 0;
      right: 0;
      background: #16bd92;
      transition: 0.3s cubic-bezier(0.5, 0.24, 0, 1); }
    .News_button:hover:after {
      width: 0; }
  .News_buttonLink {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    max-width: 320px;
    height: 76px;
    padding-left: 24px;
    box-sizing: border-box;
    line-height: 76px;
    font-size: 20px;
    font-size: 20px;
    font-size: 2rem;
    text-align: left;
    color: #fff !important;
    transition: .1s;
    background: url(./img/icon_arrow_white.svg) no-repeat right 24px top 50%;
    background-size: 26px 26px;
    box-sizing: border-box;
    cursor: pointer;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
    transition: .1s;
    display: block;
    z-index: 1; }
    @media (max-width: 749px) {
      .News_buttonLink {
        height: 60px;
        line-height: 60px;
        font-size: 16px;
        font-size: 1.6rem; } }
    .News_buttonLink:hover {
      background-position: right 16px top 50%;
      text-decoration: none; }

.NewsDetail {
  position: relative;
  z-index: 0; }
  .NewsDetail_items {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
  .NewsDetail_item {
    border-bottom: 1px solid #f1f1f1;
    z-index: 1; }
    @media (max-width: 749px) {
      .NewsDeta80_item {
        width: 80vw;
        margin: 0 auto; } }
    .NewsDetail_item:hover {
      background: #F7F7F7;
      text-decoration: none; }
    .NewsDetail_itemInner {
      padding: 40px 0;
      width: 80vw;
      margin: 0 auto;
      height: 100%;
      box-sizing: border-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex; }
      @media (max-width: 749px) {
        .NewsDetail_itemInner {
          -webkit-flex-direction: column;
              -ms-flex-direction: column;
                 80lex-direction: column;
          width: 80vw;
          padding: 24px 0; } }
    .NewsDetail_itemLeft {
      width: 260px;
      height: 160px;
      min-width: 260px; }
      @media (max-width: 749px) {
        .NewsDeta80_itemLeft {
          width: 80v80
          min-width: 80vw;
          height: auto; } }
    .NewsDetail_itemRight {
      margin-left: 40px; }
      @media (max-width: 749px) {
        .NewsDeta80_itemRight {
          width: 80v80
          min-width: 80vw;
          margin-left: 0;
          padding-top: 12px; } }
    .NewsDetail_itemImage {
      background: url() no-repeat 50% 50%;
      background-size: cover;
      width: 260px;
      height: 160px; }
      @media (max-width: 749px) {
        .NewsDetail_itemImage {
          width: 100%;
          height: 50vw; } }
    .NewsDetail_itemCategory {
      font-size: 15px;
      font-size: 15px;
      font-size: 1.5rem;
      display: inline-block; }
      .NewsDetail_itemCategory-press {
        color: #B61A82; }
      .NewsDetail_itemCategory-media {
        color: #1AB67D; }
      .NewsDetail_itemCategory-news {
        color: #1A63B6; }
    .NewsDetail_itemDate {
      display: inline-block;
      margin-left: 8px;
      color: #888;
      font-size: 13px;
      font-size: 13px;
      font-size: 1.3rem; }
    .NewsDetail_itemTitle {
      font-size: 24px;
      font-size: 24px;
      font-size: 2.4rem;
      color: #333;
      margin-top: 16px;
      font-weight: bold;
      line-height: 1.5;
      letter-spacing: 0.1em; }
      @media (max-width: 749px) {
        .NewsDetail_itemTitle {
          font-size: 18px;
          font-size: 1.8rem;
          margin-top: 10px; } }
    .NewsDetail_itemText {
      font-size: 13px;
      font-size: 13px;
      font-size: 1.3rem;
      color: #333;
      margin-top: 10px;
      line-height: 1.5; }
      @media (max-width: 749px) {
        .NewsDetail_itemText {
          font-size: 12px;
          font-size: 1.2rem;
          display: none; } }
  .NewsDetail_bottom {
    padding: 64px 0 160px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    @media (max-width: 749px) {
      .NewsDetail_bottom {
        -webkit-flex-direction: column;
            -ms-flex-direction: column;
                flex-direction: column;
        padding-bottom: 40px; } }
    .NewsDetail_bottom-estate {
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      padding-top: 20px; }
    .NewsDetail_bottomPaging {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      width: 40%; }
      @media (max-width: 749px) {
        .NewsDetail_bottomPaging {
          width: 35vw; } }
      .NewsDetail_bottomPagingNumber {
        font-size: 40px;
        font-size: 40px;
        font-size: 4rem;
        font-weight: bold;
        margin-left: 20px;
        display: block;
        position: relative; }
        .NewsDetail_bottomPagingNumber:after {
          content: "";
          width: 100%;
          height: 2px;
          background: #0a2356;
          position: absolute;
          bottom: -2px;
          left: 0; }
        .NewsDetail_bottomPagingNumber:hover {
          text-decoration: none;
          filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feComponentTransfer color-interpolation-filters="sRGB"><feFuncR type="linear" slope="0.5" /><feFuncG type="linear" slope="0.5" /><feFuncB type="linear" slope="0.5" /></feComponentTransfer></filter></svg>#filter');
          -webkit-filter: brightness(0.5);
                  filter: brightness(0.5); }
        .NewsDetail_bottomPagingNumber:first-child {
          margin-left: 0; }
        .NewsDetail_bottomPagingNumber-active {
          color: #666; }
          .NewsDetail_bottomPagingNumber-active:after {
            content: none; }
    .NewsDetail_bottomButtons {
      width: 660px;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex; }
      @media (max-width: 749px) {
        .NewsDetail_bottomButtons {
          width: 100%;
          margin-top: 20px; } }
    .NewsDetail_bottomButton {
      position: relative;
      width: 260px;
      height: 60px;
      background: rgba(0, 0, 0, 0.8);
      margin: 0 auto 0; }
      @media (max-width: 749px) {
        .NewsDetail_bottomButton {
          width: 35vw;
          margin: 20px auto 12px; } }
      .NewsDetail_bottomButton-prev {
        margin-right: 20px; }
        @media (max-width: 749px) {
          .NewsDetail_bottomButton-prev {
            margin-right: 1vw; } }
        .NewsDetail_bottomButton-prev:after {
          content: "";
          width: 100%;
          height: 100%;
          position: absolute;
          top: 0;
          left: 0;
          background: #00339a;
          transition: 0.3s cubic-bezier(0.5, 0.24, 0, 1); }
        .NewsDetail_bottomButton-prev .NewsDetail_bottomButtonLink {
          text-align: right;
          background: url(./img/icon_arrow_white_left.svg) no-repeat left 24px top 50%;
          background-size: 26px 26px;
          padding-right: 24px; }
          .NewsDetail_bottomButton-prev .NewsDetail_bottomButtonLink:hover {
            background-position: left 16px top 50%;
            text-decoration: none; }
      .NewsDetail_bottomButton-next:after {
        content: "";
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        right: 0;
        background: #00339a;
        transition: 0.3s cubic-bezier(0.5, 0.24, 0, 1); }
      .NewsDetail_bottomButton-next .NewsDetail_bottomButtonLink {
        background: url(./img/icon_arrow_white.svg) no-repeat right 24px top 50%;
        background-size: 26px 26px;
        padding-left: 24px; }
        .NewsDetail_bottomButton-next .NewsDetail_bottomButtonLink:hover {
          background-position: right 16px top 50%;
          text-decoration: none; }
      .NewsDetail_bottomButton:hover:after {
        width: 0; }
    .NewsDetail_bottomButtonLink {
      position: absolute;
      top: 0;
      left: 0;
      width: 260px;
      height: 60px;
      box-sizing: border-box;
      line-height: 60px;
      text-align: left;
      color: #fff !important;
      transition: .1s;
      box-sizing: border-box;
      cursor: pointer;
      box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
      transition: .1s;
      display: block;
      font-size: 16px;
      font-size: 16px;
      font-size: 1.6rem;
      z-index: 1; }
      @media (max-width: 749px) {
        .NewsDetail_bottomButtonLink {
          width: 35vw; } }
  .NewsDetail_detail {
    width: 1024px;
    margin: 0 auto; }
    @media (max-width: 749px) {
      .NewsDetail_detail {
        width: 100%; } }
    .NewsDetail_detailImageBg {
      background: #0a2356; }
    .NewsDetail_detailImage {
      width: 100%;
      height: auto; }
    .NewsDetail_detailInner {
      background: #fff;
      box-sizing: border-box;
      max-width: 80vw;
      width: auto;
      margin: -56px auto 40px;
      position: relative;
      padding: 64px 78px;
      box-shadow: 0 20px 40px 0 rgba(0, 0, 0, 0.1); }
      @media (max-width: 749px) {
        .NewsDetail_detailInner {
          max-width: 87vw;
          width: auto;
          padding: 6.5vw; } }
      .NewsDetail_detailInnerDate {
        color: #888;
        font-size: 14px;
        font-size: 14px;
        font-size: 1.4rem; }
        @media (max-width: 749px) {
          .NewsDetail_detailInnerDate {
            font-size: 12px;
            font-size: 1.2rem; } }
      .NewsDetail_detailInnerTitle {
        margin-top: 32px;
        font-weight: bold;
        font-size: 32px;
        font-size: 32px;
        font-size: 3.2rem;
        line-height: 1.5; }
        @media (max-width: 749px) {
          .NewsDetail_detailInnerTitle {
            font-size: 18px;
            font-size: 1.8rem;
            margin-top: 20px; } }
      .NewsDetail_detailInnerText {
        margin-top: 36px; }
        .NewsDetail_detailInnerText p {
          font-size: 16px;
          font-size: 16px;
          font-size: 1.6rem;
          line-height: 2;
          color: #333;
          letter-spacing: 0.05em;
          margin: 20px 0 20px; }
          @media (max-width: 749px) {
            .NewsDetail_detailInnerText p {
              font-size: 12px;
              font-size: 1.2rem; } }
        .NewsDetail_detailInnerText h2 {
          font-size: 22px;
          font-size: 22px;
          font-size: 2.2rem;
          font-weight: bold;
          margin: 20px 0;
          line-height: 1.8;
          letter-spacing: .05em; }
          @media (max-width: 749px) {
            .NewsDetail_detailInnerText h2 {
              font-size: 16px;
              font-size: 1.6rem; } }
        .NewsDetail_detailInnerText h3 {
          font-size: 18px;
          font-size: 18px;
          font-size: 1.8rem;
          font-weight: bold;
          margin: 20px 0;
          line-height: 1.8;
          letter-spacing: .05em; }
          @media (max-width: 749px) {
            .NewsDetail_detailInnerText h3 {
              font-size: 14px;
              font-size: 1.4rem; } }
        .NewsDetail_detailInnerText img {
          margin: 20px 0;
          width: 100%;
          height: auto; }
    .NewsDetail_detailButton {
      border: none;
      position: relative;
      padding: 32px 24px;
      text-align: right;
      color: #fff !important;
      transition: .1s;
      background: url(./img/icon_arrow_white_left.svg) no-repeat left 24px top 50% #00339a;
      background-size: 26px 26px;
      box-sizing: border-box;
      cursor: pointer;
      box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
      transition: .1s;
      display: block;
      font-size: 22px;
      font-size: 22px;
      font-size: 2.2rem;
      width: 340px;
      margin: 32px auto; }
      @media (max-width: 749px) {
        .NewsDetail_detailButton {
          width: 100%;
          max-width: 87vw;
          font-size: 16px;
          font-size: 1.6rem; } }
      .NewsDetail_detailButton:before {
        content: '';
        position: absolute;
        left: 0px;
        bottom: 0px;
        z-index: -1;
        width: 100%;
        height: 100%;
        background: transparent;
        box-shadow: inset 0 0px 0px rgba(0, 0, 0, 0.8);
        display: block;
        transition: all 0.4s cubic-bezier(0.5, 0.24, 0, 1);
        box-sizing: border-box; }
      .NewsDetail_detailButton:hover {
        color: #fff;
        background: url(./img/icon_arrow_white_left.svg) no-repeat left 24px top 50%;
        background-size: 26px 26px;
        box-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);
        text-decoration: none; }
        .NewsDetail_detailButton:hover:before {
          content: "";
          box-shadow: inset -340px 0px 0 rgba(0, 0, 0, 0.8); }

.Recruit {
  position: relative;
  min-height: 100vh; }
  .Recruit_inner {
    padding: 120px 0 0;
    width: 90vw;
    margin: 0 auto;
    height: 100%;
    position: relative;
    display: block;
    box-sizing: border-box; }
    @media (max-width: 749px) {
      .Recruit_80ner {
        width: 80vw;
        padding-top: 58px; } }
  .Recruit_bgGray {
    width: calc(100% - 240px);
    position: absolute;
    z-index: -1;
    height: 866px;
    right: 0;
    background: #f2f2f2; }
  .Recruit_heading {
    font-size: 52px;
    font-size: 52px;
    font-size: 5.2rem;
    letter-spacing: 0.1em;
    text-align: center; }
    @media (max-width: 749px) {
      .Recruit_heading {
        font-size: 32px;
        font-size: 3.2rem; } }
  .Recruit_text {
    font-size: 16px;
    font-size: 16px;
    font-size: 1.6rem;
    margin-top: 25px;
    text-align: center;
    letter-spacing: 0.1em; }
    @media (max-width: 749px) {
      .Recruit_text {
        font-size: 13px;
        font-size: 1.3rem;
        line-height: 20px; } }
  .Recruit_button {
    width: 320px;
    height: 72px;
    background: #00339a;
    margin: 0;
    position: absolute;
    bottom: -90px;
    right: -23%; }
    @media (max-width: 749px) {
      .Recruit_button {
        width: 100%;
        height: 60px; } }
    .Recruit_button:after {
      content: "";
      width: 100%;
      height: 100%;
      position: absolute;
      top: 0;
      right: 0;
      background: #16bd92;
      transition: 0.3s cubic-bezier(0.5, 0.24, 0, 1); }
    .Recruit_button:hover:after {
      width: 0; }
    @media (max-width: 749px) {
      .Recruit_button {
        width: 80%;
        width: 80vw;
        margin: 32px auto 0;
        position: relative;
        bottom: 0;
        right: 0; } }
  .Recruit_buttonLink {
    position: absolute;
    top: 0;
    left: 0;
    width: 320px;
    height: 72px;
    padding-left: 24px;
    box-sizing: border-box;
    line-height: 72px;
    text-align: left;
    color: #fff !important;
    transition: .1s;
    background: url(./img/icon_arrow_white.svg) no-repeat right 24px top 50%;
    background-size: 26px 26px;
    box-sizing: border-box;
    cursor: pointer;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
    transition: .1s;
    display: block;
    z-index: 1; }
    .Recruit_buttonLink:hover {
      background-position: right 16px top 50%;
      text-decoration: none; }
    @media (max-width: 749px) {
      .Recruit_buttonLink {
        width: 80%;
        width: 80vw;
        height: 60px;
        line-height: 60px;
        font-size: 16px;
        font-size: 1.6rem; } }
  .Recruit_block {
    position: relative;
    overflow: hidden; }
    .Recruit_block-1 {
      margin-top: 72px;
      background: url(./img/img_recruit1.png) no-repeat 100% 0;
      height: auto;
      padding-top: 70%;
      margin-right: -128px;
      transition: all 0.8s cubic-bezier(0.5, 0.24, 0, 1);
      width: 100%;
      background-size: 59.375% auto;
      position: relative;
      overflow: hidden; }
      @media (max-width: 749px) {
        .Recruit_block-1 {
          margin-top: 32px;
          background-size: 100% auto;
          height: 200px;
          margin-right: 0;
          padding-top: 100%; } }
      .Recruit_block-1:before {
        content: "";
        width: 70%;
        height: 100%;
        position: absolute;
        bottom: 0;
        right: 0;
        background: #0a2356;
        transition: all 0.5s cubic-bezier(0.98, 0.01, 0, 1.02) 0.5s; }
      .Recruit_block-1.is-active:before {
        width: 0; }
    .Recruit_block-2 {
      margin-top: -38%;
      background: url(./img/img_dummy2.png) no-repeat 0 0;
      width: 100%;
      height: auto;
      padding-top: 50%;
      transition: all 0.8s cubic-bezier(0.5, 0.24, 0, 1);
      width: 100%;
      background-size: 47% auto;
      position: relative;
      overflow: visible; }
      @media (max-width: 749px) {
        .Recruit_block-2 {
          background: none;
          padding: 0; } }
      .Recruit_block-2:before {
        content: "";
        width: 47%;
        height: 100%;
        position: absolute;
        bottom: 0;
        left: 0;
        background: #0a2356;
        transition: all 0.5s cubic-bezier(0.98, 0.01, 0, 1.02) 0.5s; }
        @media (max-width: 749px) {
          .Recruit_block-2:before {
            content: none; } }
      .Recruit_block-2.is-active:before {
        width: 0; }
  .Recruit_title {
    padding: 48px;
    font-size: 40px;
    font-size: 40px;
    font-size: 4rem;
    font-weight: bold;
    position: absolute;
    top: 85px;
    z-index: 2;
    line-height: 60px;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 10px 20px 0 rgba(0, 0, 0, 0.1);
    transition: all 0.8s cubic-bezier(0.5, 0.24, 0, 1);
    border: 1px solid #F4F4F4; }
    @media (max-width: 749px) {
      .Recruit_title {
        display: none;
        font-size: 16px;
        font-size: 1.6rem;
        padding: 20px;
        line-height: 1.6;
        top: 90px; } }
  .Recruit_description {
    position: absolute;
    top: 80px;
    width: 39%;
    padding: 45px 48px 48px;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 10px 20px 0 rgba(0, 0, 0, 0.1);
    border: 1px solid #F4F4F4;
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    right: 7.5%; }
    @media (max-width: 749px) {
      .Recruit_description {
        position: static;
        width: 100%;
        box-shadow: none;
        padding: 8vw 13vw 13vw; } }
    .Recruit_descriptionText {
      font-size: 18px;
      font-size: 18px;
      font-size: 1.8rem;
      line-height: 34px;
      position: relative; }
      @media (max-width: 749px) {
        .Recruit_descriptionText {
          font-size: 14px;
          font-size: 1.4rem;
          line-height: 24px; } }
    .Recruit_items {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: flex-start;
      margin-bottom: 12px;
    }
    .Recruit_item {
      padding: 6px 16px;
      background: #00339a;
      font-size: 1.8rem;
      border-radius: 32px;
      color: #fff;
      font-weight: bold;
      margin-right: 6px;
    }
    .Recruit_contentTitle {
      font-size: 2.2rem;
      font-weight: bold;
      margin-bottom: 12px;
    }
.RecruitDetail {
  padding: 80px 0 0; }
  @media (max-width: 749px) {
    .RecruitDetail {
      padding: 48px 0 0; } }
  .RecruitDetail_head {
    margin-bottom: 80px; }
    @media (max-width: 749px) {
      .RecruitDetail_head {
        margin-bottom: 40px; } }
    .RecruitDetail_headTitle {
      font-size: 48px;
      font-size: 48px;
      font-size: 4.8rem;
      color: #16bd92;
      font-weight: medium;
      margin-bottom: 30px; }
      .RecruitDetail_headTitle span {
        font-size: 24px;
        font-size: 24px;
        font-size: 2.4rem;
        color: #222;
        font-weight: bold;
        font-family: 游ゴシック, YuGothic, Hiragino Sans, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, Verdana, sans-serif;
        margin-left: 24px; }
        @media (max-width: 749px) {
          .RecruitDetail_headTitle span {
            font-size: 16px;
            font-size: 1.6rem;
            margin-left: 0;
            display: block;
            margin-top: 12px; } }
      @media (max-width: 749px) {
        .RecruitDetail_headTitle {
          font-size: 32px;
          font-size: 3.2rem; } }
    .RecruitDetail_headButtons {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between; }
      @media (max-width: 749px) {
        .RecruitDetail_headButtons {
          -webkit-flex-direction: column;
              -ms-flex-direction: column;
                  flex-direction: column; } }
    .RecruitDetail_headButton {
      width: 39vw; }
      @media (max-width: 749px) {
        .RecruitD80ail_headButton {
          width: 80vw;
          margin-bottom: 20px; } }
    .RecruitDetail_headButtonLink {
      position: relative;
      width: 39vw;
      height: 80px;
      background: rgba(0, 0, 0, 0.8); }
      .RecruitDetail_headButtonLink:after {
        content: "";
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        right: 0;
        background: #16bd92;
        transition: 0.3s cubic-bezier(0.5, 0.24, 0, 1); }
      .RecruitDetail_headButtonLink:hover:after {
        width: 0; }
      @media (max-width: 749px) {
        .RecruitD80ail_headButtonLink {
          width: 80vw; } }
    .RecruitDetail_headButtonInner {
      position: absolute;
      top: 0;
      left: 0;
      width: 39vw;
      height: 80px;
      padding-left: 24px;
      box-sizing: border-box;
      line-height: 80px;
      text-align: left;
      color: #fff !important;
      transition: .1s;
      background: url(./img/icon_arrow_white.svg) no-repeat right 24px top 50%;
      background-size: 26px 26px;
      box-sizing: border-box;
      cursor: pointer;
      box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
      transition: .1s;
      display: block;
      z-index: 1;
      font-size: 22px;
      font-size: 22px;
      font-size: 2.2rem; }
      .RecruitDetail_headButtonInner:hover {
        background-position: right 16px top 50%;
        text-decoration: none; }
      @media (max-width: 749px) {
        .RecruitD80ail_headButtonInner {
          width: 80vw;
          font-size: 16px;
          font-size: 1.6rem; } }
    .RecruitDetail_headButtonText {
      font-size: 18px;
      font-size: 18px;
      font-size: 1.8rem;
      color: #333;
      margin-top: 12px;
      text-align: center; }
      @media (max-width: 749px) {
        .RecruitDetail_headButtonText {
          font-size: 13px;
          font-size: 1.3rem; } }
  .RecruitDetail_flow {
    padding-bottom: 80px; }
    @media (max-width: 749px) {
      .RecruitDetail_flow {
        padding-bottom: 40px; } }
    .RecruitDetail_flowTitle {
      font-size: 48px;
      font-size: 48px;
      font-size: 4.8rem;
      color: #16bd92;
      font-weight: medium;
      margin-bottom: 30px; }
      @media (max-width: 749px) {
        .RecruitDetail_flowTitle {
          font-size: 32px;
          font-size: 3.2rem; } }
      .RecruitDetail_flowTitle span {
        font-size: 24px;
        font-size: 24px;
        font-size: 2.4rem;
        color: #222;
        font-weight: bold;
        font-family: 游ゴシック, YuGothic, Hiragino Sans, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, Verdana, sans-serif;
        margin-left: 24px; }
        @media (max-width: 749px) {
          .RecruitDetail_flowTitle span {
            font-size: 16px;
            font-size: 1.6rem;
            display: block;
            margin-left: 0;
            margin-top: 12px; } }
    .RecruitDetail_flowText {
      font-size: 18px;
      font-size: 18px;
      font-size: 1.8rem;
      line-height: 1.5; }
      @media (max-width: 749px) {
        .RecruitDetail_flowText {
          font-size: 15px;
          font-size: 1.5rem; } }
    .RecruitDetail_flowImage {
      background: url(./img/img_recruit_flow.svg) no-repeat 0 0;
      background-size: 100% auto;
      width: 100%;
      padding-top: 13%;
      margin-top: 40px; }
      .RecruitDetail_flowImage-us {
        background: url(./img/img_recruit_flow_us.svg) no-repeat 0 0;
        background-size: 100% auto; }
    .RecruitDetail_flowSubText {
      margin-top: 20px;
      font-size: 14px;
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 1.5; }
      @media (max-width: 749px) {
        .RecruitDetail_flowSubText {
          font-size: 13px;
          font-size: 1.3rem; } }
  .RecruitDetail_list {
    padding: 80px 0;
    background: url(./img/bg_line.svg) 50% 0;
    background-size: 100% auto; }
    @media (max-width: 749px) {
      .RecruitDetail_list {
        padding: 48px 0;
        background-size: 200% auto; } }
    .RecruitDetail_listTitle {
      font-size: 48px;
      font-size: 48px;
      font-size: 4.8rem;
      color: #16bd92;
      font-weight: medium;
      margin-bottom: 30px; }
      @media (max-width: 749px) {
        .RecruitDetail_listTitle {
          font-size: 28px;
          font-size: 2.8rem; } }
      .RecruitDetail_listTitle span {
        font-size: 24px;
        font-size: 24px;
        font-size: 2.4rem;
        color: #222;
        font-weight: bold;
        font-family: 游ゴシック, YuGothic, Hiragino Sans, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, Verdana, sans-serif;
        margin-left: 24px; }
        @media (max-width: 749px) {
          .RecruitDetail_listTitle span {
            font-size: 16px;
            font-size: 1.6rem;
            margin-top: 12px;
            display: block;
            margin-left: 0; } }
    .RecruitDetail_listText {
      font-size: 18px;
      font-size: 18px;
      font-size: 1.8rem;
      line-height: 1.5; }
      @media (max-width: 749px) {
        .RecruitDetail_listText {
          font-size: 13px;
          font-size: 1.3rem; } }
    .RecruitDetail_listItems {
      background: #fff; }
    .RecruitDetail_listItem {
      cursor: pointer;
      transition: .3s; }
      .RecruitDetail_listItem:hover {
        box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2); }
      .RecruitDetail_listItem:first-child .RecruitDetail_listItemTitle {
        border-top: none; }
      .RecruitDetail_listItemTitle {
        font-size: 28px;
        font-size: 28px;
        font-size: 2.8rem;
        color: #333;
        border-top: 1px solid #ccc;
        padding: 32px;
        position: relative; }
        @media (max-width: 749px) {
          .RecruitDetail_listItemTitle {
            font-size: 16px;
            font-size: 1.6rem; } }
        .RecruitDetail_listItemTitle:after {
          content: "";
          width: 32px;
          height: 32px;
          border-radius: 32px;
          background: url(./img/icon_plus.svg) no-repeat 50% 50% #16bd92;
          background-size: 14px auto;
          position: absolute;
          right: 16px;
          box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.3);
          transition: 0.3s cubic-bezier(1, -0.29, 0, 1);
          -webkit-transform: rotate(0deg);
                  transform: rotate(0deg); }
          @media (max-width: 749px) {
            .RecruitDetail_listItemTitle:after {
              top: 50%;
              margin-top: -16px; } }
          .RecruitDetail_listItemTitle:after:hover {
            box-shadow: none; }
        .RecruitDetail_listItemTitle.is-active:after {
          content: "";
          -webkit-transform: rotate(45deg);
                  transform: rotate(45deg); }
      .RecruitDetail_listItemTable {
        transition: all 2s cubic-bezier(1, -0.29, 0, 1);
        height: 0;
        transition: 0.5s cubic-bezier(1, -0.29, 0, 1) 0.2s;
        overflow: hidden;
        opacity: 0;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }
        .RecruitDetail_listItemTable.is-open {
          height: 100%;
          opacity: 1;
          -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
          overflow: auto;
          padding: 12px 32px 32px 32px; }
          @media (max-width: 749px) {
            .RecruitDetail_listItemTable.is-open {
              padding: 4px 6.5vw 6.5vw; } }
        .RecruitDetail_listItemTable dl {
          display: -webkit-flex;
          display: -ms-flexbox;
          display: flex;
          -webkit-align-items: flex-start;
              -ms-flex-align: start;
                  align-items: flex-start; }
          @media (max-width: 749px) {
            .RecruitDetail_listItemTable dl {
              -webkit-flex-direction: column;
                  -ms-flex-direction: column;
                      flex-direction: column; } }
        .RecruitDetail_listItemTable dt {
          font-size: 16px;
          font-size: 16px;
          font-size: 1.6rem;
          font-weight: bold;
          padding: 16px 0;
          min-width: 150px;
          margin-right: 20px;
          line-height: 1.5; }
          @media (max-width: 749px) {
            .RecruitDetail_listItemTable dt {
              font-size: 13px;
              font-size: 1.3rem;
              padding: 8px 0; } }
        .RecruitDetail_listItemTable dd {
          font-size: 16px;
          font-size: 16px;
          font-size: 1.6rem;
          padding: 16px 0;
          width: 100%;
          line-height: 1.5; }
          @media (max-width: 749px) {
            .RecruitDetail_listItemTable dd {
              font-size: 13px;
              font-size: 1.3rem;
              padding: 8px 0; } }
    .RecruitDetail_listButton {
      position: relative;
      width: 320px;
      height: 80px;
      background: rgba(0, 0, 0, 0.8);
      margin: 60px auto 20px; }
      @media (max-width: 749px) {
        .RecruitDetail_listButton {
          width: 100%;
          margin: 20px auto 12px; } }
      .RecruitDetail_listButton:after {
        content: "";
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        right: 0;
        background: #16bd92;
        transition: 0.3s cubic-bezier(0.5, 0.24, 0, 1); }
      .RecruitDetail_listButton:hover:after {
        width: 0; }
    .RecruitDetail_listButtonInner {
      position: absolute;
      top: 0;
      left: 0;
      width: 320px;
      height: 80px;
      padding-left: 24px;
      box-sizing: border-box;
      line-height: 80px;
      text-align: left;
      color: #fff !important;
      transition: .1s;
      background: url(./img/icon_arrow_white.svg) no-repeat right 24px top 50%;
      background-size: 26px 26px;
      box-sizing: border-box;
      cursor: pointer;
      box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
      transition: .1s;
      display: block;
      z-index: 1;
      font-size: 22px;
      font-size: 22px;
      font-size: 2.2rem; }
      .RecruitDetail_listButtonInner:hover {
        background-position: right 16px top 50%;
        text-decoration: none; }
      @media (max-width: 749px) {
        .RecruitDetail_listButtonInner {
          width: 100%;
          font-size: 16px;
          font-size: 1.6rem; } }

.Utility {
  padding: 80px 0; }
  @media (max-width: 749px) {
    .Utility {
      padding: 40px 0; } }
  .Utility-line {
    background: url(./img/bg_line.svg) 50% 0;
    background-size: 100% auto; }
  .Utility_text {
    font-size: 16px;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 2;
    letter-spacing: .1em; }
    @media (max-width: 749px) {
      .Utility_text {
        font-size: 13px;
        font-size: 1.3rem; } }
    .Utility_text-alignC {
      text-align: center; }
  .Utility_items {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    margin: 20px 0; }
  .Utility_item {
    background: #FFFFFF;
    border: 1px solid #CCCCCC;
    box-sizing: border-box;
    padding: 40px;
    margin-bottom: 20px; }
    @media (max-width: 749px) {
      .Utility_item {
        padding: 6.5vw; } }
    .Utility_item dl {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: flex-start;
          -ms-flex-align: start;
              align-items: flex-start; }
    .Utility_itemTitle {
      font-size: 28px;
      font-size: 28px;
      font-size: 2.8rem;
      font-weight: bold;
      margin-bottom: 12px;
      letter-spacing: .1em;
      line-height: 1.8; }
      @media (max-width: 749px) {
        .Utility_itemTitle {
          font-size: 16px;
          font-size: 1.6rem; } }
    .Utility_itemText {
      font-size: 16px;
      font-size: 16px;
      font-size: 1.6rem;
      line-height: 2; }
      @media (max-width: 749px) {
        .Utility_itemText {
          font-size: 13px;
          font-size: 1.3rem; } }

.slider {
  display: none; }

.slider.slick-initialized {
  display: block; }

.colorBlue {
  color: #0eb2e8; }

.js-hide {
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }

.onlySp {
  display: none !important; }

.onlyPc {
  display: block !important; }

@media (max-width: 749px) {
  .onlySp {
    display: block !important; }
  .onlyPc {
    display: none !important; } }

/* color */
/* space */

.Service{
  display:block;
}
.Service__items{
  display: flex;
  flex-direction: column;
}
.Service__item{
  margin-bottom: 40px;
}
.Service__head{
  display: flex;
  justify-content: center;
  align-items: center;
}
@media (max-width: 749px) {
  .Service__head{
    flex-direction: column;
  }
}
.Service__body{
  margin-top: 40px;
}
@media (max-width: 749px) {
  .Service__body{
    margin-top:0;
  }
}
.Service__image{
  width: 300px;
  position: relative;
  z-index:1;
}
@media (max-width: 749px) {
  .Service__image{
    width: 80%;
  }
}
.Service__image img{
  width: 100%;
  height: auto;
}
.Service__title{
  padding: 0 40px;
  display:flex;
  flex-direction: column;
}
@media (max-width: 749px) {
  .Service__title{
    padding:20px 0;
    text-align: center;
  }
}
.Service__title span{
  font-size: 14px;
  line-height: 1.5;
  font-weight: bold;
  display: block;
  margin-bottom: 20px;
}
.Service__title em{
  font-size: 32px;
  line-height: 1.5;
  font-weight: bold;
}
@media (max-width: 749px) {
  .Service__title em{
    font-size: 24px;
  }
}
.Service__title.is-en{
  padding:20px 40px;
}
@media (max-width: 749px) {
  .Service__title.is-en{
    padding: 20px;
  }
}
.Service__title.is-en span{
  font-size: 10px;
  margin-bottom: 12px;
}
.Service__title.is-en em{
  font-size: 18px;
}
.Service__title.is-en span,.Service__title.is-en em{
  color: #00339a;
}
.Service__content{
  padding: 40px;
}
@media (max-width: 749px) {
  .Service__content{
    padding: 0;
    margin-bottom: 20px;
  }
}
.Service__content.is-jp{
  font-size: 16px;
  line-height: 1.8;
}
@media (max-width: 749px) {
  .Service__content.is-jp{
    font-size: 14px;
    padding: 20px;
  }
}
.Service__content.is-en{
  background: #eee;
  padding: 40px;
  font-size: 16px;
  line-height: 1.8;
}
@media (max-width: 749px) {
  .Service__content.is-en{
    font-size: 14px;
    padding: 20px;
  }
}
