.index-wrapper {
  margin: 60px 0 100px; }
  .index-wrapper .visual {
    height: 450px;
    background: url("../../../data/img/pc/index/visual_bg.jpg") no-repeat center center;
    background-size: cover;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; }
    .index-wrapper .visual h2 {
      text-align: center;
      font-size: 58px;
      color: #fff;
      display: block;
      width: 100%;
      line-height: 1.6; }
  .index-wrapper .sec1 {
    padding: 38px 0 47px;
    background-color: #EFF5EA; }
    .index-wrapper .sec1 h3 {
      text-align: center;
      font-size: 32px;
      color: #122F77; }
    .index-wrapper .sec1 ul {
      margin-top: 25px; }
      .index-wrapper .sec1 ul li {
        float: left;
        width: 330px; }
        .index-wrapper .sec1 ul li .li_ttl {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-align: center;
          -ms-flex-align: center;
          align-items: center;
          background-color: #122F77;
          height: 115px; }
          .index-wrapper .sec1 ul li .li_ttl p {
            display: block;
            width: 100%;
            text-align: center;
            font-size: 24px;
            color: #fff; }
        .index-wrapper .sec1 ul li .txt {
          font-size: 16px;
          font-weight: normal;
          color: #333333;
          margin-top: 20px;
          line-height: 1.5;
          text-align: justify;
          padding: 0 20px; }
        .index-wrapper .sec1 ul li:nth-child(n+2) {
          margin-left: 25px; }
  .index-wrapper .sec2 {
    margin-top: 112px; }
    .index-wrapper .sec2 h3 {
      text-align: center;
      font-size: 40px;
      color: #122F77;
      line-height: 1.6; }
      .index-wrapper .sec2 h3 span {
        font-size: 16px;
        display: block;
        text-align: center; }
    .index-wrapper .sec2 ul {
      margin-top: 60px; }
      .index-wrapper .sec2 ul li {
        float: left;
        width: 470px; }
        .index-wrapper .sec2 ul li .img-holder {
          height: 221px;
          position: relative; }
          .index-wrapper .sec2 ul li .img-holder .img-ttl {
            font-size: 32px;
            font-weight: bold;
            color: #fff;
            position: absolute;
            display: block;
            margin: 0 auto;
            left: 0;
            right: 0;
            top: 60px;
            text-align: center; }
          .index-wrapper .sec2 ul li .img-holder .btn {
            position: absolute;
            display: block;
            margin: 0 auto;
            left: 0;
            right: 0;
            bottom: 30px; }
          .index-wrapper .sec2 ul li .img-holder::before {
            content: "";
            position: absolute;
            display: block;
            height: 100%;
            width: 100%;
            background-color: rgba(51, 51, 51, 0.5); }
          .index-wrapper .sec2 ul li .img-holder:hover::before {
            background: transparent; }
        .index-wrapper .sec2 ul li .txt {
          font-size: 16px;
          font-weight: normal;
          color: #333333;
          text-align: justify;
          margin-top: 18px;
          line-height: 1.5; }
        .index-wrapper .sec2 ul li:nth-child(even) {
          float: right; }
        .index-wrapper .sec2 ul li:nth-child(1) .img-holder {
          background: url("../../../data/img/pc/index/sec2_li1_bg.jpg") no-repeat center center;
          background-size: cover; }
        .index-wrapper .sec2 ul li:nth-child(2) .img-holder {
          background: url("../../../data/img/pc/index/sec2_li2_bg.jpg") no-repeat center center;
          background-size: cover; }
        .index-wrapper .sec2 ul li:nth-child(3) .img-holder {
          background: url("../../../data/img/pc/index/sec2_li3_bg.jpg") no-repeat center center;
          background-size: cover; }
        .index-wrapper .sec2 ul li:nth-child(4) .img-holder {
          background: url("../../../data/img/pc/index/sec2_li4_bg.jpg") no-repeat center center;
          background-size: cover; }
        .index-wrapper .sec2 ul li:nth-child(5) .img-holder {
          background: url("../../../data/img/pc/index/sec2_li5_bg.jpg") no-repeat center center;
          background-size: cover; }
        .index-wrapper .sec2 ul li:nth-child(6) .img-holder {
          background: url("../../../data/img/pc/index/sec2_li6_bg.jpg") no-repeat center center;
          background-size: cover; }
        .index-wrapper .sec2 ul li:nth-child(7) .img-holder {
          background: url("../../../data/img/pc/index/sec2_li7_bg.jpg") no-repeat center center;
          background-size: cover; }
        .index-wrapper .sec2 ul li:nth-child(n+3) {
          margin-top: 60px; }
  .index-wrapper .sec3 {
    background-color: #122F77;
    padding: 15px 0;
    margin-top: 102px; }
    .index-wrapper .sec3 ul li {
      float: left;
      width: 310px; }
      .index-wrapper .sec3 ul li .li_ttl {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        height: 50px;
        background-color: #FFD800; }
        .index-wrapper .sec3 ul li .li_ttl p {
          display: block;
          width: 100%;
          text-align: center;
          font-size: 16px;
          font-weight: bold;
          color: #333333; }
      .index-wrapper .sec3 ul li .nmbr, .index-wrapper .sec3 ul li .fax {
        margin-top: 25px; }
      .index-wrapper .sec3 ul li .links {
        margin-top: 10px; }
        .index-wrapper .sec3 ul li .links a {
          display: block;
          width: 100px;
          float: left; }
          .index-wrapper .sec3 ul li .links a:nth-child(n+2) {
            margin-left: 5px; }
      .index-wrapper .sec3 ul li:nth-child(n+2) {
        margin-left: 55px; }

@media screen and (max-width: 750px) {
  .index-wrapper {
    margin: 16rem 0 0; }
    .index-wrapper .visual {
      height: 38rem; }
      .index-wrapper .visual h2 {
        font-size: 4.8rem; }
    .index-wrapper .sec1 {
      padding: 9rem 8.5rem 8rem; }
      .index-wrapper .sec1 h3 {
        font-size: 3.2rem; }
      .index-wrapper .sec1 ul {
        margin-top: 8rem; }
        .index-wrapper .sec1 ul li {
          width: 100%; }
          .index-wrapper .sec1 ul li .li_ttl {
            height: 15.5rem; }
            .index-wrapper .sec1 ul li .li_ttl p {
              font-size: 3.6rem; }
          .index-wrapper .sec1 ul li .txt {
            font-size: 2.4rem;
            margin-top: 3rem;
            padding: 0; }
          .index-wrapper .sec1 ul li:nth-child(n+2) {
            margin-left: 0;
            margin-top: 8rem; }
    .index-wrapper .sec2 {
      margin-top: 11.5rem;
      padding: 0 2rem; }
      .index-wrapper .sec2 h3 {
        font-size: 4.2rem; }
        .index-wrapper .sec2 h3 span {
          font-size: 1.8rem; }
      .index-wrapper .sec2 ul {
        margin-top: 8rem; }
        .index-wrapper .sec2 ul li {
          float: none;
          width: 100%; }
          .index-wrapper .sec2 ul li .img-holder {
            height: 33.2rem; }
            .index-wrapper .sec2 ul li .img-holder .img-ttl {
              font-size: 4.8rem;
              top: 8.5rem; }
            .index-wrapper .sec2 ul li .img-holder .btn {
              height: 7.5rem;
              width: 30rem;
              bottom: 4.5rem; }
          .index-wrapper .sec2 ul li .txt {
            font-size: 2.4rem;
            margin-top: 3rem; }
          .index-wrapper .sec2 ul li:nth-child(even) {
            float: none; }
          .index-wrapper .sec2 ul li:nth-child(n+2) {
            margin-top: 8rem; }
    .index-wrapper .sec3 {
      margin: 10.5rem 4rem;
      border-radius: 1rem;
      padding: 3.5rem 4rem 5.5rem; }
      .index-wrapper .sec3 .ul_tll {
        font-size: 2.6rem;
        font-weight: bold;
        color: #fff;
        border-bottom: 1px solid #fff;
        padding-bottom: 2rem;
        text-align: center; }
      .index-wrapper .sec3 ul {
        margin-top: 3rem; }
        .index-wrapper .sec3 ul li {
          width: 100%;
          -webkit-box-sizing: border-box;
          box-sizing: border-box; }
          .index-wrapper .sec3 ul li .nmbr {
            margin-top: 0;
            width: 54.5rem; }
          .index-wrapper .sec3 ul li .fax {
            margin-top: 3.4rem;
            width: 54.5rem; }
          .index-wrapper .sec3 ul li .btn {
            width: 100%;
            display: block;
            border-radius: 1rem;
            background-color: #FFD800;
            text-decoration: none;
            font-size: 3rem;
            font-weight: bold;
            color: #122F77;
            margin-top: 3rem;
            text-align: center;
            padding: 2.5rem 0;
            position: relative; }
            .index-wrapper .sec3 ul li .btn::after {
              content: "";
              background: url("../../../data/img/sp/index/btn_arw_blue.png") no-repeat center center;
              background-size: cover;
              width: 1.7rem;
              height: 2.8rem;
              position: absolute;
              margin: auto;
              right: 2.8rem;
              top: 0;
              bottom: 0; }
          .index-wrapper .sec3 ul li .li_ttl {
            border-bottom: 1px solid #fff;
            padding-bottom: 2rem;
            text-align: center;
            background-color: transparent;
            height: auto; }
            .index-wrapper .sec3 ul li .li_ttl p {
              color: #fff;
              font-size: 2.6rem;
              font-weight: bold; }
          .index-wrapper .sec3 ul li:nth-child(n+2) {
            margin-left: 0;
            margin-top: 6rem; }
          .index-wrapper .sec3 ul li:nth-child(1) {
            padding: 0 2rem; } }
