/* - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - -

HPとLP共通で使用

# Import
# 
# セクションいろいろ
- explore
セクション unique
- unique-001 [HP] a001 home-solution out-of-bounds
- unique-002 [HP] a251 home-internet Campaign
- unique-003 [HP] a251 Tab (How it works)
- unique-004 [HP] a251 Use cases
- unique-005 [HP] online consultation (a211, a251)
- unique-006 [HP] a221, a222 flow data-only
- unique-007 [HP] a001 Performance Belt
- unique-008 [HP] Calendar Price WiFi
- unique-009 [HP] yotpo-review
- unique-010 [HP] APN情報の表
- unique-011 [HP] About us wide pic screen
- unique-012 [HP] SIM card
- unique-013 [HP] a001 Home belt (Why choose Sakura Mobile?)
- unique-014 [HP] a001 Home support-action
- unique-015 [HP] Compatibility type-out-of-bounds
- unique-016 [HP] Compatibility type-connecting-b

-- - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - */


/* Import
= = = = = = = = = = = = = = = = = = = = = = = = = = */


/* @import url("wtools-override___zante___.css"); 250206 暫定の */
/* @import url("wtools-override-icon.css"); */


/*
外部サービスカスタマイズ
= = = = = = = = = = = = = = = = = = = = = = = = = = */

/* Gravity Forms
- - - - - - - - - - - - - - - - - - - - - - - - - - */

.gform_wrapper .ginput_container_textarea textarea,
.gform_wrapper .ginput_container_number input,
.gform_wrapper .ginput_container_phone input,
.gform_wrapper .ginput_container_name input,
.gform_wrapper .ginput_container_date input,
.gform_wrapper .ginput_container_email input,
.gform_wrapper .ginput_container_text input {
  padding: 10px 20px !important;
  border: solid 1px #D7D7D7;
  border-radius: 10px;
  /* background: #F5F5F5; */
}

/* date */

.gform_wrapper.gform_legacy_markup_wrapper .ginput_container_date .ui-datepicker-trigger {
  width: 24px !important;
  height: auto !important;
}


/* button */

.gform_wrapper.gform_legacy_markup_wrapper .gform_footer .gform_button {
  display: block;
  width: 100%;
  position: relative;
  padding: 0 20px;
  height: 100%;
  border: none;
  border-radius: 40px;
  color: #fff;
  background:none;
  z-index: 1;
  font-weight: bold;
  transition: 0.3s;
  margin:0 0 0 0;
}

.gform_wrapper.gform_legacy_markup_wrapper .gform_footer:hover {
  background: #FFF;
  border: 1px solid #E269A4;
}

.gform_wrapper.gform_legacy_markup_wrapper .gform_footer:hover .gform_button {
  color: #E269A4;
}

.gform_wrapper.gform_legacy_markup_wrapper .gform_footer:has(.gform_button):after {
    content: "";
    background-image: url(/assets/img-leaf/icon/submit-01-white.svg);
    background-size: cover;
    left: auto;
    left: 50%;
    position: absolute;
    display: block;
    top: 50%;
    transform: translate(250%, -50%);
    width: 14px;
    height: 14px;
    z-index: 0;
    transition: 0.3s;
}

.gform_wrapper.gform_legacy_markup_wrapper .gform_footer:hover:has(.gform_button):after {
    background-image: url(/assets/img-leaf/icon/submit-01-pink.svg);
    background-size: cover;
}

.gform_wrapper.gform_legacy_markup_wrapper select.medium.gfield_select+div.chosen-container-single[style] {
    width: 100% !important;
    height: 46px !important;
}
.gform_legacy_markup_wrapper select.large.gfield_select+div.chosen-container-multi[style] .chosen-single,
body .gform_legacy_markup_wrapper select.large.gfield_select+div.chosen-container-single[style] .chosen-single,
.gform_wrapper.gform_legacy_markup_wrapper select.medium.gfield_select+div.chosen-container-single[style] .chosen-single {
    height: 46px;
    background: none;
    box-shadow: none;
    border: solid 1px #D7D7D7;
    border-radius: 10px;
    display: flex;
    align-items: anchor-center;
}

@media only screen and (max-width: 640px) {
    .gform_legacy_markup_wrapper select.large.gfield_select+div.chosen-container-multi[style] .chosen-single span,
    body .gform_legacy_markup_wrapper select.large.gfield_select+div.chosen-container-single[style] .chosen-single span,
    .gform_wrapper.gform_legacy_markup_wrapper select.medium.gfield_select+div.chosen-container-single[style] .chosen-single span{
        margin-bottom: 0;
    }
    .gform_legacy_markup_wrapper select.large.gfield_select+div.chosen-container-multi[style] .chosen-single div b,
    body .gform_legacy_markup_wrapper select.large.gfield_select+div.chosen-container-single[style] .chosen-single div b,
    .gform_wrapper.gform_legacy_markup_wrapper select.medium.gfield_select+div.chosen-container-single[style] .chosen-single div b{
        transform: translateY(-50%);
    }
}

.gform_wrapper.gform_legacy_markup_wrapper select.medium.gfield_select+div.chosen-container-active.chosen-with-drop.chosen-container-single[style] .chosen-single {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}

.gform_legacy_markup_wrapper .chosen-container-single .chosen-single div b {
    background-position: 0 12px !important;
}

.gform_legacy_markup_wrapper ul.gform_fields li.gfield input::placeholder {
    color: #9B9B9B;
}

.gform_legacy_markup_wrapper .chosen-container-active.chosen-with-drop.chosen-container-single .chosen-single div b {
    background-position:  -18px 12px !important;
}

.gform_legacy_markup_wrapper .chosen-container-single .chosen-drop {
    border-radius: 0 0 10px 10px !important;
}

.gform_legacy_markup_wrapper .chosen-container .chosen-drop {
    border: 1px solid #D7D7D7 !important;
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
}

@media only screen and (min-width: 835px) {
  .gform_legacy_markup_wrapper .gform_footer a.gform_save_link, .gform_legacy_markup_wrapper .gform_page_footer a.gform_save_link {
      position: absolute;
      top: calc(50% - 12px);
      left: 100%;
      width: fit-content;
      text-align: left;
      white-space: nowrap;
      margin-left: 46px !important;
  }

  .gform_wrapper.gform_legacy_markup_wrapper .gform_footer {
      margin: 40px auto 56px calc(50% - 263px);
  }

}

@media only screen and (max-width: 834px) {
  .gform_legacy_markup_wrapper .gform_footer a.gform_save_link, .gform_legacy_markup_wrapper .gform_page_footer a.gform_save_link {
      margin: 32px 0 0 0 !important;
      text-align: center;
      width: 100%;
  }
}

/* 250227 input submit には before は効かない
.gform_wrapper .gform_footer .gform_button:before {
  position: absolute;
  display: block;
  content: "";
  top: 44%;
  left: 1px;
  transform: translateY(-50%);
  width: 16px;
  height: 16px;
  background-repeat: no-repeat;
  background-position: 0 0;
  background-image: url(/assets/img-leaf/icon/submit-01-white.svg);
  background-size: 100% auto;
}
*/

.gform_wrapper.gform_legacy_markup_wrapper .gform_footer {
  display: block;
  width: 300px;
  position: relative;
  background: #E269A4;
  border-radius: 42px;
  padding: 0px 0 0px 0;
  transition: 0.3s;
  box-sizing: border-box;
  height: 42px;
}

/* error */

.gform_wrapper.gform_legacy_markup_wrapper .validation_error {
  color: #DA1E28;
  border: 1px solid #DA1E28;
}

.gform_wrapper .gform_validation_errors > h2 {
  color: #DA1E28;
}
.gform_wrapper .gform_validation_errors>h2:before {
  background-image: url(/assets/img-leaf/icon/error-01-red.svg);
}

.gform_wrapper.gform_legacy_markup_wrapper .gfield_required,
.gform_wrapper.gform_legacy_markup_wrapper .validation_message,
.gform_wrapper.gform_legacy_markup_wrapper .gfield_error .gfield_label {
  color: #DA1E28;
}
.gform_wrapper.gform_legacy_markup_wrapper li.gfield.gfield_error.gfield_contains_required {
  padding-left: 10px;
  padding-right: 10px;
}
.gform_wrapper.gform_legacy_markup_wrapper li.gfield_error input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]),.gform_legacy_markup_wrapper li.gfield_error textarea {
  border: 1px solid #DA1E28
}
.gform_wrapper .gform-sm-notice-description .gfield_description {
  font-size: 14px;
  color: #DA1E28;
}


/* Yotpo
- - - - - - - - - - - - - - - - - - - - - - - - - - */

@media only screen and (max-width: 834px) {
  .yotpo.testimonials {
    display: none;
  }
}
#yotpo_testimonials_btn {
  display: none;
}


/* jQuery UI Datepicker
- - - - - - - - - - - - - - - - - - - - - - - - - - */

.c-message-datepicker {
  font-size: 18px;
  text-align: center;
}


/*
zante___
= = = = = = = = = = = = = = = = = = = = = = = = = = */

/*
zante___
#wpadminbar
- - - - - - - - - - - - - - - - - - - - - - - - - - */

html.js { margin-top: 0 !important; }
#wpadminbar {
  display: none;
}

/*
zante___line-2
zante___line-3
zante___line-4
- - - - - - - - - - - - - - - - - - - - - - - - - - */

@media only screen and (min-width: 1025px) {
  .zante___line-3 {
    min-height: 81px;
  }
  .zante___line-4 {
    min-height: 108px;
  }
}


/* .cat-error
- - - - - - - - - - - - - - - - - - - - - - - - - - */

.cat-error .bg-ut-image-azalea {
  margin-top: 160px;
  margin-bottom: 40px;
}
@media only screen and (max-width: 640px) {
  .cat-error .bg-ut-image-azalea {
    margin-top: 100px;
    margin-bottom: 0px;
    background-size: 130% auto;
  }
  .cat-error .bg-ut-image-azalea img {
    width: 180px;
  }
}

/*  */

.cat-error .l-container.adjust-blankspace.type-medium.oops .in-container {
  margin-bottom: 50px;
  padding-bottom: 120px;
}

.cat-error .oops .in-container {
  position: relative;
}
.cat-error .oops .in-container:before {
  position: absolute;
  display: block;
  content: "";
  right: -140px;
  bottom: 0px;
  width: 140px;
  height: 140px;
  background-position: 0 0;
  background-repeat: no-repeat;
  background-image: url(/assets/img/error/oops.svg);
  background-size: 100% auto;
}

@media only screen and (max-width: 1140px) {
  .cat-error .oops .in-container:before {
    right: 40px;
  }
}
@media only screen and (max-width: 640px) {
  .cat-error .oops .in-container:before {
    width: 100px;
    height: 100px;
  }
}


/*
a621-solution
- - - - - - - - - - - - - - - - - - - - - - - - - - */

.nav-ut-handling.case-voice .c-label h3 {
  color: #E269A4;
  font-size: 24px;
  font-weight: 800;
}
.nav-ut-handling.case-data-only .c-label h3 {
  color: #35A0EA;
  font-size: 24px;
  font-weight: 800;
}


/* セクションいろいろ
   セクション単位 使い回せるように
= = = = = = = = = = = = = = = = = = = = = = = = = = */


/*
250206
explore
- - - - - - - - - - - - - - - - - - - - - - - - - - */

.explore h2 {
  margin-bottom: 22px;
  color: #fff;
}
.explore .card-ut {
  padding: 0;
  text-decoration: none;
}
.explore .card-ut.type-boron .c-pic {
  margin-bottom: 2px;
}
.explore a.card-ut:hover img    { filter: alpha(opacity=70); -moz-opacity: 0.7; opacity: 0.7; transition: 0.4s; }
.explore .card-ut .c-heading {
  color: #fff;
  font-weight: 700;
  text-decoration: none;
}
.explore .card-ut:hover .c-heading {
  color: rgba(255, 255, 255, 0.60);
  text-decoration: none;
}


/* blog
- - - - - - - - - - - - - - - - - - - - - - - - - - */

/* 250805 コメントアウト
.blog-thumbnail.l-container.adjust-blankspace .in-container {
  padding-top: 56px;
  padding-bottom: 120px;
}
@media only screen and (max-width: 640px) {
  .blog-thumbnail.l-container.adjust-blankspace .in-container {
    padding-top: 80px;
  }
}
*/

.blog-thumbnail a.card-ginger {
  color: #595857;
}

/*  */

.bottom-menu a {
  font-size: 1.4rem;
  color: #222;
  text-decoration: none;
}
.bottom-menu a:hover {
  color: #E269A4;
}


/* セクション unique
   セクション単位
= = = = = = = = = = = = = = = = = = = = = = = = = = */


/*
250205
top
home-solution
- - - - - - - - - - - - - - - - - - - - - - - - - - */

.unique-001.type-out-of-bounds {
  margin-top: 100px;
  margin-bottom: 100px;
}

@media only screen and (max-width: 640px) {
  .unique-001.type-out-of-bounds {
    margin-top: 260px;
    margin-bottom: 0px;
    background-color: #fff8fb;
  }
  .section-visual-j .c-bg-01 {
    margin-top: -180px;
    /* background-color: #fff8fb; */
    /* background-image: url(/assets/img/bg/bg-04-sp.webp) !important; */
  }
}


/*  2025-08-25 Garayev */

.unique-001.l-container.section-visual-j.type-out-of-bounds {
    position: relative;
    background: url(/assets/img/bg/bg-04-pattern.png) center 130% repeat-x, linear-gradient(120deg, rgba(247, 247, 247, 0.5) 0%, rgba(252, 233, 242, 1) 70%, rgba(252, 233, 242, 1) 100%);
    background-size: unset;
}

.unique-001 .in-container .panel-ut.type-bisect {
    position: relative;
    grid-template-columns: auto;
    padding-right: 50%;
}

.unique-001 .panel-ut.type-bisect .panel-ut-img {
    position: absolute;
    width: 550px;
    top: 50%;
    left: 50%;
    transform: translateY(-50%);
}

.unique-001 .panel-ut.type-bisect .panel-ut-img img {
    max-width: 100%;
}

@media only screen and (max-width: 1100px) {
  

}

@media only screen and (max-width: 834px) {
  .unique-001 .panel-ut.type-bisect .panel-ut-img {
      left: 60%;
  }

  .unique-001 .panel-ut.type-bisect .panel-ut-img {
      max-width: 410px;
  }

  .unique-001.l-container.adjust-blankspace .in-container {
      padding-top: 26px;
      padding-bottom: 26px;
  }

  .unique-001.in-container .panel-ut.type-bisect {
    padding-right: 40%;
  }

}

@media only screen and (max-width: 640px) {
  .unique-001.l-container.section-visual-j.type-out-of-bounds {
    background: url(/assets/img/bg/bg-04-pattern.png) center -370px repeat-x, linear-gradient(120deg, rgba(247, 247, 247, 0.5) 0%, rgba(252, 233, 242, 1) 70%, rgba(252, 233, 242, 1) 100%);
    background-size: unset;
    margin-top: 60px;
  }

  .unique-001 .in-container .panel-ut.type-bisect {
      padding-right: 0;
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
  }

  .unique-001 .in-container .panel-ut.type-bisect .unit-ut {
    order: 2;
  }

  .unique-001 .panel-ut.type-bisect .panel-ut-img {
      position: relative;
      left: 0;
      top: 0;
      transform: unset;
      order: 1;
      margin: 0 auto;
      width: 100%;
  }

}


/*
241204
Home Internet
Campaign
- - - - - - - - - - - - - - - - - - - - - - - - - - */

.section-visual-e.unique-002 .in-container > .panel-ut {
  background-image: linear-gradient(150deg, rgba(228, 115, 170, 1) 50%, rgba(170, 0, 83, 1) 99%);
}
.section-visual-e.unique-002 .c-heading {
  font-size: 64px;
  font-weight: 800;
  line-height: 1;
  color: #fff;
  text-shadow: 4px 4px 0px rgba(206, 47, 124, 1);
}
.section-visual-e.unique-002 .paragraph-ut {
  color: #fff;
  font-size: 24px;
  font-weight: 500;
  line-height: 1.4;
}
.section-visual-e.unique-002 .panel-ut > .unit-ut > .in-unit {
  padding-top: 40px;
  padding-bottom: 40px;
}

@media only screen and (max-width: 834px) {
  .section-visual-e.unique-002 .in-container {
    padding-left: 0px;
    padding-right: 0px;
  }
  .section-visual-e.unique-002 .c-heading {
    margin-bottom: 16px;
  }
  .section-visual-e.unique-002 .p-heading .c-badge.type-w120 {
    position: absolute;
    right: 20px;
    top: -80px;
    margin-top: 0;
  }
}
@media only screen and (max-width: 640px) {
  .section-visual-e.unique-002 .c-heading {
    margin-top: 7px;
    font-size: 48px;
  }
  .section-visual-e.unique-002 .paragraph-ut {
    font-size: 20px;
  }
  .section-visual-e.unique-002 .c-badge {
  }
}
@media only screen and (max-width: 430px) {
  .section-visual-e.unique-002 .c-heading {
    font-size: 3.6rem;
  }
}

.section-visual-e.unique-002 a.button-ut {
  border-radius: 50px;
  box-shadow: unset;
  border: 2px solid #fff;
  background: #fff;
  color: #E473AA !important;
}
.section-visual-e.unique-002 a.button-ut:hover {
  border: 2px solid #fff;
  background: transparent !important;
  color: rgba(255, 255, 255, 1) !important;
  text-decoration: none;
}




/*
241204
Home Internet
どのcssファイルにいれようか
.l-container につけるクラス .unique-003
- - - - - - - - - - - - - - - - - - - - - - - - - - */

.unique-003 {

}
.unique-003 .block-tab-a > .p-nav > li a {
  font-size: 20px;
  font-weight: 700;
}
.unique-003 .block-tab-a.p-product > .p-nav > li a {
  font-size: 20px;
}
.unique-003 .block-tab-a > .p-nav > li a.st-active {
  color: #222222;
}
.unique-003 .block-tab-a > .p-nav > li.case-home-wifi a.st-active {
  border-bottom: solid 4px #76B63D;
}
.unique-003 .block-tab-a > .p-nav > li.case-fiber a.st-active {
  border-bottom: solid 4px #3691E4;
}
.unique-003 .block-tab-a > .p-nav > li a span {
  position: relative;
  padding-left: 40px;
}
.unique-003 .block-tab-a > .p-nav > li a span:before {
  position: absolute;
  display: block;
  top: 50%;
  left: 0px;
  transform: translateY(-50%);
  width: 30px;
  height: 30px;
  content: "";
  background: url(/assets/img-leaf/icon/wifi-signal-01-gray.svg) no-repeat 0 0;
  background-size: 100% auto;
}
.unique-003 .block-tab-a > .p-nav > li a:hover span:before,
.unique-003 .block-tab-a > .p-nav > li a.st-active span:before {
  background-image: url(/assets/img-leaf/icon/wifi-signal-01-black.svg);
}
.unique-003 .block-tab-a > .p-nav > li.case-fiber a span:before {
  background-image: url(/assets/img-leaf/icon/fiber-cable-01-gray.svg);
}
.unique-003 .block-tab-a > .p-nav > li.case-fiber a:hover span:before,
.unique-003 .block-tab-a > .p-nav > li.case-fiber a.st-active span:before {
  background-image: url(/assets/img-leaf/icon/fiber-cable-01-black.svg);
}

.unique-003 .figure-ut.type-left {
  margin-right: 15px;
  margin-bottom: 5px;
  padding-top: 0;
}
.unique-003 .p-introduction .heading-ut-pre {
  margin-bottom: 0;
}
.unique-003 .p-introduction h3.heading-ut {
  padding-top: 0;
  text-align: left;
}
@media only screen and (max-width: 834px) {
  .unique-003 .block-tab-a > .p-nav {
    width: 100%;
  }
  .unique-003 .block-tab-a.tab-ut > .p-nav > li a {
    padding-left: 5px;
    padding-right: 5px;
  }
  .unique-003 .block-tab-a > .p-nav > li a span:before {
    width: 20px;
    height: 20px;
  }
}
@media only screen and (max-width: 640px) {
  .unique-003 .figure-ut.type-left {
    margin-top: 12px;
    margin-right: 10px;
  }
  .unique-003 .card-ut-head-quote .paragraph-ut {
    line-height: 1.3;
  }
  .unique-003 .type-flow-right .card-ut .c-lead {
    text-align: left;
    height: 3em;
  }
  .unique-003 .p-introduction .heading-ut-pre,
  .unique-003 .p-introduction h3.heading-ut {
    display: block;
    text-align: center;
  }
  .unique-003 .block-tab-a.p-product > .p-nav > li a {
    font-size: 16px;
  }
  .unique-003 .p-introduction {
    row-gap: 24px;
  }
}


/*
.unique-003 .heading-ut-pre {
  color: #E372A9;
}
.unique-003 .tab-ut .c-heading {
  color: #E372A9;
}
*/
.unique-003 .type-flow-right .card-ut .c-lead {
  text-align: center;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.2;
}
.unique-003 .type-flow-right .card-ut.type-hydrogen .c-heading {
  height: 1em;
  font-size: 16px;
}

@media only screen and (min-width: 641px) {
  .unique-003 .type-flow-right .card-ut.type-hydrogen .c-pic {
    width: 134px;
  }
  .unique-003 .card-ut-head-quote .paragraph-ut {
    margin-top: 0;
  }
}



/*
241204
Home Internet
use-case
- - - - - - - - - - - - - - - - - - - - - - - - - - */

.unique-004 .wrap-heading {
  text-align: center;
  color: #fff;
  margin-bottom: 40px;
  padding: 20px 0;
}
.unique-004 .heading-ut-icon {
  display: inline-block;
  margin-bottom: 0;
  font-size: 24px;
  font-weight: 700;
}

.unique-004 .card-ut-head-quote .p-head {
  background: #fff;
  font-size: 2.0rem;
  font-weight: 700;
}
.unique-004 .case-home-wifi .wrap-heading {
  background: #76B63D;
}
.unique-004 .case-home-wifi .card-ut-head-quote .p-head {
  border: solid 4px rgba(118, 182, 61, 1);
}
.unique-004 .case-home-wifi .card-ut-head-quote {
  background: rgba(118, 182, 61, 0.15);
}
.unique-004 .case-home-wifi .card-ut-head-quote .p-head::before {
  background-image: url(/assets/img-leaf/icon/quote-01-green.svg);
}
.unique-004 .case-home-wifi .card-ut-head-quote .p-head::after {
  position: absolute;
  display: block;
  right: 20px;
  top: -20px;
  width: 34px;
  height: 34px;
  content: "";
  background: url(/assets/img-leaf/icon/quote-02-green.svg) no-repeat 0 0;
  background-size: 100% auto;
}

.unique-004 .card-ut-head-quote.type-line-2 {
  margin-top: 100px;
}
.unique-004 .card-ut-head-quote.type-line-2 .p-head {
  min-height: 108px;
}
.unique-004 .card-ut-head-quote.type-line-3 {
  margin-top: 124px;
}
.unique-004 .card-ut-head-quote.type-line-3 .p-head {
  min-height: 138px;
}

@media only screen and (max-width: 834px) {
  .unique-004 .card-ut-head-quote[class*="type-line"],
  .unique-004 .card-ut-head-quote {
    margin-top: 10px;
  }
}

.unique-004 .case-fiber .wrap-heading {
  background: #3691E4;
}
.unique-004 .case-fiber .card-ut-head-quote .p-head {
  border: solid 4px rgba(54, 145, 228, 1);
}
.unique-004 .case-fiber .card-ut-head-quote {
  background: rgba(54, 145, 228, 0.15);
}
.unique-004 .case-fiber .card-ut-head-quote .p-head::before {
  background-image: url(/assets/img-leaf/icon/quote-01-blue.svg);
}
.unique-004 .case-fiber .card-ut-head-quote .p-head::after {
  position: absolute;
  display: block;
  right: 20px;
  top: -20px;
  width: 34px;
  height: 34px;
  content: "";
  background: url(/assets/img-leaf/icon/quote-02-blue.svg) no-repeat 0 0;
  background-size: 100% auto;
}

@media only screen and (max-width: 834px) {
  .unique-004 .panel-ut.type-bisect.unit-mrgn-24 .unit-ut.case-home-wifi {
    margin-bottom: 70px;
  }
}
@media only screen and (max-width: 640px) {
  .unique-004 .wrap-heading {
    margin-bottom: 20px;
  }
}


/*
250206
online consultation
- - - - - - - - - - - - - - - - - - - - - - - - - - */

.unique-005 .c-heading {
  font-size: 36px;
  font-weight: 700;
}
@media only screen and (max-width: 640px) {
  .unique-005 .c-heading {
    font-size: 30px;
  }
}
.unique-005 .c-heading .c-highlight {
  color: #E473AA;
}
.unique-005 .bg-ut-blue .c-heading .c-highlight {
  color: #3691E4;
}
.unique-005 .c-heading.size-decrease-1 {
  font-size: 32px;
}

.unique-005 .panel-ut > .unit-ut > .in-unit {
  padding: 40px;
}
@media only screen and (max-width: 834px) {
.unique-005 .panel-ut > .unit-ut > .in-unit {
  padding-left: 30px;
  padding-right: 30px;
}
}

/* deco */

.unique-005 .c-heading.c-deco {
  position: relative;
}
.unique-005 .c-heading.c-deco::before {
  position: absolute;
  display: block;
  top: -20px;
  right: 160px;
  width: 54px;
  height: 54px;
  content: "";
  background: url(/assets/img-leaf/icon/conversation-01-pink.svg) no-repeat 0 0;
  background-size: 100% auto;
}
.unique-005 .bg-ut-blue .paragraph-ut {
  font-size: 16px;
  line-height: 1.3;
}
.unique-005 .bg-ut-blue .c-heading.c-deco::before {
  top: -20px;
  right: 170px;
  width: 54px;
  height: 54px;
  background-image: url(/assets/img-leaf/icon/conversation-01-blue.svg);
}


.unique-005 .p-heading {
  margin-bottom: 16px;
}


@media only screen and (max-width: 640px) {
  .unique-005 .c-heading.c-deco::before {
    right: 0px;
  }
  .unique-005 .bg-ut-blue .c-heading {
    font-size: 30px;
  }
  .unique-005 .bg-ut-blue .c-heading.c-deco::before {
    top: 20px;
    right: 20px;
  }
  .unique-005 .bg-ut-blue .unit-ut .in-unit {
    padding-top: 20px !important;
    padding-right: 20px !important;
    padding-left: 20px !important;
  }
}


.unique-005 .bg-ut-blue a.button-ut.model-secondary {
  background: #35A0EA;
}
.unique-005 .bg-ut-blue a.button-ut.model-secondary:hover {
  background: #35A0EA !important;
  color: rgba(255, 255, 255, 0.6) !important;
}


/*
250210
.unique-006
flow
data-only
- - - - - - - - - - - - - - - - - - - - - - - - - - */

.unique-006 .panel-ut.type-flow.type-okaka > .unit-ut:nth-child(2):after {
  background: none;
  font-weight: 700;
  content: "OR";
  transform: rotate(0deg);
}

.panel-ut.type-flow > .unit-ut.type-or:after {
  content: "OR";
}
.panel-ut.type-flow.zante___ > .unit-ut.type-or:after {
  top: 153px;
}
.panel-ut.type-flow.type-okaka > .unit-ut.type-or:after {
  background: none;
}
@media only screen and (max-width: 834px) {
  .panel-ut.type-flow > .unit-ut.type-or:after {
    transform: rotate(0deg);
  }
  .panel-ut.type-flow.zante___ > .unit-ut.type-or:after {
    top: calc(100% - 3px);
  }
}


/*
.unique-007
250513
Home Belt
- - - - - - - - - - - - - - - - - - - - - - - - - - */

.unique-007 .in-container {
  padding-top: 0px;
  padding-bottom: 0px;
  padding-left: 0;
  padding-right: 0;
}
/* 
.unique-007 .block-belt-a.type-divider {
  padding-top: 30px;
  padding-bottom: 30px;
} */
.unique-007 .block-belt-a.type-divider > .unit-ut {
  border-color: #E269A4;
}
.unique-007 .block-belt-a .card-ut.type-helium {
  color: #E269A4;
}
.unique-007 .block-belt-a .card-ut.type-helium .c-pic {
  display: flex;
  align-items: center;
}
.unique-007 .block-belt-a .card-ut.type-helium .c-heading {
  margin-bottom: 0;
  font-size: 3.2rem;
  font-weight: 700;
}
.unique-007 .block-belt-a .card-ut.type-helium .c-lead {
  font-weight: 600;
}

.unique-007 .block-belt-a.type-divider > .unit-ut:after {
  left: calc( 100% + 10px );
  background: #E269A4;
}
.unique-007 .block-belt-a.type-divider > .unit-ut:nth-child(2):after {
  left: calc( 100% + 14px );
}

@media only screen and (max-width: 834px) {
  .unique-007 .block-belt-a.type-divider > .unit-ut:after {
    left: calc( 100% + -40px );
  }
}
@media only screen and (max-width: 640px) {
  .unique-007 .panel-ut {
    width: calc( 100% - 40px );
    margin-left: 20px;
    margin-right: 20px;
  }
  .unique-007 .unit-ut {
    margin-bottom: 0 !important;
  }
  .unique-007 .block-belt-a.type-divider.type-num-3 > .unit-ut {
    width: 50%;
  }
  .unique-007 .block-belt-a .card-ut.type-helium .c-heading {
    margin-left: 10px;
    font-size: 2.0rem;
  }
  .unique-007 .block-belt-a .card-ut.type-helium .c-lead {
    margin-left: 10px;
    font-size: 1.2rem;
  }
}

@media only screen and (max-width: 480px) {
  .unique-007 .block-belt-a.type-divider {
    padding-left: 20px;
    padding-right: 20px;
  }
  .unique-007 .block-belt-a.type-divider > .unit-ut:after {
    left: calc( 100% + -20px );
  } 
}

/*
250513
.unique-008
Calendar Price WiFi
- - - - - - - - - - - - - - - - - - - - - - - - - - */


/* Datepicker */

.unique-008 .start_end_date_wrap .start_date_wrap {
  width: 240px;
  margin: 0 30px 0 auto;
}
.unique-008 .start_end_date_wrap .end_date_wrap {
  width: 240px;
  margin: 0 auto 0 30px;
}
.unique-008 .start_end_date_wrap .start_date_wrap input,
.unique-008 .start_end_date_wrap .end_date_wrap input {
  padding: 5px 10px;
  border-radius: 10px;
  border: 1px solid #D7D7D7;
  background: #FFF;
  box-shadow: 8px 8px 12px 0px rgba(0, 0, 0, 0.12);
}
@media only screen and (max-width: 640px) {
  .unique-008 .start_end_date_wrap .start_date_wrap,
  .unique-008 .start_end_date_wrap .end_date_wrap {
      margin: 0 auto;
  }
}


/* Message Box */

.unique-008.st-default .default-message-box {
  display: block;
}
.unique-008.st-price .default-message-box {
  display: none;
}

.unique-008.st-default .price-message-box {
  display: none;
}
.unique-008.st-price .price-message-box {
  display: flex;
}
@media only screen and (max-width: 640px) {
  .unique-008.st-price .price-message-box {
    flex-direction: column;
  }
}

.unique-008 .price-message-box,
.unique-008 .default-message-box {
  /* padding: 40px 0; */
  border-radius: 20px;
  background: #FFF;
  box-shadow: 8px 8px 12px 0px rgba(0, 0, 0, 0.12);
  color: #E269A4;
  font-size: 1.6rem;
  text-align: center;
  overflow: hidden;
}
.unique-008 .default-message-box {
  padding: 40px 0;
}
@media only screen and (min-width: 835px) {
  .unique-008 .price-message-box,
  .unique-008 .default-message-box {
    width: 720px;
    margin: 0 auto;
  }
}
.unique-008 #error_end_date {
  margin-bottom: 40px;
}

/* Image */

.unique-008 .price-message-box .img-wifi {
  width: 170px;
  padding: 75px 0 0 0;
  background: #D3F6FF;
}
.unique-008 .price-message-box .img-wifi img {
  width: 100%;
}
@media only screen and (max-width: 640px) {
  .unique-008 .price-message-box .img-wifi {
    width: 100%;
    padding: 20px 0 10px 0;
  }
  .unique-008 .price-message-box .img-wifi img {
    display: block;
    width: 140px;
    margin: 0 auto;
  }
}

/* Price */

.unique-008 .price-message-box #unlimitedCol4Row1 {
  position: relative;
  margin-top: 3px;
}
.unique-008 .price-message-box #unlimitedCol4Row1 .discount {
  position: absolute;
  left: 50%;
  top: 0;
  transform: translateX(-50%);
  width: 250px;
  max-width: none;
  margin-left: 0;
  margin-right: 0;
  background: #E269A4;
  color: #fff;
  font-size: 1.6rem;
  font-weight: 700;
  text-shadow: none;
}
.unique-008 .price-message-box #unlimitedCol4Row1 #unlimitedRetailPrice333 {
  margin-bottom: 30px;
  padding-top: 30px;
  color: #595857;
  font-size: 2.0rem;
}
.unique-008 .price-message-box #unlimitedCol4Row1 #unlimitedRetailPrice1:before,
.unique-008 .price-message-box #unlimitedCol4Row1 #unlimitedRetailPrice333:before {
  display: block;
  display: none; /* 250523 */
  font-size: 1.6rem;
  text-decoration: none !important;
}
.unique-008 .price-message-box #unlimitedCol4Row1 #unlimitedRetailPrice333 .label-regular {
  display: block;
  margin-bottom: 5px;
  font-size: 1.6rem;
}
.unique-008 .price-message-box #unlimitedCol4Row1 #unlimitedRetailPrice333 .price-regular {
  display: block;
  font-size: 2.0rem;
  text-decoration: line-through;
}
.unique-008 .price-message-box #unlimitedCol4Row1 #unlimitedRetailPrice1:after,
.unique-008 .price-message-box #unlimitedCol4Row1 #unlimitedRetailPrice333:after {
  left: 50%;
  bottom: -34px;
  transform: translateX(-50%); 
}
.unique-008 .price-message-box #unlimitedCol4Row1 #unlimitedPrice1,
.unique-008 .price-message-box #unlimitedCol4Row1 #unlimitedPrice333 {
  color: #595857;
  font-size: 32px;
  font-weight: 800;
}
.unique-008 .price-message-box #unlimitedCol4Row1 .tax_incl {
  color: #595857;
  font-size: 16px;
  font-weight: 400;
}

.unique-008 .price-message-box .price {
  background: none;
  color: #E269A4;
  font-weight: 800;
}
.unique-008 .price-message-box .price span {
  font-size: 2.4rem;
}
.unique-008 .price-message-box .unlimited_wifiTable {
  padding: 20px 0;
}
.unique-008 .price-message-box .unlimited_wifiTable td {
  background: #fff;
}

.unique-008 .price-message-box #unlimited_wifi > tbody > tr > td:nth-child(2) {
  margin-left: 0;
}
.unique-008 .price-message-box .unlimited_wifiTable td {
  padding-left: 0;
}
@media screen and (max-width: 639px) {
  .unique-008 .price-message-box #unlimitedCol4Row1 .discount {
    margin-left: auto;
    margin-right: auto;
    padding-top: 4px;
    padding-bottom: 4px;
    text-align: center;
  }
  #unlimitedRetailPrice1:after,
  #unlimitedRetailPrice333:after {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 25px 20px 0 20px;
    border-color: #e572ab transparent transparent transparent;
    position: absolute;
    bottom: -41px;
    left: 50%;
    transform: translateX(-50%);
  }
}


/*
250221
.unique-009
yotpo-review
- - - - - - - - - - - - - - - - - - - - - - - - - - */

.unique-009 .yotpo .yotpo-regular-box {
  padding: 25px 20px 22px;
  margin: 0 10px 40px;
  border-top: 1px solid #e3e3e3;

  border-radius: 20px;
  border: 1px solid #F5F5F5;
  background: #FFF;
  box-shadow: 0px 6px 10px 0px rgba(0, 0, 0, 0.10);
}


/*
250303
.panel-ut.unique-010
APN情報の表
- - - - - - - - - - - - - - - - - - - - - - - - - - */

@media only screen and (max-width: 640px) {
  .unique-010.panel-ut.model-squid > .unit-ut {
    padding-left: 20px;
    padding-right: 20px;
  }
  .unique-010 .table-ut-definition th {
    font-size: 14px;
    padding-right: 10px;
  }
  .unique-010 .table-ut-definition td {
    font-size: 16px;
  }
}


/*
250530
.unique-011
[HP] About us wide pic screen
- - - - - - - - - - - - - - - - - - - - - - - - - - */

@media only screen and (max-width: 834px) {
  .unique-011 .panel-ut.type-2x3x2 .unit-ut:nth-child(3),
  .unique-011 .panel-ut.type-2x3x2 .unit-ut:first-child {
    display: none;
  }
  .unique-011 .panel-ut.type-2x3x2 .unit-ut {
    margin-bottom: 0;
  }
}


/*
250408
.unique-012.card-ut-head
SIM card
- - - - - - - - - - - - - - - - - - - - - - - - - - */

.pag-lp-travel-sim .unique-012.card-ut-head {
  margin-top: 40px;
}

/* p-head */

.unique-012.card-ut-head .p-head:not(.type-link) {
  padding: 13px 20px 6px 20px;
  background: #1B69FF;
  text-align: center;
  color: #fff;
}

.unique-012 .heading-ut-icon .in-heading:before {
  top: 46%;
  width: 60px;
  height: 60px;
  background-image: url(/assets/img-leaf/icon/sim-card-02-white.svg);
  background-size: auto 100%;
}
.unique-012 .heading-ut-icon .c-pre {
  font-size: 1.8rem;
  font-weight: 700;
}
.unique-012 .heading-ut-icon .c-text {
  font-size: 3.6rem;
  font-weight: 700;
}

/* .p-main */

.unique-012.card-ut-head .p-main {
  padding-top: 10px;
  padding-bottom: 15px;
  background: #fff;
}

.unique-012 .label-ut-feature {
  width: 148px;
  padding: 5px 0px;
  font-size: 1.6rem;
}

.unique-012 .label-ut-feature .c-text {
  color: #1B69FF;
}

.unique-012 .card-ut-price > .c-wrap > .c-price {
  font-size: 4.8rem;
  line-height: 1.2;
}
.unique-012 .card-ut-price > .c-sub {
  font-size: 1.8rem;
  font-weight: 700;
}

/*  */

.unique-012.card-ut-head .p-main .nav-ut-button {
  margin-top: 5px;
}

/* LP */

.pag-lp-travel-sim .unique-012 a.button-ut.model-primary {
  padding-top: 14px;
    padding-bottom: 14px;
    background-color: #76B63D;
    border: 2px solid #76B63D;
    font-size: 2.0rem;
    font-weight: 700;
}

.pag-lp-travel-sim .unique-012 a.button-ut.model-primary:hover {
  background: #fff !important;
  border: 2px solid #76B63D;
  color: #76B63D !important;
}


/*
250704
.unique-013
Home belt (Why choose Sakura Mobile?)
- - - - - - - - - - - - - - - - - - - - - - - - - - */

.unique-013 .panel-ut[class*="model-"] .unit-ut .c-heading {
  color: #595857;
  font-size: 2.4rem;
}
.unique-013 .panel-ut[class*="model-"] .unit-ut .c-lead {
  color: #595857;
  font-size: 1.4rem;
}
.unique-013 .panel-ut[class*="model-"] .unit-ut .c-lead a {
  color: #595857;
}

.unique-013 .p-performance {
  display: flex;
  flex-direction: row;
  /* gap: 40px; */
}
.unique-013 .p-performance.type-num-3 {
  /* 3つ並べる場合もflexでOK */
}

.unique-013 .p-performance > .unit-ut {
  position: relative;
  flex: 1 1 0;
}

.unique-013 .p-performance > .unit-ut:not(:first-child) .card-ut {
  padding-left: 20px;
}
.unique-013 .p-performance > .unit-ut:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 1px;
  height: 100%;
  background-color: #595857;
}
.unique-013 .p-performance > .unit-ut > .card-ut {
  padding: 0;
}

@media only screen and (max-width: 979px) {
  .unique-013 .p-performance {
    flex-wrap: wrap;
    justify-content: center;
    width: 360px;
    margin: 0 auto 24px;
  }
  .unique-013 .p-performance > .unit-ut {
    flex: 1 1 160px;
    max-width: 160px;
  }
  .unique-013 .p-performance > .unit-ut:last-child {
    max-width: 180px;
  }
  .unique-013 .p-performance {
    width: 320px;
  }
  .unique-013 .p-performance > .unit-ut:not(:first-child) .card-ut {
    padding-left: 10px;
  }
  .unique-013 .panel-ut[class*="model-"] .unit-ut .c-heading {
    font-size: 2.2rem;
  }
  .unique-013 .p-performance > .unit-ut:last-child {
    width: 180px;
    margin-top: 16px;
    margin-left: auto;
    margin-right: auto;
  }
  .unique-013 .p-performance > .unit-ut:nth-child(2):after {
    display: none;
  }
  .unique-013 .p-performance > .unit-ut:last-child .card-ut {
    padding-left: 0px;
  }
}


/*
250715
.unique-014
Home support-action
- - - - - - - - - - - - - - - - - - - - - - - - - - */

.unique-014.bg-ut-image-azalea {
    background-size: 1000px auto;
}
.unique-014 .panel-ut.model-bonito > .unit-ut {
  padding: 32px;
}
@media only screen and (max-width: 640px) {
  .unique-014 .panel-ut.model-bonito > .unit-ut {
    padding-left: 24px;
    padding-right: 24px;
  }
}


/*
250724
.unique-015
Compatibility type-out-of-bounds
- - - - - - - - - - - - - - - - - - - - - - - - - - */

.unique-015.panel-ut[class*="model-"].type-out-of-bounds {
  margin-top: 0px;
}
.unique-015.panel-ut.type-out-of-bounds .c-out-of-bounds {
  display: block;
  margin-top: -60px;
}

@media only screen and (max-width: 640px) {
}


/*
250725
.unique-016
Compatibility type-connecting-b
- - - - - - - - - - - - - - - - - - - - - - - - - - */

.unique-016.panel-ut.type-connecting-b.type-okaka > .unit-ut:after {
  top: 47px;
}
.unique-016.panel-ut.type-connecting-b .card-ut.type-boron .c-heading {
  font-size: 1.6rem;
}

@media only screen and (max-width: 640px) {
  .unique-016.panel-ut.type-connecting-b.type-okaka > .unit-ut:after {
    top: 38px;
    width: 60px;
    left: calc(100% - 30px);
  }
  .unique-016.panel-ut.type-connecting-b .card-ut.type-boron .c-heading {
    font-size: 1.4rem;
  }
}
@media only screen and (max-width: 480px) {
  .unique-016.panel-ut.type-connecting-b.type-okaka > .unit-ut:after {
    width: 20px;
    left: calc(100% - 10px);
  }
}


/*
250925
.unique-017
Test page
- - - - - - - - - - - - - - - - - - - - - - - - - - */

.unique-017 {
  background: #D3F6FF;
  padding-top: 40px;
  padding-bottom: 40px;
}
