.container {
  box-sizing: border-box;
  width: 100%; }

.main-visual {
  width: 100%; }
  .main-visual img {
    width: 100%;
    vertical-align: bottom;
    opacity: 1; }
  @media only screen and (max-width: 990px) {
    .main-visual {
      min-height: 295px; } }
  @media only screen and (max-width: 767px) {
    .main-visual {
      min-height: 118px; } }

.youtube-movie {
  margin: 40px auto; }
  .youtube-movie .youtube-movie__title {
    position: relative;
    margin-top: 0.5em;
    text-align: center; }
    @media only screen and (max-width: 767px) {
      .youtube-movie .youtube-movie__title {
        font-size: 13px;
        font-size: 0.8125rem; } }

.flex-column {
  display: flex;
  flex-direction: column;
  justify-content: flex-start; }

.story .u-hidden-item {
  display: none; }
.story .u-hidden-item + .head-4,
.story .u-hidden-item + .head-8 {
  margin-top: 80px; }
.story .u-sp-only {
  display: none; }
  @media only screen and (max-width: 767px) {
    .story .u-sp-only {
      display: inline; } }
.story .u-wide-only {
  display: inline; }
  @media only screen and (max-width: 767px) {
    .story .u-wide-only {
      display: none; } }
.story .u-centering {
  text-align: center; }
.story .article--double-margin {
  position: relative;
  margin-top: 50px;
  padding: 0 72px 80px; }
  @media only screen and (max-width: 990px) {
    .story .article--double-margin {
      padding-left: 45px;
      padding-right: 45px; } }
  @media only screen and (max-width: 767px) {
    .story .article--double-margin {
      padding-left: 20px;
      padding-right: 20px;
      margin-top: 25px; } }
.story .col img {
  max-width: 100%;
  line-height: 1;
  vertical-align: bottom; }
.story .col .text {
  font-size: 14px;
  font-size: 0.875rem;
  margin-top: 5px; }
@media only screen and (max-width: 767px) {
  .story .col {
    margin: 0 auto;
    max-width: none; }
    .story .col img {
      max-width: 100%; } }
@media only screen and (max-width: 767px) {
  .story .fig {
    padding-left: 0;
    width: auto;
    margin-bottom: 40px;
    display: flex;
    flex-direction: column;
    align-items: center; } }
.story .col-2, .story .col-2--centered,
.story .col-3 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between; }
.story .col-2--centered {
  align-items: center; }
.story .col-2 .col, .story .col-2--centered .col {
  margin-bottom: 20px;
  width: calc((100% - 20px) / 2); }
  @media only screen and (max-width: 767px) {
    .story .col-2 .col, .story .col-2--centered .col {
      margin: 1em 0;
      width: 100%; } }
.story .col-3 .col {
  margin-bottom: 10px;
  width: calc((100% - 20px) / 3); }
  @media only screen and (max-width: 767px) {
    .story .col-3 .col {
      margin: 1em 0;
      width: 100%; } }
.story .fig-centered {
  margin-bottom: 40px;
  text-align: center; }
  .story .fig-centered img {
    max-width: 100%;
    vertical-align: bottom; }
  .story .fig-centered .text {
    font-size: 14px;
    font-size: 0.875rem;
    margin-top: 5px; }
.story .fig-flexible-col--centered {
  display: table;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 40px; }
  .story .fig-flexible-col--centered .col {
    display: table-cell;
    padding-left: 10px; }
    .story .fig-flexible-col--centered .col img {
      max-width: 100%;
      vertical-align: bottom; }
    .story .fig-flexible-col--centered .col:first-child {
      padding-left: 0; }
  .story .fig-flexible-col--centered .text {
    font-size: 14px;
    font-size: 0.875rem;
    margin-top: 5px;
    text-align: left; }
.story .fig-flexible-col--thin-gutter .col {
  padding-left: 6px; }
  .story .fig-flexible-col--thin-gutter .col img {
    width: 100%; }
.story .fig-symmetric {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 30px 0; }
  .story .fig-symmetric .fig-symmetric__cell {
    display: table;
    width: 48%; }
    .story .fig-symmetric .fig-symmetric__cell .img, .story .fig-symmetric .fig-symmetric__cell .text {
      display: table-cell;
      width: 50%; }
    .story .fig-symmetric .fig-symmetric__cell .img {
      vertical-align: top;
      padding: 0 1em; }
      .story .fig-symmetric .fig-symmetric__cell .img img {
        width: 100%; }
    .story .fig-symmetric .fig-symmetric__cell .text {
      font-size: 12px;
      font-size: 0.75rem;
      vertical-align: middle; }
    @media only screen and (max-width: 767px) {
      .story .fig-symmetric .fig-symmetric__cell {
        width: 100%; } }
  @media only screen and (max-width: 767px) {
    .story .fig-symmetric {
      display: block; }
      .story .fig-symmetric .col {
        display: block;
        margin: 10px 0;
        padding-left: 0;
        text-align: center; }
        .story .fig-symmetric .col .text {
          text-align: center; } }
.story .head-8 {
  font-size: 1.5rem;
  margin: 28px 0;
  font-weight: normal;
  color: #424242; }
  .story .head-8 img {
    max-width: 93%; }
  @media only screen and (max-width: 767px) {
    .story .head-8 {
      margin-bottom: 18px; } }
.story .head-accordion {
  font-size: 24px;
  font-size: 1.5rem;
  position: relative;
  box-sizing: border-box;
  padding: 6px 55px 4px 15px;
  min-height: 50px;
  margin-top: 20px;
  font-weight: normal;
  color: #0086d1;
  background-color: #d6ecf8;
  cursor: pointer; }
  .story .head-accordion:after {
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    width: 50px;
    height: 50px;
    background: #0f6baf url(../corporate/history/images/pict_accordion-closed.svg) 50% 50% no-repeat;
    background-size: 25px auto; }
  .story .head-accordion.is-opened:after {
    background-image: url(../corporate/history/images/pict_accordion-opened.svg); }
  @media only screen and (max-width: 990px) {
    .story .head-accordion {
      font-size: 22px;
      font-size: 1.375rem;
      padding-right: 50px;
      min-height: 45px; }
      .story .head-accordion:after {
        width: 45px;
        height: 45px;
        background-size: 20px auto; } }
  @media only screen and (max-width: 767px) {
    .story .head-accordion {
      font-size: 18px;
      font-size: 1.125rem;
      padding-right: 45px;
      min-height: 40px; }
      .story .head-accordion:after {
        width: 40px;
        height: 40px;
        background-size: 15px auto; } }
.story .text-block {
  margin-top: 20px;
  margin-bottom: 20px; }
  .story .text-block p {
    margin: 1em 0;
    padding-right: 12px;
    line-height: 1.9; }
    .story .text-block p:first-child {
      margin-top: 0; }
    @media only screen and (max-width: 990px) {
      .story .text-block p {
        font-size: 14px;
        font-size: 0.875rem; } }
    @media only screen and (max-width: 767px) {
      .story .text-block p {
        padding-right: 0; } }
  @media only screen and (max-width: 767px) {
    .story .text-block {
      margin-bottom: 40px; } }
.story .sp-history-company-name {
  padding: 10px 72px 50px;
  background-color: #d6ecf8; }
  .story .sp-history-company-name .sp-history-company-name__cols {
    display: table; }
    .story .sp-history-company-name .sp-history-company-name__cols .col, .story .sp-history-company-name .sp-history-company-name__cols .col--img {
      display: table-cell;
      width: 50%; }
    .story .sp-history-company-name .sp-history-company-name__cols .col {
      padding-left: 1em; }
      .story .sp-history-company-name .sp-history-company-name__cols .col p {
        font-size: 15px;
        font-size: 0.9375rem;
        margin: 0; }
    .story .sp-history-company-name .sp-history-company-name__cols .col--img {
      text-align: center;
      vertical-align: middle;
      background-color: #fff; }
      .story .sp-history-company-name .sp-history-company-name__cols .col--img img {
        margin-top: .5em;
        width: 65%; }
    @media only screen and (max-width: 767px) {
      .story .sp-history-company-name .sp-history-company-name__cols {
        display: block; }
        .story .sp-history-company-name .sp-history-company-name__cols .col, .story .sp-history-company-name .sp-history-company-name__cols .col--img {
          display: block;
          width: 100%; }
        .story .sp-history-company-name .sp-history-company-name__cols .col--img {
          padding: 15px 0; }
        .story .sp-history-company-name .sp-history-company-name__cols .col {
          margin: 20px 0;
          padding-left: 0; } }
  @media only screen and (max-width: 767px) {
    .story .sp-history-company-name {
      padding-bottom: 10px;
      padding-left: 20px;
      padding-right: 20px; } }

.history-timeline .timeline-in-age {
  display: flex; }
  .history-timeline .timeline-in-age * {
    box-sizing: border-box; }
  .history-timeline .timeline-in-age .issues {
    flex-grow: 2;
    width: 579px; }
  .history-timeline .timeline-in-age .issue {
    display: flex; }
  .history-timeline .timeline-in-age .age {
    font-size: 32px;
    width: 100px;
    border-right: 1px #57b9ed solid;
    padding-right: 10px;
    font-weight: normal;
    line-height: 1;
    vertical-align: top;
    text-align: left;
    color: #a6a6a6; }
  .history-timeline .timeline-in-age .timeline-in-year {
    display: flex;
    flex-direction: row; }
  .history-timeline .timeline-in-age .issues-in-year {
    width: calc(100% - 75px); }
  .history-timeline .timeline-in-age .year {
    font-size: 0.8rem;
    position: relative;
    width: 75px;
    font-weight: normal;
    vertical-align: top;
    text-align: right;
    color: #57b9ed; }
    .history-timeline .timeline-in-age .year:before {
      content: "";
      background: url(../corporate/history/images/disc_blue.png) top left;
      position: absolute;
      z-index: 40;
      left: 0;
      left: -9px;
      top: 0%;
      width: 18px;
      height: 18px;
      margin-left: 20px;
      line-height: 1;
      transform: scale(0.5) translateX(-42px); }
    .history-timeline .timeline-in-age .year:after {
      content: " ";
      position: absolute;
      z-index: 30;
      left: 0;
      top: 9px;
      height: 1px;
      border-top: 1px #57b9ed solid;
      padding-left: 20px; }
  .history-timeline .timeline-in-age .desc {
    padding-left: 5px;
    padding-right: 5px;
    width: calc(100% - 170px);
    margin-bottom: 10px; }
  .history-timeline .timeline-in-age .fig {
    display: flex;
    flex-direction: column;
    width: 170px; }
    .history-timeline .timeline-in-age .fig img {
      max-width: 100%;
      max-height: 100%;
      width: inherit;
      height: auto; }
    .history-timeline .timeline-in-age .fig .img-wrapper {
      max-width: 100%;
      max-height: 100%;
      width: inherit;
      height: auto;
      text-align: center; }
      .history-timeline .timeline-in-age .fig .img-wrapper.founder {
        width: 100%;
        height: 100px; }
      .history-timeline .timeline-in-age .fig .img-wrapper.svg {
        width: 100%; }
    .history-timeline .timeline-in-age .fig .text {
      font-size: 12px;
      font-size: 0.75rem;
      margin-top: 5px;
      margin-bottom: 5px; }
    .history-timeline .timeline-in-age .fig .flexible-col {
      display: flex;
      margin-bottom: 0; }
    .history-timeline .timeline-in-age .fig .col-2 {
      margin-right: 2px;
      width: 50%;
      max-width: 50%; }
    .history-timeline .timeline-in-age .fig .col-1 {
      max-width: 100%; }
    .history-timeline .timeline-in-age .fig img[src$="svg"] {
      width: 100%; }
  @media only screen and (max-width: 767px) {
    .history-timeline .timeline-in-age {
      margin: 25px 0;
      flex-direction: column; }
      .history-timeline .timeline-in-age .issues {
        width: auto; }
      .history-timeline .timeline-in-age .issue {
        flex-direction: column; }
      .history-timeline .timeline-in-age .age {
        border-right: 0px solid transparent; }
      .history-timeline .timeline-in-age .year {
        font-size: 1.0rem;
        flex-grow: 1; }
        .history-timeline .timeline-in-age .year:before, .history-timeline .timeline-in-age .year:after {
          display: none; }
      .history-timeline .timeline-in-age .fig {
        float: none;
        padding-left: 0;
        width: auto;
        margin-bottom: 40px;
        display: flex;
        flex-direction: column;
        align-items: center; }
        .history-timeline .timeline-in-age .fig img {
          max-width: 100%;
          max-height: 100%;
          width: auto;
          height: auto; }
        .history-timeline .timeline-in-age .fig .img-wrapper.founder {
          width: inherit;
          height: auto; }
        .history-timeline .timeline-in-age .fig .col-2 {
          margin-right: 2px;
          width: auto;
          max-width: 100%;
          height: auto; }
        .history-timeline .timeline-in-age .fig .col-1 {
          width: auto; }
      .history-timeline .timeline-in-age .desc {
        float: none;
        width: auto;
        flex-grow: 9; } }

.founder_spirit .photo-w01 {
  margin: 0 auto;
  max-width: 450px; }
  @media only screen and (max-width: 767px) {
    .founder_spirit .photo-w01 img {
      width: 100%; } }
.founder_spirit .photo-w02 {
  margin: 0 auto;
  max-width: 200px; }
  @media only screen and (max-width: 767px) {
    .founder_spirit .photo-w02 {
      max-width: none; }
      .founder_spirit .photo-w02 img {
        width: 100%; } }
.founder_spirit .photo-w03 {
  margin: 0 auto;
  max-width: 560px; }
  @media only screen and (max-width: 767px) {
    .founder_spirit .photo-w03 img {
      width: 100%; } }

.paragraph-right {
  float: right; }
  @media only screen and (max-width: 767px) {
    .paragraph-right {
      float: none;
      width: 100%;
      display: flex; }
      .paragraph-right img {
        margin: 0 auto; } }

.paragraph-left {
  float: left; }
  @media only screen and (max-width: 767px) {
    .paragraph-left {
      float: none;
      width: 100%;
      display: flex; }
      .paragraph-left img {
        margin: 0 auto; } }

/*# sourceMappingURL=history.css.map */
