@charset "UTF-8";

.clr-gray {
  color: #666;
}

.flex-wrap {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.col-2-width {
  width: 582px;
}

.col-2-width:nth-child(2n) {
  margin-right: 0;
}

.margin-auto {
  margin: auto;
}

.util-sub {
  position: relative;
  font-size: 60%;
  line-height: 1;
  bottom: -1.1em;
}

.mb-0 {
  margin-bottom: 0 !important;
}
.mt-0 {
  margin-top: 0;
}

.mod_s_mt2e {
  margin-top: 2em !important;
}

.bg-yellow {
  background: #feefd9;
}

.bg-red {
  border: 1px solid #ddd;
  background: #ffeee9;
  margin-top: 32px;
  padding: 26px 29px;
}

.box-bg-gr .flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
      justify-content: space-around;
}

.box-bg-gr .flex.mod_flex {
  justify-content: center;
  gap: 48px;
}

.box-bg-gr .box-ttl {
  margin-bottom: 0;
  text-align: center;
}

.box-bg-gr .flex.mod_flex .box-ttl {
  color: #e6002d;
}

.nl-1-nest.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.nl-1-nest.flex .list-style {
  margin-right: 36px;
}

.col-02.anc-1-pcAuto-sp1 .anc-1:nth-child(2n) {
  margin-right: 0;
}

.col-02.anc-1-pcAuto-sp1 .anc-1 {
  width: 46%;
}

.anc-1-pc2-sp2.mod {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.anc-1-pc2-sp2.mod .anc-1 {
  width: 46%;
}

.ml-25 {
  margin-left: 25px;
}

.tab-1.mod .tab {
  line-height: 1.4em;
  padding: 13px 16px;
  text-align: left;
}
.tab-1.mod .img {
  width: 60px;
  margin-right: 10px;
}

.h3-s.mod-icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.h3-s.mod-icon span {
  margin-left: 6px;
}

.h3-s.mod-icon span:first-of-type {
  margin-left: 16px;
}


.steps .box-ttl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.steps-badge {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-width: 104px;
  margin-right: 16px;
  height: 25px;
  padding: 3px 10px 0;
  background-color: #faccd5;
  border-radius: 12.5px;
  font-size: 1.2rem;
  line-height: 19px;
}

.md-1-2l-30w-02 .md-img-box.w-14p {
  width: 14%;
}

.accordion .acc-btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.accordion .acc-cont {
  padding-bottom: 10px;
}

.accordion .acc-1{
  padding: 0.75em 3.2em 0.75em 0.95em;
}
.accordion .acc-1:before{
  width: 21px;
  right: 0.95em;
}
.accordion .acc-1:after{
  height: 21px;
  right: calc(1.0em + 8px);
}

.accordion .acc-1:not(:last-child) {
  margin-top: 9px;
}

.accordion .acc-btn{
  line-height: 1.4;
}

.accordion .acc-btn .img {
  width: 70px;
  margin-right: 14px;
}

.ul-2.line li:before {
  content: '';
  width: 8px;
  height: 2px;
  margin-top: .55em;
  background-color: #333;
}

.bt-style.bt-large {
  width: 580px;
}

.mod_s_taL {
  text-align: left !important;
}

.tb-1 th,
.tb-1 td,
.tb-1-scroll th,
.tb-1-scroll td {
  padding: .6em .8em;
}

.tb-1 td .nl-1-nest .list-style:last-child,
.tb-1-scroll td .nl-1-nest .list-style:last-child {
  margin-bottom: 0;
}

.mb-0 {
  margin-bottom: 0 !important;
}

.tb-1 .width-8,
.tb-1-scroll .width-8,
.tb-1-04-vertical .width-8 {
  width: 8%;
}

.tb-1 .width-9,
.tb-1-scroll .width-9,
.tb-1-04-vertical .width-9 {
  width: 9%;
}

.tb-1 .width-27,
.tb-1-scroll .width-27,
.tb-1-04-vertical .width-27 {
  width: 27%;
}

.tb-1 .width-31,
.tb-1-scroll .width-31,
.tb-1-04-vertical .width-31 {
  width: 31%;
}

.tb-1 .width-32,
.tb-1-scroll .width-32,
.tb-1-04-vertical .width-32 {
  width: 32%;
}

.tb-1 .width-33,
.tb-1-scroll .width-33,
.tb-1-04-vertical .width-33 {
  width: 33%;
}


.table__w--9per {
  width: 9% !important;
}
.table__w--10per {
  width: 10% !important;
}
.table__w--12per {
  width: 12% !important;
}
.table__w--15per {
  width: 15% !important;
}
.table__w--20per {
  width: 20% !important;
}
.table__w--25per {
  width: 25% !important;
}
.table__w--26per {
  width: 26% !important;
}
.table__w--30per {
  width: 30% !important;
}
.table__w--40per {
  width: 40% !important;
}
.table__w--64per {
  width: 64% !important;
}
.table__w--70per {
  width: 70% !important;
}

.h3-s.mod-icon{
  margin-top: 0;
}
.nl-1-nest li:last-child{
  margin-bottom: 0;
}

.mod_fs10{
  display: block;
  font-size: 10px;
  font-weight: bold;
  line-height: 1;
  letter-spacing: 5px;
  text-align: left;
}

.lh_14{
  line-height: 1.4em;
}

.h3-s.mod-icon span img{
  width: 100%;
  max-width: 40px;
}
.ruby{
  position: relative;
}
.ruby:before{
  position: absolute;
  content: "いのち";
  top: -15px;
  left: 0;
  right: 0;
  font-size: 0.5em;
  text-align: center;
}
.ruby.ruby-low:before{
  top: -10px;
}

.ruby2 {
    position: relative;
}
.ruby2:before {
  position: absolute;
  content: "いのち";
  top: -15px;
  left: 0;
  right: 0;
  font-size: 0.5em;
  text-align: center;
}


@media print, screen and (min-width: 768px) {
  .pb-22 {
    padding-bottom: 0 !important;
  }
  .mb-45p {
    margin-bottom: 45px !important;
  }
  .mod_s_mt06e{
    margin-top: 0.6em;
  }
  .mod_s_mt18e{
    margin-top: 1.8em;
  }
  .box-bg-gr .box-ttl {
    font-size: 2.4rem;
  }
  .tab-cont .col-by-3 .col-box{
    margin-bottom: 0;
  }
  .steps .box-bd-gr{
    padding: 26px 29px;
  }
  .steps .im-1{
    margin-top: 13px;
  }
  .box-bg-gr .flex.mod_flex {
    align-items: flex-end;
  }
}

@media only screen and (max-width: 767.98px) {
  .sp-max-tbl-w-850 {
    max-width: 850px;
  }
  .sp-mt0 {
    margin-top: 0;
  }

  .sp-text-center {
    text-align: center;
  }

  .sp-mb0 {
    margin-bottom: 0 !important;
  }
  .mod_s_mb1e-sp{
    margin-bottom: 1em!important;
  }

  .sp-center {
    margin-left: auto;
    margin-right: auto;
  }

  .sp-mt2em {
    margin-top: 2.0em;
  }

  .sp-mt36 {
    margin-top: 36px !important;
  }

  .sp-w-auto {
    width: auto !important;
  }

  .steps .box-ttl {
    font-size: 1.5rem;
    flex-direction: column;
    align-items: start;
    margin-bottom: 11px;
    line-height: 1.6;
  }

  .box-bd-gr .box-txt{
    font-size: 1.4rem;
  }

  .steps-badge {
    margin-bottom: 5px;
  }

  .bg-red {
    margin-top: 28px;
    padding: 14px;
  }

  .box-bg-gr .flex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }

  .nl-1-nest.flex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }

  .box-bg-gr .flex.mod_flex{
    gap: 0;
  }

  .box-bg-gr .box-ttl:first-child {
    margin-bottom: 13px;
  }
  
  .box-bg-gr.bg-red .box-ttl:first-child {
    margin-bottom: 10px;
  }
  
  .box-bg-gr.bg-red .box-ttl:last-child {
    margin-top: 0;
  }

  .flex-reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }

  .col-2-width,
  .col-02.anc-1-pcAuto-sp1 .anc-1,
  .md-1-2l-30w-02 .md-img-box.w-14p {
    width: 100%;
  }

  .anc-1-pc2-sp2.mod .anc-1 {
    margin-top: 2em;
  }

  .col-1.flex-reverse .col-1-box:last-child .im-1 {
    margin-left: auto;
    margin-right: auto;
  }

  .bt-style.bt-large {
    width: 100%;
  }
  .sp-max-w-812 {
    max-width: 812px !important;
  }
  .sp-mb-1p54em {
    margin-bottom: 1.54em !important;
  }
  .sp-mb-2p2em {
    margin-bottom: 2.2em !important;
  }
  .h3-s.mod-icon{
    padding-bottom: 11px;
    margin-bottom: 19.5px;
  }
  .h3-s.mod-icon span {
    margin-left: 5.5px;
  }
  .h3-s.mod-icon span:first-of-type {
    margin-left: 11px;
  }
  .nl-1-nest li.list-style:before{
    margin-right: 8.5px;
  }
  .ul-2.line {
    margin-top: 14px!important;
  }
  .steps .box-bd-gr{
    padding: 17px 19.5px 14px;
  }
  .steps-badge{
    font-size: 1rem;
    padding: 3px 11px 0;
    line-height: 1.6em;
  }
  .steps .mod_s_mt06e{
    margin-top: 0.8em!important;
  }
  .mod_s_mt14e-sp{
    margin-top: 1.4em!important;
  }
  .mod_s_mb2e-sp{
    margin-bottom: 2em!important;
  }
  .mod_s_mt0-sp{
    margin-top: 0!important;
  }
  .steps .im-1{
    margin-top: 11px;
  }
  .mod_fs10{
    line-height: 1.5;
  }
  .mod_icon_tablescroll_red{
    margin-bottom: 1em;
  }
  .ruby:before{
    top: -13px;
  }
  .ruby.ruby-low:before{
    top: -7px;
  }
  .ruby2:before{
    top: -11px;
  }
}