@charset "UTF-8";

/* ========================================================================== */
/* info.css */
/* ========================================================================== */


/* オンライン・郵送契約の比較ページ
========================================================================== */
.c-box__features{
  text-align: left;
  border-top: 2px solid #2e3184;
  margin: 30px 0;
}
.c-box__features--title__wrap{
  margin-top: 15px;
}
.c-box__features--title .c-box__features--logo{
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-width: 120px;
  height: 68px;
  border: 1px solid #d9d9d9;
  vertical-align: middle;
}
.c-box__features--title .c-box__features--logo img{
  max-width: 80%;
  max-height: 80%;
}
.c-box__features--title{
  display: flex;
  align-items: center;
}
.c-box__features--title .c-box__features--company{
  display: inline-block;
  align-items: center;
  color: #2e3192;
  font-size: 16px;
  margin-left: 15px;
}
.c-box__features--title .c-box__features--company span{
  font-size: 12px;
  font-weight: normal;
  color: #333;
  display: block;
  margin-bottom: 2px;
}
.c-box__features--title .c-box__features--ic_net{
  background-color: #2e3184;
  padding: 1px 6px;
  display: inline-block !important;
  color: #fff !important;
  font-size: 12px !important;
  margin-bottom: 8px !important;
}
.c-box__features--btn{
  margin-top: 15px;
}
.c-box__features--btn .c-btn__online,
.c-box__features--btn .c-btn__mailing{
  font-size: 18px;
  width: 100%;
  text-align: center;
  height: 52px;
  padding: 3px 0;
  line-height: 1.4;
  transition: all .1s ease-in-out;
}
.c-box__features--btn .c-btn__mailing:hover{
  border-bottom: 1px solid #ac0300;
}
.c-box__features--btn .c-btn__mailing.price-btn-search:hover{
  border-bottom: 1px solid #0f8443;
}
.c-box__features--btn .c-btn__online .btn_to-company,
.c-box__features--btn .c-btn__mailing .btn_to-subtext{
  font-size: 13px!important;
  margin-top: 0;
  font-weight: normal;
  display: block;
}
.c-box__features--btn p{
  font-size: 13px;
  text-align: center;
  margin: 13px 0 0;
}
.c-list__features--icon{
  margin-top: 15px;
}
.c-list__features--icon li{
  font-size: 12px;
  background-color: #ebebeb;
  outline: 1px solid #ddd;
  color: #aaa;
  display: inline-block;
  padding: 2px 10px;
  margin: 3px 0;
  border-radius: 15px;
  box-sizing: border-box;
}
.c-list__features--icon .ic_today,
.c-list__features--icon .ic_net,
.c-list__features--icon .ic_repeat,
.c-list__features--icon .ic_disease,
.c-list__features--icon .ic_age70,
.c-list__features--icon .ic_unlimited,
.c-list__features--icon .ic_chroniccover,
.c-list__features--icon .ic_line{
  outline: none;
  color: #fff;
}

.c-list__features--icon .ic_today{background-color: #416bd6;}
.c-list__features--icon .ic_net{background-color: #e84949;}
.c-list__features--icon .ic_repeat{background-color: #e37f36;}
.c-list__features--icon .ic_disease{background-color: #64a01d;}
.c-list__features--icon .ic_age70{background-color: #9654a4;}
.c-list__features--icon .ic_unlimited{background-color: #4871a8;}
.c-list__features--icon .ic_chroniccover{background-color: #b58228;}
.c-list__features--icon .ic_line{background-color: #48ab48;}
.c-box__features__detail{
  margin-top: 15px;
}
.c-box__features__detail .u-txt__grant-square{
  position: relative;
  margin-left: 1.2rem;
}
.c-box__features__detail .u-txt__grant-square::before {
  position: absolute;
  left: -1.2em;
}
@media screen and (min-width: 768px) {
  .c-box__features{
    margin: 40px 0;
  }
  .c-box__features--title__wrap{
    display: flex;
    align-items: center;
    border-bottom: 1px dashed #ccc;
    padding-bottom: 20px;
    margin: 20px 0;
  }
  .c-box__features--title{
    display: flex;
    align-items: center;
    width: calc(100% - 290px);
  }
  .c-box__features--title .c-box__features--logo{
    width: 160px;
    min-width: auto;
    height: 90px;
  }
  .c-box__features--title .c-box__features--company{
    width: 330px;
    margin-left: 20px;
    font-size: 18px;
  }
  .c-box__features--title .c-box__features--company span{
    font-size: 14px;
  }
  .c-box__features--title .c-box__features--ic_net{
    padding: 2px 10px;
    font-size: 12px !important;
    margin-bottom: 10px !important;
  }
  .c-box__features--btn{
    width: 270px;
    margin-left: 20px;
    margin-top: 0;
  }
  .c-box__features--btn .c-btn__online,
  .c-box__features--btn .c-btn__mailing{
    font-size: 21px;
    height: 64px;
    padding: 5px 0;
  }
  .c-box__features--btn .c-btn__online .btn_to-company,
  .c-box__features--btn .c-btn__mailing .btn_to-subtext{
    font-size: 14px!important;
  }
  .c-box__features--btn p{
    margin: 8px 0 0;
  }
  .c-list__features--icon li{
    margin: 0;
  }
  .c-box__features__detail{
    margin-top: 20px;
  }
}


.c-table__info{
  width: 100%;
  margin: 15px 0 0;
}
.c-table__info th,
.c-table__info td{
  border: 1px solid #ccc;
  padding: 8px 12px;
  font-size: 12px;
}
.c-table__info td:has(.c-list__info--icon){
  padding: 8px 12px;
}
.c-table__info th{
  background-color: #f2f2f2;
  font-weight: normal;
  width: 190px;
}
.c-table__info th a.js_modal_open{
  color: #333;
}
.c-table__info th a.js_modal_open:hover{
  text-decoration: underline;
}
.c-table__info th a.js_modal_open:hover .help{
  background-color: #aaa;
}
.c-table__info .help{
  right: -5px;
}
.c-list__info--icon li{
  font-size: 12px;
  background-color: #ebebeb;
  outline: 1px solid #ddd;
  border-radius: 5px;
  color: #aaa;
  display: inline-block;
  padding: 2px 6px;
  margin: 3px 3px 3px 0;
}
.c-list__info--icon li.ic_on{
  background-color: #ebefff;
  outline: 1px solid #596ea8;
  color: #596ea8;
}
@media screen and (min-width: 768px) {
  .c-table__info th,
  .c-table__info td{
    padding: 8px 15px;
    font-size: 14px;
  }
  .c-table__info td:has(.c-list__info--icon){
    padding: 12px 15px;
  }
  .c-list__info--icon li{
    font-size: 13px;
    margin: 0 2px 0 0;
  }
}


/* モーダル メモ：あとでapplication.cssに移動
========================================================================== */

.mfp-content .ttl-type01 {
  font-weight: bold;
  font-size: 16px;
  border-left: 5px solid #999;
  padding: 0 10px;
  margin: 20px 0 15px;
  text-align: left;
}
.mfp-content .modal > .ttl-type01:first-of-type{
  margin-top: 0;
}
@media screen and (min-width: 768px) {
  .mfp-content .ttl-type01{
    font-size: 18px;
  }
}