@charset "UTF-8";
/* 記事カード */
/* ビットメール必須化 */
@media only screen and (max-width: 767px) {
  /* TODO add start*/
  .bit_main {
    width: 100%;
    margin: 0 auto;
  }

  .bit__main_bd {
    position: relative;
    margin: 0 auto 0 auto;
    padding: 36px 0;
    background-color: #fff;
  }

  .mdl-p-edit .p_edit_body--bit_main:after {
    height: unset;
  }

  /* TODO add end*/
  /* TODO start*/
  .bit_main-msg {
    margin-top: 17px;
    margin-bottom: 20px;
    margin-left: 2.5%;
    padding: 0 16px;
    color: #333;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: 400;
    letter-spacing: 0.2px;
    line-height: 28px;
  }

  .bit_mm_ttl {
    /* display: flex; */
  }

  .bit_mm_ttl2 {
    display: flex;
  }

  .bit_mm_ttl3 {
    display: inline-block;
    margin-top: 2px;
  }

  .bit_bit_img {
    width: 96%;
    margin-left: 10px;
  }

  .bit_main-ttl {
    font-size: 24px;
    font-size: 2.4em;
    font-weight: 700;
    text-align: center;
  }

  .ttl3 {
    display: block;
    margin-top: 15px;
    text-align: center;
  }
  .ttl3.is-limit {
    margin-top: 10px;
  }

  .ttl3 a {
    display: inline-block;
    color: #2470ff;
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: normal;
    letter-spacing: 0.58px;
    line-height: 14px;
    text-decoration: none;
    cursor: pointer;
  }
  .ttl3 a:after {
    display: inline-block;
    width: 15px;
    height: 10px;
    margin-left: 13px;
    background-image: url(/assets/images/common/arrow_down_blu_03.png);
    background-repeat: no-repeat;
    background-size: 15px 10px;
    vertical-align: 0px;
    content: "";
  }
  .ttl3 a.is-open:after {
    display: inline-block;
    width: 15px;
    height: 10px;
    margin-left: 13px;
    background: url("/assets/images/common/arrow_up_blu_03.png");
    background-repeat: no-repeat;
    background-size: 15px 10px;
    vertical-align: 0px;
    content: "";
  }

  .reg_main_trm-area {
    display: none;
    height: 160px;
    margin-top: 20px;
    margin-bottom: 30px;
    padding: 0 10px;
    overflow-y: auto;
    border: 1px solid #d4d4d4;
    border-radius: 4px;
    background-color: #f6f6f6;
    color: #333;
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: 400;
    letter-spacing: 0.44px;
    line-height: 24px;
    text-align: left;
  }

  .check-ipt {
    display: none;
  }
  .check-ipt:checked + .check-lbl:before {
    margin-top: -16px;
    margin-left: -2px;
    border: 2px solid #4e74e9;
  }
  .check-ipt:checked + .check-lbl:after {
    -ms-transform: rotate(40deg);
    display: block;
    position: absolute;
    /* top: -6px; */
    top: 50px;
    left: 7px;
    width: 6px;
    height: 18px;
    margin-top: -16px;
    margin-left: -2px;
    transform: rotate(40deg);
    border-right: 6px solid #4e74e9;
    border-bottom: 6px solid #4e74e9;
    content: "";
  }

  .check-ipt-article {
    display: none;
  }
  .check-ipt-article:checked + .check-lbl:before {
    border: 2px solid #979797;
  }
  .check-ipt-article:checked + .check-lbl:after {
    -ms-transform: rotate(40deg);
    display: block;
    position: absolute;
    /* top: -6px; */
    top: 50px;
    left: 7px;
    width: 6px;
    height: 18px;
    transform: rotate(40deg);
    border-right: 6px solid #979797;
    border-bottom: 6px solid #979797;
    content: "";
  }

  .check-lbl {
    position: relative;
    padding-left: 30px;
  }
  .check-lbl:before {
    display: block;
    position: absolute;
    /* top: 0; */
    top: 56px;
    left: 0;
    width: 18px;
    height: 18px;
    margin-top: -16px;
    border: 2px solid #979797;
    background-color: #f8f8f8;
    content: "";
  }

  > .check {
    padding: 16px 6px 0px 6px;
  }
  > .check .check_title {
    font-weight: 700;
  }
  > .check .check_inner {
    display: block;
    margin: 16px 0;
  }
  > .check .check_inner.is-ex-mark {
    position: relative;
  }
  > .check .check_inner.is-ex-mark:before {
    display: inline-block;
    position: relative;
    left: -25px;
    width: 18px;
    height: 18px;
    margin-right: -22px;
    border-radius: 50%;
    background-color: #ce0000;
    color: #fff;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 18px;
    text-align: center;
    content: "!";
  }

  .bit-limit_txt_bitmail {
    margin: 5px 0;
    color: #333;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: 400;
    letter-spacing: 0.2px;
    line-height: 28px;
  }

  #wrapper #contents .cmn_btn.cmn_btn--bit_main {
    margin-top: 15px;
  }
  #wrapper #contents .reg_main_trm-area.reg_main_trm-area--bit_main {
    margin: 15px 0 5px 0;
  }

  /* TODO end*/
  ul.bit_table_mm ul.bit_table_mm_ct li {
    display: flex;
    align-items: flex-start;
    /* display: block; */
    justify-content: left;
    /* padding-top: 1.5em; */
    /* padding-bottom: 1.5em; */
    padding: 20px;
    border-bottom: 1px dotted #aaa;
  }

  ul.bit_table_mm ul.bit_table_mm_ct li.bit_is-bitmail {
    align-items: flex-start;
    /* isplay: table; */
    justify-content: left;
    padding-top: 1.5em;
    padding-bottom: 1.5em;
    border: 1px solid #d4d4d4;
    border-bottom: 1px dotted #aaa;
    border-radius: 4px;
    background-color: #f6f6f6;
  }

  ul.bit_table_mm ul.bit_table_mm_ct li:last-of-type {
    /* border-bottom: none; */
  }

  ul.bit_table_mm ul.bit_table_mm_ct li div.mm_ttl {
    flex: 0 0 21rem;
    margin-right: 1.5em;
  }

  ul.bit_table_mm ul.bit_table_mm_ct li div.mm_ttl img {
    margin-top: 0.5rem;
  }

  ul.bit_table_mm ul.bit_table_mm_ct li div.mm_ttl p.frequency {
    color: #53768c;
    font-size: 0.9em;
    font-weight: bold;
    line-height: 1.6em;
    text-align: left;
  }

  div#contents {
    padding-top: 5rem;
  }

  div#pageTitle {
    margin-top: 1rem;
  }

  div#pageTitle {
    padding: 13px 3% 13px 3%;
    background-color: transparent;
  }

  ul.bit_table_mm ul.bit_table_mm_ct li {
    display: block;
  }
  ul.bit_table_mm ul.bit_table_mm_ct li .req {
    width: auto;
    margin-left: -4px;
    padding: 2px 3px;
    border: 1px solid #cf1010;
    color: #cf1010;
    font-size: 10px;
    font-size: 1rem;
    font-weight: 400;
    letter-spacing: 0.79px;
    line-height: 14px;
    text-align: center;
    white-space: nowrap;
  }

  ul.bit_table_mm ul.bit_table_mm_ct li div.mm_ttl {
    flex-grow: 1;
    width: auto;
    max-width: 300px;
    margin-right: 0;
    margin-bottom: 1rem;
  }

  ul.bit_table_mm ul.bit_table_mm_ct li div.mm_ttl img {
    width: 80%;
    margin-top: 0.5rem;
  }

  ul.bit_table_mm ul.bit_table_mm_ct li div.bit_mm_dsc {
    /* background-color: #fff; */
    /* padding: 20px; */
    /* font-size: 16px; */
    /* font-size: 1.6em; */
    line-height: 160%;
    text-align: left;
  }

  span.br_on_m {
    display: inline;
  }
}
@media only screen and (min-width: 768px) {
  /* TODO add start*/
  .bit_main {
    width: auto;
    margin: 0 auto;
  }

  .bit_main_bd {
    position: relative;
    padding: 0 40px;
    background-color: #fff;
  }

  /* TODO add end*/
  /* TODO start layout.cssより */
  .mdl-p-edit .p_edit_body {
    padding-right: 80px;
    padding-left: 72px;
  }
  .mdl-p-edit .p_edit_body:after {
    display: block;
    /* height: 60px; */
    height: unset;
    content: "";
  }
  .mdl-p-edit .p_edit_body--bit_main:after {
    height: unset;
  }
  .mdl-p-edit .p_edit_body--bit_main .d-rw_ai-cnt {
    margin-top: unset;
  }
  .mdl-p-edit .p_edit_body--readmore_light {
    margin: 0 0 26px 0;
  }

  /* TODO end layout.cssより */
  /* TODO start*/
  .bit_main-msg {
    margin-top: 17px;
    margin-bottom: 20px;
    margin-left: 2.5%;
    color: #333;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: 400;
    letter-spacing: 0.2px;
    line-height: 28px;
  }

  .bit_main-ttl {
    font-size: 24px;
    font-size: 2.4em;
    font-weight: 700;
    text-align: center;
  }

  .bit_mm_ttl {
    display: flex;
    margin-bottom: 1rem;
    margin-left: 2rem;
  }

  .bit_mm_ttl2 {
    display: flex;
  }

  .bit_mm_ttl3 {
    margin-top: 2px;
  }

  .bit_bit_img {
    /* width: max-content; */
    /* margin-left: 10px; */
    width: 160px;
  }

  .ttl3 {
    display: block;
    margin-top: 15px;
    text-align: center;
  }
  .ttl3.is-limit {
    margin-top: 10px;
  }

  .ttl3 a {
    display: inline-block;
    color: #2470ff;
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: normal;
    letter-spacing: 0.58px;
    line-height: 14px;
    text-decoration: none;
    cursor: pointer;
  }
  .ttl3 a:after {
    display: inline-block;
    width: 15px;
    height: 10px;
    margin-left: 13px;
    background-image: url(/assets/images/common/arrow_down_blu_03.png);
    background-repeat: no-repeat;
    background-size: 15px 10px;
    vertical-align: 0px;
    content: "";
  }
  .ttl3 a.is-open:after {
    background-image: url(/assets/images/common/arrow_up_blu_03.png);
  }

  .check-ipt {
    display: none;
  }
  .check-ipt:checked + .check-lbl:before {
    border: 2px solid #4e74e9;
  }
  .check-ipt:checked + .check-lbl:after {
    -ms-transform: rotate(40deg);
    display: block;
    position: absolute;
    /* top: -6px; */
    top: 40px;
    left: 7px;
    width: 6px;
    height: 18px;
    transform: rotate(40deg);
    border-right: 6px solid #4e74e9;
    border-bottom: 6px solid #4e74e9;
    content: "";
  }

  .check-ipt-article {
    display: none;
  }
  .check-ipt-article:checked + .check-lbl:before {
    border: 2px solid #979797;
  }
  .check-ipt-article:checked + .check-lbl:after {
    -ms-transform: rotate(40deg);
    display: block;
    position: absolute;
    /* top: -6px; */
    top: 40px;
    left: 7px;
    width: 6px;
    height: 18px;
    transform: rotate(40deg);
    border-right: 6px solid #979797;
    border-bottom: 6px solid #979797;
    content: "";
  }

  .check-lbl {
    position: relative;
    padding-left: 30px;
  }
  .check-lbl:before {
    display: block;
    position: absolute;
    /* top: 0; */
    top: 46px;
    left: 0;
    width: 18px;
    height: 18px;
    border: 2px solid #979797;
    background-color: #f8f8f8;
    content: "";
  }

  > .check {
    padding: 16px 6px 0px 6px;
  }
  > .check .check_title {
    font-weight: 700;
  }
  > .check .check_inner {
    display: block;
    margin: 16px 0;
  }
  > .check .check_inner.is-ex-mark {
    position: relative;
  }
  > .check .check_inner.is-ex-mark:before {
    display: inline-block;
    position: relative;
    left: -25px;
    width: 18px;
    height: 18px;
    margin-right: -22px;
    border-radius: 50%;
    background-color: #ce0000;
    color: #fff;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 18px;
    text-align: center;
    content: "!";
  }

  .bit-limit_txt_bitmail {
    margin: 5px 0;
    color: #333;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: 400;
    letter-spacing: 0.2px;
    line-height: 28px;
  }

  #wrapper #contents .cmn_btn.cmn_btn--bit_main {
    margin-top: 15px;
  }
  #wrapper #contents .reg_main_trm-area.reg_main_trm-area--bit_main {
    margin: 15px 0;
  }

  /* TODO end */
  ul.bit_table_mm ul.bit_table_mm_ct li {
    display: flex;
    align-items: flex-start;
    /* display: block; */
    justify-content: left;
    padding-top: 1.5em;
    padding-bottom: 1.5em;
    border-bottom: 1px dotted #aaa;
  }

  ul.bit_table_mm ul.bit_table_mm_ct li.bit_is-bitmail {
    display: flex;
    align-items: flex-start;
    justify-content: left;
    padding-top: 1.5em;
    padding-bottom: 1.5em;
    border: 1px solid #d4d4d4;
    border-bottom: 1px dotted #aaa;
    border-radius: 4px;
    background-color: #f6f6f6;
  }

  ul.bit_table_mm ul.bit_table_mm_ct li:last-of-type {
    /* border-bottom: none; */
  }

  ul.bit_table_mm ul.bit_table_mm_ct li div.mm_ttl {
    flex: 0 0 21rem;
    margin-right: 1.5em;
  }

  ul.bit_table_mm ul.bit_table_mm_ct li div.mm_ttl img {
    width: 794px;
    margin-top: 0.5rem;
    /* 表示160px想定 */
  }

  ul.bit_table_mm ul.bit_table_mm_ct li div.mm_ttl p.frequency {
    color: #53768c;
    font-size: 0.9em;
    font-weight: bold;
    line-height: 1.6em;
    text-align: left;
  }

  ul.bit_table_mm ul.bit_table_mm_ct li {
    /* display:block; */
  }
  ul.bit_table_mm ul.bit_table_mm_ct li .req {
    width: auto;
    margin-left: 16px;
    padding: 2px 3px;
    border: 1px solid #cf1010;
    color: #cf1010;
    font-size: 10px;
    font-size: 1rem;
    font-weight: 400;
    letter-spacing: 0.79px;
    line-height: 14px;
    text-align: center;
    white-space: nowrap;
  }

  ul.bit_table_mm ul.bit_table_mm_ct li div.mm_ttl {
    width: auto;
    margin-bottom: 1rem;
    /* margin-right: 0; */
    margin-left: 2rem;
  }

  ul.bit_table_mm ul.bit_table_mm_ct li div.bit_mm_dsc {
    /* background-color: #fff; */
    margin: 0 10px 10px 0;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 160%;
    /* width: 400px; */
    text-align: left;
  }

  span.br_on_m {
    display: block;
  }
}