@charset "UTF-8";
/**
 * info配下
 */
/* ==========================================================================
  共通
  ========================================================================== */
* {
  box-sizing: border-box; }

body {
  min-width: 1044px; }
  @media screen and (max-width: 767px) {
    body {
      min-width: inherit; } }
  body img {
    max-width: 100%; }

#topicpath .navigation {
  width: 1004px;
  box-sizing: border-box;
  background: none;
  padding-left: 0; }
  #topicpath .navigation img {
    margin: 0 15px 0 3px; }
  #topicpath .navigation li:first-child {
    padding-left: 20px;
    background: url(/common/css/img/icon_home.gif) no-repeat left 4px; }
  #topicpath .navigation li {
    margin-right: 15px; }

@media screen and (max-width: 767px) {
  #topicpath {
    padding-left: 10px; }
    #topicpath .navigation {
      width: 100%; }
      #topicpath .navigation img {
        vertical-align: middle; } }

#topicpath.topicpath-bottom {
  margin-bottom: 0; }

.content-bock {
  margin-bottom: 80px; }
  @media screen and (max-width: 767px) {
    .content-bock {
      margin-bottom: 40px; } }

.photo-box {
  margin-bottom: 40px;
  text-align: center; }
  @media screen and (max-width: 767px) {
    .photo-box {
      margin-bottom: 20px; } }

.local-nav__block {
  background: #d1e4f1;
  padding: 80px 0;
  margin-top: 25px; }
  @media screen and (max-width: 767px) {
    .local-nav__block {
      padding: 40px 10px; } }
  .local-nav__block .local-nav-heading {
    font-size: 138.46154%;
    text-align: center;
    color: #0068b4;
    font-weight: bold;
    margin-bottom: 20px; }
  .local-nav__block .local-nav-info {
    display: block;
    width: 1024px;
    margin: auto; }
    .local-nav__block .local-nav-info:after {
      content: "";
      display: block;
      height: 0;
      clear: both;
      visibility: hidden; }
    @media screen and (max-width: 767px) {
      .local-nav__block .local-nav-info {
        width: 100%; } }
    .local-nav__block .local-nav-info li {
      width: 200px;
      float: left;
      margin: 0 6px 0 0; }
      .local-nav__block .local-nav-info li:nth-child(5n) {
        float: right;
        margin-right: 0; }
        @media screen and (max-width: 767px) {
          .local-nav__block .local-nav-info li:nth-child(5n) {
            float: none; } }
      @media screen and (max-width: 767px) {
        .local-nav__block .local-nav-info li {
          width: 100%;
          margin: 0 0 1px 0; }
          .local-nav__block .local-nav-info li img {
            width: 100%; }
          .local-nav__block .local-nav-info li:nth-child(2n) {
            float: right; } }
      .local-nav__block .local-nav-info li .local-nav__text {
        display: table;
        width: 100%; }
        .local-nav__block .local-nav-info li .local-nav__text span {
          display: table-cell;
          height: 54px;
          line-height: 1.5;
          vertical-align: middle;
          padding: 0 25px 0 10px;
          background: #f2f2f2 url("img/arrow_right_blue.svg") no-repeat 95% center;
          color: #0068b4; }
      @media screen and (max-width: 767px) {
        .local-nav__block .local-nav-info li .local-nav__photo {
          display: none; } }
      .local-nav__block .local-nav-info li a {
        display: inline-block;
        width: 100%; }
        .local-nav__block .local-nav-info li a.active span {
          display: table-cell;
          width: 100%;
          line-height: 1.5;
          vertical-align: middle;
          padding: 0 25px 0 10px;
          background: #0068b4;
          color: #fff; }
        .local-nav__block .local-nav-info li a:hover {
          opacity: 0.9;
          text-decoration: none; }

.bnr-area-grey {
  background: #f0f0f0;
  padding: 80px 0;
  margin-bottom: -50px; }
  @media screen and (max-width: 767px) {
    .bnr-area-grey {
      padding: 40px 10px;
      margin-bottom: -25px; } }
  .bnr-area-grey .side-bnr {
    display: block;
    width: 836px;
    margin: auto; }
    .bnr-area-grey .side-bnr:after {
      content: "";
      display: block;
      height: 0;
      clear: both;
      visibility: hidden; }
    @media screen and (max-width: 767px) {
      .bnr-area-grey .side-bnr {
        width: 100%; } }
    .bnr-area-grey .side-bnr li {
      width: 200px;
      float: left;
      margin: 0 12px 10px 0; }
      .bnr-area-grey .side-bnr li:nth-child(4n) {
        float: right;
        margin-right: 0; }
        @media screen and (max-width: 767px) {
          .bnr-area-grey .side-bnr li:nth-child(4n) {
            float: none; } }
      @media screen and (max-width: 767px) {
        .bnr-area-grey .side-bnr li {
          width: 48.45%;
          margin-right: 0; }
          .bnr-area-grey .side-bnr li img {
            width: 100%; }
          .bnr-area-grey .side-bnr li:nth-child(2n) {
            float: right; } }

.heading-level2 {
  font-size: 215.38462%;
  text-align: center;
  font-weight: bold;
  position: relative;
  padding-bottom: 35px;
  line-height: 1.5;
  letter-spacing: -2px;
  margin-bottom: 40px; }
  .heading-level2:after {
    content: '';
    display: inline-block;
    width: 60px;
    height: 2px;
    background: #0068b7;
    position: absolute;
    bottom: 0;
    left: 50%;
    margin-left: -30px; }
  @media screen and (max-width: 767px) {
    .heading-level2 {
      font-size: 142.85714%;
      font-weight: bold;
      line-height: 1.6;
      padding: 0 10px 10px; }
      .heading-level2:after {
        width: 30px;
        height: 2px;
        margin-left: -15px; } }

.heading-level3 {
  font-size: 184.61538%;
  font-weight: bold;
  border-bottom: 1px solid #0068b7;
  padding-bottom: 20px;
  margin-bottom: 30px; }
  @media screen and (max-width: 767px) {
    .heading-level3 {
      font-size: 130.76923%;
      padding-bottom: 10px;
      margin-bottom: 15px; } }

.page-nav-list {
  width: 100%;
  margin-bottom: 80px; }
  @media screen and (max-width: 767px) {
    .page-nav-list {
      margin-bottom: 40px; } }
  .page-nav-list li {
    display: inline-block;
    padding: 0 15px 0 0;
    margin-bottom: 3px;
    background: #ededed; }
    @media screen and (max-width: 767px) {
      .page-nav-list li {
        margin-bottom: 2px; } }
    .page-nav-list li a {
      padding: 10px 20px 10px 15px;
      display: inline-block;
      background: #ededed url("./img/arrow_bottom_blue.svg") no-repeat right center; }
      .page-nav-list li a:hover {
        opacity: 0.8;
        text-decoration: none; }

.button-list-two {
  display: block; }
  .button-list-two:after {
    content: "";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden; }
  .button-list-two li {
    width: 500px;
    float: left;
    margin-bottom: 15px; }
    @media screen and (max-width: 767px) {
      .button-list-two li {
        width: 100%;
        float: none;
        margin-bottom: 3px;
        line-height: 1.6; }
        .button-list-two li a {
          font-size: 107.69231%; } }
    .button-list-two li:nth-child(2n) {
      float: right; }
      @media screen and (max-width: 767px) {
        .button-list-two li:nth-child(2n) {
          float: none; } }

.button-grey {
  display: block;
  width: 100%;
  color: #0068b7;
  padding: 15px 45px 15px 15px;
  background: #f2f2f2 url("./img/arrow_right_blue.svg") no-repeat 95% center;
  font-size: 114.28571%;
  border-radius: 5px; }
  .button-grey[target="_blank"] > span {
    padding-right: 15px;
    background: url("./img/icon_blank.png") no-repeat right center;
    background-size: 9px auto; }
  .button-grey[href$='.pdf'] > span {
    padding-right: 20px;
    background: url("./img/icon_pdf_blue.svg") no-repeat right center;
    background-size: 15px auto; }
  .button-grey:hover {
    opacity: 0.9;
    color: #0068b7;
    text-decoration: none; }
  @media screen and (max-width: 767px) {
    .button-grey a {
      font-size: 107.69231%;
      line-height: 1.6; } }

.three-phase-head {
  padding: 80px 0; }
  @media screen and (max-width: 767px) {
    .three-phase-head {
      padding: 40px 10px; } }

.three-phase__inner {
  width: 1024px;
  margin: auto; }
  @media screen and (max-width: 767px) {
    .three-phase__inner {
      width: 100%; } }

.three-phase__heading {
  font-size: 215.38462%;
  text-align: center;
  font-weight: bold;
  position: relative;
  line-height: 1.5;
  letter-spacing: -2px; }
  @media screen and (max-width: 767px) {
    .three-phase__heading {
      font-size: 142.85714%;
      font-weight: bold;
      line-height: 1.6; } }

/* ==========================================================================
   企業情報
   ========================================================================== */
#index-company-info {
  margin-top: -30px; }
  @media screen and (max-width: 767px) {
    #index-company-info {
      margin-top: -10px; } }
  #index-company-info .full-box {
    width: 1024px; }
    @media screen and (max-width: 767px) {
      #index-company-info .full-box {
        width: 100%;
        padding: 0 10px;
        box-sizing: border-box;
        width: 100%; } }
  #index-company-info .three-phase-head {
    background: url("./img/info_head_bg.png") no-repeat center 14.5%;
    background-size: cover; }
    @media screen and (max-width: 767px) {
      #index-company-info .three-phase-head {
        background: url("./img/info_head_bg_sp.png") no-repeat center top;
        background-size: 100% auto; } }
  #index-company-info .press-link-text {
    margin: 40px 0; }
    @media screen and (max-width: 767px) {
      #index-company-info .press-link-text {
        margin: 20px 0; } }
    #index-company-info .press-link-text a {
      padding-left: 20px;
      background: url("img/arrow_right_blue.svg") no-repeat left center;
      color: #0068b7;
      text-decoration: underline; }
      #index-company-info .press-link-text a:hover {
        text-decoration: none; }
  @media screen and (max-width: 767px) {
    #index-company-info .two-column-list li {
      float: none;
      margin: 0 0 10px; }
      #index-company-info .two-column-list li.right {
        float: none; } }
  #index-company-info .box-grey {
    width: 500px;
    background: #f2f2f2;
    display: block;
    padding: 25px;
    display: block;
    box-sizing: border-box; }
    #index-company-info .box-grey:after {
      content: "";
      display: block;
      height: 0;
      clear: both;
      visibility: hidden; }
    #index-company-info .box-grey:hover {
      text-decoration: none; }
    @media screen and (max-width: 767px) {
      #index-company-info .box-grey {
        width: 100%;
        padding: 25px 10px; } }
  #index-company-info .box-grey__heading {
    margin-bottom: 20px;
    padding-right: 20px;
    background-image: url("img/arrow_right_blue.svg");
    background-repeat: no-repeat;
    background-position: right center;
    font-size: 128.57143%;
    color: #0068b7; }
    @media screen and (max-width: 767px) {
      #index-company-info .box-grey__heading {
        padding-right: 15px;
        font-size: 107.14286%; } }
  #index-company-info .box-grey__text {
    color: #262626; }
    #index-company-info .box-grey__text img {
      float: right;
      margin: 0 0 0 20px; }
      @media screen and (max-width: 767px) {
        #index-company-info .box-grey__text img {
          margin: 0 0 0 10px; } }

/* ==========================================================================
   企業概要
   ========================================================================== */
#index-company-info-outline {
  margin-top: 80px; }
  @media screen and (max-width: 767px) {
    #index-company-info-outline {
      margin-top: 40px; } }
  #index-company-info-outline .full-box {
    width: 1024px; }
    @media screen and (max-width: 767px) {
      #index-company-info-outline .full-box {
        width: 100%;
        padding: 0 10px;
        box-sizing: border-box;
        width: 100%; } }
  #index-company-info-outline .table-outline {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 40px; }
    @media screen and (max-width: 767px) {
      #index-company-info-outline .table-outline {
        border-bottom: 1px solid #cccccc; } }
    #index-company-info-outline .table-outline th {
      width: 256px;
      vertical-align: top;
      background: #f2f2f2;
      padding: 20px;
      border-top: 1px solid #cccccc;
      border-bottom: 1px solid #cccccc; }
      @media screen and (max-width: 767px) {
        #index-company-info-outline .table-outline th {
          width: 100%;
          display: inline-block;
          padding: 10px;
          border-bottom: none; } }
    #index-company-info-outline .table-outline td {
      vertical-align: top;
      padding: 20px;
      border-top: 1px solid #cccccc;
      border-bottom: 1px solid #cccccc; }
      @media screen and (max-width: 767px) {
        #index-company-info-outline .table-outline td {
          width: 100%;
          display: inline-block;
          padding: 10px;
          border: none; } }
  #index-company-info-outline p {
    margin-bottom: 40px; }

/* ==========================================================================
   組織
   ========================================================================== */
#index-company-info-organization {
  margin-top: 80px; }
  @media screen and (max-width: 767px) {
    #index-company-info-organization {
      margin-top: 40px; } }
  #index-company-info-organization .full-box {
    width: 1024px; }
    @media screen and (max-width: 767px) {
      #index-company-info-organization .full-box {
        width: 100%;
        padding: 0 10px;
        box-sizing: border-box;
        width: 100%; } }
  #index-company-info-organization .photo-block {
    text-align: center; }
    #index-company-info-organization .photo-block img {
      max-width: 100%; }
  #index-company-info-organization p {
    font-size: 107.69231%;
    margin-bottom: 40px; }

/* ==========================================================================
   役員一覧
   ========================================================================== */
#index-company-info-officer {
  margin-top: 80px; }
  @media screen and (max-width: 767px) {
    #index-company-info-officer {
      margin-top: 40px; } }
  #index-company-info-officer .full-box {
    width: 1024px; }
    @media screen and (max-width: 767px) {
      #index-company-info-officer .full-box {
        width: 100%;
        padding: 0 10px;
        box-sizing: border-box;
        width: 100%; } }
  #index-company-info-officer .table-officer {
    width: 100%;
    border-collapse: collapse; }
    @media screen and (max-width: 767px) {
      #index-company-info-officer .table-officer {
        border-bottom: 1px solid #cccccc; } }
    #index-company-info-officer .table-officer .table-officer__name {
      width: 155px;
      padding: 20px; }
    #index-company-info-officer .table-officer thead th {
      background: #e4e4e4;
      padding: 20px;
      border-top: 1px solid #cccccc;
      border-bottom: 1px solid #cccccc;
      font-weight: bold; }
      @media screen and (max-width: 767px) {
        #index-company-info-officer .table-officer thead th {
          display: none; } }
    #index-company-info-officer .table-officer tbody th {
      width: 782px;
      vertical-align: top;
      background: #f2f2f2;
      padding: 20px;
      border-top: 1px solid #cccccc;
      border-bottom: 1px solid #cccccc; }
      @media screen and (max-width: 767px) {
        #index-company-info-officer .table-officer tbody th {
          width: 100%;
          display: inline-block;
          padding: 10px;
          border-bottom: none; } }
    #index-company-info-officer .table-officer tbody td {
      vertical-align: top;
      padding: 20px;
      border-top: 1px solid #cccccc;
      border-bottom: 1px solid #cccccc; }
      @media screen and (max-width: 767px) {
        #index-company-info-officer .table-officer tbody td {
          width: 100%;
          display: inline-block;
          padding: 10px;
          border: none; } }
    #index-company-info-officer .table-officer tbody .col2_1 {
      width: 276px; }
      @media screen and (max-width: 767px) {
        #index-company-info-officer .table-officer tbody .col2_1 {
          width: 100%; } }
    #index-company-info-officer .table-officer tbody .col2_2 {
      width: 506px;
      border-top: 1px dotted #cccccc; }
      @media screen and (max-width: 767px) {
        #index-company-info-officer .table-officer tbody .col2_2 {
          width: 100%; } }
    #index-company-info-officer .table-officer .annotation-blue {
      margin: 0 0 0 5px; }
  #index-company-info-officer .annotation-list {
    margin-top: 40px; }
    @media screen and (max-width: 767px) {
      #index-company-info-officer .annotation-list {
        margin-top: 20px; } }
  #index-company-info-officer .annotation-blue {
    color: #0068b7;
    margin: 0 5px 0 0; }

/* ==========================================================================
    沿革
    ========================================================================== */
#index-company-info-history {
  margin-top: 80px; }
  @media screen and (max-width: 767px) {
    #index-company-info-history {
      margin-top: 40px; } }
  #index-company-info-history .full-box {
    width: 1024px; }
    @media screen and (max-width: 767px) {
      #index-company-info-history .full-box {
        width: 100%;
        padding: 0 10px;
        box-sizing: border-box;
        width: 100%; } }
  #index-company-info-history .table-history {
    width: 100%;
    margin-bottom: 60px;
    border-collapse: collapse; }
    #index-company-info-history .table-history th {
      width: 256px;
      background: #e4edf6;
      padding: 20px;
      border-bottom: 1px solid #fff; }
      @media screen and (max-width: 767px) {
        #index-company-info-history .table-history th {
          width: 100%;
          display: inline-block;
          padding: 10px;
          border-bottom: none; } }
    #index-company-info-history .table-history td {
      background: #f2f7fb;
      padding: 20px;
      border-bottom: 1px solid #fff; }
      @media screen and (max-width: 767px) {
        #index-company-info-history .table-history td {
          width: 100%;
          display: inline-block;
          padding: 10px;
          border: none; } }

/* ==========================================================================
    グループ会社一覧
    ========================================================================== */
#index-company-info-group {
  margin-top: 80px; }
  @media screen and (max-width: 767px) {
    #index-company-info-group {
      margin-top: 40px; } }
  #index-company-info-group .full-box {
    width: 1024px; }
    @media screen and (max-width: 767px) {
      #index-company-info-group .full-box {
        width: 100%;
        padding: 0 10px;
        box-sizing: border-box;
        width: 100%; } }
  #index-company-info-group .table-group {
    width: 100%;
    margin-bottom: 40px;
    border-collapse: collapse;
    border-top: 1px solid #cccccc; }
    #index-company-info-group .table-group thead th {
      font-weight: bold;
      background: #e4e4e4;
      padding: 20px;
      border-bottom: 1px solid #cccccc; }
      @media screen and (max-width: 767px) {
        #index-company-info-group .table-group thead th {
          width: 50%;
          padding: 10px; } }
    #index-company-info-group .table-group tbody th {
      width: 513px;
      background: #e4e4e4;
      padding: 20px;
      border-bottom: 1px solid #cccccc; }
      @media screen and (max-width: 767px) {
        #index-company-info-group .table-group tbody th {
          width: 50%;
          padding: 10px;
          vertical-align: top; } }
    #index-company-info-group .table-group tbody td {
      background: #f2f2f2;
      padding: 20px;
      border-bottom: 1px solid #cccccc; }
      @media screen and (max-width: 767px) {
        #index-company-info-group .table-group tbody td {
          width: 50%;
          padding: 10px;
          vertical-align: top; } }
    #index-company-info-group .table-group tbody a[target="_blank"] {
      padding-right: 15px;
      background: url("./img/icon_blank.png") no-repeat right center;
      background-size: 9px auto; }
  #index-company-info-group .table-group2 tbody td {
    background: #fff;
    padding: 20px;
    border-bottom: 1px solid #cccccc; }
    @media screen and (max-width: 767px) {
      #index-company-info-group .table-group2 tbody td {
        width: 50%;
        padding: 10px; } }
  @media screen and (max-width: 767px) {
    #index-company-info-group .two-column-list li {
      float: none;
      margin: 0 0 10px; }
      #index-company-info-group .two-column-list li.right {
        float: none; } }
  #index-company-info-group .two-column-list .two-column-list__box {
    width: 500px;
    display: block; }
  #index-company-info-group .two-column-list .two-column-list__text {
    padding: 10px;
    background: #f2f2f2; }

/* ==========================================================================
   グループ会社一覧
   ========================================================================== */
#index-company-info-plan {
  margin-top: 80px; }
  @media screen and (max-width: 767px) {
    #index-company-info-plan {
      margin-top: 40px; } }
  #index-company-info-plan .full-box {
    width: 1024px; }
    @media screen and (max-width: 767px) {
      #index-company-info-plan .full-box {
        width: 100%;
        padding: 0 10px;
        box-sizing: border-box;
        width: 100%; } }

/* ==========================================================================
JR西日本発行冊子
   ========================================================================== */
#index-company-info-issue {
  margin-top: -30px; }
  @media screen and (max-width: 767px) {
    #index-company-info-issue {
      margin-top: -10px; } }
  #index-company-info-issue .full-box {
    width: 1024px; }
    @media screen and (max-width: 767px) {
      #index-company-info-issue .full-box {
        width: 100%;
        padding: 0 10px;
        box-sizing: border-box;
        width: 100%; } }
  #index-company-info-issue .three-phase-head {
    margin-bottom: 40px;
    background: url("./img/issue_head_bg.png") no-repeat center;
    background-size: cover;
    padding: 50px 0; }
  @media screen and (max-width: 767px) {
    #index-company-info-issue .two-column-list li {
      float: none;
      margin: 0 0 10px; }
      #index-company-info-issue .two-column-list li.right {
        float: none; } }
  #index-company-info-issue .box-grey {
    width: 500px;
    background: #f2f2f2;
    display: block;
    padding: 25px;
    display: block;
    box-sizing: border-box; }
    #index-company-info-issue .box-grey:after {
      content: "";
      display: block;
      height: 0;
      clear: both;
      visibility: hidden; }
    #index-company-info-issue .box-grey:hover {
      text-decoration: none; }
    #index-company-info-issue .box-grey[target="_blank"] > h3 span {
      padding-right: 15px;
      background: url("./img/icon_blank.png") no-repeat right center;
      background-size: 9px auto; }
    #index-company-info-issue .box-grey[target="_blank"] > h3 span.text-s {
      font-size: 66.66667%; }
    #index-company-info-issue .box-grey[href$='.pdf'] > h3 span {
      padding-right: 20px;
      background: url("./img/icon_pdf_blue.svg") no-repeat right center;
      background-size: 15px auto; }
    #index-company-info-issue .box-grey[href$='.pdf'] > h3 span.text-s {
      font-size: 66.66667%;
      background: none;
      padding: 0; }
    @media screen and (max-width: 767px) {
      #index-company-info-issue .box-grey {
        width: 100%;
        padding: 25px 10px; } }
  #index-company-info-issue .box-grey__heading {
    margin-bottom: 20px;
    padding-right: 20px;
    background-image: url("img/arrow_right_blue.svg");
    background-repeat: no-repeat;
    background-position: right center;
    font-size: 128.57143%;
    color: #0068b7; }
    @media screen and (max-width: 767px) {
      #index-company-info-issue .box-grey__heading {
        padding-right: 15px;
        font-size: 107.14286%; } }
  #index-company-info-issue .box-grey__text {
    color: #262626; }
    #index-company-info-issue .box-grey__text img {
      float: right;
      margin: 0 0 0 20px; }
      @media screen and (max-width: 767px) {
        #index-company-info-issue .box-grey__text img {
          margin: 0 0 0 10px; } }

/* ==========================================================================
JR西日本グループ中期経営計画
   ========================================================================== */
#index-company-info-plan {
  margin-top: 80px; }
  @media screen and (max-width: 767px) {
    #index-company-info-plan {
      margin-top: 40px; } }
  #index-company-info-plan .full-box {
    width: 1024px; }
    @media screen and (max-width: 767px) {
      #index-company-info-plan .full-box {
        width: 100%;
        padding: 0 10px;
        box-sizing: border-box;
        width: 100%; } }
  #index-company-info-plan .text-s {
    font-size: 85.71429%;
    background: none; }
