@charset "UTF-8";
:root {
  --red: #C03;
  --business-person-blue: #051D98;
  --business-person-light-blue: #EDEEF2;
  --docomo-red: #CC0033;
}

/* コンテンツ共通
-------------------------------------------*/
h3 {
  font-size: 2.3rem;
  color: #000;
  font-weight: bold;
  text-align: center;
  letter-spacing: 0.03em;
}
@media (max-width: 767px) {
  h3 {
    font-size: 1.6rem;
    letter-spacing: 0.07em;
  }
}

/*背景　四角*/
.business-person-sec-corner {
  width: 100%;
  margin: 0 auto;
}

@media (max-width: 767px) {
  .business-person-sec-corner {
    padding: 0 20px;
  }
}
.business-person-sec-inner {
  width: min(940px, 100% - 40px);
  margin: 0 auto;
}

/*インナー*/
.business-product-inner{
    margin: 0 auto;
}

@media (min-width: 768px) {
.business-product-inner{
    width: 940px;
}
}

@media (max-width: 767px) {
.business-product-inner{
    padding: 0 20px;
}
}

/*吹き出し*/
.business-product-lead-txt-flame{
  position: relative;
  display: inline-block;
  padding: 14px 20px;
  background: #051D98;
}

.business-product-lead-txt-flame:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #051D98;
}

.business-product-lead-txt{
  font-size: clamp(1.4rem, 1.262rem + 0.62vw, 2rem);
  color: #ffffff;
  font-weight: 700;
  line-height: 1.3;
}

@media (min-width: 768px) {
.business-product-lead-txt-flame{
  margin-bottom: 40px;
}
}

@media (max-width: 767px) {
.business-product-lead-txt-flame{
  margin-bottom: 24px;
}
}


/*business-product-sec-2nd-ttl*/
.business-product-sec-2nd-ttl{
  text-align: center;
  margin: 0 auto;
}

@media (max-width: 767px) {
.business-product-schedule-bg-line .business-product-sec-2nd-ttl{
  width: 60.834vw;
}
}

/*business-product-sub-ttl*/
.business-product-sub-ttl{
  display: block;
  font-size: clamp(1.8rem, 1.892rem + -0.41vw, 1.4rem);
  color: #ffffff;
  font-weight: 700;
  line-height: 1.5;
  margin-top: 15px;
}

/*business-product-sec-3rd*/
.business-product-sec-3rd{
  margin-bottom: 50px;
}

/*business-product-sec-3rd-ttl*/
.business-product-sec-3rd-ttl{
  font-size: clamp(1.8rem, 1.708rem + 0.41vw, 2.2rem);
  color: #ffffff;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
}


.business-product-sec-3rd-ttl::before,
.business-product-sec-3rd-ttl::after {
  width: 2px;
  height: 26px;
  background-color: #ffffff;
  content: '';
}

.business-product-sec-3rd-ttl::before {
  transform: rotate(-43deg);
  margin-right: 16px;
}

.business-product-sec-3rd-ttl::after {
  transform: rotate(43deg);
  margin-left: 16px;
}

/*KV*/

.business-person-kv {
  position: relative;
  width: 100%;
  overflow: hidden;
}

.business-person-kv img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

/*business-person-second-sec*/
.business-person-second-sec {
  width: 100%;
}
.business-person-second-sec.bg-blue {
  background-color: var(--business-person-blue);
}
.business-person-second-sec.service {
  width: 100%;
  margin: 0 auto;
  padding: 80px 0;
  background-color: #4056AF;
  background-image: url(/flcache_data/product/promotion/business_product/img_service_bg_pc.svg);
  background-repeat: no-repeat;
  background-size: 1403px;
  background-position: center 50px;
}
@media (max-width: 767px) {
  .business-person-second-sec.service {
    width: 100%;
    padding: 60px 0;
    background-image: url(/flcache_data/product/promotion/business_product/img_service_bg_smt.svg);
  }
}
.business-person-second-sec.service h3 {
  color: #fff;
}

.business-person-sec-corner {
  --s: 80px;
  --bold: 16px;
  --color: rgba(255, 255, 255, 0.5);
  --shift: 942px;
  background: linear-gradient(to bottom, var(--color) 100%) calc(50% - var(--shift) + var(--s) / 2) top, linear-gradient(to right, var(--color) 100%) calc(50% - var(--shift)) top, linear-gradient(to bottom, var(--color) 100%) calc(50% + var(--shift) - var(--s) / 2) top, linear-gradient(to left, var(--color) 100%) calc(50% + var(--shift)) top, linear-gradient(to top, var(--color) 100%) calc(50% - var(--shift) + var(--s) / 2) bottom, linear-gradient(to right, var(--color) 100%) calc(50% - var(--shift)) bottom, linear-gradient(to top, var(--color) 100%) calc(50% + var(--shift) - var(--s) / 2) bottom, linear-gradient(to left, var(--color) 100%) calc(50% + var(--shift)) bottom;
  background-repeat: no-repeat;
  background-size: calc(var(--s) - var(--bold)) var(--bold), var(--bold) var(--s);
}

@media screen and (max-width: 768px) {
  .business-person-sec-corner {
    --s: 37px;
    --bold: 7px;
    --color: rgba(255, 255, 255, 0.5);
    --shift: 5px;
    padding: 55px 0px;
    background: linear-gradient(to bottom, var(--color) 100%) calc(0% + var(--shift)) top, linear-gradient(to right, var(--color) 100%) calc(0% + var(--shift)) var(--bold), linear-gradient(to bottom, var(--color) 100%) calc(100% - var(--shift)) top, linear-gradient(to left, var(--color) 100%) calc(100% - var(--shift)) var(--bold), linear-gradient(to top, var(--color) 100%) calc(0% + var(--shift)) bottom, linear-gradient(to right, var(--color) 100%) calc(0% + var(--shift)) calc(100% - var(--bold)), linear-gradient(to top, var(--color) 100%) calc(100% - var(--shift)) bottom, linear-gradient(to left, var(--color) 100%) calc(100% - var(--shift)) calc(100% - var(--bold));
    background-repeat: no-repeat;
    background-size: var(--s) var(--bold), var(--bold) calc(var(--s) - var(--bold));
  }
}
.business-person {
  width: 100%;
}

.business-person-controls {
  display: flex;
  width: 100%;
  margin: 0 auto;
  list-style: none;
  border-bottom: 2px solid #000;
}

.business-person-controls-list {
  --m: 20px;
  --h: 100px;
  display: flex;
  -moz-column-gap: var(--m);
       column-gap: var(--m);
  justify-content: center;
  align-items: center;
  width: min(91%, 826px);
  margin: 0 auto;
  margin-top: calc(var(--h) * -1);
  padding: 0 4px;
}

.business-person-controls-list-item {
  position: relative;
  width: calc((100% - var(--m) * 1) / 2);
  height: var(--h);
  min-height: var(--h);
  font-size: 1.8rem;
  font-weight: 700;
  color: #fff;
  border-radius: 5px 5px 0px 0px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  border-left: 2px solid #fff;
  background-color: #000;
}

.business-person-controls-list-item:has(.tab-btn.is-current) {
  border-top: 2px solid #000;
  border-right: 2px solid #000;
  border-left: 2px solid #000;
}

@media screen and (max-width: 768px) {
  .business-person-controls-list {
    --m: 10px;
    --h: 65px;
  }
  .business-person-controls-list-item {
    --m: 6px;
    --h: 100%;
    font-size: 1.2rem;
  }
}
.business-person-controls-list-item:has(button.is-current) {
  color: #222;
  background-color: var(--business-person-light-blue);
}

.business-person-controls-list-item button {
  position: absolute;
  top: 2px;
  width: 100%;
  height: calc(100% + 1px);
  background-color: transparent;
  border-radius: 10px 10px 0px 0px;
}

.business-person-controls-list-item button.is-current {
  background-color: var(--business-person-light-blue);
}

.cross-use-section {
  width: 100%;
}

@media screen and (max-width: 768px) {
  .cross-use-section {
    padding: 0 20px;
  }
}
.business-person-inquiry {
  --m: 24px;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 78px 0;
  width: 100%;
  background-image: url(/flcache_data/product/promotion/business_product/img_inquiry_bg_pc.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}
@media screen and (max-width: 768px) {
  .business-person-inquiry {
    --m: 12px;
    padding: 44px 0;
    background-image: url(/flcache_data/product/promotion/business_product/img_inquiry_bg_smt.png);
  }
}
.business-person-inquiry h3 {
  font-size: 2.3rem;
  color: #fff;
  font-weight: bold;
  text-align: center;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 768px) {
  .business-person-inquiry h3 {
    font-size: 1.6rem;
    letter-spacing: 0.07em;
  }
}
.business-person-inquiry-inner {
  width: 820px;
}
@media screen and (max-width: 768px) {
  .business-person-inquiry-inner {
    width: 100%;
  }
}
.business-person-inquiry-inner-shops {
  display: flex;
  gap: var(--m);
  width: 100%;
}
@media screen and (max-width: 768px) {
  .business-person-inquiry-inner-shops {
    flex-direction: column;
    width: calc(100% - 86px);
    margin: 0 auto;
  }
}
.business-person-inquiry-inner-shops-item {
  position: relative;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  width: calc((100% - var(--m)) / 2);
  padding: 25px 35px;
  background-color: #fff;
  border: 2px solid var(--docomo-red);
  border-radius: 5px;
  color: #000;
  text-decoration: none;
}
.business-person-inquiry-inner-shops-item:hover, .business-person-inquiry-inner-shops-item:visited, .business-person-inquiry-inner-shops-item:focus {
  color: #000;
  text-decoration: none;
}
@media screen and (max-width: 768px) {
  .business-person-inquiry-inner-shops-item {
    width: 100%;
    padding: 20px 35px;
  }
}
.business-person-inquiry-inner-shops-item-img.ols {
  width: 180px;
}
@media screen and (max-width: 768px) {
  .business-person-inquiry-inner-shops-item-img.ols {
    width: 66%;
  }
}
.business-person-inquiry-inner-shops-item-img.shop {
  width: 67px;
}
@media screen and (max-width: 768px) {
  .business-person-inquiry-inner-shops-item-img.shop {
    width: 24%;
  }
}
.business-person-inquiry-inner-shops-item-img img {
  width: 100%;
}
.business-person-inquiry-inner-shops-item-txt {
  margin-top: 20px;
  width: 100%;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .business-person-inquiry-inner-shops-item-txt {
    margin-top: 8px;
  }
}
.business-person-inquiry-inner-shops-item-txt p {
  font-size: 1.5rem;
  color: #000;
}
@media screen and (max-width: 768px) {
  .business-person-inquiry-inner-shops-item-txt p {
    font-size: 1.3rem;
  }
}
.business-person-inquiry-inner-shops-item .new-window {
  --s: 10px;
  position: absolute;
  top: calc(50% - var(--s) / 2);
  right: 18px;
  width: var(--s);
  height: var(--s);
  font-size: 0;
  background-image: url(/flcache_data/product/promotion/business_product/ico_new_window_gray.svg);
  background-repeat: no-repeat;
  background-size: contain;
}

.card-3col {
  --m-x: 20px;
  --m-y: 20px;
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: var(--m-x);
  column-gap: var(--m-x);
  row-gap: var(--m-y);
  width: 100%;
  list-style: none;
  padding: 0;
}

.card-3col-item {
  position: relative;
  display: flex;
  justify-content: center;
  width: calc((100% - var(--m-x) * 2) / 3);
  border-radius: 10px;
  background: #FFF;
  box-shadow: 4px 4px 10px 0px rgba(0, 0, 0, 0.14);
}

@media screen and (max-width: 768px) {
  .card-3col-item {
    width: calc((100% - var(--m-x)) / 2);
  }
}
.card-3col-item-inner {
  flex: 1;
  display: flex;
  align-items: center;
  flex-direction: column;
  width: 100%;
  height: 100%;
  padding: 23px 22px 16px 16px;
  font-size: 1.4rem;
  color: #000;
  text-decoration: none;
  transition: all 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
}

.card-3col-item-inner:hover, .card-3col-item-inner:visited, .card-3col-item-inner:focus, .card-3col-item-inner:focus-visible {
  color: #C03;
}

.card-3col-item-inner p {
  margin: 0;
}

.card-3col-item-inner-img {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch;
  width: 100%;
  height: 33px;
}

.card-3col-item-inner-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: scale-down;
  object-fit: scale-down;
}

.card-3col-item-inner-txt {
  margin-top: 20px;
  padding-right: 10px;
}

@media screen and (max-width: 768px) {
  .card-3col-item-inner-txt p {
    font-size: 1.4rem;
  }
}
.card-3col-item .new-window {
  --s: 9px;
  position: absolute;
  transform: translate(0, -50%);
  top: 50%;
  right: 10px;
  font-size: 0;
  width: var(--s);
  height: var(--s);
  background: url(/flcache_data/product/promotion/business_product/ico_new_window_red.svg);
  background-repeat: no-repeat;
  background-size: contain;
}

.carousel-4col {
  position: relative;
  display: flex;
  justify-content: center;
}

@media screen and (max-width: 768px) {
  .carousel-4col {
    width: 100vw;
    margin-left: calc(50% - 50vw);
  }
}
.carousel-4col-inner {
  width: 100%;
}
.carousel-4col-inner:has(.slick-initialized) {
  margin-bottom: 70px;
}

@media screen and (max-width: 768px) {
  .carousel-4col-inner {
    width: 100%;
  }
}
.carousel-4col-inner-main {
  --m: 2px;
  position: relative;
  display: flex;
  justify-content: center;
  width: 100%;
  margin: 0 auto;
  display: flex;
  gap: var(--m);
  overflow: hidden;
}

@media screen and (max-width: 1015px) {
  .carousel-4col-inner-main {
    width: 80%;
    margin: 0 auto;
  }
}
@media screen and (max-width: 768px) {
  .carousel-4col-inner-main {
    width: 100%;
  }
}
.carousel-4col-inner-main-item {
  display: flex !important;
  flex-direction: column;
  width: calc((100% - var(--m) * 3) / 4);
  margin: 0 10px;
  margin-bottom: 5px;
  padding: 15px 0;
  border-radius: 5px;
  background: #FFF;
  border: 1px solid #AAA;
}

@media screen and (max-width: 768px) {
  .carousel-4col-inner-main-item {
    margin: 0 5vw 5px 5vw;
    padding: 30px 0;
  }
}
.carousel-4col-inner-main-item-info {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin: 0;
}

.carousel-4col-inner-main-item-info img {
  width: 75%;
}

@media screen and (max-width: 768px) {
  .carousel-4col-inner-main-item-info img {
    width: 72%;
  }
}
.carousel-4col-inner-main-item-info-txt {
  width: 100%;
  margin-top: 14px;
  padding: 0 10px;
  text-align: center;
}

.carousel-4col-inner-main-item-info-txt-title {
  font-size: 1.6rem;
  font-weight: bold;
  margin: 0;
}

.carousel-4col-inner-main-item-info-txt-desc {
  font-size: 1.2rem;
  margin: 0;
  margin-top: 6px;
}

.carousel-4col-inner-main-item-btnArea {
  display: flex;
  align-items: center;
  justify-content: end;
  flex-direction: column;
  flex-grow: 1;
  width: 100%;
  margin-top: 16px;
}
@media screen and (max-width: 768px) {
  .carousel-4col-inner-main-item-btnArea {
    margin-top: 30px;
  }
}

.carousel-4col-inner-main-item-btnArea-btn {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: min(178px, 90%);
  min-height: 37px;
  padding: 6px 15.8%;
  color: #fff;
  font-size: 1.2rem;
  text-decoration: none;
  background-color: var(--docomo-red);
  background-image: url(/flcache_data/product/promotion/business_product/ico_cart.svg);
  background-repeat: no-repeat;
  background-position: 13px center;
  border-radius: 100vw;
  transition: all 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
}

@media screen and (max-width: 768px) {
  .carousel-4col-inner-main-item-btnArea-btn {
    width: 81%;
    padding: 6px 12.8%;
  }
}
.carousel-4col-inner-main-item-btnArea-btn:hover, .carousel-4col-inner-main-item-btnArea-btn:visited, .carousel-4col-inner-main-item-btnArea-btn:focus, .carousel-4col-inner-main-item-btnArea-btn:focus-visible {
  opacity: 0.75;
  box-shadow: 0 1px 5px rgba(4, 0, 0, 0.35);
  color: #FFF;
}

.carousel-4col-inner-main-item-btnArea-btn + .carousel-4col-inner-main-item-btnArea-btn {
  margin-top: 12px;
}

.carousel-4col-inner-main-item-btnArea-btn .new-window {
  --s: 9px;
  position: absolute;
  right: 8px;
  font-size: 0;
  width: var(--s);
  height: var(--s);
  background: url(/flcache_data/product/promotion/business_product/ico_new_window_white.svg);
  background-repeat: no-repeat;
  background-size: contain;
}

.carousel-4col-arrows {
  --x: -26px;
  --y: 34.8%;
  --s: 50px;
  width: 100%;
}

@media screen and (max-width: 1015px) {
  .carousel-4col-arrows {
    --x: 22px;
  }
}
@media screen and (max-width: 768px) {
  .carousel-4col-arrows {
    --x: 14.1vw;
    --y: 41vw;
    --s: 11.5vw;
    position: absolute;
    width: 100vw;
  }
}
.carousel-4col-arrows .slick-prev {
  position: absolute;
  top: var(--y);
  left: var(--x);
  width: var(--s);
  height: var(--s);
  background: transparent;
  border: none;
  font-size: 0;
  z-index: 1;
  cursor: pointer;
}

.carousel-4col-arrows .slick-prev::before {
  content: "";
  display: block;
  width: var(--s);
  height: var(--s);
  background-image: url("/flcache_data/product/promotion/business_product/ico_slick-arrow.svg");
  background-repeat: no-repeat;
  background-size: cover;
  transform: rotate(180deg);
}

.carousel-4col-arrows .slick-next {
  position: absolute;
  top: var(--y);
  right: var(--x);
  width: var(--s);
  height: var(--s);
  background: transparent;
  border: none;
  font-size: 0;
  z-index: 1;
  cursor: pointer;
}

.carousel-4col-arrows .slick-next::before {
  content: "";
  display: block;
  width: var(--s);
  height: var(--s);
  background-image: url("/flcache_data/product/promotion/business_product/ico_slick-arrow.svg");
  background-repeat: no-repeat;
  background-size: cover;
}

.carousel-4col .slick-dots {
  bottom: 10px;
  width: 100%;
  padding: 0;
  display: flex;
  gap: 1px;
  justify-content: center;
  list-style: none;
  margin: 0 auto;
  margin-top: 28px;
}

@media screen and (max-width: 768px) {
  .carousel-4col .slick-dots {
    margin-top: 34px;
    gap: 8px;
  }
}
.carousel-4col .slick-dots li {
  --s: 8px;
}

.carousel-4col .slick-dots li button {
  width: var(--s);
  height: var(--s);
  padding: 0;
  border-radius: 100vw;
  border: 1px solid var(--red);
  background: #fff !important;
  font-size: 0;
}

.carousel-4col .slick-dots li button:focus {
  outline: 2px solid #000;
}

.carousel-4col .slick-dots li button::before {
  background: transparent !important;
}

.carousel-4col .slick-dots li.slick-active button {
  background: var(--red) !important;
}

.carousel-4col .slick-slider {
  padding-bottom: 48px;
}

/* フロートエリア */
.business-product-float {
  position: fixed;
  bottom: 0;
  width: 100%;
  padding: 14px;
  background: rgba(0, 0, 0, 0.2);
  z-index: 1000;
}
@media screen and (max-width: 768px) {
  .business-product-float {
    padding: 9px 0;
  }
}

.business-product-float-list {
  --m: 20px;
  display: flex;
  flex-wrap: wrap;
  gap: var(--m);
  width: min(89%, 825px);
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .business-product-float-list {
    --m: 3%;
  }
}

.business-product-float-list-item {
  width: calc((100% - var(--m) * 1) / 2);
}

.business-product-float-list-item-inner {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  min-height: 22px;
  padding: 10px 8px;
  color: #fff;
  font-size: 1.6rem;
  font-weight: bold;
  border-radius: 5px;
  border: 3px solid #FFF;
  background-color: #000;
  text-decoration: none;
}

@media screen and (max-width: 768px) {
  .business-product-float-list-item-inner {
    font-size: 1.2rem;
    text-align: center;
    border: 2px solid #FFF;
  }
}
.business-product-float-list-item-inner:hover, .business-product-float-list-item-inner:visited, .business-product-float-list-item-inner:focus-visible {
  color: #fff;
}

html:has(.business-person-controls-list-item:nth-child(1) .tab-btn.is-current) .business-product-float-list-item:nth-child(1) .business-product-float-list-item-inner {
  color: #222;
  border-radius: 5px;
  border: 3px solid #000;
  background-color: #EDEEF2;
}
@media screen and (max-width: 768px) {
  html:has(.business-person-controls-list-item:nth-child(1) .tab-btn.is-current) .business-product-float-list-item:nth-child(1) .business-product-float-list-item-inner {
    border: 2px solid #000;
  }
}

html:has(.business-person-controls-list-item:nth-child(2) .tab-btn.is-current) .business-product-float-list-item:nth-child(2) .business-product-float-list-item-inner {
  color: #222;
  border-radius: 5px;
  border: 3px solid #000;
  background-color: #EDEEF2;
}
@media screen and (max-width: 768px) {
  html:has(.business-person-controls-list-item:nth-child(2) .tab-btn.is-current) .business-product-float-list-item:nth-child(2) .business-product-float-list-item-inner {
    border: 2px solid #000;
  }
}

/* bg-color */
.bg-gray {
  background-color: #EDEEF2;
}

/* トップへ戻るボタン */
.btn-pagetop {
  bottom: 96px !important;
}

@media screen and (max-width: 768px) {
  .btn-pagetop {
    bottom: 90px !important;
  }
}
.pc .btn-pagetop.bottom {
  bottom: 430px !important;
}/*# sourceMappingURL=index_h.css.map */

/*business-product-tab-top-area*/
.business-product-tab-top-area{
  text-align: center;
  background: #EDEEF2;
  padding:50px 0;
}

/*business-product-timeline-area*/

.business-product-timeline-nav-links{
  display: flex;
  width: 100%;
}

.business-product-timeline-nav-item{
  display: flex;
  flex-direction: column;
}

.business-product-timeline-nav-link{
  flex-grow: 1;
  display: flex;
  text-decoration: none;
  color: #000;
  position: relative;
}

.business-product-timeline-nav-link span{
  display: flex;
  text-align: center;
}

.business-product-timeline-nav-time{
  font-size: clamp(1.7rem, 1.4408rem + 0.72vw, 2.4rem);
  font-weight: 600;
  line-height: 1.4;
}

.business-product-timeline-nav-txt{
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1.3;
  flex-grow: 1;
  align-items: center;
}



@media (min-width: 768px) {
.business-product-timeline-area{
  width: 100%;
  background: linear-gradient(to bottom,transparent 27px, #000 28px, #000 29px, transparent 29px);
}
.business-product-timeline-nav-links{
  column-gap: 14px;
}
.business-product-timeline-nav-link{
  flex-direction: column;
  padding: 12px 0 0;
  transition: transform .3s cubic-bezier(.39, .575, .565, 1);
  z-index: 1;
}

.business-product-timeline-nav-link:focus,
.business-product-timeline-nav-link:hover,
.business-product-timeline-nav-link:focus-visible{
  color: #ffffff;
}

.business-product-timeline-nav-link:focus::before,
.business-product-timeline-nav-link:hover::before,
.business-product-timeline-nav-link:focus-visible::before{
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 120px;
  height: 95%;
  border-radius: 5px;
  z-index: -1;
}

.business-product-timeline-nav-item:nth-of-type(odd) .business-product-timeline-nav-link:focus::before,
.business-product-timeline-nav-item:nth-of-type(odd) .business-product-timeline-nav-link:hover::before,
.business-product-timeline-nav-item:nth-of-type(odd) .business-product-timeline-nav-link:focus-visible::before{
  background: #051D98;
}

.business-product-timeline-nav-item:nth-of-type(even) .business-product-timeline-nav-link:focus::before,
.business-product-timeline-nav-item:nth-of-type(even) .business-product-timeline-nav-link:hover::before,
.business-product-timeline-nav-item:nth-of-type(even) .business-product-timeline-nav-link:focus-visible::before{
  background: #000000;
}



.business-product-timeline-nav-item{
  width: 130px;
}
.business-product-timeline-nav-link span {
  justify-content: center;
}
.business-product-timeline-nav-time{
  margin-top: 6px;
}

.business-product-timeline-nav-txt{
  flex-wrap: wrap;
}

.business-product-timeline-nav-icon-arrow{
  margin-top: 6px;
}
}

@media (max-width: 767px) {
.business-product-timeline-area{
  width: 100%;
  background: linear-gradient(to right, transparent 40px, #000 41px, #000 42px, transparent 42px);
}
.business-product-timeline-nav-links{
  flex-direction: column;
  row-gap: 20px;
}
.business-product-timeline-nav-link {
  align-items: center;
  padding: 0 5px;
}
.business-product-timeline-nav-link:focus-visible{
  color: #ffffff;
  border-radius: 5px;
}

.business-product-timeline-nav-item:nth-of-type(odd) .business-product-timeline-nav-link:focus-visible{
  background: #051D98;
}

.business-product-timeline-nav-item:nth-of-type(even) .business-product-timeline-nav-link:focus-visible{
  background: #000000;
}

.business-product-timeline-nav-time {
  width: calc(3.5em + 4px);
  border-right: 1px solid #000000;
}

.business-product-timeline-nav-icon{
  width: 32px;
  margin-right: 8px;
}
.business-product-timeline-nav-txt{
  margin-left: 10px;
  flex-wrap: wrap;
}

.business-product-timeline-nav-small-txt-smt{
  font-size: 1.0rem;
}

.business-product-timeline-nav-icon-arrow img{
  width: 20px;
}
}


/*business-product-bg-blue*/
.business-product-bg-blue{
  background: #051D98;
}

/*business-product-schedule-bg-line*/
@media (min-width: 768px) {
.business-product-schedule-bg-line{
  width: 100%;
  background: linear-gradient(to right, transparent 62px, #ffffff 63px, #ffffff 65px, transparent 65px);
  padding: 80px 0 120px;
}
}

@media (max-width: 767px) {
.business-product-schedule-bg-line {
    width: 100%;
    background: linear-gradient(to right, transparent 30px, #ffffff 31px, #ffffff 32px, transparent 33px);
    padding: 50px 0 93px;
}


}

/*business-product-accordion-area*/
@media (min-width: 768px) {
.business-product-accordion-area{
  margin-top: 70px;
}
}



@media (max-width: 767px) {
.business-product-accordion-area{
  margin-top: 40px;
}
}

/*business-product-accordion-item*/


.business-product-accordion-item{
  position: relative;
  border-radius: 5px;
  background-color: #ffffff;
  margin-top: 18px;
}

.business-product-accordion-item .business-product-accordion-btn{
  content: '';
  position: absolute;
  background-image: url(/flcache_data/product/promotion/business_product/icon_business_product_accordion_open.svg);
  background-size: contain;
  left: 50%;
  transform: translate(-50%, 0);
}

.business-product-accordion-item[open="open"] .business-product-accordion-btn{
  background-image: url(/flcache_data/product/promotion/business_product/icon_business_product_accordion_close.svg);
}


.business-product-accordion-summary{
  display: block flow;
  padding-top: 4px;
  cursor: pointer;
}
.business-product-accordion-summary::-webkit-details-marker {
  display: none;
}
.business-product-accordion-summary span{
  display: inline-block;
  vertical-align: middle;
}

.business-product-accordion-item .business-product-accordion-content{
  display: flex;
  margin: 0px 4px;
  background-color: #EDEEF2;
  position: relative;
}
.business-product-accordion-icon{
  position: absolute;
}

.business-product-accordion-item .business-product-accordion-img-area{
  position: relative;
}

.business-product-accordion-time{
  font-size: clamp(1.8rem, 1.615rem + 0.82vw, 2.6rem);
  line-height: 1.4;
  font-weight: 700;
}

.business-product-accordion-ttl{
  font-size: clamp(2rem, 1.867rem + 0.59vw, 2.6rem);
  line-height: 1.4;
  font-weight: 700;
}

.business-product-accordion-small-ttl{
  font-size: clamp(1.4rem, 1.354rem + 0.21vw, 1.6rem);
}

.business-product-accordion-txt{
  font-size: clamp(1.4rem, 1.308rem + 0.41vw, 1.8rem);
  font-weight: 700;
  line-height: 1.5;
}

.business-product-accordion-details-area {
  display: block grid;
  transition: grid-template-rows 0.3s;
}
.business-product-accordion-details-wrap{
  overflow: hidden;
}


@media (min-width: 768px) {
.business-product-accordion-item .business-product-accordion-content{
  padding: 14px 15px 16px 117px;
}
.business-product-accordion-icon{
  top: -38px;
  left: 22px;
  width: 76px;
}
.business-product-accordion-item .business-product-accordion-txt-area{
  display: flex;
}
.business-product-accordion-time{
  margin-right: 10px;
}
.business-product-accordion-ttl{
  padding-left: 10px;
  border-left: 1px solid #000000;
}
.business-product-accordion-item .business-product-accordion-img-area{
  margin-left: auto;
}
.business-product-accordion-item .business-product-accordion-img-shine-wrap{
  position: absolute;
  overflow: hidden;
}
.business-product-accordion-item .business-product-accordion-img-shine-wrap img{
  display: block;
  width: 100%;
  height: 100%;
  transition: transform 0.5s ease;
}
.business-product-accordion-item .business-product-accordion-img-shine-wrap-01{
  width: 258px;
  height: 176px;
  top: -36px;
  right: 0;
}
.business-product-accordion-item .business-product-accordion-img-shine-wrap-02{
  width: 110px;
  height: 90px;
  top: calc(100% + 14px);
  right: 170px;
}
.business-product-accordion-item .business-product-accordion-img-shine-wrap::before{
  content: "";
  position: absolute;
  top: 120%;
  left: -80%;
  width: 25%;
  height: 180%;
  background: linear-gradient(
    135deg,
    rgba(255, 255, 255,0) 0%,
    rgba(255, 255, 255,0.9) 49%,
    rgba(255, 255, 255,1) 50%,
    rgba(255, 255, 255,0.9) 51%,
    rgba(255, 255, 255,0) 100%
  );
  transform: skewX(-20deg);
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.3s ease;
  z-index: 10;
}
.business-product-accordion-summary:hover .business-product-accordion-img-shine-wrap::before{
  animation: shine 0.7s ease-in-out;
  opacity: 1;
}
.business-product-accordion-summary:hover .business-product-accordion-img-shine-wrap img{
  transform: scale(1.05);
  transition: transform 0.5s ease 0s;
}
.business-product-accordion-summary:hover .business-product-accordion-img-shine-wrap-02::before{
  animation-delay: 0.3s;
}
.business-product-accordion-summary:hover .business-product-accordion-img-shine-wrap-02 img{
  animation-delay: 0.3s;
}

@keyframes shine {
  0%{
    top: 120%;
    left: -80%;
  }
  100%{
    top: -120%;
    left: 120%;
  }
}

.business-product-accordion-item .business-product-accordion-img-area img{
  position: absolute;
}

.business-product-accordion-txt{
  padding: 20px 0 20px 117px;
}
.business-product-accordion-details-inner{
  padding: 0 60px 50px 60px;
}
.business-product-accordion-item .business-product-accordion-btn {
  bottom: -18px;
  width: 36px;
  height: 36px;
}
}

@media (max-width: 767px) {
.business-product-accordion-item .business-product-accordion-content{
  padding: 0;
  flex-direction: column;
}
.business-product-accordion-item .business-product-accordion-img-area {
  display: grid;
}
.business-product-accordion-txt-area{
  padding: 10px 0 10px 64px;
}
.business-product-accordion-icon{
  top: -21px;
  left: 7px;
  width: 42px;
}
.business-product-accordion-ttl{
  margin-top: 2px;
}
.business-product-accordion-summary .business-product-accordion-time{
  display: block;
}
.business-product-accordion-item .business-product-accordion-img-area img.business-product-accordion-img-device{
  position: absolute;
  bottom: 0;
  left: 20px;
}
.business-product-accordion-txt{
  padding: 14px  22px;
}
.business-product-accordion-details-inner{
  padding: 0 22px 30px 22px;
}
.business-product-accordion-item .business-product-accordion-btn {
  bottom: -13px;
  width: 26px;
  height: 26px;
}
}


/*PC2カラム SMT1カラムレイアウト*/

@media (min-width: 768px) {
.business-product-2col-pc-1col-smt,
.business-product-2col-pc-1col-smt-with-slide{
  display: flex;
  justify-content: center;
}
.business-product-2col-pc-1col-smt{
  column-gap: 70px;
}
.business-product-2col-pc-1col-smt-with-slide{
  column-gap: 56px;
}
}

@media (max-width: 767px) {

}

/*アコーディオン内 .business-product-2col-pc-1col-smt*/
.business-product-accordion-details-area .business-product-main-item-info-txt-title{
  color: #000;
  font-size: 1.3rem;
  font-weight: 400;
  line-height: 1.4;
  margin-top: 10px;
}

/*アコーディオン内 .business-product-2col-pc-1col-smt + .business-product-btn-lists*/

.business-product-btn-content-100per.business-product-btn-lists{

}

.business-product-col2-btn-arrow{
  --s: 6px;
  display: block;
  font-size: 0;
  width: var(--s);
  height: var(--s);
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
  transform: rotate(-45deg);
}

.business-product-accordion-details-area .business-product-btn-content-100per.business-product-btn-lists .business-product-col2-btn-blank{
  width: 13px;
  height: 13px;
}

.business-product-btn-content-100per.business-product-btn-lists .business-product-col2-btn {
  min-height: 58px;
}

@media (min-width: 768px) {
.business-product-btn-content-100per.business-product-btn-lists{
  column-gap: 32px;
  width: 632px;
  margin: auto;
}
}

@media (max-width: 767px) {
  .business-product-accordion-details-area .business-product-2col-pc-1col-smt .business-product-main-item-info img {
      width: 44.5vw;
  }
}


/*アコーディオン内 business-product-carousel-1col*/
.business-product-accordion-details-area .business-product-carousel-1col .slick-slider {
  padding-bottom: 0;
}

.business-product-accordion-details-area .business-product-carousel-1col{
  position: relative;
}

.business-product-accordion-details-area .business-product-carousel-1col-inner-main-item-info img{
  margin: 0 auto;
}

.business-product-accordion-details-area .business-product-carousel-1col-inner-main-item-info-txt-title{
  color: #000;
  font-size: 1.3rem;
  font-weight: 400;
  line-height: 1.4;
  margin-top: 26px;
}

.business-product-accordion-details-area .slick-initialized .slick-slide{
  padding: 0;
}

.business-product-accordion-details-area .business-product-carousel-1col-inner-main-item-info{
  padding: 0 10px;
}

.business-product-accordion-details-area .carousel-1col-arrows{
  --s: 32px;
}

.business-product-accordion-details-area .carousel-1col-arrows .slick-prev {
  position: absolute;
  width: var(--s);
  height: var(--s);
  background: transparent;
  border: none;
  font-size: 0;
  z-index: 1;
  cursor: pointer;
  left: 16px;
}

.business-product-accordion-details-area .carousel-1col-arrows .slick-prev::before {
  content: "";
  display: block;
  width: var(--s);
  height: var(--s);
  background-image: url(/flcache_data/product/promotion/business_product/icon_business_product_slick_prev_gray.svg);
  background-repeat: no-repeat;
  background-size: cover;
}

.business-product-accordion-details-area .carousel-1col-arrows .slick-next {
  position: absolute;
  width: var(--s);
  height: var(--s);
  background: transparent;
  border: none;
  font-size: 0;
  z-index: 1;
  cursor: pointer;
  right: 16px;
}

.business-product-accordion-details-area .carousel-1col-arrows .slick-next::before {
  content: "";
  display: block;
  width: var(--s);
  height: var(--s);
  background-image: url(/flcache_data/product/promotion/business_product/icon_business_product_slick_next_gray.svg);
  background-repeat: no-repeat;
  background-size: cover;
}

.business-product-accordion-details-area .carousel-1col-dots .slick-dots{
  bottom: inherit;
  z-index: 10;
}

.business-product-accordion-details-area .carousel-1col-dots .slick-dots li {
  width: 6px;
  height: 6px;
}

.business-product-accordion-details-area .carousel-1col-dots .slick-dots li button::before {
  background: transparent !important;
}

.business-product-accordion-details-area .carousel-1col-dots .slick-dots li.slick-active button {
  background: #C03 !important;
}

.business-product-accordion-details-area .carousel-1col-dots .slick-dots li button {
  width: 6px;
  height: 6px;
  padding: 0;
  border-radius: 100vw;
  border: 1px solid #C03;
  background: #fff !important;
  font-size: 0;
}

.business-product-accordion-details-area .carousel-1col-dots .slick-dots li button:focus {
  outline: 2px solid #000;
}

@media (min-width: 768px) {
.business-product-accordion-details-area .business-product-carousel-1col{
  width: min(100%,335px);
}
.business-product-accordion-details-area .business-product-carousel-1col-inner-main-item-info img{
  width: 220px;
}
.business-product-accordion-details-area .carousel-1col-arrows .slick-prev {
  top: 188px;
}
.business-product-accordion-details-area .carousel-1col-arrows .slick-next {
  top: 188px;
  right: 16px;
}
.business-product-accordion-details-area .carousel-1col-dots .slick-dots{
  top: 220px;
}

}

@media (max-width: 767px) {
.business-product-accordion-details-area .business-product-carousel-1col{
  margin: auto;
}
.business-product-accordion-details-area .business-product-carousel-1col-inner-main-item-info img{
  width: 44.5vw;
}
.business-product-accordion-details-area .carousel-1col-arrows .slick-prev {
  top: calc(44.5vw - 32px);
}
.business-product-accordion-details-area .carousel-1col-arrows .slick-next {
  top: calc(44.5vw - 32px);
}
.business-product-accordion-details-area .carousel-1col-dots .slick-dots{
  top: 44.5vw;
}
}


/*business-product-btn-lists*/
.business-product-btn-lists{
  display: flex;
  justify-content: center;
}


.business-product-col2-btn{
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0 auto;
  border-radius: 100px;
  text-align: center;
  padding: 8px 9px;
  font-size: 1.4rem;
  line-height: 1.4;
  font-weight: 600;
  text-decoration: none;
  transition: transform 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
}

.business-product-col2-btn-red{
  background: #C03;
  color: #ffffff;
}


.business-product-col2-btn-red:visited{
  color: #fff;
}

.business-product-col2-cart{
  position: relative;
}

.business-product-col2-cart::before {
  content: '';
  width: 36px;
  height: 36px;
  background: url(/images_osp/common/ico/ico_conversion_ols_wh.png) center / contain no-repeat;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 12px;
  display: block;
  margin: auto;
}

.business-product-col2-btn-white{
  border: 1px solid #000;
  background: #FFF;
  color: #000;
}

.business-product-col2-btn-white:visited{
  color: #000;
}

.business-product-col2-btn-txt{
  display: block;
  transform: translateX(-50%);
  left: 50%;
  position: relative;
}

@media (min-width: 768px) {
.business-product-col2-btn-list{
  width: 50%;
}
.business-product-col2-btn-red:hover{
  color: #fff;
  opacity: 0.75;
}
.business-product-col2-btn-white:hover{
  color: #cc0033;
}
}

@media (max-width: 767px) {
.business-product-btn-lists{
  row-gap: 15px;
  flex-direction: column;
}
}

/*スライドがある時の調整*/

.business-product-accordion-details-area .business-product-2col-pc-1col-smt-with-slide .business-product-btn-lists{
  width: 100%;
  margin-bottom: 10px;
  padding: 0 5px;
}


.business-product-accordion-details-area .business-product-2col-pc-1col-smt-with-slide .business-product-col2-btn{
  width: 100%;
  min-height: 58px;
}

.business-product-accordion-details-area .business-product-2col-pc-1col-smt-with-slide .business-product-col2-btn-blank{
  width: 10px;
  height: 10px;
}

.business-product-accordion-details-area .business-product-2col-pc-1col-smt-with-slide .business-product-col2-cart::before{
  left: 7px;
  width: 24px;
  height: 24px;
}

@media (min-width: 768px) {
.business-product-accordion-details-area .business-product-2col-pc-1col-smt-with-slide .business-product-btn-lists{
  column-gap: 15px;
}
}

@media (max-width: 767px) {

}


/*business-product-tips-lists*/
.business-product-tips-lists{
  margin-top: 27px;
}


.business-product-tips-ttl{
  margin-bottom: 8px;
}

.business-product-tips-txt{
  font-size: 1.6rem;
}

@media (min-width: 768px) {
.business-product-tips-txt{
  margin-bottom: 30px;
}
}


@media (max-width: 767px) {
.business-product-tips-ttl img{
  width: 19.445vw;
}
.business-product-tips-txt{
  margin-bottom: 15px;
}
}

/*business-product-tips-btn*/
.business-product-tips-btn{
  display: flex;
  justify-content: space-between;
  align-items: center;
  min-height: 46px;
  margin: 0 auto;
  background: #ffffff;
  border-radius: 100px;
  border: 1px solid #C03;
  text-align: center;
  padding: 8px 10px;
  font-size: 1.4rem;
  line-height: 1.4;
  font-weight: 600;
  text-decoration: none;
  color: #C03;
  transition: transform 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
}

.business-product-tips-btn:visited{
  color: #C03;
}


.business-product-tips-btn-txt {
  display: block;
  transform: translateX(-50%);
  left: 50%;
  position: relative;
}

@media (min-width: 768px) {
.business-product-tips-btn{
  width: 300px;
}
.business-product-tips-btn:hover{
  background: #cc0033;
  color: #ffffff;
}
}


@media (max-width: 767px) {
.business-product-tips-btn{
  width:100%;
}
}

/*business-product-accordion-details-bottom-area*/

.business-product-accordion-details-bottom-area{
  margin-top: 40px;
}

.business-product-accordion-details-bottom-ttl{
  font-size: clamp(1.6rem, 1.554rem + 0.21vw, 1.8rem);
  font-weight: 700;
  color: #000;
  line-height: 1.5;
  margin-bottom: 20px;
  text-align: center;
}

.business-product-accordion-details-bottom-1col{
  text-align: center;
  margin: auto;
}

.business-product-accordion-details-bottom-2col-pc-1col-smt{
  display: flex;
  justify-content: center;
}

.business-product-accordion-details-bottom-bnr-lists{
  display: flex;
  justify-content: center;
}

.business-product-accordion-details-bottom-bnr-link{
  display: inline-flex;
  flex-direction: column;
  font-size: 1.2rem;
  font-weight: 400;
  line-height: 1.5;
  margin-top: 8px;
  text-decoration: none;
  color: #000;
  transition: transform 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
}

.business-product-accordion-details-bottom-bnr-link:visited{
  color: #000;
}

.business-product-accordion-details-bottom-txt{
  flex: 1;
  display: flex;
  justify-content: space-between;
  margin-top: 8px;
}

.business-product-accordion-details-bottom-icon img{
  width: 8px;
  height: 8px;
}

@media (min-width: 768px) {
.business-product-accordion-details-bottom-2col-pc-1col-smt .business-product-accordion-details-left-area{
  padding-right: 43px;
  border-right: 1px solid #ccc;
}

.business-product-accordion-details-bottom-2col-pc-1col-smt .business-product-accordion-details-right-area{
  margin-left: 43px;
}

.business-product-accordion-details-bottom-bnr-lists{
  column-gap: 24px;
}

.business-product-accordion-details-bottom-bnr-item{
  width: 170px;
}

.business-product-accordion-details-bottom-bnr-link:hover{
  color: #cc0033;
}

}

@media (max-width: 767px) {

.business-product-accordion-details-bottom-2col-pc-1col-smt{
  flex-direction: column;
  row-gap: 20px;
}


.business-product-accordion-details-bottom-bnr-lists{
  column-gap: 16px;
}

.business-product-accordion-details-bottom-bnr-link{
  width: 36.112vw;
}


.modal-open.business-product-accordion-details-bottom-bnr-link{
  width: 100%;
}

.modal-open.business-product-accordion-details-bottom-bnr-link img{
  width: 47.78vw;
  margin: auto;
}
}

/* .carousel-sort-area */
.carousel-sort-area .business-product-lead-txt-flame{
  width: 100%;
  text-align: center;
}
.carousel-sort-area .business-product-lead-txt {
  width: 100%;
  font-size: clamp(1.4rem, 1.262rem + 0.62vw, 1.7rem);
}
.carousel-sort-btn-wrap{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  column-gap: 16px;
  row-gap: 16px;
}
.carousel-sort-btn-wrap .carousel-sort-text{
  font-weight: 700;
  font-size: clamp(1.2rem, 1.262rem + 0.31vw, 1.6rem);
  color: #051D98;
}
.carousel-sort-btn {
  border: 1px solid #051D98;
  border-radius: 1000px;
  padding: 10px 0;
  background-color: #FFF;
  background-repeat: no-repeat;
  background-position: center left 15px;
  text-align: center;
  color: #051D98;
  font-weight: 700;
}
.carousel-sort-btn[data-filter="smartphone"]{
  background-image: url(/flcache_data/product/promotion/business_product/ico_smartphone.svg);
}
.carousel-sort-btn[data-filter="smartwatch"]{
  background-image: url(/flcache_data/product/promotion/business_product/ico_smartwatch.svg);
}
.carousel-sort-btn[data-filter="other"]{
  background-image: url(/flcache_data/product/promotion/business_product/ico_other_item.svg);
}
.carousel-sort-btn.active{
  background-color: #051D98;
  color: #FFF;
}
.carousel-anchor-link-area {
  padding-top: 22px;
  margin-top: 22px;
  border-top: 1px solid #051D98;
}
.carousel-anchor-link li a{
  display: flex;
  justify-content: center;
  align-items: center;
  height: 50px;
  width: 100%;
  border-radius: 5px;
  border: 1px solid #000;
  background: #FFF url(/flcache_data/product/promotion/business_product/ico_anchor_arrow.svg) no-repeat right 10px center;
  text-decoration: none;
  color: #000;
  font-weight: 700;
  text-align: center;
  line-height: 1.3;
  font-size: clamp(1.2rem, 1.2rem + 0.31vw, 1.4rem);
  transition: all 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media (min-width: 768px) {
.carousel-sort-area{
  max-width: 820px;
  margin: 0 auto;
}
.carousel-sort-btn {
  width: 180px;
  transition: all 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.carousel-sort-btn:hover{
  background-color: #051D98;
  color: #FFF;
}
.carousel-anchor-link {
  display: flex;
  justify-content: center;
  align-items: center;
  column-gap: 24px;
  row-gap: 24px;
}
.carousel-anchor-link li{
  width: calc(100% - 24px / 3);
}
.carousel-anchor-link li a:hover{
  color: #051D98;
}
}
@media (max-width: 767px) {
.carousel-sort-area{
  padding: 0 32px;
  margin: 0 auto;
}
.carousel-sort-area .business-product-lead-txt-flame{
  padding: 14px 10px;
}
.carousel-sort-btn-wrap{
  column-gap: 10px;
  row-gap: 10px;
}
.carousel-sort-text {
  width: 100%;
  text-align: center;
}
.carousel-sort-btn {
  width: calc((100% - 20px) / 3);
  padding-top: 30px;
  border-radius: 10px;
  background-position: top 9px center;
  line-height: 1.3;
}
.carousel-sort-btn[data-filter="smartphone"]{
  background-size: 11px;
}
.carousel-sort-btn[data-filter="smartwatch"]{
  background-size: 10px;
}
.carousel-sort-btn[data-filter="other"]{
  background-size: 13px;
}
.carousel-anchor-link-area {
  padding-top: 15px;
  margin-top: 15px;
}
.carousel-anchor-link li{
  margin-top: 10px;
}
.carousel-anchor-link li:first-of-type{
  margin-top: 0;
}
.carousel-anchor-link li a{
  height: auto;
  padding: 10px 25px;
  background-size: 15px;
}
}
/* .carousel-2col */
.carousel-2col {
  width: 100%;
}
.carousel_ttl{
  font-size: clamp(1.7rem, 1.45rem + 0.625vw, 2.0rem);
  font-weight: 600;
  line-height: 1.5;
  color: #fff;
}
.carousel_sub_ttl{
  display: block;
  font-size: clamp(1.3rem, 1.335rem + 0.31vw, 1.4rem);
  font-weight: 600;
  color: #FFB428;
  line-height: 1.5;
}
.carousel-2col-inner {
  display: flex;
  justify-content: center;
  margin: 0 auto;
  overflow: hidden;
}
.carousel-2col-inner-main {
  width: 100%;
}
.carousel-2col-inner-main-item {
  padding: 20px 22px;
  overflow: hidden;
}
.carousel-2col-inner-main-item-no-data {
  display: none;
  width: 100%;
  background-color: #fff;
  border-radius: 5px;
  text-align: center;
}
.carousel-2col-inner-main-item-no-data .carousel-2col-inner-main-item{
  display: flex;
  justify-content: center;
  align-items: center;
}
.carousel-2col-inner-main-item-link {
  color: #000;
  text-decoration: none;
  transition: -webkit-text-decoration 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: text-decoration 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: text-decoration 0.3s cubic-bezier(0.39, 0.575, 0.565, 1), -webkit-text-decoration 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.carousel-2col-inner-main-item-link:hover,
.carousel-2col-inner-main-item-link:visited,
.carousel-2col-inner-main-item-link:focus-visible {
  color: #000;
}
.carousel-2col-inner-main-item-link-img {
  position: relative;
  width: 100%;
}
.carousel-2col-inner-main-item-link-img .thumbnail {
  width: 100%;
}
.carousel-2col-inner-main-item-link-img .play-btn {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 40px;
  height: 40px;
  z-index: 1;
}
.carousel-2col-inner-main-item-ttl{
  font-size: clamp(1.4rem, 1.335rem + 0.31vw, 1.6rem);
  font-weight: 600;
  line-height: 1.5;
  margin-bottom: 20px;
  text-align: center;
}
.carousel-2col-inner-main-item-link-desc {
  margin-top: 20px;
}
.carousel-2col-arrows {
  --x: 100px;
  --y: -18px;
  --s: 32px;
  position: relative;
  width: 100%;
}
.carousel-2col-arrows .slick-prev {
  position: absolute;
  top: var(--y);
  left: var(--x);
  width: var(--s);
  height: var(--s);
  background: transparent;
  border: none;
  font-size: 0;
  z-index: 1;
  cursor: pointer;
}
.carousel-2col-arrows .slick-prev::before {
  content: "";
  display: block;
  width: var(--s);
  height: var(--s);
  background-image: url("/flcache_data/product/promotion/business_product/ico_slick_next.svg");
  background-repeat: no-repeat;
  background-size: cover;
  transform: rotate(180deg);
  opacity: 1;
}
.carousel-2col-arrows .slick-next {
  position: absolute;
  top: var(--y);
  right: var(--x);
  width: var(--s);
  height: var(--s);
  background: transparent;
  border: none;
  font-size: 0;
  z-index: 1;
  cursor: pointer;
}
.carousel-2col-arrows .slick-next::before {
  content: "";
  display: block;
  width: var(--s);
  height: var(--s);
  background-image: url("/flcache_data/product/promotion/business_product/ico_slick_next.svg");
  background-repeat: no-repeat;
  background-size: cover;
  opacity: 1;
}
.carousel-2col .slick-dots {
  bottom: unset;
  width: 100%;
  padding: 0;
  display: flex;
  gap: 3px;
  justify-content: center;
  list-style: none;
  margin-top: 28px;
}
.carousel-2col .slick-dots li {
  --s: 10px;
}
.carousel-2col .slick-dots li button {
  width: var(--s);
  height: var(--s);
  padding: 0;
  border-radius: 100vw;
  border: 1px solid #FFA600;
  background: #fff !important;
  font-size: 0;
}
.carousel-2col .slick-dots li button::before {
  background: transparent !important;
}
.carousel-2col .slick-dots li.slick-active button {
  background: #FFA600 !important;
}
.carousel-2col .slick-slider {
  margin-bottom: 20px;
}
.carousel-2col-inner-main-item-link-btn{
  position: relative;
  display: flex;
  justify-content: center;
  align-self: end;
  align-items: center;
  width: calc(50% - 16px / 2);
  min-height: 50px;
  padding: 5px 26px;
  border-radius: 100vw;
  border: 1px solid #000;
  background: #fff;
  font-size: 1.4rem;
  font-weight: 700;
  color: #000;
  text-decoration: none;
  text-align: center;
  transition: all 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
  line-height: 1.4;
}
.carousel-2col-inner-main-item-link-btn::after {
    --s: 6px;
    content: "";
    position: absolute;
    right: 15px;
    display: block;
    font-size: 0;
    width: var(--s);
    height: var(--s);
    border-bottom: 1px solid #000;
    border-right: 1px solid #000;
    transform: rotate(-45deg);
}
.carousel-2col-inner-main-item-link-btn[target="_blank"]::after,
.carousel-2col-inner-main-item-link-btn.modal-open::after {
  display: none;
}
.carousel-2col-inner-main-item-link-btn .new-window {
  --s: 9px;
  position: absolute;
  right: 11px;
  font-size: 0;
  width: var(--s);
  height: var(--s);
  background: url(/flcache_data/product/promotion/business_product/ico_new_window_gray.svg);
  background-repeat: no-repeat;
  background-size: contain;
}
.carousel-2col-inner-main-item-link-btn.red-btn{
  background: #CC0033;
  color: #FFF;
  border: 1px solid #CC0033;
}
.carousel-2col-inner-main-item-link-btn.red-btn .new-window{
  background: url(/flcache_data/product/promotion/business_product/ico_new_window_white.svg);
}
.carousel-2col-inner-main-item-link-btn.red-btn::before {
    --s: 19px;
    content: "";
    position: absolute;
    left: 16px;
    width: var(--s);
    height: var(--s);
    background: url(/flcache_data/product/promotion/business_product/ico_online_shop_white.svg);
    background-repeat: no-repeat;
    background-size: contain;
}
.carousel-2col-inner-main-item-link-btn:visited {
  color: #000;
}
.carousel-2col-inner-main-item-link-btn.red-btn:visited{
  color: #FFF;
}
@media (min-width: 768px) {
#TabBody02 .business-person-sec-corner .business-person-sec-inner {
  padding: 70px 0 110px;
}
.carousel_sec_wrap {
  display: flex;
  flex-wrap: wrap;
  column-gap: 40px;
  row-gap: 50px;
  justify-content: center;
  margin-top: 70px;
}
.carousel_sec {
  width: calc(50% - 40px / 2);
}
.carousel-2col-inner-main-item-link-img.product-img {
  width: 228px;
  margin: 0 auto;
}
.carousel-2col-inner-main .slick-list{
  background-color: #fff;
  border-radius: 5px;
}
.carousel-2col-arrows .slick-arrow:hover {
  opacity: 0.75;
}
.carousel-2col-inner-main-item-link-btn-area {
    display: flex;
    justify-content: center;
    margin-top: 20px;
    column-gap: 16px;
    row-gap: 16px;
  }
.carousel-2col-inner-main-item-link-btn:hover {
  color: #CC0033;
}
.carousel-2col-inner-main-item-link-btn.red-btn:hover {
  opacity: 0.75;
}
}
@media (max-width: 767px) {
#TabBody02 .business-person-sec-corner .business-person-sec-inner {
  padding-bottom: 25px;
  width: 100%;
}
#TabBody02 .business-product-sec-2nd-ttl {
  width: 77%;
  margin: 0 auto;
}
#TabBody02 .business-product-sec-2nd-ttl img{
  width: 100%;
}
.carousel_sec{
  margin-top: 50px;
  width: 100%;
}
.carousel_sec:first-of-type{
  margin-top: 50px;
}
.carousel-2col-inner-main .slick-track {
  display: flex;
}
.carousel-2col-inner-main-item{
  margin: 0 6px;
  background-color: #fff;
  border-radius: 5px;
}
.carousel-2col-inner-main-item-link-img.product-img {
  width: 50%;
  margin: 0 auto;
}
.carousel-2col-arrows {
  --x: 10.15vw;
  --y: -5.5vw;
  --s: 9vw;
}
.carousel-2col .slick-dots {
  margin-top: 8vw;
  gap: 4px;
}
.carousel-2col-inner-main-item-link-btn-area {
  margin-top: 20px;
}
.carousel-2col-inner-main-item-link-btn{
  width: 100%;
  margin: 15px auto 0;
}
.carousel-2col-inner-main-item-link-btn:first-of-type{
  margin-top: 0;
}
}

