.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 71px;
    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: 117px; }
    .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: 57px; }
      .index-wrapper .sec2 ul li {
        float: left;
        width: 470px; }
        .index-wrapper .sec2 ul li .li_ttl {
          font-size: 32px;
          font-weight: bold;
          color: #122F77;
          text-align: center; }
        .index-wrapper .sec2 ul li p {
          font-size: 16px;
          font-weight: normal;
          color: #333333;
          margin-top: 10px;
          line-height: 1.5; }
        .index-wrapper .sec2 ul li .img {
          margin-top: 3px; }
        .index-wrapper .sec2 ul li .btn-holder {
          margin-top: 20px; }
          .index-wrapper .sec2 ul li .btn-holder .btn {
            display: -webkit-box;
            display: -ms-flexbox;
            display: flex;
            -webkit-box-align: center;
            -ms-flex-align: center;
            align-items: center;
            background-color: #122F77;
            height: 50px;
            position: relative;
            border-radius: 5px;
            width: 230px;
            border: 1px solid #122F77;
            -webkit-box-sizing: border-box;
            box-sizing: border-box; }
            .index-wrapper .sec2 ul li .btn-holder .btn span {
              display: block;
              width: 100%;
              text-align: center;
              font-size: 18px;
              font-weight: bold;
              color: #fff; }
            .index-wrapper .sec2 ul li .btn-holder .btn::before {
              content: '';
              border: solid #fff;
              border-width: 0 2px 2px 0;
              display: inline-block;
              margin: auto;
              -ms-transform: rotate(-45deg);
              transform: rotate(-45deg);
              -webkit-transform: rotate(-45deg);
              position: absolute;
              right: 15px;
              top: 0;
              bottom: 0;
              width: 10px;
              height: 10px; }
            .index-wrapper .sec2 ul li .btn-holder .btn:hover {
              background-color: #fff; }
              .index-wrapper .sec2 ul li .btn-holder .btn:hover span {
                color: #122F77; }
              .index-wrapper .sec2 ul li .btn-holder .btn:hover::before {
                border: solid #122F77;
                border-width: 0 2px 2px 0; }
            .index-wrapper .sec2 ul li .btn-holder .btn.btn2 {
              margin-left: 10px; }
        .index-wrapper .sec2 ul li:nth-child(even) {
          float: right; }
        .index-wrapper .sec2 ul li:nth-child(n+3) {
          margin-top: 60px; }
  .index-wrapper .sec3 {
    background-color: #122F77;
    padding: 15px 0;
    margin-top: 99px; }
    .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 .li_ttl {
            font-size: 4.2rem; }
          .index-wrapper .sec2 ul li p {
            font-size: 2.4rem;
            margin-top: 3rem; }
          .index-wrapper .sec2 ul li .img {
            margin-top: 2rem; }
          .index-wrapper .sec2 ul li .btn-holder {
            margin-top: 3rem; }
            .index-wrapper .sec2 ul li .btn-holder .btn {
              width: 34.5rem;
              height: 7.5rem;
              border-radius: 1rem; }
              .index-wrapper .sec2 ul li .btn-holder .btn span {
                font-size: 2.7rem; }
              .index-wrapper .sec2 ul li .btn-holder .btn::before {
                width: 1.5rem;
                height: 1.5rem;
                right: 2rem;
                border: solid #fff;
                border-width: 0 0.2rem 0.2rem 0; }
              .index-wrapper .sec2 ul li .btn-holder .btn.btn2 {
                margin-left: 2rem; }
          .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; } }
