/* biobb
----------------------------------------------------*/

.biobb .st-Inner img {
  width: 100%;
}

/* Visual */
.biobb .company-Eye {
  background-image: url('/common/images/bg_visual_02.png');
  background-position: center;
}

@media screen and (max-width: 768px) {
  .biobb .company-Eye {
    background-position: top;
  }
}

/* biobb
----------------------------------------------------*/

.biobb-Intro {
  margin-bottom: 56px;
}
.biobb-Intro h2 {
  padding: 24px 0;
  font-size: 32px;
  font-weight: 700;
  line-height: 1.25;
}
.biobb-Intro p {
  font-size: 16px;
  line-height: 1.5;
}
.biobb-Intro p + p {
  margin-top: 24px;
}

.biobb-Subject ol {
  width: 100%;
  max-width: 797px;
  margin-top: 32px;
}
.biobb-Subject ol li {
  display: flex;
  border-top: 1px solid #C8C8C8;
}
.biobb-Subject ol li:last-of-type {
  border-bottom: 1px solid #c8c8c8;
}
.biobb-Subject ol li > .num {
  display: block;
  padding: 16px;
  font-size: 16px;
  font-weight: 700;
  background-color: #F5F5F5;
}
.biobb-Subject ol li > .wrap {
  display: flex;
  align-items: center;
  width: 100%;
  padding: 16px 24px;
  background-color: #fff;
}
.biobb-Subject ol li .name {
  width: 70%;
  font-size: 16px;
  font-weight: 700;
}
.biobb-Subject ol li a {
  font-size: 16px;
  font-weight: 700;
}
.biobb-Subject ol li .jan {
  font-size: 16px;
}

.biobb-Overview {
  margin-top: 72.5px;
}
.biobb-Overview > p {
  margin-top: 32px;
  font-size: 16px;
  line-height: 1.5;
}
.biobb-Overview dl {
  margin-top: 32px;
  border: 1px solid #C1C4CC;
}
.biobb-Overview dl + dl {
  margin-top: 24px;
}
.biobb-Overview dt {
  padding: 16px 24px;
  font-size: 18px;
  font-weight: 700;
  background-color: #F5F5F5;
}
.biobb-Overview dd {
  padding: 16px 24px 32px;
  background-color: #fff;
}
.biobb-Overview dd p {
  font-size: 16px;
  line-height: 1.5;
}

.biobb-Prev {
  margin-top: 72px;
}
.biobb-Prev p {
  margin-top: 32px;
  font-size: 16px;
  line-height: 1.5;
}

.biobb-Qa {
  margin-top: 72px;
}
.biobb-Qa > a {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 546px;
  margin-top: 32px;
  padding: 27px 62px 27px 24px;
  background-color: #fff;
  border: 2px solid #C1D5F0;
  border-radius: 8px;
  text-decoration: none;
  transition: .15s;
}
.biobb-Qa > a:hover {
  background-color: #f5f5f5;
  border: 2px solid #C8C8C8;
}
.biobb-Qa > a::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 16px;
  width: 24px;
  height: 24px;
  margin: auto;
  background-image: url("/common/images/ic_arrow_11.svg");
  background-size: cover;
  transition: .15s;
}
.biobb-Qa > a:hover::before {
  background-image: url("/common/images/ic_arrow_12.svg");
}
.biobb-Qa > a .icon {
  flex-shrink: 0;
  display: block;
  width: 72px;
}
.biobb-Qa > a .text {
  margin-left: 24px;
}
.biobb-Qa > a .text h4 {
  font-size: 24px;
  font-weight: 700;
  color: #000;
  line-height: 1.25;
}
.biobb-Qa > a .text p {
  margin-top: 8px;
  font-size: 16px;
  color: #464646;
  line-height: 1.5;
}
.biobb-Qa p.sup {
  margin-top: 24px;
  font-size: 12px;
  line-height: 1.5;
}
.biobb-Qa p.sup a {
  font-weight: 700;
}

.biobb-Contact {
  margin-top: 72px;
}
.biobb-Contact_Mail {
  margin-top: 32px;
}
.biobb-Contact_Mail > a {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 546px;
  padding: 27px 62px 27px 24px;
  background-color: #fff;
  border: 2px solid #C1D5F0;
  border-radius: 8px;
  text-decoration: none;
  transition: .15s;
}
.biobb-Contact_Mail > a:hover {
  background-color: #f5f5f5;
  border: 2px solid #C8C8C8;
}
.biobb-Contact_Mail > a::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 16px;
  width: 24px;
  height: 24px;
  margin: auto;
  background-image: url("/common/images/ic_arrow_11.svg");
  background-size: cover;
  transition: .15s;
}
.biobb-Contact_Mail > a:hover::before {
  background-image: url("/common/images/ic_arrow_12.svg");
}
.biobb-Contact_Mail > a .icon {
  flex-shrink: 0;
  display: block;
  width: 72px;
}
.biobb-Contact_Mail > a .text {
  margin-left: 24px;
}
.biobb-Contact_Mail > a .text h4 {
  font-size: 24px;
  font-weight: 700;
  color: #000;
  line-height: 1.25;
}
.biobb-Contact_Mail > a .text p {
  margin-top: 8px;
  font-size: 16px;
  color: #464646;
  line-height: 1.5;
}
.biobb-Contact_Mail p.sup {
  margin-top: 24px;
  font-size: 12px;
  line-height: 1.5;
}
.biobb-Contact_Mail p.sup a {
  font-weight: 700;
}
.biobb-Contact_Tel {
  margin-top: 40px;
  padding: 16px 32px;
  background-color: #F5F5F5;
}
.biobb-Contact_Tel h4 {
  font-size: 24px;
  font-weight: 700;
  line-height: 1.25;
}
.biobb-Contact_Tel .phone {
  display: block;
  margin-top: 24px;
  pointer-events: none;
}
.biobb-Contact_Tel .phone > p {
  display: none;
}
.biobb-Contact_Tel .phone .wrap {
  display: flex;
  align-items: center;
}
.biobb-Contact_Tel .phone .wrap .icon {
  width: 46px;
}
.biobb-Contact_Tel .phone .wrap p {
  margin-left: 24px;
  font-size: 32px;
  font-weight: 700;
  color: #0046A4;
  line-height: 1.5;
}
.biobb-Contact_Tel .time {
  margin-top: 32px;
  font-size: 18px;
  font-weight: 700;
  color: #0046A4;
  line-height: 1.15;
}
.biobb-Contact_Tel .attention {
  margin-top: 24px;
  font-size: 12px;
  line-height: 1.5;
}
.biobb-Contact_Tel .attention li {
  padding-left: 1em;
  text-indent: -1em;
}
.biobb-Contact_Tel .attention a {
  font-weight: 700;
}

.biobb-Link {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 48px 0 56px;
  padding-top: 48px;
  border-top: 1px dashed #C8C8C8;
}
.biobb-Link a {
  width: 50%;
  margin: 0;
}
.biobb-Link a + a {
  margin-left: 24px;
}

@media screen and (max-width: 768px) {
  .biobb-Intro {
    margin-bottom: 40px;
  }
  .biobb-Intro h2 {
    padding: 32px 0 16px;
    font-size: 18px;
  }
  .biobb-Intro p {
    font-size: 12px;
  }
  .biobb-Intro p + p {
    margin-top: 18px;
  }

  .biobb-Subject ol {
    margin-top: 16px;
  }
  .biobb-Subject ol li > .num {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 8px;
    font-size: 12px;
  }
  .biobb-Subject ol li > .wrap {
    display: block;
    padding: 16px 8px;
  }
  .biobb-Subject ol li .name {
    width: 100%;
  }
  .biobb-Subject ol li a {
    font-size: 12px;
  }
  .biobb-Subject ol li .jan {
    margin-top: 4px;
    font-size: 12px;
  }

  .biobb-Overview {
    margin-top: 40.5px;
  }
  .biobb-Overview > p {
    margin-top: 16px;
    font-size: 12px;
  }
  .biobb-Overview dl {
    margin-top: 24px;
  }
  .biobb-Overview dl + dl {
    margin-top: 16px;
  }
  .biobb-Overview dt {
    padding: 21px 16px 16px;
    font-size: 14px;
  }
  .biobb-Overview dd {
    padding: 16px 16px 24px;
  }
  .biobb-Overview dd p {
    font-size: 12px;
  }

  .biobb-Prev {
    margin-top: 40px;
  }
  .biobb-Prev p {
    margin-top: 16px;
    font-size: 12px;
  }

  .biobb-Qa {
    margin-top: 40px;
  }
  .biobb-Qa > a {
    width: 100%;
    max-width: 546px;
    margin-top: 16px;
    padding: 16px 28px 20px 16px;
  }
  .biobb-Qa > a::before {
    right: 8px;
    width: 16px;
    height: 16px;
  }
  .biobb-Qa > a .icon {
    width: 32px;
  }
  .biobb-Qa > a .text {
    margin-left: 8px;
  }
  .biobb-Qa > a .text h4 {
    font-size: 18px;
  }
  .biobb-Qa > a .text p {
    font-size: 12px;
  }
  .biobb-Qa p.sup {
    margin-top: 16px;
    font-size: 10px;
  }

  .biobb-Contact {
    margin-top: 40px;
  }
  .biobb-Contact_Mail {
    margin-top: 16px;
  }
  .biobb-Contact_Mail > a {
    width: 100%;
    max-width: 546px;
    padding: 16px 28px 20px 16px;
  }
  .biobb-Contact_Mail > a::before {
    right: 8px;
    width: 16px;
    height: 16px;
  }
  .biobb-Contact_Mail > a .icon {
    width: 32px;
  }
  .biobb-Contact_Mail > a .text {
    margin-left: 8px;
  }
  .biobb-Contact_Mail > a .text h4 {
    font-size: 18px;
  }
  .biobb-Contact_Mail > a .text p {
    font-size: 12px;
  }
  .biobb-Contact_Mail p.sup {
    margin-top: 16px;
    font-size: 10px;
  }
  .biobb-Contact_Tel {
    margin-top: 24px;
    padding: 16px;
  }
  .biobb-Contact_Tel h4 {
    font-size: 16px;
  }
  .biobb-Contact_Tel .phone {
    pointer-events: auto;
  }
  .biobb-Contact_Tel .phone > p {
    display: block;
    text-align: center;
    margin-top: 8px;
    font-size: 10px;
    font-weight: 700;
    line-height: 1.5;
  }
  .biobb-Contact_Tel .phone .wrap {
    justify-content: center;
  }
  .biobb-Contact_Tel .phone .wrap .icon {
    width: 32px;
  }
  .biobb-Contact_Tel .phone .wrap p {
    margin-left: 16px;
  }
  .biobb-Contact_Tel .time {
    margin-top: 16px;
    font-size: 16px;
  }
  .biobb-Contact_Tel .attention {
    margin-top: 16px;
    font-size: 10px;
  }

  .biobb-Link {
    display: block;
    margin: 40px 0 64px;
    padding-top: 0;
    border-top: none;
  }
  .biobb-Link a {
    width: 100%;
    max-width: 311px;
    margin: 0 auto;
  }
  .biobb-Link a + a {
    margin: 16px auto 0;
  }
}

/* biobb-Qa
----------------------------------------------------*/

.biobbQa-Intro {
  margin-bottom: 56px;
}
.biobbQa-Intro h2 {
  padding: 24px 0;
  font-size: 32px;
  font-weight: 700;
  line-height: 1.25;
}
.biobbQa-Intro p {
  font-size: 16px;
  line-height: 1.5;
}
.biobbQa-Intro p + p {
  margin-top: 24px;
}
.biobbQa-Intro p > a {
  font-weight: 700;
}

.biobbQa-Contents .item + * {
  margin-top: 24px;
}
.biobbQa-Contents .item p {
  padding-left: 2em;
  text-indent: -2em;
}
.biobbQa-Contents .item a {
  font-weight: 700;
}
.biobbQa-Contents .item a[target="_blank"] {
  padding-right: 0;
  background-image: none;
}
.biobbQa-Contents .item a.btn {
  position: relative;
  display: flex;
  align-items: center;
  width: 286px;
  height: 51px;
  margin-top: 16px;
  padding: 13px 40px !important;
  text-indent: 0;
  font-size: 16px;
  color: #464646;
  background-color: #fff;
  border-radius: 4px;
  transition: .15s;
}
.biobbQa-Contents .item a.btn::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 16px;
  width: 20px;
  height: 20px;
  margin: auto;
  background-image: url("/common/images/ic_arrow_01.svg");
  background-size: cover;
  transition: .15s;
}
.biobbQa-Contents .item a.btn:hover::before {
  background-image: url("/common/images/ic_arrow_15.svg");
}
.biobbQa-Contents .item a.btn::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 15px;
  width: 20px;
  height: 20px;
  margin: auto;
  background-image: url("/common/images/ic_blank_02.svg");
  background-size: cover;
}

@media screen and (max-width: 768px) {
  .biobbQa-Intro {
    margin: 16px 0 40px;
  }
  .biobbQa-Intro h2 {
    padding: 16px 0;
    font-size: 18px;
  }
  .biobbQa-Intro p {
    font-size: 12px;
  }
  .biobbQa-Intro p + p {
    margin-top: 18px;
  }

  .biobbQa-Contents .item + * {
    margin-top: 16px;
  }
  .biobbQa-Contents .item p {
    padding-left: 1em;
    text-indent: -1em;
  }
  .biobbQa-Contents .item a.btn {
    width: 224px;
    height: 42px;
    padding: 12px 36px !important;
    font-size: 12px;
    border-radius: 0;
  }
  .biobbQa-Contents .item a.btn::before {
    width: 16px;
    height: 16px;
  }
  .biobbQa-Contents .item a.btn::after {
    width: 16px;
    height: 16px;
  }
}
