@charset "UTF-8";
/*****************************
 *
 *settings
 *
 ***************************** */
.fv_tit {
  height: 326px;
  margin-top: 96px;
  position: relative; }
  .fv_tit.layer:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    display: block;
    z-index: 2;
    background: rgba(87, 89, 89, 0.46); }
  .fv_tit.layer .bg.opt {
    object-position: center; }
  .fv_tit.pt2 {
    background: #f5f5f5; }
    .fv_tit.pt2.voice {
      height: 380px; }
      .fv_tit.pt2.voice .ib {
        padding-top: 55px; }
        .fv_tit.pt2.voice .ib .date {
          font-size: 20px;
          font-family: "Roboto";
          font-weight: bold;
          color: #B71906; }
          .fv_tit.pt2.voice .ib .date a {
            position: relative;
            top: -2px;
            margin-left: 5px;
            font-size: 14px;
            display: inline-block;
            padding: 3px 7px 2px 7px;
            border: 1px solid #B71906;
            border: 1px solid #B71906;
            border-radius: 4px; }
        .fv_tit.pt2.voice .ib h1 {
          max-width: 100%;
          width: 660px;
          font-size: 32px;
          z-index: 3;
          margin-top: 15px;
          line-height: 1.4; }
          .fv_tit.pt2.voice .ib h1:before {
            display: none; }
      .fv_tit.pt2.voice:after {
        content: "";
        font-size: 100px;
        position: absolute;
        bottom: -15px;
        z-index: 2;
        left: calc(50% - 100px);
        font-weight: bold;
        font-family: "Oswald";
        background: url(../img/voice/voice.svg) 50% 50% no-repeat;
        mix-blend-mode: multiply;
        height: 115px;
        width: 241px; }
      .fv_tit.pt2.voice:before {
        content: "";
        width: calc(50vw + 450px);
        height: 150px;
        position: absolute;
        left: 0;
        bottom: 0;
        display: block;
        background: #B71906; }
    .fv_tit.pt2 .bread {
      color: #B71906; }
    .fv_tit.pt2 .ib h1 {
      color: #000; }
  .fv_tit.pt3 {
    background: #fff;
    border-bottom: 1px solid #ddd; }
    .fv_tit.pt3 .bread {
      color: #B71906; }
    .fv_tit.pt3 .ib h1 {
      color: #000; }
  .fv_tit.nbd {
    border: none !important; }
  .fv_tit .bread {
    position: absolute;
    font-size: 13px;
    color: #fff;
    font-weight: bold;
    writing-mode: vertical-rl;
    top: 30px;
    left: 30px;
    z-index: 3;
    height: max-content; }
    .fv_tit .bread i {
      display: inline-block;
      padding: 7px 0; }
      .fv_tit .bread i .material-icons {
        font-size: 12px; }
  .fv_tit .ib {
    padding: 120px 0;
    height: 100%;
    z-index: 3; }
    .fv_tit .ib .voice_img {
      width: 330px;
      height: calc(100% + 0px);
      position: absolute;
      right: 0;
      top: 0; }
      .fv_tit .ib .voice_img img {
        object-fit: cover;
        width: 100%;
        height: 100%; }
    .fv_tit .ib .data {
      position: absolute;
      font-size: 18px;
      font-weight: bold;
      color: #fff;
      bottom: 45px;
      left: calc(50% - 500px);
      z-index: 3; }
      .fv_tit .ib .data p.name {
        font-size: 24px;
        margin-top: 10px;
        font-weight: bold; }
    .fv_tit .ib h1 {
      margin: 0;
      font-size: 42px;
      color: #fff;
      font-weight: bold;
      position: relative;
      z-index: 3; }
      .fv_tit .ib h1.single {
        font-size: 28px;
        line-height: 1.6;
        margin-top: -30px; }
      .fv_tit .ib h1.tax:before {
        display: none; }
      /* .fv_tit .ib h1 em {
        display: block;
        font-size: 22px;
        margin-top: 20px; }
        .fv_tit .ib h1 em:before {
          content: "";
          font-family: material icons;
          display: inline-block;
          margin-right: 10px;
          position: relative;
          top: 4px;
          font-size: 110%; }
        .fv_tit .ib h1 em i {
          color: #B71906;
          display: inline-block;
          margin-left: 10px; }
          .fv_tit .ib h1 em i:before {
            position: relative;
            top: 2px;
            content: "";
            font-family: material icons;
            display: inline-block;
            margin-right: 10px;
            font-size: 90%; }
      .fv_tit .ib h1:before {
        content: "";
        width: 72px;
        height: 3px;
        background: #B71906;
        display: block;
        position: absolute;
        bottom: -25px;
        left: 0; } */
  .fv_tit .bg {
    object-fit: cover;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    object-position: bottom; }

section {
  max-width: 100%;
  width: 100%; }

#content {
  min-height: 500px; }
  #content img {
    max-width: 100%; }
  #content.bg_gray {
    background: #f5f5f5; }
  #content .ib {
    padding: 50px 0; }
  #content h2 {
    font-size: 32px;
    text-align: center;
    position: relative;
    z-index: 2;
    margin: 40px 0; }
    #content h2:before {
      width: 72px;
      content: "";
      height: 2px;
      background: #B71906;
      bottom: -20px;
      left: calc(50% - 36px);
      display: block;
      position: absolute; }
    #content h2.bd {
      padding: 10px 0;
      border-top: 2px solid #B71906;
      border-bottom: 2px solid #B71906; }
      #content h2.bd:before {
        display: none; }
  #content h3.center {
    font-size: 28px;
    line-height: 47px;
    text-align: center;
    margin: 40px 0; }
  #content h4 {
    font-size: 18px; }
  #content p {
    font-size: 16px;
    margin: 20px 0;
    line-height: 30px; }
    #content p .s {
      display: inline-block;
      font-size: 14px; }
    #content p.center {
      text-align: center; }
    #content p .bullet {
      display: block;
      position: relative;
      padding-left: 20px; }
      #content p .bullet:before {
        content: "・";
        position: absolute;
        left: 0px;
        top: 0px; }
  #content button {
    display: block;
    margin: 40px auto;
    border: 4px solid #B71906;
    padding: 20px;
    width: 300px;
    max-width: 100%;
    cursor: pointer;
    box-shadow: none;
    color: #B71906;
    font-weight: bold;
    background: #fff;
    transition: 0.4s ease; }
    #content button:hover {
      background: #B71906;
      color: #fff; }
  #content .mw_wp_form_confirm table.contact tr td.birth i em {
    padding-top: 0; }
  #content table {
    border-collapse: collapse;
    width: 100%;
    margin: 40px 0; }
    #content table.contact tr th {
      padding: 20px 0;
      position: relative;
      padding-left: 20px;
      padding-right: 20px; }
      #content table.contact tr th span {
        font-size: 13px;
        display: block;
        margin-top: 15px;
        font-weight: normal; }
      #content table.contact tr th.req:before {
        content: "";
        width: 7px;
        height: 20px;
        position: absolute;
        left: 0;
        background: #B71906;
        top: calc(50% - 10px); }
    #content table.contact tr td {
      padding: 20px 0 20px 30px; }
      #content table.contact tr td.birth {
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex; }
        #content table.contact tr td.birth i {
          width: 120px;
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex; }
          #content table.contact tr td.birth i input {
            width: calc(100% - 30px); }
          #content table.contact tr td.birth i em {
            padding-top: 20px;
            text-align: center;
            width: 30px; }
    #content table tr th {
      width: 22%;
      border-right: 1px solid #000;
      border-bottom: none;
      padding: 25px 0;
      text-align: left; }
    #content table tr td {
      width: 78%;
      border: none;
      padding: 25px 0 25px 25px; }
      #content table tr td .df {
        display: flex;
        flex-wrap: wrap; }
        #content table tr td .df span {
          width: 25%;
          margin-bottom: 10px; }
      #content table tr td input[type="text"], #content table tr td input[type="email"], #content table tr td input[type="tel"] {
        width: 100%;
        padding: 20px;
        border: 1px solid #ccc;
        border-radius: 4px; }
      #content table tr td input[name="kind"]:read-only, #content table tr td input[name="kind"]:focus {
        border: none;
        outline: none; }
      #content table tr td select {
        width: auto;
        padding: 20px;
        border: 1px solid #ccc;
        border-radius: 4px; }
      #content table tr td textarea {
        min-height: 200px;
        width: 100%;
        border: 1px solid #bbb;
        border-radius: 4px; }

span.red {
  color: #d70045; }

#first_view.workcontents {
  height: calc(100vh - 96px);
  width: 100%;
  background: linear-gradient(rgba(0, 0, 0, 0.45), rgba(0, 0, 0, 0.45)), url(../img/fv2.jpg) 50% 50% no-repeat fixed;
  background-size: cover, cover;
  position: relative;
  margin-top: 96px;
  min-height: 900px; }
  #first_view.workcontents.philosophy {
    height: 600px;
    background: linear-gradient(rgba(0, 0, 0, 0.45), rgba(0, 0, 0, 0.45)), url(../img/philosophy/bg1.jpg) 50% 50% no-repeat;
    background-size: cover, cover; }
    #first_view.workcontents.philosophy .ib .txt {
      height: 415px;
      top: calc(50% - 220px); }
  #first_view.workcontents .mov_container {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: block; }
    #first_view.workcontents .mov_container video {
      object-fit: cover;
      width: 100%;
      height: 100%; }
  #first_view.workcontents .bread {
    position: absolute;
    top: 40px;
    left: 30px;
    letter-spacing: 0.05em;
    font-size: 13px;
    font-weight: bold;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    -o-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
    color: #fff;
    z-index: 3; }
    #first_view.workcontents .bread span:after {
      content: "";
      font-family: material icons;
      display: inline-block;
      margin-top: 8px;
      margin-bottom: 8px; }
    #first_view.workcontents .bread span:last-child:after {
      display: none; }
  #first_view.workcontents .ib {
    height: 100%;
    padding: 100px 0; }
    #first_view.workcontents .ib .txt {
      height: 750px;
      position: absolute;
      left: 0;
      width: 1000px;
      top: calc(50% - 375px);
      color: #fff; }
      #first_view.workcontents .ib .txt .page_name {
        font-size: 22px;
        font-weight: bold;
        color: #fff;
        position: relative;
        margin-bottom: 80px; }
        #first_view.workcontents .ib .txt .page_name:before {
          width: 34px;
          content: "";
          background: #B71906;
          display: block;
          height: 4px;
          position: absolute;
          left: 0;
          bottom: -20px; }
      #first_view.workcontents .ib .txt h2 span {
        font-size: 32px;
        display: block;
        margin-bottom: 20px; }
      #first_view.workcontents .ib .txt h2 i {
        display: table;
        padding: 8px 15px 3px;
        position: relative;
        font-size: 59px;
        height: 87px;
        font-weight: bold;
        margin-bottom: 15px;
        line-height: 1.3;
        transition: 0.4s ease; }
        #first_view.workcontents .ib .txt h2 i:nth-of-type(2):before {
          transition: 0.9s ease; }
        #first_view.workcontents .ib .txt h2 i em {
          position: relative;
          z-index: 2;
          opacity: 0;
          transition: 0.4s ease;
          display: inline-block;
          transform: translateY(10px); }
          #first_view.workcontents .ib .txt h2 i em.show {
            opacity: 1;
            transform: translateY(0px); }
        #first_view.workcontents .ib .txt h2 i.spread:before {
          width: 100%; }
        #first_view.workcontents .ib .txt h2 i:before {
          transition: 0.6s ease;
          content: "";
          display: block;
          height: 100%;
          width: 0%;
          position: absolute;
          top: 0;
          left: 0;
          background: #B71906; }
      #first_view.workcontents .ib .txt p {
        font-size: 18px;
        font-weight: 500;
        margin: 0;
        position: absolute;
        bottom: 0;
        right: 80px;
        line-height: 2.5; }

#content .intro .ib {
  padding: 0px 0;
  padding-top: 50px; }
  #content .intro .ib h2 {
    margin-bottom: 70px; }
  #content .intro .ib .cont {
    margin: 100px 0 200px;
    position: relative;
    padding: 10px 0; }
  #content .intro .ib .img1 {
    display: block;
    margin: 0;
    max-width: 1140px;
    width: 1140px;
    margin-left: -70px;
    position: absolute;
    top: 0;
    left: 0; }
  #content .intro .ib .txt {
    padding: 0 20px;
    position: relative;
    height: 400px;
    position: relative;
    width: 960px;
    margin: 0 auto;
    margin-top: 150px; }
    #content .intro .ib .txt div {
      width: 370px; }
      #content .intro .ib .txt div.l {
        position: absolute;
        top: 0;
        left: 0; }
      #content .intro .ib .txt div.r {
        position: absolute;
        right: 0;
        bottom: 0; }
      #content .intro .ib .txt div h3 {
        text-align: center;
        margin-top: 0;
        font-size: 32px;
        margin-bottom: 25px; }
        #content .intro .ib .txt div h3 span {
          display: block;
          font-size: 16px;
          color: #B71906;
          margin-bottom: 5px; }
      #content .intro .ib .txt div p {
        font-size: 15px;
        margin: 0;
        line-height: 28px; }

a.link_btn {
  width: 110px;
  height: 110px;
  border: 1px solid #B71906;
  border-radius: 50%;
  overflow: hidden;
  position: relative;
  display: block;
  margin: 35px 0;
  padding: 10px;
  background: #B71906;
  transition: 0.18s ease; }
  a.link_btn:before {
    content: "";
    width: 100%;
    height: 100%;
    background: #fff;
    position: absolute;
    top: 0;
    left: 0;
    transition: 0.4s ease;
    border-radius: 50%; }
  a.link_btn:hover {
    transform: translateY(-10px); }
    a.link_btn:hover:before {
      transform: scale(0); }
    a.link_btn:hover svg path {
      fill: #fff; }
    a.link_btn:hover span {
      color: #fff; }
  a.link_btn svg {
    display: block;
    margin: 10px auto;
    position: relative;
    z-index: 2;
    transition: 0.4s ease; }
  a.link_btn span {
    color: #B71906;
    font-size: 15px;
    display: block;
    text-align: center;
    z-index: 2;
    position: relative;
    font-weight: bold;
    transition: 0.4s ease; }

#content .services .service_row {
  background: #fff;
  position: relative; }
  #content .services .service_row .ib {
    padding: 200px 0; }
  #content .services .service_row .row {
    flex-wrap: wrap;
    display: flex;
    justify-content: space-between;
    padding-bottom: 30px;
    margin-bottom: 60px;
    border-bottom: 1px solid #D5D5D5; }
    #content .services .service_row .row:nth-of-type(odd) {
      flex-direction: row-reverse; }
    #content .services .service_row .row:last-child {
      border: none;
      margin-bottom: 0; }
    #content .services .service_row .row .l {
      width: 500px; }
      #content .services .service_row .row .l h3 {
        font-size: 40px;
        margin-top: 80px; }
        #content .services .service_row .row .l h3 span {
          display: block;
          font-size: 18px;
          color: #595757;
          position: relative;
          margin-bottom: 10px; }
          #content .services .service_row .row .l h3 span:before {
            content: "";
            position: relative;
            top: -2px;
            width: 20px;
            height: 8px;
            background: #B71906;
            display: inline-block;
            margin-right: 5px; }
      #content .services .service_row .row .l a {
        display: block;
        color: #B71906;
        font-size: 15px;
        font-weight: bold; }
    #content .services .service_row .row .r {
      width: 400px;
      height: 400px; }
      #content .services .service_row .row .r img {
        object-fit: cover;
        width: 100%;
        height: 100%; }
#content .services .service_list {
  display: flex;
  margin-top: 90px; }
  #content .services .service_list .block_left {
    width: 50%;
    height: 100vh;
    position: relative; }
    #content .services .service_list .block_left .bnr {
      width: 50%;
      position: fixed;
      top: auto;
      left: 0;
      height: 100%;
      opacity: 0;
      z-index: 999;
      transition: 0.2s ease; }
      #content .services .service_list .block_left .bnr.active {
        z-index: 9999;
        opacity: 1; }
      #content .services .service_list .block_left .bnr.fixed {
        top: 0px !important; }
      #content .services .service_list .block_left .bnr img {
        object-fit: cover;
        width: 100%;
        height: 100%; }
  #content .services .service_list .block_right {
    width: 50%; }
    #content .services .service_list .block_right .detail {
      height: calc(100vh + 400px);
      position: relative; }
      #content .services .service_list .block_right .detail .txt {
        position: absolute;
        height: 400px;
        width: 500px;
        left: 100px;
        top: calc(50% - 200px); }
        #content .services .service_list .block_right .detail .txt h3 {
          font-size: 42px; }
          #content .services .service_list .block_right .detail .txt h3 span {
            display: block;
            font-size: 18px;
            color: #595757;
            position: relative;
            margin-bottom: 10px; }
            #content .services .service_list .block_right .detail .txt h3 span:before {
              content: "";
              position: relative;
              top: -2px;
              width: 20px;
              height: 8px;
              background: #B71906;
              display: inline-block;
              margin-right: 5px; }

a.udb {
  text-decoration: underline;
  color: #B71906; }

#content.company .ib {
  padding: 60px 0; }

#content .ib .link_bnr_box {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 40px 0; }
  #content .ib .link_bnr_box .box {
    width: 496px;
    margin-bottom: 45px;
    max-width: 100%;
    position: relative; }
    #content .ib .link_bnr_box .box:before {
      content: "";
      width: 0;
      height: 2px;
      display: block;
      background: #B71906;
      top: 0;
      left: 0;
      transition: 0.4s ease;
      position: absolute;
      z-index: 2; }
    #content .ib .link_bnr_box .box:after {
      z-index: 2;
      position: absolute;
      content: "";
      width: 0;
      height: 2px;
      display: block;
      background: #B71906;
      bottom: 0;
      right: 0;
      transition: 0.4s ease; }
    #content .ib .link_bnr_box .box:hover:before, #content .ib .link_bnr_box .box:hover:after {
      width: 100%; }
    #content .ib .link_bnr_box .box:hover .inner:before, #content .ib .link_bnr_box .box:hover .inner:after {
      height: 100%; }
    #content .ib .link_bnr_box .box:hover .img img {
      transform: scale(1.1); }
    #content .ib .link_bnr_box .box .inner {
      width: 100%;
      height: 100%;
      display: block;
      position: relative; }
      #content .ib .link_bnr_box .box .inner:before {
        z-index: 2;
        position: absolute;
        content: "";
        width: 2px;
        height: 0;
        display: block;
        background: #B71906;
        top: 0;
        left: 0;
        transition: 0.4s ease; }
      #content .ib .link_bnr_box .box .inner:after {
        z-index: 2;
        position: absolute;
        content: "";
        width: 2px;
        height: 0;
        display: block;
        background: #B71906;
        bottom: 0;
        right: 0;
        transition: 0.4s ease; }
    #content .ib .link_bnr_box .box .img {
      height: 253px;
      overflow: hidden;
      width: 100%; }
      #content .ib .link_bnr_box .box .img img {
        transition: 0.4s ease;
        object-fit: cover;
        width: 100%;
        height: 100%; }
    #content .ib .link_bnr_box .box .txt {
      padding: 20px 30px;
      position: relative; }
      #content .ib .link_bnr_box .box .txt .arr {
        position: absolute;
        right: 27px;
        top: 27px; }
      #content .ib .link_bnr_box .box .txt p {
        font-weight: 500;
        margin: 0;
        font-size: 20px; }
        #content .ib .link_bnr_box .box .txt p span {
          font-weight: 400;
          display: block;
          font-size: 16px;
          font-family: "Roboto"; }
          #content .ib .link_bnr_box .box .txt p span:before {
            content: "";
            width: 27px;
            height: 3px;
            background: #B71906;
            display: inline-block;
            margin-right: 6px;
            position: relative;
            top: -4px; }

#content .small_bnr_link {
  background: #f5f5f5;
  position: relative;
  z-index: 3; }
  #content .small_bnr_link.bgw {
    background: #fff; }
  #content .small_bnr_link .ib {
    background: none !important;
    padding: 0 !important;
    padding-top: 116px !important;
    padding-bottom: 119px !important; }
  #content .small_bnr_link h3 {
    font-size: 24px;
    color: #fff;
    background: #B71906;
    padding: 2px 10px;
    text-align: center;
    width: 177px;
    margin-top: 0;
    margin-bottom: 55px; }
  #content .small_bnr_link .lists {
    flex-wrap: wrap;
    display: flex; }
    #content .small_bnr_link .lists a {
      display: block;
      height: 167px;
      width: 328px;
      margin-right: 8px;
      margin-bottom: 8px;
      position: relative; }
      #content .small_bnr_link .lists a:nth-of-type(3n) {
        margin-right: 0; }
      #content .small_bnr_link .lists a:before {
        content: "";
        width: 0;
        height: 3px;
        display: block;
        background: #B71906;
        top: 0;
        left: 0;
        transition: 0.4s ease;
        position: absolute;
        z-index: 3; }
      #content .small_bnr_link .lists a:after {
        z-index: 3;
        position: absolute;
        content: "";
        width: 0;
        height: 3px;
        display: block;
        background: #B71906;
        bottom: 0;
        right: 0;
        transition: 0.4s ease; }
      #content .small_bnr_link .lists a:hover:before, #content .small_bnr_link .lists a:hover:after {
        width: 100%; }
      #content .small_bnr_link .lists a:hover .shadow {
        opacity: 0.6; }
      #content .small_bnr_link .lists a:hover span:before, #content .small_bnr_link .lists a:hover span:after {
        height: 100%; }
      #content .small_bnr_link .lists a:hover .bnr {
        transform: scale(1.1); }
      #content .small_bnr_link .lists a span {
        display: block;
        width: 100%;
        height: 100%;
        overflow: hidden;
        position: relative;
        padding-top: 72px; }
        #content .small_bnr_link .lists a span:before {
          z-index: 3;
          position: absolute;
          content: "";
          width: 3px;
          height: 0;
          display: block;
          background: #B71906;
          top: 0;
          left: 0;
          transition: 0.4s ease; }
        #content .small_bnr_link .lists a span:after {
          z-index: 3;
          position: absolute;
          content: "";
          width: 3px;
          height: 0;
          display: block;
          background: #B71906;
          bottom: 0;
          right: 0;
          transition: 0.4s ease; }
        #content .small_bnr_link .lists a span .shadow {
          position: absolute;
          content: "";
          top: 0;
          left: 0;
          background: rgba(80, 80, 80, 0.7);
          width: 100%;
          height: 100%;
          z-index: 2;
          transition: 0.4s ease;
          mix-blend-mode: multiply; }
        #content .small_bnr_link .lists a span h4 {
          font-size: 18px;
          text-align: center;
          color: #fff;
          margin: 0;
          position: relative;
          z-index: 3; }
        #content .small_bnr_link .lists a span .arr {
          position: absolute;
          bottom: 10px;
          right: 10px;
          z-index: 3; }
        #content .small_bnr_link .lists a span .bnr {
          object-fit: cover;
          width: 100%;
          height: 100%;
          position: absolute;
          top: 0;
          left: 0;
          transition: 0.4s ease; }

#content.message .ib {
  padding: 70px 100px 100px;
  background: #fff; }
  #content.message .ib .eyeimg {
    width: calc(100% + 200px);
    margin-left: -100px;
    height: 420px;
    margin-bottom: 50px; }
    #content.message .ib .eyeimg img {
      object-position: top;
      object-fit: cover;
      width: 100%;
      height: 100%; }
  #content.message .ib h2 {
    text-align: left;
    line-height: 1.5; }
    #content.message .ib h2:before {
      display: none; }
  #content.message .ib p {
    margin: 0;
    position: relative; }
    #content.message .ib p .sign {
      position: absolute;
      top: -500px;
      right: 60px;
      display: block;
      margin-top: 65px; }
      #content.message .ib p .sign i {
        font-size: 16px;
        display: table;
        margin-bottom: 20px;
        font-weight: bold;
        border-bottom: 1px solid #B71906; }
      #content.message .ib p .sign img {
        display: block;
        width: 171px; }

#content.aboutus dl {
  line-height: 1.7; }
  #content.aboutus dl dt {
    margin-top: 15px; }
  #content.aboutus dl dd {
    margin-left: 15px; }
#content.aboutus .access {
  background: #fff; }
#content.aboutus .ib {
  padding: 70px 0 0px; }
  #content.aboutus .ib h2.bd {
    font-size: 28px; }
  #content.aboutus .ib table {
    margin-top: 30px;
    margin-bottom: 40px; }
    #content.aboutus .ib table tr th {
      width: 13%;
      border-bottom: none;
      padding-right: 40px;
      border-right: none;
      border-bottom: 1px solid #D5D5D5; }
    #content.aboutus .ib table tr td {
      width: 87%;
      padding-left: 40px;
      border: none;
      line-height: 1.7;
      border-bottom: 1px solid #D5D5D5; }
  #content.aboutus .ib .box_2, #content.aboutus .ib .box_3 {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 70px 0; }
    #content.aboutus .ib .box_2 .box_map, #content.aboutus .ib .box_3 .box_map {
      width: 50%;
      height: 420px; }
      #content.aboutus .ib .box_2 .box_map iframe, #content.aboutus .ib .box_3 .box_map iframe {
        width: 100%;
        height: 100%;
        display: block; }
    #content.aboutus .ib .box_2 .box_tex, #content.aboutus .ib .box_3 .box_tex {
      width: 46%; }
      #content.aboutus .ib .box_2 .box_tex a, #content.aboutus .ib .box_3 .box_tex a {
        display: block;
        padding: 10px;
        text-align: center;
        color: #B71906;
        border: 3px solid #B71906;
        font-size: 16px;
        margin-top: 40px;
        font-weight: bold; }
        #content.aboutus .ib .box_2 .box_tex a:before, #content.aboutus .ib .box_3 .box_tex a:before {
          content: "";
          position: relative;
          top: 3px;
          font-size: 120%;
          margin-right: 5px;
          font-family: material icons;
          font-weight: normal; }
    #content.aboutus .ib .box_2 .box_content, #content.aboutus .ib .box_3 .box_content {
      width: 33.1%; }
      #content.aboutus .ib .box_2 .box_content img, #content.aboutus .ib .box_3 .box_content img {
        object-fit: cover;
        width: 100%;
        height: 100%; }
  #content.aboutus .ib .btn.move a:after {
    display: none; }
  #content.aboutus .ib .btn.move a:before {
    content: ""; }
  #content.aboutus .ib .btn a {
    background: #fff;
    font-size: 14px;
    font-weight: bold;
    background: #B71906;
    border: none;
    color: #fff;
    padding-top: 3px;
    padding-left: 15px; }
    #content.aboutus .ib .btn a:after {
      border-color: #fff;
      border-width: 2px;
      display: none; }
    #content.aboutus .ib .btn a:before {
      content: "";
      font-weight: normal;
      font-size: 110%;
      font-family: material icons;
      display: inline-block;
      position: relative;
      top: 2px;
      margin-right: 6px; }

.line {
  height: 1px;
  width: 100%;
  margin: 70px 0 60px;
  background: #D5D5D5; }

#content.corporate_name .ib {
  padding: 0;
  padding-bottom: 140px; }
  #content.corporate_name .ib h2 {
    margin: 50px 0 40px; }
    #content.corporate_name .ib h2:before {
      display: none; }
  #content.corporate_name .ib .d_f {
    justify-content: space-between;
    display: flex; }
    #content.corporate_name .ib .d_f .box {
      width: 470px; }
      #content.corporate_name .ib .d_f .box p {
        margin: 0; }
      #content.corporate_name .ib .d_f .box .logo {
        display: block;
        margin-top: 20px;
        width: 330px;
        margin: 20px auto;
        max-width: 100%; }

#content.directors {
  position: relative; }
  #content.directors.now .row.prof .main .profile {
    min-height: inherit !important; }
  #content.directors.nosidenav .ib .row.prof .main .profile {
    min-height: inherit; }
  #content.directors.dire2:before {
    content: "";
    background: url(../img/directors/red_bg.svg) 50% 50% no-repeat;
    z-index: 2;
    width: 479px;
    height: 152px;
    position: fixed;
    bottom: 35px;
    left: calc(50vw - 750px); }
  #content.directors.dire2 .row.prof:after {
    position: absolute;
    content: "";
    width: 100vw;
    background: #fff;
    z-index: 3;
    display: block;
    height: 100px;
    bottom: -100px;
    left: calc(0px - calc(50vw - 500px)); }
  #content.directors .ib {
    padding: 0; }
    #content.directors .ib .row.prof {
      justify-content: space-between;
      display: flex;
      margin-bottom: 100px;
      position: relative; }
      #content.directors .ib .row.prof.now .main .profile {
        min-height: inherit; }
      #content.directors .ib .row.prof:before {
        content: "";
        height: 100%;
        width: calc(50vw - 300px);
        background: #f7f7f7;
        display: block;
        position: absolute;
        top: 0;
        left: calc(0px - calc(50vw - 500px)); }
      #content.directors .ib .row.prof.new:before {
        width: calc(50vw - 240px);
        background: #B71906; }
      #content.directors .ib .row.prof.new.dire2 .main .detail {
        margin-top: 40px; }
      #content.directors .ib .row.prof.new.dire2 .line {
        margin: 60px 0 120px;
        border-bottom: 1px solid #eee; }
      #content.directors .ib .row.prof.new .side {
        width: 240px;
        position: relative;
        z-index: 3;
        padding-top: 70px; }
        #content.directors .ib .row.prof.new .side .inner {
          position: -webkit-sticky;
          position: sticky;
          top: 200px;
          display: block;
          align-items: center;
          flex-wrap: wrap;
          padding-bottom: 100px; }
        #content.directors .ib .row.prof.new .side h2 {
          position: relative;
          color: #fff;
          top: 0;
          font-size: 30px;
          width: 100%; }
          #content.directors .ib .row.prof.new .side h2 + h3 {
            margin-top: 20px; }
        #content.directors .ib .row.prof.new .side h3 {
          font-size: 20px;
          color: #fff;
          margin-bottom: 27px; }
        #content.directors .ib .row.prof.new .side .names {
          width: 100%;
          position: relative;
          z-index: 2;
          margin-bottom: 60px; }
          #content.directors .ib .row.prof.new .side .names a {
            display: block;
            color: #fff;
            font-size: 16px;
            padding-left: 43px;
            margin-bottom: 10px;
            position: relative; }
            #content.directors .ib .row.prof.new .side .names a.active {
              font-weight: bold;
              text-decoration: underline; }
              #content.directors .ib .row.prof.new .side .names a.active:before {
                content: "";
                position: absolute;
                top: calc(50% - 2px);
                height: 4px;
                width: 27px;
                display: block;
                background: #fff;
                left: 0; }
      #content.directors .ib .row.prof.new .main {
        width: 670px; }
        #content.directors .ib .row.prof.new .main .profile {
          border-bottom: 1px solid #E0E0E0;
          padding-bottom: 70px;
          margin-bottom: 70px;
          position: relative; }
          #content.directors .ib .row.prof.new .main .profile.tsujino .detail {
            margin-top: -240px; }
            #content.directors .ib .row.prof.new .main .profile.tsujino .detail.d2 {
              margin-top: -100px; }
          #content.directors .ib .row.prof.new .main .profile.no_bd {
            border: none; }
          #content.directors .ib .row.prof.new .main .profile.img {
            border: none;
            flex-wrap: wrap;
            display: flex;
            justify-content: space-between; }
            #content.directors .ib .row.prof.new .main .profile.img .photo {
              width: 408px; }
            #content.directors .ib .row.prof.new .main .profile.img .face {
              width: 240px;
              height: 240px;
              display: block; }
            #content.directors .ib .row.prof.new .main .profile.img .detail {
              width: 100%; }
          #content.directors .ib .row.prof.new .main .profile .photo .officer-post {
            font-size: 18px;
            font-weight: normal; }
          #content.directors .ib .row.prof.new .main .profile .photo .name {
            font-size: 33px;
            border: none;
            position: relative;
            padding-bottom: 20px; }
            #content.directors .ib .row.prof.new .main .profile .photo .name.no_bd:before {
              display: none; }
            #content.directors .ib .row.prof.new .main .profile .photo .name.active:before {
              width: 100%; }
            #content.directors .ib .row.prof.new .main .profile .photo .name:before {
              content: "";
              display: block;
              position: absolute;
              left: 0;
              bottom: 0;
              height: 3px;
              background: #B71906;
              width: 0%;
              transition: 0.4s ease; }
            #content.directors .ib .row.prof.new .main .profile .photo .name span {
              margin-left: 30px;
              font-weight: bold;
              color: #B71906;
              font-size: 20px;
              position: relative;
              top: -5px; }
          #content.directors .ib .row.prof.new .main .profile .photo ul li {
            font-weight: normal;
            font-size: 16px; }
          #content.directors .ib .row.prof.new .main .profile table {
            margin: 20px 0 0; }
            #content.directors .ib .row.prof.new .main .profile table tr:nth-last-of-type(1) th, #content.directors .ib .row.prof.new .main .profile table tr:nth-last-of-type(1) td {
              padding-bottom: 0; }
            #content.directors .ib .row.prof.new .main .profile table tr th {
              width: 130px;
              border: none;
              padding-top: 0;
              padding-bottom: 12px;
              vertical-align: top;
              line-height: 24px; }
            #content.directors .ib .row.prof.new .main .profile table tr td {
              width: calc(100% - 130px);
              padding-left: 0;
              padding-top: 0;
              padding-bottom: 12px;
              line-height: 24px;
              vertical-align: top; }
      #content.directors .ib .row.prof .side {
        width: 240px; }
        #content.directors .ib .row.prof .side h2 {
          position: sticky;
          top: 130px; }
      #content.directors .ib .row.prof .main {
        width: calc(100% - 260px); }
        #content.directors .ib .row.prof .main h3 {
          background: #B71906;
          color: #fff;
          font-size: 24px;
          padding: 15px;
          margin-bottom: 40px; }
        #content.directors .ib .row.prof .main .profile {
          margin-bottom: 60px;
          min-height: 600px; }
          #content.directors .ib .row.prof .main .profile .photo {
            font-weight: bold; }
            #content.directors .ib .row.prof .main .profile .photo ul li {
              padding-bottom: 10px; }
            #content.directors .ib .row.prof .main .profile .photo .officer-post {
              font-size: 18px;
              line-height: 1.7; }
            #content.directors .ib .row.prof .main .profile .photo .name {
              font-size: 28px;
              padding-bottom: 6px;
              border-bottom: 2px solid #B71906;
              margin-bottom: 30px; }
              #content.directors .ib .row.prof .main .profile .photo .name span {
                display: inline-block;
                margin-left: 15px;
                font-size: 22px;
                font-weight: normal; }
          #content.directors .ib .row.prof .main .profile table {
            margin-top: 30px; }
            #content.directors .ib .row.prof .main .profile table tr th {
              width: 20%;
              border-right: 1px solid #000;
              padding-top: 15px;
              padding-bottom: 15px;
              border-bottom: none; }
            #content.directors .ib .row.prof .main .profile table tr td {
              width: 80%;
              padding-top: 15px;
              padding-bottom: 15px;
              border: none; }
    #content.directors .ib h2 {
      text-align: left; }
      #content.directors .ib h2:before {
        display: none; }

#content.history .ib {
  padding: 70px 0 100px; }
  #content.history .ib table tr th {
    width: 19%;
    font-size: 20px;
    border-right: 16px solid #B71906;
    border-bottom: none;
    padding-right: 50px; }
  #content.history .ib table tr td {
    width: 81%;
    border: none;
    line-height: 1.7;
    padding-left: 50px;
    position: relative; }
    #content.history .ib table tr td a {
      text-decoration: underline;
      color: #B71906; }
    #content.history .ib table tr td:before {
      content: "";
      width: 12px;
      height: 12px;
      display: block;
      background: #fff;
      border-radius: 50%;
      position: absolute;
      left: -14px;
      top: calc(50% - 6px); }

#content.location .ib {
  padding: 0 0 100px; }
  #content.location .ib h3 {
    padding: 10px;
    text-align: center;
    color: #fff;
    background: #B71906;
    margin: 40px 0; }
  #content.location .ib table {
    margin-top: 30px; }
    #content.location .ib table tr:nth-of-type(odd) {
      background: #f5f5f5; }
    #content.location .ib table tr th {
      width: 28%;
      border-right: 1px solid #000;
      border-bottom: none;
      padding-top: 25px;
      padding-bottom: 25px;
      padding-left: 25px; }
    #content.location .ib table tr td {
      width: 60%;
      border: none;
      padding-top: 25px;
      padding-bottom: 25px;
      line-height: 1.6; }
      #content.location .ib table tr td.map {
        width: 12%; }
        #content.location .ib table tr td.map a {
          border: 2px solid #B71906;
          background: #fff;
          color: #B71906;
          font-size: 12px;
          padding: 5px 10px;
          font-weight: bold; }
          #content.location .ib table tr td.map a:after {
            font-family: material icons;
            content: "";
            display: inline-block;
            margin-left: 5px;
            font-size: 120%;
            position: relative;
            top: 3px; }
      #content.location .ib table tr td .tcBox {
        margin-top: 30px; }
        #content.location .ib table tr td .tcBox a {
          padding: 10px 20px;
          background: #fff;
          display: block;
          width: 320px;
          border: 4px solid #B71906;
          font-weight: bold; }
          #content.location .ib table tr td .tcBox a:nth-of-type(1) {
            margin-bottom: 10px; }
          #content.location .ib table tr td .tcBox a i {
            display: inline-block;
            margin-left: 10px;
            position: relative;
            top: -2px; }

#content.financial {
  border-top: 1px solid #d5d5d5; }
  #content.financial .ib {
    padding-top: 70px; }
  #content.financial .graph {
    padding: 30px 0;
    display: flex;
    justify-content: space-between; }
    #content.financial .graph .tit {
      width: 27%; }
      #content.financial .graph .tit h3 {
        margin-top: 30px;
        font-size: 40px;
        padding-bottom: 20px;
        border-bottom: 4px solid #B71906; }
      #content.financial .graph .tit span {
        display: block;
        color: #B71906;
        font-size: 70px;
        font-weight: bold;
        margin: 20px 0; }
      #content.financial .graph .tit i {
        display: block; }
    #content.financial .graph .chart {
      width: 70%; }

#content.progress .ib .tab_outer {
  position: relative; }
  #content.progress .ib .tab_outer:before {
    content: "";
    height: 1px;
    width: 100%;
    background: #B71906;
    display: block;
    position: absolute;
    bottom: -1px;
    left: 0; }
#content.progress .ib .tabs {
  width: 800px;
  display: flex;
  justify-content: space-between;
  margin: 0px auto;
  position: relative;
  z-index: 2; }
  #content.progress .ib .tabs span {
    width: 263px;
    padding: 15px;
    text-align: center;
    background: #f5f5f5;
    font-size: 20px;
    font-weight: bold;
    font-family: "Roboto";
    position: relative;
    color: #595757;
    cursor: pointer; }
    #content.progress .ib .tabs span:after {
      content: "";
      font-family: material icons;
      display: inline-block;
      margin-left: 10px;
      position: relative;
      top: 4px; }
    #content.progress .ib .tabs span.active {
      border: 1px solid #B71906;
      border-bottom: none;
      background: #fff;
      color: #B71906; }
      #content.progress .ib .tabs span.active:after {
        content: "";
        color: #B71906; }
      #content.progress .ib .tabs span.active:before {
        content: "";
        height: 2px;
        width: 100%;
        display: block;
        background: #fff;
        position: absolute;
        bottom: -2px;
        left: 0; }
#content.progress .ib .cont {
  margin: 100px 0; }
  #content.progress .ib .cont .block {
    display: none; }
    #content.progress .ib .cont .block.active {
      display: block;
      display: flex;
      justify-content: space-between; }
    #content.progress .ib .cont .block .left {
      width: 700px;
      padding: 0 20px; }
      #content.progress .ib .cont .block .left .tits {
        display: flex;
        margin-bottom: 10px; }
        #content.progress .ib .cont .block .left .tits .tit {
          width: 100%;
          padding-bottom: 20px;
          font-weight: bold; }
          #content.progress .ib .cont .block .left .tits .tit:nth-of-type(2) {
            border-left: 1px solid #D5D5D5; }
            #content.progress .ib .cont .block .left .tits .tit:nth-of-type(2) h2:before {
              content: url(../img/ico_rh.svg); }
          #content.progress .ib .cont .block .left .tits .tit h2 {
            text-align: center;
            margin: 0;
            font-size: 26px;
            padding: 0;
            margin-bottom: 10px; }
            #content.progress .ib .cont .block .left .tits .tit h2:before {
              position: relative;
              top: 5px;
              left: 0;
              height: auto;
              background: none;
              display: inline-block;
              content: url(../img/ico_biz.svg); }
      #content.progress .ib .cont .block .left .row {
        margin: 0;
        padding: 0px 0 50px;
        min-height: 300px;
        background: url(../img/dot_line.svg) 50% 0% no-repeat; }
        #content.progress .ib .cont .block .left .row .box {
          display: none; }
        #content.progress .ib .cont .block .left .row .topic {
          width: 130px;
          padding: 4px 4px 3px;
          cursor: pointer;
          line-height: 1.3;
          font-size: 16px;
          font-weight: bold;
          color: #B71906;
          text-align: center;
          border: 1px solid #B71906;
          border-radius: 50px;
          margin-top: 10px;
          margin-bottom: 20px;
          display: block;
          position: relative;
          transition: 0.4s ease; }
          #content.progress .ib .cont .block .left .row .topic .detail {
            position: absolute;
            width: 305px;
            border: 3px solid #B71906;
            background: rgba(255, 255, 255, 0.95);
            padding: 30px;
            line-height: 1.6;
            left: -200px;
            top: -1px;
            text-align: left;
            z-index: 4;
            display: none; }
            #content.progress .ib .cont .block .left .row .topic .detail i {
              font-size: 18px;
              display: block;
              font-weight: bold;
              color: #B71906; }
            #content.progress .ib .cont .block .left .row .topic .detail em {
              font-size: 16px;
              margin-top: 20px;
              font-weight: normal;
              display: block;
              color: #595757; }
          #content.progress .ib .cont .block .left .row .topic:after {
            content: url(../img/topic_hand.svg);
            position: absolute;
            bottom: -20px;
            right: 8px; }
          #content.progress .ib .cont .block .left .row .topic:hover {
            background: #B71906;
            color: #fff; }
        #content.progress .ib .cont .block .left .row .slogan {
          font-weight: bold;
          font-size: 24px;
          text-align: center;
          position: relative;
          margin-bottom: 15px;
          background: #fff;
          padding: 5px 0; }
          #content.progress .ib .cont .block .left .row .slogan span {
            display: inline-block;
            position: relative; }
            #content.progress .ib .cont .block .left .row .slogan span:before {
              content: url(../img/kakko_l.svg);
              display: inline-block;
              margin-right: 10px;
              position: relative;
              top: -3px; }
            #content.progress .ib .cont .block .left .row .slogan span:after {
              content: url(../img/kakko_r.svg);
              display: inline-block;
              margin-left: 10px;
              position: relative;
              top: 3px; }
          #content.progress .ib .cont .block .left .row .slogan:before {
            content: "SLOGAN";
            display: table;
            margin: 3px auto 10px;
            background: #595757;
            color: #fff;
            font-weight: bold;
            font-family: "Roboto";
            padding: 2px 6px;
            font-size: 14px; }
        #content.progress .ib .cont .block .left .row h3 {
          font-size: 28px;
          padding: 0;
          line-height: 1.3;
          text-align: center;
          margin: 20px 0 30px;
          background: #B71906;
          color: #fff;
          border-radius: 50px;
          margin-top: 0; }
        #content.progress .ib .cont .block .left .row .month {
          justify-content: space-between;
          display: flex; }
          #content.progress .ib .cont .block .left .row .month p {
            width: 283px;
            margin-bottom: 0; }
            #content.progress .ib .cont .block .left .row .month p .small {
              font-size: 14px;
              text-decoration: none; }
            #content.progress .ib .cont .block .left .row .month p s {
              text-decoration: underline;
              color: #B71906; }
            #content.progress .ib .cont .block .left .row .month p .img {
              display: block;
              margin-top: 10px; }
              #content.progress .ib .cont .block .left .row .month p .img.s {
                width: 190px;
                height: 190px; }
            #content.progress .ib .cont .block .left .row .month p.s {
              font-size: 15px;
              letter-spacing: -0.05em; }
          #content.progress .ib .cont .block .left .row .month p.l {
            text-align: right; }
            #content.progress .ib .cont .block .left .row .month p.l .topic {
              float: right; }
              #content.progress .ib .cont .block .left .row .month p.l .topic .detail {
                left: auto;
                right: -200px; }
          #content.progress .ib .cont .block .left .row .month .m {
            margin-top: 20px;
            text-align: center;
            font-size: 16px;
            color: #B71906;
            font-weight: bold;
            line-height: 1.8;
            position: relative; }
            #content.progress .ib .cont .block .left .row .month .m span {
              display: block;
              background: #fff; }
    #content.progress .ib .cont .block .right {
      width: calc(100% - 700px);
      background: #f5f5f5;
      padding: 30px 33px;
      margin-top: -15px; }
      #content.progress .ib .cont .block .right.no_ai .box {
        display: block;
        align-items: inherit; }
        #content.progress .ib .cont .block .right.no_ai .box p {
          margin-bottom: 40px; }
      #content.progress .ib .cont .block .right h2 {
        font-size: 23px;
        text-align: center;
        margin: 20px 0;
        margin-top: 0; }
        #content.progress .ib .cont .block .right h2:before {
          display: none; }
      #content.progress .ib .cont .block .right .box {
        margin: 65px 0 0;
        padding: 50px 0;
        align-items: center;
        flex-wrap: wrap;
        display: flex;
        border-top: 1px solid #D5D5D5;
        border-bottom: 1px solid #D5D5D5; }
        #content.progress .ib .cont .block .right .box:last-child {
          border: none; }
        #content.progress .ib .cont .block .right .box:nth-of-type(n+2) {
          border-top: none;
          margin-top: 0;
          padding-top: 30px; }

.bg_layer {
  display: none;
  position: fixed;
  width: 100%;
  background: rgba(0, 0, 0, 0.8);
  height: 100%;
  top: 0;
  left: 0;
  z-index: 9999; }

#content.actions .ib {
  padding: 70px 0; }

#content.d_i {
  padding-top: 70px; }
  #content.d_i img {
    max-width: 100%; }
  #content.d_i .timeline .ib {
    width: 800px;
    padding-bottom: 140px; }
    #content.d_i .timeline .ib h2 {
      margin-top: 0; }
    #content.d_i .timeline .ib .timeline {
      display: block;
      margin-top: 50px; }
  #content.d_i .torikumi .ib {
    padding: 140px 0 90px; }
    #content.d_i .torikumi .ib h2 {
      margin-top: 0; }
    #content.d_i .torikumi .ib .t_lists {
      display: flex;
      flex-wrap: wrap; }
      #content.d_i .torikumi .ib .t_lists.col4 {
        margin-top: 50px; }
        #content.d_i .torikumi .ib .t_lists.col4 .box {
          width: 260px !important; }
          #content.d_i .torikumi .ib .t_lists.col4 .box:nth-of-type(1), #content.d_i .torikumi .ib .t_lists.col4 .box:nth-of-type(4) {
            width: 240px !important; }
          #content.d_i .torikumi .ib .t_lists.col4 .box:nth-of-type(4) .img {
            width: 220px; }
          #content.d_i .torikumi .ib .t_lists.col4 .box:nth-of-type(4) .txt {
            padding-right: 0 !important;
            padding-left: 20px !important;
            border-left: 1px solid #d5d5d5 !important; }
          #content.d_i .torikumi .ib .t_lists.col4 .box:nth-of-type(3) .txt {
            padding-right: 20px !important; }
          #content.d_i .torikumi .ib .t_lists.col4 .box .img {
            height: 132px; }
          #content.d_i .torikumi .ib .t_lists.col4 .box .txt {
            padding: 0 20px; }
            #content.d_i .torikumi .ib .t_lists.col4 .box .txt h4 {
              font-size: 18px; }
            #content.d_i .torikumi .ib .t_lists.col4 .box .txt p {
              font-size: 15px; }
      #content.d_i .torikumi .ib .t_lists .box {
        width: 326px;
        margin-bottom: 50px; }
        #content.d_i .torikumi .ib .t_lists .box:nth-of-type(1) .txt, #content.d_i .torikumi .ib .t_lists .box:nth-of-type(4) .txt {
          border: none;
          padding-left: 0; }
        #content.d_i .torikumi .ib .t_lists .box:nth-of-type(2), #content.d_i .torikumi .ib .t_lists .box:nth-of-type(5) {
          width: 348px; }
        #content.d_i .torikumi .ib .t_lists .box:nth-of-type(3) .txt {
          padding-right: 0; }
        #content.d_i .torikumi .ib .t_lists .box .img {
          width: 304px;
          height: 182px;
          margin: 0 auto;
          max-width: 100%; }
          #content.d_i .torikumi .ib .t_lists .box .img img {
            object-fit: cover;
            width: 100%;
            height: 100%; }
        #content.d_i .torikumi .ib .t_lists .box .txt {
          margin-top: 30px;
          padding: 0 22px;
          border-left: 1px solid #d5d5d5; }
          #content.d_i .torikumi .ib .t_lists .box .txt p {
            margin-bottom: 0; }
          #content.d_i .torikumi .ib .t_lists .box .txt h4 {
            line-height: 36px;
            font-size: 22px;
            font-weight: bold;
            margin-top: 0; }
            #content.d_i .torikumi .ib .t_lists .box .txt h4 .blank {
              display: inline-block !important;
              width: 22px;
              height: 10px; }
            #content.d_i .torikumi .ib .t_lists .box .txt h4:before {
              content: "";
              width: 20px;
              height: 8px;
              display: inline-block;
              margin-right: 6px;
              background: #B71906;
              position: relative;
              top: -4px; }
  #content.d_i .guideline {
    background: #f5f5f5; }
    #content.d_i .guideline .ib {
      padding: 100px 0 85px; }
      #content.d_i .guideline .ib h2 {
        margin-top: 0; }
      #content.d_i .guideline .ib .tit {
        background: #B71906;
        color: #fff;
        text-align: center;
        padding: 4px 10px 0;
        display: block;
        font-size: 20px;
        font-weight: bold;
        margin-top: 70px; }
      #content.d_i .guideline .ib .d_f {
        height: 286px;
        display: flex;
        position: relative;
        width: 100%; }
        #content.d_i .guideline .ib .d_f p {
          width: 470px;
          margin-top: 0; }
        #content.d_i .guideline .ib .d_f .img {
          position: absolute;
          top: 0;
          right: -40px; }
      #content.d_i .guideline .ib .source {
        width: 410px;
        margin: 40px auto;
        height: 63px;
        background: url(../img/d_i/kakko.svg) 50% 50% no-repeat;
        background-size: cover;
        padding: 5px 25px;
        margin-bottom: 130px; }
        #content.d_i .guideline .ib .source span {
          font-size: 16px;
          display: block; }
          #content.d_i .guideline .ib .source span i {
            font-size: 28px;
            font-weight: bold;
            font-family: "Roboto";
            display: inline-block;
            padding-left: 5px;
            position: relative;
            top: 3px; }
            #content.d_i .guideline .ib .source span i:after {
              content: url(../img/d_i/line1.svg);
              position: relative;
              display: inline-block;
              top: 3px;
              padding: 0 4px; }
            #content.d_i .guideline .ib .source span i em {
              position: relative;
              top: 2px;
              display: inline-block;
              font-size: 23px; }
      #content.d_i .guideline .ib .value {
        height: 480px;
        position: relative; }
        #content.d_i .guideline .ib .value .bg {
          position: absolute;
          width: 960px;
          height: auto;
          bottom: 0;
          left: calc(50% - 480px);
          z-index: 2; }
        #content.d_i .guideline .ib .value .cr {
          width: 540px;
          display: block;
          margin: 0 auto;
          display: flex;
          justify-content: space-between;
          position: relative; }
          #content.d_i .guideline .ib .value .cr .box {
            width: 260px;
            background: #fff;
            height: 260px;
            border: 2px solid #B71906;
            border-radius: 50%;
            text-align: center;
            padding: 76px 0; }
            #content.d_i .guideline .ib .value .cr .box span {
              display: block;
              font-size: 18px;
              color: #595757;
              font-weight: bold; }
            #content.d_i .guideline .ib .value .cr .box img {
              display: block;
              margin: 15px auto;
              position: relative;
              right: -15px; }
  #content.d_i .ib {
    padding-top: 0; }
    #content.d_i .ib h2 {
      margin: 60px 0 50px; }
    #content.d_i .ib p.s {
      font-weight: bold;
      font-size: 22px;
      text-align: center;
      letter-spacing: 0.05em; }
      #content.d_i .ib p.s span {
        font-size: 36px;
        color: #B71906; }
    #content.d_i .ib .graph_box {
      flex-wrap: wrap;
      display: flex;
      justify-content: space-between;
      margin: 60px 0 60px; }
      #content.d_i .ib .graph_box .box {
        width: 47%; }
        #content.d_i .ib .graph_box .box img {
          max-width: 100%; }
        #content.d_i .ib .graph_box .box em {
          display: block;
          font-size: 12px;
          margin-top: 20px;
          line-height: 1.5; }
    #content.d_i .ib .guide_box {
      display: flex;
      margin-bottom: 50px; }
      #content.d_i .ib .guide_box .box {
        width: 260px;
        padding: 0 20px; }
        #content.d_i .ib .guide_box .box:nth-of-type(1) {
          width: 240px;
          padding-left: 0; }
        #content.d_i .ib .guide_box .box:last-child {
          padding-right: 0;
          width: 240px; }
          #content.d_i .ib .guide_box .box:last-child .txt {
            width: 100%;
            padding-right: 0;
            border: none; }
        #content.d_i .ib .guide_box .box .img {
          width: 100%;
          height: 128px; }
          #content.d_i .ib .guide_box .box .img img {
            object-fit: cover;
            width: 100%;
            height: 100%; }
        #content.d_i .ib .guide_box .box .txt {
          border-right: 1px solid #D5D5D5;
          width: calc(100% + 20px);
          padding-right: 20px; }
          #content.d_i .ib .guide_box .box .txt h4 {
            font-size: 18px;
            margin: 24px 0 30px;
            color: #B71906; }

#content.e_work .ib {
  padding-top: 70px; }
  #content.e_work .ib img {
    max-width: 100%; }
#content.e_work .torikumi .ib {
  padding-top: 70px; }
  #content.e_work .torikumi .ib .t_lists {
    display: flex;
    flex-wrap: wrap; }
    #content.e_work .torikumi .ib .t_lists.col4 {
      margin-top: 50px; }
      #content.e_work .torikumi .ib .t_lists.col4 .box {
        width: 260px !important; }
        #content.e_work .torikumi .ib .t_lists.col4 .box:nth-of-type(1), #content.e_work .torikumi .ib .t_lists.col4 .box:nth-of-type(4) {
          width: 240px !important; }
        #content.e_work .torikumi .ib .t_lists.col4 .box:nth-of-type(4) .img {
          width: 220px; }
        #content.e_work .torikumi .ib .t_lists.col4 .box:nth-of-type(4) .txt {
          padding-right: 0 !important;
          padding-left: 20px !important;
          border-left: 1px solid #d5d5d5 !important; }
        #content.e_work .torikumi .ib .t_lists.col4 .box:nth-of-type(3) .txt {
          padding-right: 20px !important; }
        #content.e_work .torikumi .ib .t_lists.col4 .box .img {
          height: 132px; }
        #content.e_work .torikumi .ib .t_lists.col4 .box .txt {
          padding: 0 20px; }
          #content.e_work .torikumi .ib .t_lists.col4 .box .txt h4 {
            font-size: 18px; }
          #content.e_work .torikumi .ib .t_lists.col4 .box .txt p {
            font-size: 15px; }
    #content.e_work .torikumi .ib .t_lists .box {
      width: 326px;
      margin-bottom: 50px; }
      #content.e_work .torikumi .ib .t_lists .box:nth-of-type(1) .txt, #content.e_work .torikumi .ib .t_lists .box:nth-of-type(4) .txt {
        border: none;
        padding-left: 0; }
      #content.e_work .torikumi .ib .t_lists .box:nth-of-type(2), #content.e_work .torikumi .ib .t_lists .box:nth-of-type(5) {
        width: 348px; }
      #content.e_work .torikumi .ib .t_lists .box:nth-of-type(3) .txt {
        padding-right: 0; }
      #content.e_work .torikumi .ib .t_lists .box .img {
        width: 304px;
        height: 182px;
        margin: 0 auto;
        max-width: 100%; }
        #content.e_work .torikumi .ib .t_lists .box .img img {
          object-fit: cover;
          width: 100%;
          height: 100%; }
      #content.e_work .torikumi .ib .t_lists .box .txt {
        margin-top: 30px;
        padding: 0 22px;
        border-left: 1px solid #d5d5d5; }
        #content.e_work .torikumi .ib .t_lists .box .txt p {
          margin-bottom: 0; }
        #content.e_work .torikumi .ib .t_lists .box .txt h4 {
          line-height: 36px;
          font-size: 22px;
          font-weight: bold;
          margin-top: 0; }
          #content.e_work .torikumi .ib .t_lists .box .txt h4 .blank {
            display: inline-block !important;
            width: 22px;
            height: 10px; }
          #content.e_work .torikumi .ib .t_lists .box .txt h4:before {
            content: "";
            width: 20px;
            height: 8px;
            display: inline-block;
            margin-right: 6px;
            background: #B71906;
            position: relative;
            top: -4px; }

#content.innovation .ib {
  padding-top: 70px; }
  #content.innovation .ib img {
    max-width: 100%; }
  #content.innovation .ib .d_f {
    margin-top: 110px; }
    #content.innovation .ib .d_f .row {
      justify-content: space-between;
      flex-wrap: wrap;
      display: flex;
      margin-bottom: 70px; }
      #content.innovation .ib .d_f .row:nth-of-type(2n) {
        flex-direction: row-reverse; }
      #content.innovation .ib .d_f .row .l {
        width: 470px;
        height: 274px; }
      #content.innovation .ib .d_f .row .r {
        width: 470px; }
        #content.innovation .ib .d_f .row .r h3 {
          font-size: 28px;
          margin-top: 15px 0 40px;
          line-height: 54px; }
          #content.innovation .ib .d_f .row .r h3:before {
            content: "";
            width: 20px;
            display: inline-block;
            height: 8px;
            margin-right: 10px;
            position: relative;
            top: -7px;
            background: #B71906; }
  #content.innovation .ib .top {
    margin-bottom: 40px; }
  #content.innovation .ib .shape {
    width: 657px;
    height: 520px;
    display: block;
    margin: 40px auto;
    position: relative; }
    #content.innovation .ib .shape .shape1 {
      position: absolute;
      bottom: 0;
      left: 0; }
    #content.innovation .ib .shape .cr {
      width: 240px;
      height: 240px;
      border-radius: 50%;
      position: absolute;
      z-index: 2;
      padding: 50px 20px;
      text-align: center; }
      #content.innovation .ib .shape .cr:nth-of-type(1) {
        top: 0;
        left: calc(50% - 120px); }
      #content.innovation .ib .shape .cr:nth-of-type(2) {
        left: 0;
        bottom: 0; }
      #content.innovation .ib .shape .cr:nth-of-type(3) {
        right: 0;
        bottom: 0; }
      #content.innovation .ib .shape .cr span {
        display: block;
        font-size: 16px;
        font-weight: bold;
        color: #B71906;
        line-height: 24px; }
      #content.innovation .ib .shape .cr i {
        display: block;
        font-size: 50px;
        font-weight: bold;
        color: #B71906;
        font-family: "Roboto"; }
      #content.innovation .ib .shape .cr p {
        margin-top: 5px; }

#content.sdgs {
  padding-top: 0; }
  #content.sdgs img {
    max-width: 100%; }
  #content.sdgs .sdgs_detail .ib {
    padding: 20px 0; }
  #content.sdgs .ib .eyecatch {
    width: 100%;
    height: 420px;
    margin-bottom: 50px; }
    #content.sdgs .ib .eyecatch img {
      object-fit: cover;
      width: 100%;
      height: 100%; }
  #content.sdgs .ib h2.sdgs:before {
    display: none; }
  #content.sdgs .ib h2.sdgs img {
    width: 660px;
    margin-bottom: 20px; }
  #content.sdgs .ib .sdgs_box {
    flex-wrap: wrap;
    display: flex;
    margin-top: 50px; }
    #content.sdgs .ib .sdgs_box .box {
      width: 50%;
      padding: 0 25px 0px 0px;
      margin-bottom: 50px; }
      #content.sdgs .ib .sdgs_box .box a.link {
        display: inline-block;
        float: right;
        margin-top: 20px;
        font-size: 14px;
        text-decoration: underline;
        color: #B71906; }
      #content.sdgs .ib .sdgs_box .box h4 {
        border-bottom: 2px solid #B71906;
        padding-bottom: 7px;
        margin-bottom: 30px; }
      #content.sdgs .ib .sdgs_box .box .posts a {
        display: block;
        font-size: 14px;
        margin-bottom: 25px;
        display: flex;
        justify-content: space-between;
        transition: 0.4s ease; }
        #content.sdgs .ib .sdgs_box .box .posts a:hover {
          color: #B71906; }
          #content.sdgs .ib .sdgs_box .box .posts a:hover .date {
            background: #B71906;
            color: #fff; }
        #content.sdgs .ib .sdgs_box .box .posts a i {
          width: calc(100% - 95px); }
        #content.sdgs .ib .sdgs_box .box .posts a .date {
          transition: 0.4s ease;
          display: block;
          width: 80px;
          text-align: center;
          font-size: 12px;
          padding: 2px 5px;
          border: 2px solid #B71906;
          color: #B71906;
          font-weight: bold;
          padding-top: 7px; }
      #content.sdgs .ib .sdgs_box .box .row {
        justify-content: space-between;
        flex-wrap: wrap;
        display: flex; }
        #content.sdgs .ib .sdgs_box .box .row .icon {
          height: 120px;
          width: 120px;
          padding: 15px;
          position: relative;
          top: 20px; }
          #content.sdgs .ib .sdgs_box .box .row .icon img {
            width: 100%;
            height: auto; }
        #content.sdgs .ib .sdgs_box .box .row p {
          width: calc(100% - 130px);
          font-size: 14px; }
      #content.sdgs .ib .sdgs_box .box h3 {
        background: #B71906;
        padding: 10px;
        text-align: lest;
        font-size: 24px;
        color: #fff;
        position: relative;
        border-left: 6px solid #981000; }
      #content.sdgs .ib .sdgs_box .box p {
        font-size: 15px;
        height: 120px; }
      #content.sdgs .ib .sdgs_box .box .imgs {
        display: flex;
        flex-wrap: wrap;
        align-items: baseline;
        margin: 20px 0; }
        #content.sdgs .ib .sdgs_box .box .imgs.r2 {
          height: 238px; }
        #content.sdgs .ib .sdgs_box .box .imgs img {
          width: 24%;
          height: auto;
          margin-right: 5px;
          margin-bottom: 5px; }
          #content.sdgs .ib .sdgs_box .box .imgs img:nth-of-type(4n) {
            margin-right: 0; }

#content .zirei, article .zirei {
  background: #fff;
  position: relative; }
  #content .zirei .ib, article .zirei .ib {
    padding: 50px 0 160px; }
    #content .zirei .ib a.more_link, article .zirei .ib a.more_link {
      color: #B71906;
      display: table;
      margin: 60px auto;
      font-size: 18px;
      font-weight: bold;
      border-bottom: 1px solid #B71906; }
    #content .zirei .ib .zirei_con, article .zirei .ib .zirei_con {
      margin-top: 90px;
      display: flex;
      flex-wrap: wrap; }
      #content .zirei .ib .zirei_con .box, article .zirei .ib .zirei_con .box {
        width: 293px;
        position: relative;
        height: 423px;
        margin-bottom: 50px;
        margin-right: 60px; }
        #content .zirei .ib .zirei_con .box:nth-of-type(3n), article .zirei .ib .zirei_con .box:nth-of-type(3n) {
          margin-right: 0; }
        #content .zirei .ib .zirei_con .box:hover .txt, article .zirei .ib .zirei_con .box:hover .txt {
          bottom: 13px; }
        #content .zirei .ib .zirei_con .box:hover .img img, article .zirei .ib .zirei_con .box:hover .img img {
          transform: scale(1.1); }
        #content .zirei .ib .zirei_con .box .img, article .zirei .ib .zirei_con .box .img {
          width: 100%;
          height: 372px;
          overflow: hidden; }
          #content .zirei .ib .zirei_con .box .img img, article .zirei .ib .zirei_con .box .img img {
            transition: 0.4s ease;
            object-fit: cover;
            width: 100%;
            height: 100%; }
        #content .zirei .ib .zirei_con .box .txt, article .zirei .ib .zirei_con .box .txt {
          width: 100%;
          background: #B71906;
          color: #fff;
          height: 125px;
          position: absolute;
          left: 25px;
          bottom: 0;
          padding: 25px 25px;
          font-size: 15px;
          line-height: 24px;
          font-weight: bold;
          transition: 0.4s ease;
          cursor: pointer; }
          #content .zirei .ib .zirei_con .box .txt .date, article .zirei .ib .zirei_con .box .txt .date {
            display: block;
            color: #fff;
            margin-top: 10px;
            font-size: 14px; }
            #content .zirei .ib .zirei_con .box .txt .date a, article .zirei .ib .zirei_con .box .txt .date a {
              font-size: 11px;
              padding: 2px 5px 1px;
              line-height: 1.3;
              margin-left: 5px;
              position: relative;
              top: -1px;
              background: #fff;
              color: #B71906;
              display: inline-block; }
          #content .zirei .ib .zirei_con .box .txt img, article .zirei .ib .zirei_con .box .txt img {
            position: absolute;
            right: 20px;
            bottom: 20px; }

#content.philosophy .ib {
  padding: 50px 0; }
  #content.philosophy .ib img {
    max-width: 100%; }
  #content.philosophy .ib.s1 {
    height: 500px; }
  #content.philosophy .ib h2 {
    font-size: 32px;
    text-align: center; }
    #content.philosophy .ib h2:before {
      display: none; }
  #content.philosophy .ib .phil_intro {
    position: relative;
    height: 100%; }
    #content.philosophy .ib .phil_intro p {
      position: absolute;
      width: 420px;
      right: 0;
      top: 0px;
      line-height: 30px; }
    #content.philosophy .ib .phil_intro .f_1 {
      display: block;
      margin-top: 60px; }
#content.philosophy .phil_main {
  background: #F5F5F5; }
  #content.philosophy .phil_main .ib {
    padding: 100px 0;
    display: flex;
    justify-content: space-between; }
    #content.philosophy .phil_main .ib .side {
      width: 260px;
      max-width: 100%;
      position: relative;
      z-index: 2; }
      #content.philosophy .phil_main .ib .side .agenda {
        position: sticky;
        top: 150px; }
        #content.philosophy .phil_main .ib .side .agenda .inner {
          position: relative;
          padding-left: 100px;
          left: -60px; }
        #content.philosophy .phil_main .ib .side .agenda #figure {
          position: absolute;
          top: -10px;
          left: 0px;
          width: 60px;
          height: 50px;
          background: url(../img/philosophy/tri1.svg) 50% 50% no-repeat; }
          #content.philosophy .phil_main .ib .side .agenda #figure.tri2 {
            top: 60px;
            background: url(../img/philosophy/tri2.svg) 50% 50% no-repeat; }
          #content.philosophy .phil_main .ib .side .agenda #figure.tri3 {
            top: 130px;
            background: url(../img/philosophy/tri3.svg) 50% 50% no-repeat; }
        #content.philosophy .phil_main .ib .side .agenda .row {
          margin-bottom: 24px; }
          #content.philosophy .phil_main .ib .side .agenda .row.active a span {
            color: #B71906; }
            #content.philosophy .phil_main .ib .side .agenda .row.active a span:before {
              content: "";
              width: 12px;
              top: 13px;
              left: -20px;
              height: 1px;
              display: block;
              background: #B71906;
              position: absolute; }
          #content.philosophy .phil_main .ib .side .agenda .row.active a i {
            color: #000; }
          #content.philosophy .phil_main .ib .side .agenda .row.active a em {
            font-weight: bold;
            color: #B71906; }
        #content.philosophy .phil_main .ib .side .agenda a {
          display: block;
          margin: 0;
          color: #8b8989; }
          #content.philosophy .phil_main .ib .side .agenda a:hover span {
            color: #B71906; }
          #content.philosophy .phil_main .ib .side .agenda a:hover i {
            color: #000; }
          #content.philosophy .phil_main .ib .side .agenda a:hover em {
            color: #B71906;
            font-weight: bold; }
          #content.philosophy .phil_main .ib .side .agenda a span {
            font-size: 24px;
            position: relative;
            font-weight: bold;
            font-family: "Roboto";
            transition: 0.4s ease; }
          #content.philosophy .phil_main .ib .side .agenda a i {
            margin-top: 5px;
            display: block;
            font-weight: 400;
            font-size: 13px;
            transition: 0.4s ease; }
          #content.philosophy .phil_main .ib .side .agenda a em {
            display: block;
            font-size: 16px;
            font-weight: 400;
            transition: 0.4s ease; }
    #content.philosophy .phil_main .ib .main {
      width: 700px;
      max-width: 100%; }
      #content.philosophy .phil_main .ib .main .slogan {
        padding: 100px 0 200px; }
        #content.philosophy .phil_main .ib .main .slogan .tit {
          font-size: 20px;
          padding: 3px 10px;
          display: inline-block;
          color: #fff;
          background: #B71906;
          font-weight: bold; }
        #content.philosophy .phil_main .ib .main .slogan h3 {
          margin: 15px 0 50px;
          font-size: 29px; }
      #content.philosophy .phil_main .ib .main .motto {
        background: #fff;
        height: 712px;
        padding: 100px 0;
        position: relative; }
        #content.philosophy .phil_main .ib .main .motto:before {
          content: "";
          width: calc(100vw - 5px);
          height: 100%;
          background: #fff;
          position: absolute;
          top: 0;
          right: calc(0px - calc(50vw - 505px));
          z-index: 1; }
        #content.philosophy .phil_main .ib .main .motto * {
          position: relative;
          z-index: 2; }
        #content.philosophy .phil_main .ib .main .motto h3 {
          font-size: 28px;
          margin: 0 0 50px;
          padding: 12px 0;
          font-weight: bold;
          border-top: 1px solid #B71906;
          border-bottom: 1px solid #B71906; }
        #content.philosophy .phil_main .ib .main .motto .tit {
          font-size: 18px;
          font-weight: bold;
          color: #B71906;
          margin-bottom: 30px; }
        #content.philosophy .phil_main .ib .main .motto table {
          margin-top: 40px;
          margin-left: 30px; }
          #content.philosophy .phil_main .ib .main .motto table tr th {
            font-size: 20px;
            color: #B71906;
            font-weight: bold;
            width: 80px;
            border: none; }
          #content.philosophy .phil_main .ib .main .motto table tr td {
            width: calc(100% - 80px);
            border: none; }
            #content.philosophy .phil_main .ib .main .motto table tr td i {
              font-size: 18px;
              display: block;
              font-weight: bold; }
            #content.philosophy .phil_main .ib .main .motto table tr td p {
              margin: 0; }
      #content.philosophy .phil_main .ib .main .section {
        margin-bottom: 100px; }
        #content.philosophy .phil_main .ib .main .section.sec_vision h2 {
          padding-top: 100px;
          margin-top: -100px; }
        #content.philosophy .phil_main .ib .main .section h2 {
          font-size: 64px;
          color: #B71906;
          font-weight: bold;
          position: relative;
          padding-bottom: 16px;
          font-family: "Roboto";
          margin-bottom: 0;
          text-align: left; }
          #content.philosophy .phil_main .ib .main .section h2:before {
            content: "";
            height: 10px;
            display: block;
            background: #B71906;
            width: calc(50vw + 195px);
            position: absolute;
            bottom: 0;
            left: 0; }
          #content.philosophy .phil_main .ib .main .section h2 i {
            display: inline-block;
            font-size: 20px;
            font-weight: 500;
            font-family: "Zen Kaku Gothic New";
            margin-left: 10px;
            color: #000; }
        #content.philosophy .phil_main .ib .main .section .img {
          height: 535px;
          width: calc(50vw + 195px);
          margin-right: calc(0px - calc(50vw - 500px));
          position: relative; }
          #content.philosophy .phil_main .ib .main .section .img:before {
            content: "";
            mix-blend-mode: multiply;
            background: rgba(89, 87, 87, 0.2);
            display: block;
            z-index: 2;
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%; }
          #content.philosophy .phil_main .ib .main .section .img img {
            object-fit: cover;
            width: 100%;
            height: 100%; }
        #content.philosophy .phil_main .ib .main .section .txt {
          margin-top: -200px;
          position: relative;
          z-index: 2;
          background: #fff;
          width: 590px;
          padding: 62px 76px;
          padding-right: 0;
          margin-left: 110px; }
          #content.philosophy .phil_main .ib .main .section .txt:before {
            content: "";
            height: 100%;
            display: block;
            background: #fff;
            position: absolute;
            top: 0;
            left: 0;
            width: calc(50vw + 85px); }
          #content.philosophy .phil_main .ib .main .section .txt h3 {
            position: relative;
            z-index: 2;
            font-size: 32px;
            margin: 0 0 30px;
            line-height: 54px;
            letter-spacing: 0; }
          #content.philosophy .phil_main .ib .main .section .txt p {
            position: relative;
            z-index: 2;
            line-height: 30px; }
        #content.philosophy .phil_main .ib .main .section .s_txt {
          width: 590px;
          margin-left: 110px;
          margin-top: 65px;
          padding-left: 70px; }
          #content.philosophy .phil_main .ib .main .section .s_txt h4 {
            margin-bottom: 45px;
            margin-top: 0;
            font-size: 26px;
            font-weight: bold;
            padding-bottom: 10px;
            border-bottom: 1px solid #B71906; }
          #content.philosophy .phil_main .ib .main .section .s_txt h5 {
            position: relative;
            color: #595757;
            font-size: 20px;
            margin-top: 30px; }
            #content.philosophy .phil_main .ib .main .section .s_txt h5:before {
              content: "";
              width: 20px;
              margin-right: 7px;
              height: 8px;
              display: inline-block;
              position: relative;
              top: -3px;
              background: #B71906; }

.rec_contact {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background: rgba(255, 255, 255, 0.85);
  height: 100px;
  padding: 20px;
  z-index: 999999999; }
  .rec_contact a {
    margin: 0 auto;
    display: block;
    width: 400px;
    padding: 17px 17px 17px 55px;
    text-align: center;
    background: #fff;
    border: 4px solid #B71906;
    color: #B71906;
    font-size: 20px;
    font-weight: bold;
    position: relative; }
    .rec_contact a:before {
      position: absolute;
      top: 0;
      left: 0;
      width: 60px;
      height: 100%;
      background: #B71906;
      display: block;
      content: ""; }
    .rec_contact a:after {
      position: absolute;
      content: "";
      font-family: material icons;
      font-size: 28px;
      top: 12px;
      left: 15px;
      color: #fff;
      font-weight: normal; }

#content.recruit {
  position: relative; }
  #content.recruit.detail:after {
    display: none; }
  #content.recruit:after {
    content: "";
    height: 580px;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    display: block;
    background: #f5f5f5;
    z-index: -1; }
  #content.recruit .ib h4.tac {
    text-align: center;
    margin-top: 60px; }
  #content.recruit .ib p.tar {
    font-size: 14px;
    text-align: right; }
  #content.recruit .ib table#career {
    table-layout: fixed;
    width: 630px;
    margin: 30px auto; }
    #content.recruit .ib table#career tr:nth-of-type(1) td {
      background: #B71906;
      color: #fff;
      font-weight: bold; }
    #content.recruit .ib table#career tr th {
      padding: 15px;
      font-size: 15px;
      border-right: none;
      border: 1px solid #B71906;
      background: #f5f5f5; }
    #content.recruit .ib table#career tr td {
      padding: 15px;
      border: 1px solid #B71906; }
  #content.recruit .ib .content_con .box {
    margin-bottom: 100px; }
    #content.recruit .ib .content_con .box h3.st {
      padding-bottom: 10px;
      margin: 50px 0;
      border-bottom: 1px solid #B71906;
      color: #B71906;
      font-size: 24px; }
    #content.recruit .ib .content_con .box ul.photo {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      justify-content: space-between;
      margin: 40px 0; }
      #content.recruit .ib .content_con .box ul.photo li {
        width: 49%;
        color: #666; }
        #content.recruit .ib .content_con .box ul.photo li img {
          margin-bottom: 20px;
          display: block;
          max-width: 100%;
          height: auto; }
  #content.recruit .ib .pos_list {
    justify-content: space-between;
    display: flex;
    margin-bottom: 60px; }
    #content.recruit .ib .pos_list .box {
      width: 49%;
      border: 4px solid #d5d5d5;
      border-radius: 6px;
      padding: 30px;
      margin-bottom: 30px; }
      #content.recruit .ib .pos_list .box h4 {
        color: #B71906;
        font-size: 20px;
        border-bottom: 1px solid #B71906;
        padding-bottom: 10px; }
  #content.recruit .ib .business_list .box {
    display: flex;
    justify-content: space-between;
    margin-bottom: 30px;
    background: #f5f5f5; }
    #content.recruit .ib .business_list .box .img {
      width: 330px;
      height: 330px; }
      #content.recruit .ib .business_list .box .img img {
        object-fit: cover;
        width: 100%;
        height: 100%; }
    #content.recruit .ib .business_list .box .txt {
      width: calc(100% - 330px); }
      #content.recruit .ib .business_list .box .txt h4 {
        margin-top: 0;
        padding: 20px;
        background: #B71906;
        color: #fff;
        font-size: 21px; }
      #content.recruit .ib .business_list .box .txt p {
        margin: 0;
        font-size: 15px;
        padding: 30px;
        padding-top: 20px; }
  #content.recruit .ib .tit {
    padding: 20px;
    text-align: center;
    font-size: 32px;
    margin: 50px 0;
    background: #f5f5f5;
    font-weight: bold; }
  #content.recruit .ib .nav {
    display: flex;
    justify-content: center;
    margin-bottom: 60px; }
    #content.recruit .ib .nav a {
      border: 3px solid #B71906;
      color: #B71906;
      padding: 10px 30px 10px 20px;
      margin-right: 10px;
      font-weight: bold;
      font-size: 18px;
      transition: 0.4s ease; }
      #content.recruit .ib .nav a:hover {
        background: #B71906;
        color: #fff; }
      #content.recruit .ib .nav a:before {
        content: "";
        font-family: material icons;
        display: inline-block;
        margin-right: 4px;
        position: relative;
        top: 3px; }
      #content.recruit .ib .nav a:last-child {
        margin-right: 0; }
  #content.recruit .ib h3.b {
    font-size: 26px;
    line-height: 1;
    border-left: 7px solid #B71906;
    margin: 45px 0;
    padding-left: 15px; }
  #content.recruit .ib h2 {
    text-align: center;
    font-size: 40px;
    padding-bottom: 20px;
    margin-bottom: 80px;
    line-height: 1.5;
    border-bottom: 2px solid #B71906; }
    #content.recruit .ib h2:before {
      display: none; }
    #content.recruit .ib h2.bd {
      padding-bottom: 10px;
      font-size: 32px;
      text-align: left;
      position: relative;
      margin-bottom: 40px;
      padding-left: 90px; }
      #content.recruit .ib h2.bd i {
        position: absolute;
        width: 72px;
        height: 100%;
        background: #B71906;
        bottom: 0;
        left: 0;
        padding: 5px;
        color: #fff;
        text-align: center;
        font-size: 40px; }
  #content.recruit .ib .link_bnr_box {
    margin-top: 80px; }
    #content.recruit .ib .link_bnr_box .box {
      height: 400px; }
      #content.recruit .ib .link_bnr_box .box:hover .inner i:after {
        right: 20px; }
    #content.recruit .ib .link_bnr_box .inner {
      height: 100%;
      padding: 50px;
      padding-top: 110px; }
      #content.recruit .ib .link_bnr_box .inner i {
        position: absolute;
        width: calc(100% - 4px);
        padding: 23px;
        text-align: center;
        background: #B71906;
        color: #fff;
        font-weight: bold;
        font-size: 20px;
        bottom: 0;
        left: 2px;
        z-index: 3; }
        #content.recruit .ib .link_bnr_box .inner i:after {
          content: url(../img/arr4.svg);
          transform: scale(0.8);
          position: absolute;
          right: 30px;
          top: 17px;
          transition: 0.4s ease; }
      #content.recruit .ib .link_bnr_box .inner .img {
        position: absolute;
        top: 2px;
        left: 2px;
        height: calc(100% - 4px);
        width: calc(100% - 4px); }
        #content.recruit .ib .link_bnr_box .inner .img:before {
          content: "";
          position: absolute;
          width: 100%;
          height: 100%;
          background: rgba(85, 85, 85, 0.63);
          mix-blend-mode: multiply;
          z-index: 2; }
        #content.recruit .ib .link_bnr_box .inner .img img {
          object-fit: cover;
          width: 100%;
          height: 100%; }
      #content.recruit .ib .link_bnr_box .inner h3 {
        position: relative;
        z-index: 2;
        font-size: 30px;
        color: #fff;
        text-align: center;
        margin-top: 0; }
      #content.recruit .ib .link_bnr_box .inner p {
        text-align: center;
        z-index: 2;
        color: #fff;
        position: relative; }

#content.others.contact h2.bd {
  border-top: none;
  border-right: none; }

.contact_hide.dnone {
  display: none; }

#content.others.privacy .ib ol.type_a li {
  list-style: lower-alpha; }
#content.others.privacy .ib ul li {
  list-style: disc;
  display: list-item; }
  #content.others.privacy .ib ul li ol li {
    list-style: decimal; }
#content.others a.link1 {
  color: #B71906;
  text-decoration: underline; }
#content.others.pp {
  line-height: 2; }
  #content.others.pp b {
    display: block;
    margin-bottom: 20px; }
#content.others span.error {
  color: #B71906;
  font-weight: bold; }
#content.others p.s {
  font-size: 14px;
  margin: 30px 0; }
#content.others p.tr {
  text-align: right; }
#content.others .remark {
  display: block;
  padding: 20px;
  font-size: 15px;
  font-weight: normal;
  background: #f5f5f5;
  margin: 40px 0; }
  #content.others .remark span {
    display: inline-block;
    width: 5px;
    position: relative;
    top: 2px;
    height: 16px;
    background: #B71906;
    margin-right: 10px; }
#content.others.contact {
  background: #fff; }
#content.others .ib {
  padding: 80px 0 130px; }
  #content.others .ib .agree {
    margin: 30px 0;
    text-align: center; }
  #content.others .ib .term_box {
    width: 100%;
    border: 1px solid #ccc;
    height: 450px;
    overflow-y: scroll;
    padding: 30px; }
    #content.others .ib .term_box ol {
      font-weight: normal; }
    #content.others .ib .term_box h1 {
      display: block;
      font-size: 26px;
      padding-bottom: 10px;
      border-bottom: 1px solid #ddd; }
    #content.others .ib .term_box h2 {
      padding-left: 0;
      font-size: 20px;
      border: none;
      margin: 30px 0;
      background: #f5f5f5;
      padding: 10px; }
      #content.others .ib .term_box h2:nth-of-type(1) {
        margin-top: 0; }
    #content.others .ib .term_box h3 {
      font-size: 18px; }
  #content.others .ib .buttons {
    justify-content: space-between;
    margin: 60px 0;
    display: flex;
    flex-wrap: wrap; }
    #content.others .ib .buttons.service a {
      border-color: #212121;
      color: #212121; }
      #content.others .ib .buttons.service a:hover {
        background: #212121;
        color: #fff; }
      #content.others .ib .buttons.service a:after {
        content: url(../img/arr3.svg); }
    #content.others .ib .buttons a {
      width: 32%;
      padding: 23px;
      text-align: center;
      border: 3px solid #B71906;
      color: #B71906;
      font-weight: bold;
      font-size: 19px;
      position: relative;
      transition: 0.4s ease;
      margin-bottom: 20px;
      background: #fff; }
      #content.others .ib .buttons a.op0 {
        opacity: 0;
        pointer-events: none; }
      #content.others .ib .buttons a.other {
        font-size: 16px;
        padding: 0;
        border: none;
        text-decoration: underline;
        margin-top: 30px; }
        #content.others .ib .buttons a.other:hover {
          background: #fff;
          color: #B71906; }
        #content.others .ib .buttons a.other:after {
          display: none; }
      #content.others .ib .buttons a:hover {
        background: #B71906;
        color: #fff; }
      #content.others .ib .buttons a:after {
        transition: 0.4s ease;
        position: absolute;
        top: 15px;
        right: 30px;
        transform: scale(0.8);
        content: url(../img/arr2.svg);
        display: inline-block;
        margin-left: 10px; }
  #content.others .ib h1 {
    display: none; }
  #content.others .ib h2 {
    text-align: left;
    font-size: 24px;
    line-height: 1;
    margin: 50px 0;
    border-left: 6px solid #B71906;
    padding-left: 15px;
    padding: 13px 16px 11px;
    border: 2px solid #B71906;
    border-left-width: 7px; }
    #content.others .ib h2:before {
      display: none; }
    #content.others .ib h2.bd {
      border-left: none;
      text-align: center; }
  #content.others .ib h3 {
    margin: 45px 0 50px;
    font-size: 21px;
    line-height: 1.5;
    border-bottom: 2px solid #B71906;
    padding-bottom: 6px; }
    #content.others .ib h3.bg {
      padding: 10px 0;
      background: #B71906;
      text-align: center;
      color: #fff; }
      #content.others .ib h3.bg.b {
        background: #212121; }
  #content.others .ib h4 {
    font-size: 18px;
    margin: 40px 0;
    color: #B71906;
    padding: 0 13px;
    border-left: 5px solid #B71906;
    line-height: 1; }
  #content.others .ib .pmark {
    float: right;
    position: relative;
    top: -20px; }
    #content.others .ib .pmark img {
      margin: 0;
      mix-blend-mode: multiply; }
  #content.others .ib .link1 {
    padding: 10px 0;
    text-decoration: underline;
    display: block; }
  #content.others .ib ul li {
    display: block;
    padding: 5px 0;
    line-height: 1.8; }
  #content.others .ib h3 + ol {
    margin-top: 0;
    margin-top: -20px; }
  #content.others .ib p a {
    color: #B71906;
    text-decoration: underline; }
  #content.others .ib ol {
    padding-left: 0px;
    font-weight: bold;
    margin-top: 30px;
    padding-left: 30px; }
    #content.others .ib ol a {
      text-decoration: underline;
      color: #B71906; }
      #content.others .ib ol a:after {
        content: "";
        font-family: material icons;
        display: inline-block;
        margin-left: 5px;
        position: relative;
        top: 2px; }
    #content.others .ib ol li {
      padding: 5px 0;
      line-height: 1.8;
      list-style-type: decimal; }

/* #content.news .ib, #content.single .ib {
  justify-content: space-between;
  display: flex;
  padding: 70px 0; }
  #content.news .ib .single_pdf iframe, #content.single .ib .single_pdf iframe {
    display: block;
    width: 100%;
    height: 1100px; }
  #content.news .ib .pagenavi, #content.single .ib .pagenavi {
    margin: 100px 0 50px; }
    #content.news .ib .pagenavi .wp-pagenavi a, #content.news .ib .pagenavi .wp-pagenavi span, #content.single .ib .pagenavi .wp-pagenavi a, #content.single .ib .pagenavi .wp-pagenavi span {
      padding: 7px 11px;
      transition: 0.4s ease; }
      #content.news .ib .pagenavi .wp-pagenavi a.current, #content.news .ib .pagenavi .wp-pagenavi a:hover, #content.news .ib .pagenavi .wp-pagenavi span.current, #content.news .ib .pagenavi .wp-pagenavi span:hover, #content.single .ib .pagenavi .wp-pagenavi a.current, #content.single .ib .pagenavi .wp-pagenavi a:hover, #content.single .ib .pagenavi .wp-pagenavi span.current, #content.single .ib .pagenavi .wp-pagenavi span:hover {
        background: #B71906;
        border-color: #B71906;
        color: #fff; }
  #content.news .ib .side, #content.single .ib .side {
    width: 200px;
    position: relative; }
    #content.news .ib .side .inner, #content.single .ib .side .inner {
      position: relative;
      z-index: 2; }
      #content.news .ib .side .inner .cat_box, #content.single .ib .side .inner .cat_box {
        margin-bottom: 50px; }
        #content.news .ib .side .inner .cat_box select, #content.single .ib .side .inner .cat_box select {
          display: block;
          width: 100%; }
        #content.news .ib .side .inner .cat_box h3, #content.single .ib .side .inner .cat_box h3 {
          font-size: 22px;
          border-bottom: 2px solid #B71906;
          margin-bottom: 20px;
          padding-bottom: 5px; }
        #content.news .ib .side .inner .cat_box .taglist, #content.single .ib .side .inner .cat_box .taglist {
          display: flex;
          flex-wrap: wrap; }
          #content.news .ib .side .inner .cat_box .taglist a, #content.single .ib .side .inner .cat_box .taglist a {
            padding: 7px;
            font-size: 14px;
            background: #f5f5f5;
            border: 1px solid #eee;
            border-radius: 3px;
            margin-right: 3px;
            margin-bottom: 3px; }
        #content.news .ib .side .inner .cat_box a, #content.single .ib .side .inner .cat_box a {
          display: block;
          padding: 10px;
          border-bottom: 1px solid #333; }
  #content.news .ib .main, #content.single .ib .main {
    width: 750px; }
    #content.news .ib .main .single_content h2, #content.single .ib .main .single_content h2 {
      font-size: 26px;
      text-align: left; }
      #content.news .ib .main .single_content h2:before, #content.single .ib .main .single_content h2:before {
        display: none; }
    #content.news .ib .main .single_meta, #content.single .ib .main .single_meta {
      margin-top: 10px;
      padding-bottom: 20px;
      border-bottom: 1px solid #ccc;
      margin-bottom: 50px;
      overflow: hidden; }
      #content.news .ib .main .single_meta .date, #content.single .ib .main .single_meta .date {
        font-size: 17px;
        font-weight: bold;
        float: left;
        padding-top: 6px;
        margin-right: 20px; }
        #content.news .ib .main .single_meta .date em, #content.single .ib .main .single_meta .date em {
          display: inline-block;
          color: #B71906; }
      #content.news .ib .main .single_meta a, #content.single .ib .main .single_meta a {
        display: inline-block;
        padding: 5px 10px;
        background: #f5f5f5;
        color: #B71906;
        font-size: 14px;
        border: 2px solid #B71906;
        border-radius: 4px;
        font-weight: bold;
        margin-right: 10px; }
    #content.news .ib .main .news_list ul li, #content.single .ib .main .news_list ul li {
      position: relative;
      padding: 20px 0;
      border-bottom: 0.5px solid #707070;
      margin-bottom: 2px;
      display: block;
      display: flex;
      flex-wrap: wrap;
      padding-left: 120px; }
      #content.news .ib .main .news_list ul li:hover i, #content.single .ib .main .news_list ul li:hover i {
        color: #B71906; }
      #content.news .ib .main .news_list ul li .date, #content.single .ib .main .news_list ul li .date {
        display: inline-block;
        font-size: 16px;
        font-family: "Roboto";
        color: #595757;
        font-weight: bold;
        margin-right: 40px; }
      #content.news .ib .main .news_list ul li .tag, #content.news .ib .main .news_list ul li .service, #content.single .ib .main .news_list ul li .tag, #content.single .ib .main .news_list ul li .service {
        display: inline-block;
        position: relative;
        top: -2px;
        margin-right: 7px; }
        #content.news .ib .main .news_list ul li .tag a, #content.news .ib .main .news_list ul li .service a, #content.single .ib .main .news_list ul li .tag a, #content.single .ib .main .news_list ul li .service a {
          font-size: 13px;
          padding: 3px 9px 2px;
          background: #fff;
          color: #B71906;
          font-weight: bold;
          display: inline-block;
          border: 1px solid #B71906;
          margin-right: 3px;
          text-align: center; }
      #content.news .ib .main .news_list ul li .service a, #content.single .ib .main .news_list ul li .service a {
        background: #f5f5f5;
        border: none;
        border-left: 3px solid #B71906; }
      #content.news .ib .main .news_list ul li .cat, #content.single .ib .main .news_list ul li .cat {
        margin-right: 7px;
        display: inline-block;
        position: relative;
        top: -2px;
        margin-bottom: 4px; }
        #content.news .ib .main .news_list ul li .cat a, #content.single .ib .main .news_list ul li .cat a {
          font-size: 13px;
          padding: 4px 9px 3px;
          background: #B71906;
          color: #fff;
          font-weight: bold;
          display: inline-block;
          width: 122px;
          text-align: center;
          margin-right: 5px; }
          #content.news .ib .main .news_list ul li .cat a:last-child, #content.single .ib .main .news_list ul li .cat a:last-child {
            margin-right: 0; }
      #content.news .ib .main .news_list ul li i, #content.single .ib .main .news_list ul li i {
        display: block;
        font-size: 15px;
        font-weight: 400;
        width: 100%;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        margin-top: 10px;
        transition: 0.4s ease; }
      #content.news .ib .main .news_list ul li .date, #content.single .ib .main .news_list ul li .date {
        position: absolute;
        top: calc(50% - 13px);
        left: 0;
        z-index: 3; } */

.page-nav {
  display: flex;
  flex-wrap: wrap;
  margin: 80px 0 40px;
  justify-content: flex-end; }
  .page-nav.no_next {
    justify-content: flex-start; }
  .page-nav a {
    width: 50%;
    display: flex;
    flex-wrap: wrap;
    padding: 20px 0;
    border-top: 3px solid #B71906;
    font-size: 14px;
    border-bottom: 3px solid #B71906; }
    .page-nav a.prev {
      border-right: 3px solid #B71906; }
    .page-nav a.next {
      padding-left: 20px;
      border-left: 3px solid #B71906;
      margin-left: -3px; }
    .page-nav a img {
      width: 120px;
      height: 120px;
      object-fit: cover; }
    .page-nav a span {
      display: block;
      padding: 5px 5px 10px;
      margin-bottom: 20px;
      text-align: center;
      position: relative;
      border-bottom: 3px solid #B71906; }
    .page-nav a.prev span:before {
      font-family: material icons;
      content: "";
      position: absolute;
      left: 0;
      top: 4px;
      font-size: 18px; }
    .page-nav a.next span:before {
      font-family: material icons;
      content: "";
      position: absolute;
      right: 0;
      top: 4px;
      font-size: 18px; }
    .page-nav a div {
      width: calc(100% - 120px);
      padding: 0 15px; }
      .page-nav a div i {
        display: block;
        font-weight: bold; }

#content.single.voice .ib {
  display: block; }
  #content.single.voice .ib .intro {
    line-height: 2;
    padding: 40px;
    background: #f5f5f5;
    margin: 50px 0 60px; }
  #content.single.voice .ib .cont_box {
    margin-bottom: 40px; }
    #content.single.voice .ib .cont_box.col1 h2.bd {
      border-top: none; }
      #content.single.voice .ib .cont_box.col1 h2.bd span {
        display: block;
        font-size: 18px;
        margin-bottom: 10px; }
      #content.single.voice .ib .cont_box.col1 h2.bd i {
        display: block;
        margin-top: 10px;
        font-size: 15px;
        margin-bottom: 5px; }
    #content.single.voice .ib .cont_box.col1 .d_f p {
      width: 100%;
      order: 1;
      text-align: center; }
    #content.single.voice .ib .cont_box.col1 .d_f .cont_img {
      width: 100%;
      order: 2;
      height: auto; }
      #content.single.voice .ib .cont_box.col1 .d_f .cont_img.col2 {
        display: flex;
        justify-content: space-between; }
        #content.single.voice .ib .cont_box.col1 .d_f .cont_img.col2 img {
          width: 43%;
          object-fit: contain; }
          #content.single.voice .ib .cont_box.col1 .d_f .cont_img.col2 img.img1 {
            width: 800px;
            max-width: 100%; }
      #content.single.voice .ib .cont_box.col1 .d_f .cont_img img {
        width: auto;
        display: block;
        margin: 20px auto;
        max-width: 800px;
        height: auto;
        object-fit: cover; }
    #content.single.voice .ib .cont_box:nth-of-type(2n) .d_f {
      flex-direction: row-reverse; }
    #content.single.voice .ib .cont_box h3 {
      padding: 20px;
      text-align: center;
      color: #fff;
      font-size: 22px;
      background: #B71906;
      margin: 50px 0; }
    #content.single.voice .ib .cont_box .d_f {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      padding: 20px 0; }
      #content.single.voice .ib .cont_box .d_f p {
        width: 47%;
        margin-top: 0; }
    #content.single.voice .ib .cont_box .cont_img {
      height: 500px;
      margin: 0px 0;
      width: 47%; }
      #content.single.voice .ib .cont_box .cont_img img {
        object-fit: cover;
        width: 100%;
        height: 100%; }

a.tdu {
  text-decoration: underline;
  color: #B71906; }

/* #content.page404 {
  background: #f7f7f7; } */

#content .bottom_contact, article .bottom_contact {
  position: relative;
  z-index: 9999;
  height: 264px;
  background: url(../img/contact.svg) 0% 100% no-repeat, #595757;
  position: relative; }
  #content .bottom_contact .ib, article .bottom_contact .ib {
    padding: 115px 0;
    color: #fff;
    background: none !important;
    padding-right: 80px; }
    #content .bottom_contact .ib .row, article .bottom_contact .ib .row {
      justify-content: space-between;
      flex-wrap: wrap;
      display: flex;
      width: 100%; }
    #content .bottom_contact .ib .l img, #content .bottom_contact .ib .r img, article .bottom_contact .ib .l img, article .bottom_contact .ib .r img {
      display: inline-block;
      margin-right: 20px;
      position: relative;
      top: 2px; }
    #content .bottom_contact .ib .l span, #content .bottom_contact .ib .r span, article .bottom_contact .ib .l span, article .bottom_contact .ib .r span {
      font-size: 29px;
      font-weight: bold;
      display: inline-block;
      margin-right: 20px; }
    #content .bottom_contact .ib .l i, #content .bottom_contact .ib .r i, article .bottom_contact .ib .l i, article .bottom_contact .ib .r i {
      font-size: 15px;
      font-weight: 400;
      text-decoration: underline;
      position: relative;
      top: -5px; }
    #content .bottom_contact .ib .l em, #content .bottom_contact .ib .r em, article .bottom_contact .ib .l em, article .bottom_contact .ib .r em {
      width: 37px;
      height: 0.5px;
      background: #fff;
      margin-left: 0px;
      display: inline-block;
      position: relative;
      top: -7px; }
      #content .bottom_contact .ib .l em:after, #content .bottom_contact .ib .r em:after, article .bottom_contact .ib .l em:after, article .bottom_contact .ib .r em:after {
        width: 12px;
        height: 0.5px;
        display: inline-block;
        content: "";
        position: absolute;
        right: 0;
        bottom: 3px;
        transform: rotate(30deg);
        background: #fff; }
    #content .bottom_contact .ib .r, article .bottom_contact .ib .r {
      position: relative;
      top: 4px; }
      #content .bottom_contact .ib .r span, article .bottom_contact .ib .r span {
        font-size: 20px; }

/*# sourceMappingURL=subpage.css.map */
