@charset "UTF-8";
/* タイトルのイラスト調整
--------------------------------------------------------*/
.m-idxheading1.is-medicalkit-r .m-idxheading1__bginner {
  background-size: 165px auto;
}

h3.m-kitr-option {
  background-color: #ffccff;
}
h3.m-kitr-option.m-heading3-s:before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  width: 3px;
  height: 100%;
  background-color: #ff7eff;
}

/* おすすめの医療保険（終身医療保険） メディカルＫｉｔ Ｒ
--------------------------------------------------------*/
.m-premiumcol__col.is-kit-r .m-premiumcol__ttl {
  background-size: 180px auto;
}

.m-premiumcol__col.is-kit-r .m-premiumcol__ttl--custum {
  background-size: 135px auto;
}

/* 各商品のプレミアムシリーズアイコン調整
--------------------------------------------------------*/
.m-premiumcol__col .m-premiumcol__lead {
  padding: 0;
  background: none;
}
.m-premiumcol__col .m-premiumcol__lead > a {
  margin: 0 0 13px;
  display: block;
}

/* ご契約方法：「対面」と「通販」と「インターネット申込」の幅調整
--------------------------------------------------------*/
.m-cols3 .m-cols__col.m-cols__col--w31 {
  width: 31%;
}
.m-cols3 .m-cols__col.m-cols__col--w38 {
  width: 38%;
}

/* SP
--------------------------------------------------------*/
@media screen and (max-width: 767px) {
  /* 各商品のSP時のタイトル調整 */
  .m-idxheading1__premium {
    position: static;
    display: table-cell;
  }
  .m-idxheading1__premium img {
    width: 55px;
    height: auto;
  }
  .m-idxheading1__text {
    display: table-cell;
    padding-right: 0;
  }

  /* おすすめの医療保険（終身医療保険） メディカルＫｉｔ Ｒ */
  .m-premiumcol__col.is-kit-r .m-premiumcol__ttl {
    background-size: 130px auto;
  }

  .m-premiumcol__col.is-kit-r .m-premiumcol__ttl--custum {
    background-size: 110px auto;
  }

  /* ご契約方法：「対面」と「通販」と「インターネット申込」の幅調整 */
  .m-cols3 .m-cols__col.m-cols__col--spW100 {
    width: 100%;
  }
}

.m-btn-anchor {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  height: 100%;
  padding: 10px 30px 10px 10px;
}

.m-btn-anchor::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: calc(50% - 8px);
  right: 10px;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background-color: #009ce5;
  -webkit-transition: all .3s;
  transition: all .3s;
}

.m-btn-anchor--coral::before {
  background-color: #F5ACA2;
}

.m-btn-anchor--hotpink::before {
  background-color: #F8A1BE;
}

.m-btn-anchor--wheat::before {
  background-color: #EBCFA7;
}

.m-btn-anchor--turquoise::before {
  background-color: #65C5E2;
}

.m-btn-anchor--lightcyan::before {
  background-color: #98D9F0;
}

.m-btn-anchor--lightblue::before {
  background-color: #A5D2D6;
}

.m-btn-anchor::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: calc(50% - 3px);
  right: 16px;
  -webkit-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  transform: rotate(135deg);
  width: 4px;
  height: 4px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
}

.m-btn-anchor > span {
  padding-left: 0;
}

.m-btn-anchor > span::before {
  content: none;
}

@media screen and (max-width: 767px) {
  .m-btn-anchor {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    height: 70px;
    padding: 10px 22px 10px 7px;
  }

  .m-btn-anchor::before {
    right: 5px;
  }

  .m-btn-anchor::after {
    right: 11px;
  }
}

@media screen and (min-width: 768px) {
  .m-anchor-blk .m-anchor-blk__col {
    margin-top: 20px;
  }
}

@media screen and (max-width: 767px) {
  .m-anchor-blk {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    margin-top: 30px;
    margin-left: -10px;
  }

  .m-anchor-blk .m-anchor-blk__col {
    width: 50%;
    padding-left: 10px;
  }

  .m-anchor-blk .m-anchor-blk__col > :first-child {
    margin-top: 0;
  }

  .m-anchor-blk .m-anchor-blk__col > :last-child {
    margin-bottom: 0;
  }

  .m-anchor-blk__col.m-cols--s {
    margin-left: 0;
  }

  .m-anchor-blk__col .m-cols__col {
    padding-left: 0;
  }
}

/* 大切アイコン
--------------------------------------------------------*/

.m-icon-important {
  position: relative;
  padding-left: 67px;
  min-height: 26px;
}

.m-icon-important:after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 55px;
  height: 66px;
  background: url(/resources/img/icon_important.png) no-repeat 0 0;
  background-size: 100% auto;
}

@media screen and (max-width: 767px) {
  .m-icon-important {
    padding-left: 52px;
  }
  
  .m-icon-important:after {
    width: 40px;
    height: 50px;
  }
}

.m-tbl-wid-400 {
  min-width: 400px;
}

.m-tbl-wid-500 {
  min-width: 500px;
}

.m-vertical-text {
  display: inline-block;
  width: 1em;
  line-height: 1.3;
}

.m-tbl-yell,
.m-tbl-yell th,
.m-tbl-yell td {
  border-color: #aaa;
}

.m-tbl-bg-blue {
  background-color: #65b1e5!important;
}

.m-tbl-bg-sky {
  background-color: #b5e2ed!important;
}

.m-tbl-bg-orange {
  background-color: #f6b082!important;
}

.m-tbl-bg-pink {
  background-color: #fce4d6!important;
}

.m-tbl-bg-gray {
  background-color: #c9c9c9!important;
}

@media screen and (min-width: 768px) {
  .m-form-col {
    display: flex;
    align-items: center;
    padding-right: 10px;
  }

  .m-form-col-select {
    min-width: 76px;
    margin-right: 10px;
  }
}

.is-type3 .m-simtotal__price>span {
  padding-left: 5px;
}