.c_top-txt {
  position: relative; }
  @media (max-width: 768px) {
    .c_top-txt {
      display: block; } }
  .c_top-txt .bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 32.28404099560762vw;
    z-index: -1; }
    @media (max-width: 768px) {
      .c_top-txt .bg {
        display: none; } }
    .c_top-txt .bg img {
      width: 100%; }
  .c_top-txt-first {
    display: flex;
    justify-content: flex-end;
    padding: 4.026354319180088vw 0 6.954612005856515vw; }
    @media (max-width: 768px) {
      .c_top-txt-first {
        display: block;
        padding: 8vw 5.333333333333334vw 12vw; } }
  .c_top-txt-block {
    width: 46.5592972181552vw;
    margin: 0 9.736456808199122vw 0 0; }
    @media (max-width: 768px) {
      .c_top-txt-block {
        width: 100%;
        margin: 0; } }
    .c_top-txt-block dt {
      font-size: 1.7569546120058566vw;
      color: #194DA8;
      margin-bottom: 2.0rem;
      letter-spacing: 0.2em; }
      @media (max-width: 768px) {
        .c_top-txt-block dt {
          font-size: 6.4vw;
          margin-bottom: 4.8vw; } }
    .c_top-txt-block dd {
      font-size: 1.3177159590043925vw;
      line-height: 2;
      margin-left: 0; }
      @media (max-width: 768px) {
        .c_top-txt-block dd {
          font-size: 3.2vw;
          line-height: 1.91; } }
      .c_top-txt-block dd.txt-b {
        font-size: 2.049780380673499vw;
        font-weight: 600;
        line-height: 1.785; }
        @media (max-width: 768px) {
          .c_top-txt-block dd.txt-b {
            font-size: 5.866666666666666vw;
            line-height: 1.4; } }
  .c_top-txt-photo {
    display: flex;
    justify-content: space-between;
    margin-bottom: 6.588579795021962vw; }
    @media (max-width: 768px) {
      .c_top-txt-photo {
        flex-flow: column-reverse;
        justify-content: center;
        align-items: center;
        margin-bottom: 21.333333333333336vw;
        padding: 0 5.333333333333334vw; } }
    .c_top-txt-photo .photo {
      width: 35.50512445095168vw;
      margin-left: 3.6603221083455346vw;
      display: flex;
      flex-flow: column;
      align-items: center;
      text-align: center; }
      @media (max-width: 768px) {
        .c_top-txt-photo .photo {
          width: 100%;
          margin-left: 0;
          margin-top: 10.666666666666668vw; } }
      .c_top-txt-photo .photo .name {
        margin-top: 2.562225475841874vw;
        font-size: 2.049780380673499vw;
        font-weight: 600;
        letter-spacing: .2em; }
        @media (max-width: 768px) {
          .c_top-txt-photo .photo .name {
            margin-top: 4vw;
            font-size: 5.333333333333334vw; } }
        .c_top-txt-photo .photo .name span {
          display: block;
          font-size: 1.7569546120058566vw;
          font-weight: 400;
          margin-bottom: 1.5rem; }
          @media (max-width: 768px) {
            .c_top-txt-photo .photo .name span {
              font-size: 3.2vw;
              margin-bottom: 4vw; } }

.profile {
  background: url("../images/company/bg01.png") no-repeat 0 0 #c6d3ea;
  background-size: 100%;
  padding: 4.392386530014641vw 3.6603221083455346vw 4.392386530014641vw 12.152269399707174vw; }
  @media (max-width: 768px) {
    .profile {
      background-image: url("../images/company/bg01_sp.png");
      padding: 9.333333333333334vw 5.333333333333334vw 21.333333333333336vw; } }
  .profile .c_ttl01 {
    margin-bottom: 2.1961932650073206vw; }
    @media (max-width: 768px) {
      .profile .c_ttl01 {
        margin-bottom: 5.856515373352855vw; } }
  .profile-list {
    width: 53.80673499267935vw;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; }
    @media (max-width: 768px) {
      .profile-list {
        width: 100%;
        display: block; } }
    .profile-list__item {
      width: 47.6%;
      border-bottom: 1px solid #101010;
      margin: 0 0 2.562225475841874vw;
      padding-bottom: 0.7320644216691069vw;
      font-size: 1.3177159590043925vw;
      line-height: 1.75;
      display: flex; }
      @media (max-width: 768px) {
        .profile-list__item {
          width: 100%;
          margin-bottom: 8vw;
          padding-bottom: 2.666666666666667vw;
          font-size: 4.266666666666667vw; } }
      .profile-list__item dt {
        width: 6em; }
      .profile-list__item dd {
        width: calc(100% - 6em);
        margin-left: 0; }
      .profile-list__item:first-child {
        width: 100%; }

.office {
  padding: 4.758418740849195vw 12.445095168374817vw 7.320644216691069vw; }
  @media (max-width: 768px) {
    .office {
      padding: 16vw 5.333333333333334vw 5.333333333333334vw; } }
  .office .c_ttl01 {
    align-items: center;
    margin-bottom: 2.562225475841874vw; }
    @media (max-width: 768px) {
      .office .c_ttl01 {
        margin-bottom: 8vw; } }
  .office-list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap; }
    @media (max-width: 768px) {
      .office-list {
        display: block; } }
    .office-list__item {
      width: 47.84%;
      margin: 0 0 2.9282576866764276vw; }
      @media (max-width: 768px) {
        .office-list__item {
          width: 100%;
          margin-bottom: 16vw; } }
      .office-list__item dt {
        font-size: 1.8301610541727673vw;
        font-weight: 600;
        line-height: 1.8;
        margin-bottom: 0.7320644216691069vw; }
        @media (max-width: 768px) {
          .office-list__item dt {
            font-size: 6.666666666666667vw;
            margin-bottom: 4vw;
            text-align: center; } }
      .office-list__item dd {
        margin-left: 0; }
        .office-list__item dd address {
          font-style: normal;
          font-size: 1.171303074670571vw;
          line-height: 1.8;
          margin-bottom: 0.7320644216691069vw; }
          @media (max-width: 768px) {
            .office-list__item dd address {
              font-size: 3.733333333333334vw;
              margin-bottom: 5.333333333333334vw; } }
        .office-list__item dd .access {
          display: flex;
          align-items: center;
          font-size: 1.171303074670571vw;
          line-height: 1.8;
          margin-bottom: 0.7320644216691069vw; }
          @media (max-width: 768px) {
            .office-list__item dd .access {
              font-size: 3.733333333333334vw;
              margin-bottom: 5.333333333333334vw; } }
          .office-list__item dd .access img {
            width: 2.781844802342606vw;
            margin-right: 0.7320644216691069vw; }
            @media (max-width: 768px) {
              .office-list__item dd .access img {
                width: 10.133333333333333vw;
                margin-right: 2.666666666666667vw; } }
        .office-list__item dd .map iframe {
          width: 100%;
          height: 19.03367496339678vw; }
          @media (max-width: 768px) {
            .office-list__item dd .map iframe {
              height: 48vw; } }

.history {
  background: url("../images/company/bg02.png") no-repeat 0 0 #194DA8;
  background-size: 100%;
  padding: 4.392386530014641vw 3.6603221083455346vw 3.6603221083455346vw 26.720351390922403vw;
  color: #fff; }
  @media (max-width: 768px) {
    .history {
      background-image: url("../images/company/bg02_sp.png");
      padding: 12vw 5.333333333333334vw; } }
  .history .c_ttl01 {
    margin-bottom: 2.1961932650073206vw; }
    @media (max-width: 768px) {
      .history .c_ttl01 {
        margin-bottom: 6.666666666666667vw; } }
    .history .c_ttl01 .eng {
      color: #fff; }
  .history-list__item {
    display: flex; }
    @media (max-width: 768px) {
      .history-list__item {
        display: block;
        margin-bottom: 8vw; } }
    .history-list__item .year {
      width: 3em;
      font-size: 2.9282576866764276vw;
      font-family: "Roboto", sans-serif;
      font-weight: 100; }
      @media (max-width: 768px) {
        .history-list__item .year {
          width: 100%;
          font-size: 6.666666666666667vw; } }
    .history-list__item .list {
      width: calc(100% - 3em);
      font-size: 1.171303074670571vw;
      line-height: 1.5; }
      @media (max-width: 768px) {
        .history-list__item .list {
          width: 100%;
          font-size: 3.2vw; } }
      .history-list__item .list__item {
        display: flex; }
        .history-list__item .list__item dt {
          width: 4em; }
        .history-list__item .list__item dd {
          width: calc(100% - 4em);
          margin-left: 0; }
