@charset "UTF-8";
#mainImg {
  background: url(../images/insurance/pic-mainImg_001.jpg) center center no-repeat; }

/*　ユタカの自転車保険の概要 index
-------------------------------------*/
#insurance.insurance_index #main .abLinkWrapp {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  margin-bottom: 50px; }
  #insurance.insurance_index #main .abLinkWrapp .abLinkBox {
    height: 186px;
    width: 244px;
    border: 2px solid #ddd;
    border-right: none;
    text-align: center;
    background: url(../images/insurance/bgi_insurance_about_001.jpg);
    position: relative; }
    #insurance.insurance_index #main .abLinkWrapp .abLinkBox:nth-of-type(1) a::before {
      content: '';
      display: block;
      position: absolute;
      background: url(../images/insurance/pic-huki_001.png) no-repeat;
      width: 190px;
      height: 64px;
      background-size: contain;
      top: -11px;
      left: calc(50% - 95px);
      transition: 0.3s ease-in-out; }
    #insurance.insurance_index #main .abLinkWrapp .abLinkBox:nth-of-type(1):hover a::before {
      background: url(../images/insurance/pic-huki_001_hover.png) no-repeat;
      opacity: 1 !important;
      background-size: contain;
      top: -21px; }
    #insurance.insurance_index #main .abLinkWrapp .abLinkBox:nth-of-type(2) a::before {
      content: '';
      display: block;
      position: absolute;
      background: url(../images/insurance/pic-huki_002.png) no-repeat;
      width: 190px;
      height: 64px;
      background-size: contain;
      top: -11px;
      left: calc(50% - 95px);
      transition: 0.3s ease-in-out; }
    #insurance.insurance_index #main .abLinkWrapp .abLinkBox:nth-of-type(2):hover a::before {
      background: url(../images/insurance/pic-huki_002_hover.png) no-repeat !important;
      opacity: 1 !important;
      background-size: contain !important;
      top: -21px; }
    #insurance.insurance_index #main .abLinkWrapp .abLinkBox:nth-of-type(3) a::before {
      content: '';
      display: block;
      position: absolute;
      background: url(../images/insurance/pic-huki_003.png) no-repeat;
      width: 190px;
      height: 64px;
      background-size: contain;
      top: -11px;
      left: calc(50% - 95px);
      transition: 0.3s ease-in-out; }
    #insurance.insurance_index #main .abLinkWrapp .abLinkBox:nth-of-type(3):hover a::before {
      background: url(../images/insurance/pic-huki_003_hover.png) no-repeat !important;
      opacity: 1 !important;
      background-size: contain !important;
      top: -21px; }
    #insurance.insurance_index #main .abLinkWrapp .abLinkBox:hover {
      background-image: none; }
    #insurance.insurance_index #main .abLinkWrapp .abLinkBox:hover h4 {
      color: #00893f; }
    #insurance.insurance_index #main .abLinkWrapp .abLinkBox:last-child {
      border-right: 2px solid #ddd; }
    #insurance.insurance_index #main .abLinkWrapp .abLinkBox > a {
      display: inline-block;
      width: 100%;
      height: 100%;
      text-decoration: none !important; }
      #insurance.insurance_index #main .abLinkWrapp .abLinkBox > a h4 {
        margin-top: 75px;
        margin-bottom: 26px;
        font-size: 24px;
        color: #6d6d6d; }
      #insurance.insurance_index #main .abLinkWrapp .abLinkBox > a p.btn {
        background-color: #ff7200;
        text-align: center; }
        #insurance.insurance_index #main .abLinkWrapp .abLinkBox > a p.btn:hover {
          opacity: 1; }
        #insurance.insurance_index #main .abLinkWrapp .abLinkBox > a p.btn a {
          position: relative; }
          #insurance.insurance_index #main .abLinkWrapp .abLinkBox > a p.btn a::before {
            content: '';
            display: block;
            position: absolute;
            background: url(../images/insurance/pic-huki_001.png) no-repeat;
            width: 190px;
            height: 64px;
            background-size: contain;
            top: -134px;
            left: -6px;
            transition: 0.3s ease-in-out; }
          #insurance.insurance_index #main .abLinkWrapp .abLinkBox > a p.btn a:hover::before {
            background: url(../images/insurance/pic-huki_001_hover.png) no-repeat;
            opacity: 1 !important;
            background-size: contain;
            top: -144px; }
          #insurance.insurance_index #main .abLinkWrapp .abLinkBox > a p.btn a::after {
            background: url(../images/common/ico-arrow_orange_down_001.png) no-repeat;
            background-size: contain; }
        #insurance.insurance_index #main .abLinkWrapp .abLinkBox > a p.btn span {
          text-align: center;
          display: inline-block;
          line-height: 38px;
          width: 178px;
          height: 38px;
          color: #fff;
          border-radius: 19px;
          text-decoration: none;
          font-size: 16px;
          font-weight: bold;
          padding: 0;
          position: relative; }
          #insurance.insurance_index #main .abLinkWrapp .abLinkBox > a p.btn span::after {
            content: '';
            background: url(../images/common/ico-arrow_orange_down_001.png) no-repeat !important;
            width: 20px;
            height: 20px;
            -webkit-background-size: contain;
            background-size: contain !important;
            display: block;
            position: absolute;
            top: calc(50% - 10px);
            right: 8px; }
    #insurance.insurance_index #main .abLinkWrapp .abLinkBox:nth-of-type(2) a a::before {
      background: url(../images/insurance/pic-huki_002.png) no-repeat !important;
      background-size: contain !important; }
    #insurance.insurance_index #main .abLinkWrapp .abLinkBox:nth-of-type(3) a a::before {
      background: url(../images/insurance/pic-huki_003.png) no-repeat !important;
      background-size: contain !important; }
#insurance.insurance_index #main .insuranceBox {
  border: 1px solid  #00893f;
  padding: 35px 30px;
  margin-bottom: 57px; }
  #insurance.insurance_index #main .insuranceBox:nth-of-type(3) {
    margin-bottom: 25px; }
  #insurance.insurance_index #main .insuranceBox h4 {
    font-size: 30px;
    color: #00893f;
    padding-bottom: 26px;
    border-bottom: 2px solid #00893f;
    text-align: center;
    margin-bottom: 22px; }
    #insurance.insurance_index #main .insuranceBox h4 span {
      display: block;
      font-size: 16px;
      margin-top: 10px;
      margin-bottom: -15px; }
  #insurance.insurance_index #main .insuranceBox .txt {
    margin-bottom: 22px; }
  #insurance.insurance_index #main .insuranceBox .if {
    text-align: center;
    background-color: #f2f9f5;
    font-size: 18px;
    font-weight: bold;
    line-height: 43px;
    margin-bottom: 22px; }
  #insurance.insurance_index #main .insuranceBox .imgWrapp {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: space-between; }
    #insurance.insurance_index #main .insuranceBox .imgWrapp .imgBox figure {
      max-width: 208px;
      margin-bottom: 10px; }
      #insurance.insurance_index #main .insuranceBox .imgWrapp .imgBox figure img {
        width: 100%;
        height: auto; }
    #insurance.insurance_index #main .insuranceBox .imgWrapp .imgBox p {
      text-align: center;
      font-size: 16px;
      font-weight: bold;
      line-height: 1.3; }

.about .moduleTable td.noWrap {
  white-space: nowrap; }

/*　補償内容 about
-------------------------------------*/
.about .SP {
  display: none; }

@media screen and (max-width: 1000px) {
  /*　ユタカの自転車保険の概要 index
  -------------------------------------*/
  #insurance.insurance_index #main .abLinkWrapp {
    justify-content: center; }

  /*　補償内容 about
  -------------------------------------*/
  .about .PC th {
    display: table-cell !important; }
  .about .PC td {
    display: table-cell !important;
    font-size: 100% !important; }
  .about .SP {
    display: none; } }
@media screen and (max-width: 760px) {
  #insurance.insurance_index #main .abLinkWrapp {
    -webkit-flex-flow: column;
    /*--- safari（PC）用 ---*/
    flex-flow: column; }
    #insurance.insurance_index #main .abLinkWrapp .abLinkBox {
      max-width: 300px;
      width: 100%;
      margin: 0 auto 20px;
      border-right: 2px solid #ddd; }
  #insurance.insurance_index #main .insuranceBox .imgWrapp {
    -webkit-flex-flow: column;
    /*--- safari（PC）用 ---*/
    flex-flow: column; }
    #insurance.insurance_index #main .insuranceBox .imgWrapp .imgBox {
      display: table;
      width: 80%;
      margin: 0 auto; }
      #insurance.insurance_index #main .insuranceBox .imgWrapp .imgBox figure {
        display: table-cell;
        padding-right: 20px;
        width: 50%; }
      #insurance.insurance_index #main .insuranceBox .imgWrapp .imgBox p {
        display: table-cell;
        vertical-align: middle;
        padding-top: 15px;
        text-align: left; }
        #insurance.insurance_index #main .insuranceBox .imgWrapp .imgBox p br {
          display: none; } }
@media screen and (max-width: 600px) {
  /*　補償内容 about
  -------------------------------------*/
  .about .PC {
    display: none; }
  .about .SP {
    display: block; }
    .about .SP h5 span.cap {
      font-size: 12px;
      color: #888;
      margin-left: 8px; }
    .about .SP .moduleTable th {
      display: table-cell !important; }
    .about .SP .moduleTable td {
      display: table-cell !important;
      max-width: 110px !important; } }
@media screen and (max-width: 450px) {
  #insurance.insurance_index #main .insuranceBox .imgWrapp .imgBox {
    width: 100%;
    display: table; }
    #insurance.insurance_index #main .insuranceBox .imgWrapp .imgBox figure {
      display: table-cell;
      padding-right: 20px;
      width: 50%; }
    #insurance.insurance_index #main .insuranceBox .imgWrapp .imgBox p {
      display: table-cell;
      vertical-align: middle;
      font-size: 13px;
      padding-top: 15px;
      text-align: left; }
      #insurance.insurance_index #main .insuranceBox .imgWrapp .imgBox p br {
        display: none; } }
