﻿.page-boudon .main-banner {
  margin: 0 auto;
  max-width: 1200px;
}
.page-boudon .boudon-lead {
  margin-top: 80px;
}
.page-boudon .s-title-02 {
  font-size: 3rem;
  font-weight: 500;
  line-height: 1.76666667;
}
.page-boudon .s-title-02_2 {
  font-size: 4rem;
  font-weight: bold;
  line-height: 1;
  color: #517FE5;
}
.page-boudon .s-title-02_2 b {
  font-size: 7.1rem;
}
.page-boudon .s-bg-gray {
  background: #F7F7F7;
}
.page-boudon .boudon-lead .s-bg-gray {
  margin-top: 70px;
  padding: 30px 15px;
}

.page-boudon .boudon-content {
  margin-top: 80px;
}
.page-boudon .s-title-01 {
  font-size: 4.4rem;
  font-weight: bold;
  line-height: 1.75;
  text-align: center;
}
.page-boudon .s-title-01-inner {
  display: block;
}
.page-boudon .s-title-01-img {
  margin-top: 50px;
}
.page-boudon .p-boudon-sec {
  margin-top: 70px;
}
.page-boudon .p-boudon-sec.s-bg-gray {
  padding: 160px 0 120px;
}
.page-boudon .s-caption {
  font-size: 1.8rem;
  font-weight: 500;
  margin: 50px 0;
}
.page-boudon .p-boudon-img {
  margin-top: 50px;
}
.page-boudon .p-boudon-img + .p-boudon-img {
  margin-top: 100px;
}

.page-boudon .tabBox {
  margin: 70px auto 0;
  max-width: 1000px;
}
.page-boudon .tabBox .tabUl {
  display: flex;
  justify-content: space-between;
}
.page-boudon .tabBox .tabUl-item {
  width: 50%;
  padding: 0 5px;
}
.page-boudon .tabBox .tabUl-item a {
  color: #fff;
  border-radius: 10px 10px 0 0;
  display: block;
  padding: 25px;
  font-size: 2rem;
  font-weight: bold;
  cursor: pointer;
}
.page-boudon .tabBox .tabUl-item.tab01.is-current a {
  background-color: #17654F;
}
.page-boudon .tabBox .tabUl-item.tab01:not(.is-current) a {
  background: rgba(23, 101, 79, 0.3);
}
.page-boudon .tabBox .tabUl-item.tab02.is-current a {
  background-color: #0D6C83;
}
.page-boudon .tabBox .tabUl-item.tab02:not(.is-current) a {
  background: rgba(13, 108, 131, 0.3);
}
.page-boudon .tabBox .tabBox-content {
  padding: 50px;
}
.page-boudon .tabBox .tabBox-content:not(.is-current) {
  display: none;
}
.page-boudon .tabBox .tabBox-content.tab01 {
  background-color: #F5F8EA;
}
.page-boudon .tabBox .tabBox-content.tab02 {
  background-color: #EAF3F8;
}
.page-boudon .tabBox-top {
  background-color: #fff;
  padding: 50px;
  border-radius: 8px;
}
.page-boudon .tabBox-ttl {
  margin-bottom: 50px;
  font-size: 3rem;
  font-weight: bold;
}
.page-boudon .tabBox-txt {
  text-align: left;
  font-size: 1.8rem;
  line-height: 1.73;
  margin: 20px 0 30px;
}
.page-boudon .tabBox-bot {
  margin: 0 auto;
  padding: 50px 30px 0;
  max-width: 724px;
}
.page-boudon .tabBox .tab02 .tabBox-bot {
  padding-bottom: 90px;
}
.page-boudon .tabBox-group {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.page-boudon .tabBox-groupImg {
  width: 34.53%;
}
.page-boudon .tabBox-groupTxt {
  width: 61%;
  text-align: left;
}
.page-boudon .tabBox-groupTxt p {
  font-size: 1.8rem;
  line-height: 1.66;
}
.page-boudon .tabBox-groupTxt p+p {
  margin-top: 20px;
}
.page-boudon .tabBox-list {
  margin-top: 50px;
  text-align: left;
}
.page-boudon .tabBox-list li {
  font-size: 1.2rem;
  line-height: 1.75;
}
.page-boudon .tabBox img {
  max-width: 100%;
}
.page-boudon .s-notes_pink {
  margin: 50px auto 0;
  padding: 20px 30px;
  max-width: 645px;
  background: #FFF5F5;
  line-height: 1.85714;
  font-size: 1.4rem;
  text-align: center;
}
.page-boudon .p-boudon-btn {
  margin-top: 50px;
}
.page-boudon .c-button--blue {
  min-width: 300px;
  color: #fff;
  background: #517FE5;
  border: solid 2px #517FE5;
}

.page-boudon .boudon_accordion_box {
  margin-top: 50px;
}
.page-boudon .boudon_accordion_box_item {
  margin-bottom: 20px;
  position: relative;
  cursor: pointer;
  border-radius: 8px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
  background-color: #fff;
}
.page-boudon .boudon_accordion_box_item dt {
  color: #517FE5;
  position: relative;
  padding: 17px 80px 17px 103px;
  font-weight: bold;
  font-size: 2.2rem;
  line-height: 1.63636;
  text-align: left;
}
.page-boudon .boudon_accordion_box_item dt::before {
  position: absolute;
  content: "";
  top: 0;
  left: 30px;
  display: block;
  width: 55px;
  height: 100%;
  background: no-repeat left center / auto 33px;
}
.page-boudon .boudon_accordion_box_item:nth-child(1) dt::before {
  background-image: url("/cms/contents/lens/highspec/boudon/img/icon_q_01.png");
}
.page-boudon .boudon_accordion_box_item:nth-child(2) dt::before {
  background-image: url("/cms/contents/lens/highspec/boudon/img/icon_q_02.png");
}
.page-boudon .boudon_accordion_box_item:nth-child(3) dt::before {
  background-image: url("/cms/contents/lens/highspec/boudon/img/icon_q_03.png");
}
.page-boudon .boudon_accordion_box_item:nth-child(4) dt::before {
  background-image: url("/cms/contents/lens/highspec/boudon/img/icon_q_04.png");
}
.page-boudon .boudon_accordion_box_item:nth-child(5) dt::before {
  background-image: url("/cms/contents/lens/highspec/boudon/img/icon_q_05.png");
}
.page-boudon .boudon_accordion_box_item:nth-child(6) dt::before {
  background-image: url("/cms/contents/lens/highspec/boudon/img/icon_q_06.png");
}
.page-boudon .boudon_accordion_box_item:nth-child(7) dt::before {
  background-image: url("/cms/contents/lens/highspec/boudon/img/icon_q_07.png");
}
.page-boudon .boudon_accordion_box_item:nth-child(8) dt::before {
  background-image: url("/cms/contents/lens/highspec/boudon/img/icon_q_08.png");
}
.page-boudon .boudon_accordion_box_item:nth-child(9) dt::before {
  background-image: url("/cms/contents/lens/highspec/boudon/img/icon_q_09.png");
}
.page-boudon .boudon_accordion_box_item dt span {
  display: block;
  width: 40px;
  height: 40px;
  right: 22px;
  top: 50%;
  position: absolute;
  transform: translateY(-50%);
}
.page-boudon .boudon_accordion_box_item dt span::after,
.page-boudon .boudon_accordion_box_item dt span::before {
  position: absolute;
  top: 50%;
  left: 50%;
  content: '';
  display: block;
  width: 19px;
  height: 3px;
  background-color: #517FE5;
  transform: translate(-50%, -50%);
  transform-origin: center;
}
.page-boudon .boudon_accordion_box_item dt span::after {
  transform: translate(-50%, -50%) rotate(90deg);
}
.page-boudon .boudon_accordion_box_item dd {
  height: 0;
  overflow: hidden;
  transition: height .3s ease;
}
.page-boudon .boudon_accordion_box_body {
  padding: 22px 80px 30px 103px;
  border-top: 1px solid #ccc;
  font-size: 1.6rem;
  line-height: 1.86667;
  text-align: left;
}
.page-boudon .boudon_accordion_box_body.is-open {
  height: auto;
}
.page-boudon .boudon_accordion_box_body p + p {
  margin-top: 15px;
}
.page-boudon .boudon_accordion_box_body p b {
  font-size: 1.8rem;
  font-weight: bold;
}
.page-boudon .boudon_accordion_note {
  font-size: 1.2rem;
}

.page-boudon .p-link_wrap {
  margin-top: 50px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 50px;
}
.page-boudon .p-link_box {
  width: 475px;
}
.page-boudon .p-link_box a {
  display: block;
}
.page-boudon .p-link_box a:hover {
  opacity: .8;
}
.page-boudon .p-link_box .p-link_ttl {
  font-weight: bold;
  font-size: 2.4rem;
  margin: 30px 0 17px;
}
.page-boudon .p-link_box p {
  font-size: 1.6rem;
}

.page-boudon .s-note {
  padding-left: 1em;
  text-indent: -1em;
}
@media screen and (max-width:740px) {
  .page-boudon .boudon-lead {
    margin-top: 30px;
  }
  .page-boudon .s-title-02 {
    font-size: clamp(1.4rem, calc(16 / 375 * 100vw), 1.8rem);
  }
  .page-boudon .s-title-02_2 {
    margin: 18px auto 0;
    padding: 0 25px;
    width: fit-content;
    font-size: clamp(2.3rem, calc(25 / 375 * 100vw), 2.7rem);;
    line-height: 1.65116;
    position: relative;
  }
  .page-boudon .s-title-02_2 b {
    position: absolute;
    font-size: clamp(4.2rem, calc(46 / 375 * 100vw), 4.8rem);
  }
  .page-boudon .s-title-02_2 .s_l {
    top: -15px;
    left: 0;
  }
  .page-boudon .s-title-02_2 .s_r {
    right: 10px;
    bottom: -38px;
  }
  .page-boudon .boudon-lead .s-bg-gray {
    margin-top: 30px;
  }

  .page-boudon .boudon-content {
    margin-top: 30px;
  }
  .page-boudon .s-title-01 {
    font-size: clamp(2.4rem, calc(26 / 375 * 100vw), 2.8rem);
  }
  .page-boudon .s-title-01-img {
    margin-top: 30px;
    padding: 0 15px;
  }
  .page-boudon .p-boudon-sec {
    margin-top: 30px;
  }
  .page-boudon .p-boudon-sec + .p-boudon-sec {
    margin-top: 70px;
  }
  .page-boudon .p-boudon-sec.s-bg-gray {
    padding: 70px 15px;
  }
  .page-boudon .s-caption {
    font-size: clamp(1.3rem, calc(15 / 375 * 100vw), 1.7rem);
    line-height: 1.76923;
    margin: 30px 0;
  }
  .page-boudon .p-boudon-img {
    margin: 30px auto 0;
    padding: 0 15px;
    max-width: 560px;
  }
  .page-boudon .p-boudon-img + .p-boudon-img {
    margin-top: 50px;
  }

  .page-boudon .tabBox {
    padding: 0 15px;
  }
  .page-boudon .tabBox .tabUl-item a {
    padding: 10px;
    font-size: clamp(1.3rem, calc(15 / 375 * 100vw), 1.7rem);
  }
  .page-boudon .tabBox .tabBox-content {
    padding: 25px 15px;
  }
  .page-boudon .tabBox-top {
    padding: 30px 15px;
  }
  .page-boudon .tabBox-ttl {
    margin-bottom: 0;
    font-size: clamp(1.8rem, calc(20 / 375 * 100vw), 2.2rem);
  }
  .page-boudon .tabBox-txt {
    font-size: clamp(1.3rem, calc(15 / 375 * 100vw), 1.7rem);
    margin: 25px 0 30px;
  }
  .page-boudon .tabBox-img {
    margin: 0 auto;
    max-width: 476px;
  }
  .page-boudon .tabBox-bot {
    padding: 30px 0 0;
  }
  .page-boudon .tabBox-group {
    flex-direction: column;
  }
  .page-boudon .tabBox-groupImg {
    width: 70%;
  }
  .page-boudon .tabBox-groupTxt {
    margin-top: 18px;
    width: 100%;
  }
  .page-boudon .tabBox-groupTxt p {
    font-size: clamp(1.3rem, calc(15 / 375 * 100vw), 1.7rem);
  }
  .page-boudon .tabBox-groupTxt p+p {
    margin-top: 10px;
  }
  .page-boudon .tabBox-list {
    margin-top: 30px;
  }
  .page-boudon .s-stepcare + .tabBox-list {
    margin-top: 50px;
  }
  .page-boudon .tabBox-list li {
    font-size: clamp(1.1rem, calc(13 / 375 * 100vw), 1.5rem);
  }
  .page-boudon .s-stepcare {
    margin: 30px auto 0;
    max-width: 494px;
  }
  .page-boudon .s-notes_pink {
    margin: 30px auto 0;
    padding: 15px;
    font-size: clamp(1.2rem, calc(14 / 375 * 100vw), 1.6rem);
  }
  .page-boudon .p-boudon-btn {
    margin-top: 30px;
  }
  .page-boudon .c-button--blue {
    min-width: initial;
  }

  .page-boudon .boudon_accordion_box {
    margin-top: 30px;
  }
  .page-boudon .boudon_accordion_box_item {
    margin-bottom: 15px;
  }
  .page-boudon .boudon_accordion_box_item dt {
    padding: 15px 45px 15px 85px;
    font-size: clamp(1.6rem, calc(18 / 375 * 100vw), 2rem);
  }
  .page-boudon .boudon_accordion_box_item dt::before {
    left: 15px;
    width: 45px;
    height: 100%;
    background-size: contain;
  }
  .page-boudon .boudon_accordion_box_item dt span {
    width: 15px;
    height: 15px;
    right: 15px;
  }
  .page-boudon .boudon_accordion_box_item dt span::after,
  .page-boudon .boudon_accordion_box_item dt span::before {
    width: 15px;
    height: 2px;
  }
  .page-boudon .boudon_accordion_box_body {
    padding: 15px;
    font-size: clamp(1.3rem, calc(15 / 375 * 100vw), 1.7rem);
  }
  .page-boudon .boudon_accordion_box_body p b {
    font-size: clamp(1.4rem, calc(16 / 375 * 100vw), 1.8rem);
  }
  .page-boudon .boudon_accordion_note {
    font-size: clamp(1.1rem, calc(13 / 375 * 100vw), 1.5rem);
  }
  .page-boudon .s-customer-img {
    margin: 30px auto 0;
    padding: 0 15px;
    max-width: 561px;
  }

  .page-boudon .p-link_wrap {
    margin-top: 30px;
    flex-direction: column;
    gap: 40px;
  }
  .page-boudon .p-link_box {
    width: 100%;
  }
  .page-boudon .p-link_box .p-link_ttl {
    font-size: clamp(1.6rem, calc(18 / 375 * 100vw), 2rem);
    margin: 18px 0 10px;
  }
  .page-boudon .p-link_box p {
    font-size: clamp(1.3rem, calc(15 / 375 * 100vw), 1.7rem);
  }

  .p-rensInc-discountInfo {
    margin: 0 0 50px;
  }

  .page-boudon .u-sp-max560 {
    margin-left: auto;
    margin-right: auto;
    max-width: 560px;
  }
}


/* 価格ブロック */
/* .price-promo {
  margin: 85px 0 0;
  padding: 30px 10px;
  background: #f7f7f7;
} */
.p-price-option {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 30px 60px;
}
@media screen and (max-width:1085px) {
  .p-price-option {
    flex-direction: column;
  }
}
.p-price-option .c-icon--plus {
  margin: 0 10px;
  display: inline-block;
  vertical-align: middle;
  width: 26px;
  height: 26px;
  color: #000;
  position: relative;
}
.p-price-option .c-icon--plus.u-large {
  margin: 0;
  width: 40px;
  height: 40px;
}
.p-price-option .c-icon--plus:before,
.p-price-option .c-icon--plus:after {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  display: block;
  width: 100%;
  height: 8px;
  border-radius: .04em;
  background-color: #5a80e8;
  backface-visibility: hidden;
  box-sizing: content-box;
}
.p-price-option-card__body .c-icon--plus:before,
.p-price-option-card__body .c-icon--plus:after {
  width: 80%;
  height: 4px;
  /* background-color: #000; */
}
.p-price-option .c-icon--plus:before {
  transform: rotate(90deg);
}
.p-price-option-card {
  width: 420px;
}
.p-price-option-card__head {
  background: #5a80e8;
  color: #fff;
  text-align: center;
  font-weight: 700;
  font-size: 2.3rem;
  line-height: 1.46154;
  letter-spacing: .255em;
  padding-top: .3em;
  padding-bottom: .3em;
  border-radius: 5px 5px 0 0;
}
.p-price-option-card__body {
  height: 113px;
  padding-top: 23px;
  padding-bottom: 15px;
  text-align: center;
  background-color: #fff;
  border: solid 3px #5a80e8;
  border-top-width: 0;
  border-radius: 0 0 5px 5px;
}
.p-price-option-card__body .-icon {
  display: inline-block;
  vertical-align: middle;
  margin-right: 10px;
}
.p-price-option-card__body .-icon--frame svg {
  width: 80px;
  height: 64px;
}
.p-price-option-card__body .-icon--lens svg {
  width: 56px;
  height: 55px;
}
.p-price-text {
  font-weight: 700;
  font-size: 4.7rem;
  vertical-align: bottom;
  line-height: 1;
  color: #5a80e8;
}
.p-price-text__small {
  font-size: 1.7rem;
}
.p-price-option-text {
  font-size: 1.7rem;
  font-weight: bold;
  vertical-align: middle;
}
.p-price-option-note {
  margin-top: 10px;
  font-size: 1.2rem;
}
@media screen and (max-width:740px) {
  .price-promo {
    margin: 30px 0 0;
    /* padding: 15px; */
  }
  .p-price-option {
    flex-direction: column;
    gap: 10px;
  }
  .p-price-option .c-icon--plus,
  .p-price-option .c-icon--plus.u-large {
    width: 20px;
    height: 20px;
  }
  .p-price-option .c-icon--plus:before,
  .p-price-option .c-icon--plus:after {
    width: 18px;
    height: 4px;
  }
  .p-price-option-card {
    width: 100%;
  }
  .p-price-option-card__head {
    font-size: clamp(1.1rem, calc(13 / 375 * 100vw), 1.5rem);
  }
  .p-price-option-card__body {
    height: initial;
    padding: 15px 0;
  }
  .p-price-option-card__body .-icon--frame svg {
    width: 47px;
    height: auto;
  }
  .p-price-option-card__body .-icon--lens svg {
    width: 33px;
    height: auto;
  }
  .p-price-text {
    font-size: clamp(3.2rem, calc(34 / 375 * 100vw), 3.6rem);
  }
  .p-price-text__small {
    font-size: clamp(1.1rem, calc(13 / 375 * 100vw), 1.5rem);
  }
  .p-price-option-text {
    font-size: clamp(1rem, calc(11 / 375 * 100vw), 1.3rem);
  }
  .p-price-option-note {
    margin-top: 5px;
    font-size: clamp(.8rem, calc(9 / 375 * 100vw), 1.1rem);
  }
}