/* products page
========================================================================== */
:is(.page-wooden, .page-acrylic, .page-acrylicstand, .page-acryliccard) {
  & .page-title {
    background-color: var(--text-color);
  }
  & .page-title__main {
    padding: 0;
  }

  & .strength-box .card ul li p {
    margin: var(--space-xs) 0 0 0;
  }
  & .strength-box .card ul li + li {
    margin-top: 0;
  }
}

/* page-price
========================================================================== */
#price ul {
  margin-right: -5px;
  margin-left: -5px;

  & li.item {
    flex: 0 0 20%;
    max-width: 20%;
    padding-right: var(--space-xs);
    padding-left: var(--space-xs);
  }
}

.price-box {
  & table {
    background-color: #fff;
  }

  & .main-box h3 {
    background: #565656;
    color: #fff;
  }
}

table.table-price {
  background-color: #fff;

  & th,
  & td {
    text-align: center;
    vertical-align: middle;
    padding: 1.2rem;
  }

  & td {
    font-size: var(--font-xl);
    font-weight: 700;
  }
}

/* page-draft
========================================================================== */
.page-draft ul.draft-btn li {
  margin: var(--space-md);

  & a {
    width: 100%;
    text-align: left;

    & i {
      line-height: 4.4rem;
    }
  }
}

.page-template-page-draft-guide {
  & .table-draft {
    & th {
      background-color: #f8f7f3;
    }
    & td {
      vertical-align: middle;
      width: 60%;
    }
  }

  & .draft-guide-box .card {
    margin-bottom: 4rem;

    & .card-body {
      padding: var(--space-xl);

      & img {
        display: block;
        margin: var(--space-sm) auto;
      }
    }

    &:before {
      content: "";
      position: absolute;
      top: 100%;
      left: 50%;
      margin: 1px -15rem;
      border: 15rem solid transparent;
      border-top: 3rem solid #f8f7f3;
    }

    & dl {
      margin-bottom: var(--space-lg);

      & dt {
        background: #f6f6f6;
        padding: var(--space-sm);
        text-align: center;
      }
    }

    &:last-child {
      margin-bottom: 0;

      &:before {
        display: none;
      }
    }
  }
}

/* page-sample
========================================================================== */
.page-sample table.table-size {
  margin-bottom: 0;

  & th,
  & td {
    vertical-align: middle;
  }

  & thead th:first-child {
    width: 40%;
  }
  & thead th:nth-child(2) {
    width: 30%;
  }
  & thead th:nth-child(3) {
    width: 15%;
  }
  & thead th:nth-child(4) {
    width: 15%;
  }

  & tbody td:nth-child(3),
  & tbody td:nth-child(4) {
    text-align: center;
  }

  & tbody td,
  & tbody th {
    background: #fff;
  }
}

/* page-est
========================================================================== */
.page-est .card a:hover .more.btn-contact,
.page-est .card a:hover body .more.btn-contact:visited {
  background: #F40D07;
  color: #fff;
}

/* page-faq
========================================================================== */
.page-faq .read nav ul li,
.page-faq .contents nav ul li {
  border-bottom: 1px dotted var(--border-color);
  padding: var(--space-xs);
}

/* page-sitemap
========================================================================== */
.page-sitemap .main-box .sitemapーcontents {
  display: flex;
  flex-wrap: wrap;

  & .sitemapーsection {
    width: 50%;
    padding: var(--space-sm);

    & ul li {
      padding: var(--space-xs) var(--space-md);
    }
  }
}

/* page-payment
========================================================================== */
.page-payment #payment1 p {
  padding-top: var(--space-lg);
  margin-bottom: var(--space-lg);

  &:nth-child(1) {
    padding-top: 0;
  }
}

/* page-flow
========================================================================== */
.page-flow .contents .flex {
  padding: 0 var(--space-md);
}

#lineup .card {
  position: relative;

  & .card-body {
    padding: 0.25rem;
  }

  & .card-title h3 {
    padding: var(--space-xs);
    margin-bottom: 0;
    line-height: 2.5rem;
  }

  & .circle {
    width: 5rem;
    height: 5rem;
    background-color: #0C8CCF;
    border-color: #0C8CCF;
    font-weight: 700;
    position: absolute;
    right: 0.5rem;
    top: 0.5rem;
    z-index: 1;
  }

  & .detail {
    display: none;
    border-radius: var(--radius-sm);
    z-index: 10;
  }

  &:hover .detail {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    display: block;
    padding: var(--space-md) var(--space-xs);
    background: #333;
    opacity: 0.9;

    & .more-box {
      padding: 0.25em;
    }
  }
}

:is(.page-onepoint, .page-naire, .single-product) {
  & .read {
    padding: 7rem 0 0;

    & ul li {
      opacity: 0.7;

      & a {
        border: 5px var(--border-color) solid;
        display: block;
      }

      &:hover,
      &:hover a img:hover {
        opacity: 1;
      }
    }
  }

  & .card .card-header {
    padding: 1.25rem;
    font-size: var(--font-lg);
    font-weight: 700;
    line-height: var(--lh-normal);
  }

  & .onepoint-size-box .card span.red {
    font-size: var(--font-2xl);
    font-weight: 700;
  }
}

:is(.page-onepoint-size, .page-naire-size) .contents .main-box ul li {
  margin-bottom: var(--space-md);
}

:is(.page-scene-event, .page-scene-house, .page-scene-apparel) .read {
  padding-bottom: 0;

  & p {
    margin: var(--space-sm) 0 0 0;
  }
}

:is(.page-scene-house, .page-scene-apparel) .scene-rerca .main-box {
  max-width: 100rem;
}

.scene-specification {
  & h2 {
    border-bottom: none;
    margin-bottom: var(--space-xl);
    text-align: center;
  }

  & h3 {
    font-size: var(--font-xl);
  }

  & .card {
    border: 5px var(--border-color) solid;
    background: #F9F9F9;
    border-radius: var(--radius-md);

    & .card-body {
      padding: var(--space-xl);

      & dl {
        border: 1px var(--border-color) solid;
        font-size: var(--font-xl);
        background: #333;

        &.row {
          margin: 0 0 var(--space-xs) 0;
        }

        & dt {
          background: #333;
          color: #fff;
          padding: var(--space-sm) var(--space-md);
        }

        & dd {
          padding: var(--space-sm) var(--space-md);
          color: #ff3456;
          background: #fff;
          font-weight: 700;
        }
      }
    }
  }

  &.scene-specification-mini .main-box {
    max-width: 70rem;
  }
}

@media (max-width: 768px) {
  .scene-specification h2 {
    font-size: 0.8rem;
  }
}

.scene-rerca {
  & .head-box h2 {
    border-bottom: none !important;
  }

  & .card .card-body {
    padding: var(--space-xl);

    & .row div {
      margin: var(--space-md) auto;
    }

    & .row p {
      margin-bottom: 0;
      text-align: left;
    }
  }
}

.scene-sample {
  & .scene-slider .card {
    margin: 0 var(--space-sm) var(--space-lg);

    & span {
      font-size: var(--font-md);
      line-height: 0.5rem;
    }
  }

  & h3 {
    font-weight: bold;
  }
}

.scene-point {
  & .panel {
    border: 1px var(--border-color) solid;
  }

  & h3 {
    line-height: 3rem;
  }

  & .label {
    background-color: #333;
    margin-right: var(--space-sm);
    color: #fff;
    font-size: var(--font-md);
    padding: var(--space-xs);
    border-radius: var(--radius-sm);
  }
}

.scene-custom .card .card-header {
  text-align: center;
  font-weight: 700;
  font-size: var(--font-xl);
}

.scene-link {
  & li div p {
    text-align: center;
  }

  & h4 {
    text-align: center;
    margin-bottom: var(--space-lg);
    font-size: 2.2rem;
  }

  & span.label {
    position: relative;
    top: -15px;
  }
}

.page-orderguide .contents {
  & .main-box ul li {
    margin-bottom: var(--space-lg);

    & p {
      margin: var(--space-sm) 0 0 0;
    }
  }

  & .main-box h3 {
    margin-bottom: 0;
  }
}

table.table-size {
  margin-bottom: 0;

  & th,
  & td {
    vertical-align: middle;
  }

  & thead th:first-child {
    width: 35%;
  }
  & thead th:nth-child(2) {
    width: 25%;
  }

  & tbody td,
  & tbody th {
    background: #fff;
  }

  & tbody span {
    padding: 0.4rem;
    border-radius: 0.4rem;
    margin-right: var(--space-sm);
    font-size: 1.3rem;
    font-weight: 400;

    &.size-square {
      border: 1px solid #16a085;
      color: #16a085;
    }

    &.size-tate {
      border: 1px solid #e74c3c;
      color: #e74c3c;
    }

    &.size-yoko {
      border: 1px solid #2980b9;
      color: #2980b9;
    }
  }
}

.form-group {
  & label {
    cursor: pointer;
  }

  & table.table-size {
    & tbody tr:hover th,
    & tbody tr:hover td {
      background: var(--border-color);
    }

    & tbody tr:hover td.first {
      background: #fff;
    }

    & tbody tr.active th,
    & tbody tr.active td {
      background: #FFCD36;
    }

    & tbody tr.active td.first {
      background: #fff;
    }

    & tbody .check {
      background-color: transparent;
      border: none;
      padding: var(--space-xs);
      border-radius: 0;
    }

    & tbody th {
      padding: 0;
    }

    & tbody td {
      padding: 0 var(--space-xs);

      &:first-child {
        background: #fff;
      }
    }
  }

  &#address ul {
    margin: 0 -15px;
  }
}

.post-type-archive-logo_template {
  & .read {
    padding-bottom: 4.5rem;
  }

  & .logo-point-box {
    & .card {
      border-radius: 0.7rem;
      text-align: center;
      margin-bottom: var(--space-lg);

      & .card-title {
        font-weight: bold;
        font-size: var(--font-xl);

        & .circle {
          margin-bottom: var(--space-xs);
          font-size: var(--font-2xl);
        }
      }
    }

    & .small {
      color: #999;
      line-height: 1.4rem;
    }

    & .more::after {
      content: "\f107" !important;
    }
  }

  & .logolist-box {
    & ul li.item {
      flex: 0 0 20%;
      max-width: 20%;
      padding-right: 25px;
      padding-left: 25px;
      margin-bottom: var(--space-xl);

      & .popup {
        display: none;
        text-align: center;
      }

      & dl {
        text-align: center;

        & dd {
          line-height: 10;
        }

        & dt {
          color: #666;
        }
      }

      &:hover {
        position: relative;

        & .popup.is_active {
          display: none;
        }

        & .popup {
          transition: all 400ms ease-in-out;
          position: absolute;
          display: block;
          color: var(--loud-color);
          font-size: var(--font-md);
          font-weight: 700;
          background: #f8f7f3;
          bottom: 20%;
          left: -30%;
          text-align: center;
          border-radius: 5px;
          z-index: 15;
          padding: var(--space-md) var(--space-lg);
          border: 2px solid var(--border-color);
          width: 350px;

          & img {
            background: #fff;

            &.logo-img {
              max-width: 100%;
              display: block;
              margin: 0 auto;
              height: auto;
            }
          }

          & ul li {
            padding: 0 var(--space-xs);
            margin-top: var(--space-sm);
          }

          & .more.btn-contact,
          & .more.btn-contact:visited {
            margin-top: var(--space-sm);
            border-radius: 5px;
            padding: 0 var(--space-sm);
            line-height: 3.5rem;
          }

          &::before {
            content: "";
            position: absolute;
            top: 100%;
            left: 45%;
            border: 7px solid transparent;
            border-top: 7px solid var(--border-color);
          }

          & span.close {
            width: 2.5rem;
            height: 2.5rem;
            border-radius: 100%;
            background: #565656;
            color: #fff;
            display: flex;
            align-items: center;
            justify-content: center;
            position: absolute;
            right: 5px;
            top: 5px;
            cursor: pointer;
            z-index: 10;

            &::after {
              content: "\f00d";
              font-family: "Font Awesome 5 Pro";
              font-weight: 900;
              display: inline-block;
            }
          }
        }
      }
    }

    & #logo3-5 {
      & div {
        padding: var(--space-md);
      }

      & h4 {
        padding: var(--space-sm);
        margin-bottom: var(--space-sm);
        border-top: 2px solid var(--border-color);
        border-bottom: 2px solid var(--border-color);
      }

      & ul li.item {
        flex: 0 0 20%;
        max-width: 100%;
        padding: 0;
        margin-bottom: var(--space-md);

        & a {
          padding: 0 var(--space-md);
        }

        & img {
          padding-left: var(--space-lg);
        }

        &:hover .popup {
          bottom: 100%;
          left: 40px;
        }
      }
    }
  }

  & .logo-flow-box ul li {
    & .card::before {
      content: "";
      position: absolute;
      top: 100%;
      left: 50%;
      margin: 1px -15rem;
      border: 15rem solid transparent;
      border-top: 3rem solid #f8f7f3;
    }

    &:last-child .card::before {
      display: none;
    }
  }

  & .logo-faq-box h3 {
    font-size: var(--font-xl);
    line-height: 4rem;

    & .circle {
      margin-right: var(--space-xs);
    }
  }
}

:is(.page-standard, .single-product) {
  & .page-title .container {
    padding: 0;
  }

  & .page-title__main {
    padding: 0;
  }

  & .read {
    padding: 4.5rem 0;
    background-color: #F8F7F3;

    & .card a {
      color: var(--text-color);
    }

    & .card .card-title {
      font-size: var(--font-3xl);
      text-align: center;
      font-weight: 700;
    }

    & .card img {
      margin: var(--space-xs) 0 var(--space-sm);
    }
  }

  & #lineup {
    & .table-size .more {
      line-height: 3.4rem;
      border-radius: 5px;
      padding: 0 var(--space-sm);
      font-size: var(--font-md);
    }

    & .lineup-group {
      background-color: #565656;
      color: #fff;
      padding: var(--space-sm) var(--space-md);
      margin-bottom: var(--space-md);
      line-height: 3rem;
      font-size: var(--font-xl);
    }

    & .card {
      & span.size-mark {
        position: absolute;
        top: 0.5rem;
        left: 0.5rem;
        padding: 0.4rem;
        border-radius: 0.4rem;
        margin-right: var(--space-sm);
        font-size: 1.3rem;
        font-weight: 400;
        line-height: var(--lh-tight);
        color: #fff;

        &.size-square {
          background-color: #16a085;
        }
        &.size-tate {
          background-color: #e74c3c;
        }
        &.size-yoko {
          background-color: #2980b9;
        }
      }

      & .circle {
        background-color: #F40E08;
        border-color: #F40E08;
        line-height: var(--lh-none);
      }

      & .card-title {
        margin-bottom: 0;
      }

      & p {
        font-size: 80%;
        padding: var(--space-xs);
        line-height: var(--lh-normal);
        margin-bottom: 0;
      }

      & ul li + li {
        margin-left: var(--space-xs);
      }

      & .more {
        line-height: 3.4rem;
        border-radius: 5px;
        padding: 0 var(--space-sm);
        font-size: 80%;
        margin-bottom: var(--space-xs);
        position: relative;
        z-index: 5;
      }
    }
  }
}

/* NOTE: .single-product-standard / .single-product #lineup の重複ルール群。
 * 既存の cascade 順で動作しているため、.page-standard / .single-product とは別ブロックとして残す。 */
:is(.single-product-standard, .single-product) #lineup {
  & .table-size .more {
    line-height: 3.4rem;
    border-radius: 5px;
    padding: 0 var(--space-sm);
    font-size: var(--font-md);
  }

  & .lineup-group {
    background-color: #565656;
    color: #fff;
    padding: var(--space-sm) var(--space-md);
    margin-bottom: var(--space-md);
    line-height: 3rem;
    font-size: var(--font-xl);
  }

  & .card {
    & span.size-mark {
      position: absolute;
      top: 0.5rem;
      left: 0.5rem;
      padding: 0.4rem;
      border-radius: 0.4rem;
      margin-right: var(--space-sm);
      font-size: 1.3rem;
      font-weight: 400;
      line-height: var(--lh-tight);
      color: #fff;

      &.size-square {
        background-color: #16a085;
      }
      &.size-tate {
        background-color: #e74c3c;
      }
      &.size-yoko {
        background-color: #2980b9;
      }
    }

    & .circle {
      background-color: #F40E08;
      border-color: #F40E08;
      line-height: var(--lh-none);
    }

    & .card-title {
      margin-bottom: 0;
    }

    & p {
      font-size: 80%;
      padding: var(--space-xs);
      line-height: var(--lh-normal);
      margin-bottom: 0;
    }

    & ul li + li {
      margin-left: var(--space-xs);
    }

    & .more {
      line-height: 3.4rem;
      border-radius: 5px;
      padding: 0 var(--space-sm);
      font-size: 80%;
      margin-bottom: var(--space-xs);
      position: relative;
      z-index: 5;
    }
  }
}

:is(.page-template-page-one, .single-product) #orderguide {
  & h3 {
    line-height: 3.5rem;
    background: #565656;
    border-radius: var(--radius-sm);
    color: #fff;
    font-weight: 400;

    & .circle {
      margin-right: var(--space-sm);
      border: 2px solid #fff;
      background: none;
      width: 3.5rem;
      height: 3.5rem;
    }
  }

  & h4 {
    background: #f4f4f4;
    padding: var(--space-sm);
    text-align: center;
  }

  & ul.row {
    padding: 0 var(--space-md);

    & img {
      width: 100%;
      height: auto;
    }
  }
}
}/*------------

比較表

--------------*/
.top-omparison {
  /*--↓ ボタン--*/
  /*-- box --*/
}
.top-omparison .table-area {
  width: 100%;
  margin: 0 auto;
  overflow-x: scroll;
}
.top-omparison table {
  table-layout: fixed;
}
.top-omparison table.sp-table {
  width: 100%;
  min-width: 900px;
  margin: 1em auto 2em;
}
.top-omparison table.sp-table,
.top-omparison table.sp-table td,
.top-omparison table.sp-table th {
  border: 1px solid var(--border-color);
  border-collapse: collapse;
}
.top-omparison table.sp-table td,
.top-omparison table.sp-table th {
  color: #423233;
  font-weight: 500;
  font-size: 14px;
  text-align: center;
  padding: 0.5em;
  box-sizing: border-box;
  letter-spacing: 0.56px;
  font-weight: 600;
  text-align: center;
  vertical-align: middle;
}
.top-omparison table.sp-table th {
  width: 8%;
}
.top-omparison table.sp-table td {
  width: 22%;
}
.top-omparison table.sp-table th {
  color: #333;
  font-size: 13px;
  background-color: #ececec;
  font-weight: 600;
  line-height: 18px;
}
.top-omparison .table_tit {
  color: #423233;
  font-size: 20px;
  font-weight: 700;
  line-height: 28px;
  letter-spacing: 1.1px;
  margin: 0.6em;
}
.top-omparison .table_tit_s {
  font-size: 18px;
  font-weight: 700;
  color: #423233;
  border-radius: 8px 8px 0px 0px;
  background: #E3E3E3;
  padding: 12px 0px 8px 0px;
  line-height: 16px;
  letter-spacing: 0.2px;
  max-width: 266px;
  margin: var(--space-sm) auto -4px auto;
}
.top-omparison .table_explanatory {
  color: #423233;
  font-size: 14px;
  font-weight: 600;
  line-height: 22px;
  letter-spacing: 0.7px;
  margin: 0.8em;
}
.top-omparison .table_number {
  text-align: right;
  font-family: Oswald;
  font-size: 36px;
  font-style: normal;
  font-weight: 700;
  line-height: 110%;
  letter-spacing: 0.4px;
}
.top-omparison .table_conditions {
  background-color: #fff;
  width: 80%;
  margin: 4px auto;
  border-radius: 6px;
  line-height: 18px;
  padding: 0.3em;
  font-size: 12px;
}.top-omparison .sp-table tr td:nth-child(2) {
  background: #ECFEFF;
}
.top-omparison .sp-table tr td:nth-child(3) {
  background: #FFFAD0;
}
.top-omparison .sp-table tr td:nth-child(4) {
  background: #FFE9D0;
}
.top-omparison .sp-table tr td:nth-child(5) {
  background: #EEFFE9;
}
.top-omparison p {
  margin-bottom: 0px;
}
.top-omparison .p_s {
  font-size: 14px;
  font-weight: 500;
  line-height: 20px;
  letter-spacing: 0.8px;
}
.top-omparison ul {
  font-size: 16px;
  list-style-type: disc;
  line-height: 20px;
  text-align: left;
  padding: 0 1.5em;
}
.top-omparison li {
  border-top: 0;
  border-bottom: 0;
}
.top-omparison .center {
  text-align: center;
}
.top-omparison .plan-box {
  padding: 5.5rem 0 0rem;
}.top-omparison .td_price .price {
  display: flex;
  align-items: flex-end;
  justify-content: center;
}
.top-omparison .td_price .table_number2 {
  line-height: 16px;
  margin-left: 4px;
}
.top-omparison .td_price .price {
  display: flex;
  align-items: flex-end;
  justify-content: center;
}
.top-omparison .td_price .table_number2 {
  line-height: 16px;
  margin-left: 4px;
}.top-omparison .table_btn {
  margin: 0 auto;
  color: #fff;
  display: block;
  width: 80%;
  padding: 0.2em 0.2em 0.3em 0.2em;
  text-align: center;
  background-color: var(--loud-color);
  border: 1px solid var(--loud-color);
  border-radius: 30px;
  font-size: 18px;
  font-weight: 700;
  transition: 0.3s;
  margin-bottom: 0.5em;
}
.top-omparison .table_btn:hover {
  background-color: #FFFDEA;
  color: var(--loud-color);
  border: 1px solid var(--loud-color);
}
@media screen and (min-width: 992px) {
  .top-omparison .table-area {
    overflow-x: auto;
  }
  .top-omparison table.sp-table {
    width: 100%;
  }
  .top-omparison .s_none {
    display: none;
  }
}
@media screen and (max-width: 991px) {
  .top-omparison .table_tit {
    font-size: 19px;
    line-height: 24px;
  }
  .top-omparison .table_tit_s {
    font-size: 16px;
  }
  .top-omparison .table_btn {
    font-size: 16px;
  }
  .top-omparison .table_number {
    font-size: 30px;
  }
  .top-omparison .h_none {
    display: none;
  }
  .top-omparison .table_number2 {
    line-height: 12px;
    margin-left: 2px;
    font-size: 10px;
  }
}
.top-omparison .cp_box *, .top-omparison .cp_box *:before, .top-omparison .cp_box *:after {
  box-sizing: border-box;
}
.top-omparison .cp_box {
  position: relative;
}
.top-omparison .cp_box label {
  position: absolute;
  z-index: 1;
  bottom: 0;
  width: 100%;
  height: 140px; /* グラデーションの高さ */
  cursor: pointer;
  text-align: center;
  /* 以下グラデーションは背景を自身のサイトに合わせて設定してください */
  background: linear-gradient(to bottom, rgba(250, 252, 252, 0) 0%, rgba(250, 252, 252, 0.95) 90%);
}
.top-omparison .cp_box input:checked + label {
  background: inherit; /* 開いた時にグラデーションを消す */
}
.top-omparison .cp_box label:after {
  line-height: 2.5rem;
  position: absolute;
  padding: 0.5em;
  z-index: 2;
  bottom: 20px;
  left: 50%;
  width: 30rem;
  font-family: "Font Awesome 5 Pro";
  content: "\f13a" " すべての比較情報を表示する";
  transform: translate(-50%, 0);
  letter-spacing: 0.05em;
  color: var(--text-color);
  border-radius: 30px;
  background-color: #f6f6f6;
  border: solid 2px #aaa;
}
.top-omparison .cp_box input {
  display: none;
}
.top-omparison .cp_box .cp_container {
  overflow: hidden;
  height: 750px; /* 開く前に見えている部分の高さ */
  transition: all 0.5s;
}
.top-omparison .cp_box input:checked + label {
  /* display: none ; 閉じるボタンを消す場合解放 */
}
.top-omparison .cp_box input:checked + label:after {
  font-family: "Font Awesome 5 Pro";
  content: "\f139" " 閉じる";
}
.top-omparison .cp_box input:checked ~ .cp_container {
  height: auto;
  padding-bottom: 80px; /* 閉じるボタンのbottomからの位置 */
  transition: all 0.5s;
}

@media screen and (min-width: 750px) {
  #cta_btn {
    display: none;
  }
}
.page-template-page-one #onepoint-feature .contents, .page-template-page-one #naire-feature .contents {
  padding: 3.5rem 0;
}
.page-template-page-one #onepoint-feature h2, .page-template-page-one #naire-feature h2 {
  color: var(--loud-color);
  margin-bottom: var(--space-sm);
}@media (min-width: 992px) {}
@media (max-width: 991px) {}
@media (max-width: 767px) {}@media (min-width: 768px) {
  .onepoint-thumbnail ul {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-md);
    justify-content: center;
  }
  .onepoint-thumbnail ul li img {
    border: solid 2px #cfcfcf;
    width: 50px;
    height: auto;
  }
}
@media (max-width: 767px) {
  .onepoint-thumbnail ul {
    text-align: center;
  }
  .onepoint-thumbnail ul li img {
    width: 80%;
    height: auto;
    border: solid 2px #cfcfcf;
  }
  .onepoint-thumbnail ul li + li {
    margin-top: var(--space-xs);
  }
}
#naire-size .card-body .card-text, #onepoint-size .card-body .card-text {
  margin-bottom: 0px;
  padding: var(--space-xs) 0rem;
}

.guide-list ul {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-md);
  justify-content: center;
}

.form {
  background: none;
  padding: initial;
  border-radius: none;
}

.wq-Form {
  background-color: initial !important;
}
.wq-Form .wq-Option {
  display: initial;
  flex-wrap: wrap;
  justify-content: flex-start;
}
.wq-Form .wq-Option > .wq--label > .wq--main, .wq-Form .wq-Option > .wq--label > .wq--media {
  display: initial;
  flex-wrap: wrap;
  justify-content: flex-start;
}
.wq-Form .wq-Quantity > .wq--head > .wq--media {
  display: initial;
  flex-wrap: wrap;
  justify-content: flex-start;
}
.wq-Form .wq-Selector > .wq--body, .wq-Form .wq-Selector > .wq--head > .wq--media {
  display: initial;
  flex-wrap: wrap;
  justify-content: flex-start;
}
.wq-Form .wq-Slider > .wq--head > .wq--media {
  display: initial;
  flex-wrap: wrap;
  justify-content: flex-start;
}
.wq-Form .wq-Selector > .wq--body {
  padding: var(--space-sm);
  display: flex !important;
  flex-wrap: wrap !important;
  background-color: initial !important;
  padding: 0px !important;
}
.wq-Form .wq--required {
  font-size: var(--font-xs) !important;
  line-height: 1.8rem !important;
  background-color: #fff;
  padding: 1px 2px;
  border-radius: 4px;
  border: solid 1px #de2c0c;
  color: #de2c0c !important;
}
.wq-Form .wq-Control.wq-for-action {
  order: 40;
}

#wq-action {
  padding: var(--space-lg) 4rem 4em 4rem;
}

.wq-Form .wq-Control {
  background: #fbfaf8;
}

.form .wq-HNavigator {
  background: var(--grey-card);
  padding: 2.5rem var(--space-xl);
  border-radius: var(--radius-md);
}
.form .wq-Attributes {
  padding: 0rem var(--space-xl);
  background: var(--grey-card);
  padding: 2.5rem var(--space-xl);
  border-radius: var(--radius-md);
  margin-top: var(--space-lg);
  margin-bottom: 0px !important;
}

.wq--title {
  color: #de2c0c !important;
  font-waight: bold;
}

.annotation {
  background: #fbfaf8;
  padding: var(--space-lg) 50px 50px;
}

.example {
  background: #fff;
  padding: var(--space-lg);
}

.wq--label {
  padding: 7px;
  border-radius: var(--radius-sm);
  background-color: #fff;
  border: solid 1px var(--border-color) !important;
}

.wq-Form .wq-Quantity, .wq-Form .wq-Selector, .wq-Form .wq-Slider {
  border: none !important;
}

.annotation {
  padding: var(--space-lg) 50px;
  background-color: #fff;
}
.annotation dt {
  margin-top: 0;
  text-align: center;
  font-size: var(--font-2xl);
  font-weight: 600;
  letter-spacing: 0.08em;
  padding: var(--space-sm) 0px;
}
.annotation .example dd {
  list-style: none;
  padding-left: 1.5em;
  margin-left: 0.5em;
  text-indent: -1em;
}

@media (min-width: 768px) {
  div.wq-Option + div.wq-Option {
    margin-left: var(--space-sm);
  }
  .wq-Form .wq-Quantity, .wq-Form .wq-Selector, .wq-Form .wq-Slider {
    flex-direction: initial !important;
  }
  .wq-Form .wq-Quantity > .wq--head, .wq-Form .wq-Selector > .wq--head, .wq-Form .wq-Slider > .wq--head {
    align-items: left;
    background-color: initial !important;
    border-bottom: initial !important;
    color: #121212;
    display: flex;
    flex-direction: row;
    font-size: 16px;
    padding: var(--space-sm);
    position: relative;
  }
  .wq--head {
    flex: 20%;
    max-width: 20%;
    padding: 0 var(--space-sm);
  }
  .wq--body {
    flex: 80%;
    max-width: 80%;
    padding: 0 var(--space-sm);
  }
  #wq-selector-detail-3 .wq--input, #wq-selector-detail-5 .wq--input, #wq-selector-detail-6 .wq--input, #wq-selector-detail-7 .wq--input {
    position: absolute !important;
    top: 0 !important;
  }
  #wq-selector-detail-3 .wq-Option, #wq-selector-detail-7 .wq-Option {
    width: initial !important;
  }
  .wq-Attributes .wq--label {
    padding: initial !important;
    border-radius: initial !important;
    background-color: initial !important;
    border: initial !important;
  }
  #wq-action .wq--body {
    flex: 100%;
    max-width: 100%;
    padding: 0 var(--space-sm);
  }
}
@media (max-width: 767px) {
  .wq--name {
    font-size: var(--font-xs) !important;
    font-weight: 700;
  }
  .wq-Form .wq-Checkbox > label, .wq-Form .wq-Radio > label {
    font-size: var(--font-xs) !important;
    font-weight: 700;
  }
  .wq-Form .wq-Quantity > .wq--head, .wq-Form .wq-Selector > .wq--head, .wq-Form .wq-Slider > .wq--head {
    align-items: center;
    background-color: initial !important;
    border-bottom: initial !important;
    color: #121212;
    display: flex;
    flex-direction: row;
    font-size: 16px;
    padding: var(--space-sm);
    position: relative;
  }
  .form .wq-HNavigator {
    background: var(--grey-card);
    padding: 2.5rem var(--space-sm);
    border-radius: var(--radius-md);
  }
  .form .wq-Attributes {
    background: var(--grey-card);
    padding: 2.5rem var(--space-md);
    border-radius: var(--radius-md);
  }
  #wq-selector-detail-7 div.wq-Option {
    flex: 33.3333333333%;
    max-width: 33.3333333333%;
    padding: 0 var(--space-xs);
    margin-bottom: var(--space-md);
  }
  #wq-selector-detail-3 div.wq-Option {
    flex: 50%;
    max-width: 50%;
    padding: 0 var(--space-xs);
    margin-bottom: var(--space-md);
  }
  .wq-Form .wq-TextInput.wq-size-normal, .wq-Form .wq-TextInput.wq-size-small#wq-text-tel-6 {
    width: 100% !important;
  }
}
#wq-selector-detail-3 .wq--media, #wq-selector-detail-5 .wq--media, #wq-selector-detail-6 .wq--media, #wq-selector-detail-7 .wq--media {
  display: none !important;
}

#wq-selector-detail-3 .wq--input, #wq-selector-detail-5 .wq--input, #wq-selector-detail-6 .wq--input, #wq-selector-detail-7 .wq--input {
  top: 0px !important;
}

.wq-for-unitPrice, .wq-for-quantity, .wq-for-taxClass, .wq-for-normalUnitPrice {
  display: none !important;
}

@media (hover: hover), screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
  .wq-Form .wq-Option > .wq--label:hover {
    background-color: rgba(255, 205, 54, 0.2) !important;
  }
}
.wq-Form .wq-Option > .wq--input:checked + .wq--label, .wq-Form .wq-Option > .wq--select.wq-is-selected + .wq--label　 {
  background-color: rgb(255, 205, 54) !important;
}

.wq-content-empty {
  display: none !important;
}

button.wq-Button.wq-type-primary.wq-belongs-action.wq-for-submit {
  margin: 0 auto;
}

.wq-Form .wq-Button.wq-type-primary {
  background-color: #eb4266;
  color: #fff;
  min-width: 180px;
  padding: var(--space-lg) 40px !important;
  border-radius: 40px;
  font-size: var(--font-lg);
  font-weight: bold;
}
.wq-Form .wq-Button.wq-type-primary:after {
  font-family: "Font Awesome 5 Pro";
  content: "\f054";
  display: inline-block;
  padding-left: var(--space-xs);
  font-size: var(--font-lg);
  color: #FFFFFF;
  font-weight: bold;
}

@media screen and (max-width: 1390px) {
  .wq-Form > :not(:last-child) {
    margin-bottom: 0px !important;
  }
  .wq-Form .wq-Monitor > .wq--header {
    background: #F3F3F3 !important;
    border: solid 1px #ccc !important;
    display: block !important;
    font-size: var(--font-lg);
  }
  .wq-Form .wq-Monitor > .wq--header > .wq--title {
    color: #333 !important;
    font-size: var(--font-xl) !important;
    font-weight: 700;
    line-height: var(--lh-tight);
    padding: var(--space-sm) var(--space-lg) !important;
  }
  .wq--head .wq--main .wq--name {
    font-size: var(--font-lg) !important;
  }
  .wq-Attributes .wq--label {
    padding: 0px;
    border-radius: 0;
    background-color: initial !important;
    border: none !important;
  }
}
@media screen and (min-width: 1400px) {
  .wq-Form {
    flex-direction: row;
  }
  .wq-Form .wq-HNavigator {
    flex-grow: 1;
    min-width: 0;
    margin-bottom: 0;
  }
  .wq-Monitor {
    position: sticky;
    top: 0;
    max-width: 260px;
  }
  #wq-monitor {
    display: block;
    width: 100%;
    border: 1px solid var(--border-color);
    position: fixed;
    z-index: 100;
    top: 55%;
    right: -50px;
    transform: translate(0, -50%);
    margin-right: 60px;
    background: #f8f7f3;
    text-align: center;
    border-radius: 7px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  }
  #wq-monitor .wq-for-taxClass {
    display: none;
  }
  #wq-monitor .wq-for-header .wq-for-category, #wq-monitor .wq-for-header .wq-for-unitPrice, #wq-monitor .wq-for-header .wq-for-quantity {
    display: none;
  }
  #wq-monitor .wq-for-entry {
    padding: var(--space-xs) 18px var(--space-xs) var(--space-sm);
    flex-wrap: wrap;
  }
  #wq-monitor .wq-for-entry > .wq--prop {
    padding: 0;
  }
  #wq-monitor .wq-for-entry .wq-for-category, #wq-monitor .wq-for-entry .wq-for-unitPrice, #wq-monitor .wq-for-entry .wq-for-quantity {
    color: hsla(0deg, 0%, 7%, 0.6);
    font-size: 12px;
    line-height: var(--lh-none);
  }
  #wq-monitor .wq-for-entry .wq-for-entry {
    flex-basis: 100%;
  }
  #wq-monitor .wq-for-entry .wq-for-unitPrice {
    flex-grow: 8;
    text-align: left;
  }
  #wq-monitor .wq-for-entry .wq-for-quantity {
    position: relative;
    flex-basis: auto;
    text-align: right;
  }
  #wq-monitor .wq-for-entry .wq-for-quantity:before {
    content: "x";
    font-size: 10px;
  }
  #wq-monitor .wq-for-entry .wq-for-price {
    flex-basis: 50%;
    line-height: var(--lh-normal);
  }
  .wq-Form .wq-Monitor > .wq--header {
    background: #F3F3F3 !important;
    border: solid 1px #ccc !important;
    display: block !important;
    font-size: var(--font-lg);
  }
  .wq-Form .wq-Monitor > .wq--header > .wq--title {
    color: #121212;
    font-size: var(--font-lg) !important;
    font-weight: 700;
    line-height: var(--lh-tight);
    padding: var(--space-sm) 0;
  }
  .wq-Monitor {
    background: #fcfcfc !important;
  }
  .wq--label {
    padding: 7px;
    border-radius: var(--radius-sm);
    background-color: none !important;
    border: solid 1px var(--border-color) !important;
  }
  #wq-monitor .wq-for-entry .wq-for-entry {
    flex-basis: initial;
  }
  .wq--prop.wq-for-entry {
    font-size: 1.3rem;
  }
  #wq-monitor .wq-for-entry .wq-for-price {
    flex-basis: 50%;
    text-align: left;
    line-height: var(--lh-normal);
  }
}
#wq-monitor .wq--entries .wq-for-category, #wq-monitor .wq--entries .wq-for-entry {
  display: flex;
}

@media screen and (min-width: 1400px) {
  .wq-for-header {
    display: none !important;
  }
}
.wq-Form .wq-Monitor > .wq--footer > .wq--entry > .wq--prop.wq-for-value {
  box-sizing: border-box;
  flex: 1 1 7em;
  line-height: 1.5em;
  overflow: hidden;
  text-align: right;
}
.wq-Form .wq-Monitor > .wq--footer > .wq--entry > .wq--prop.wq-for-value span {
  display: inline-block;
  height: initial;
  max-height: initial;
  position: initial;
}
.wq-Form .wq-Monitor > .wq--footer > .wq--entry.wq-for-total > .wq-for-value {
  color: #eb4266;
  font-size: var(--font-xl) !important;
}

.wq--prop.wq-for-name {
  font-size: var(--font-md) !important;
}

@media screen and (max-width: 782px) {
  .wq-Form #wq-selector-detail-7 .wq-Monitor > .wq--entries > .wq--entry {
    padding: var(--space-sm) var(--space-sm) !important;
  }
  .wq-Form .wq-Monitor > .wq--entries > .wq--entry > .wq-for-entry {
    flex: none !important;
  }
  .wq-Form .wq-Monitor > .wq--entries > .wq--entry > .wq-for-category {
    flex: 1 1 31% !important;
  }
}
.wq-Form #wq-selector-detail-7 .wq-Option {
  align-items: stretch;
  display: initial !important;
  flex-wrap: nowrap;
  justify-content: flex-start;
}
.wq-Form #wq-selector-detail-7 .wq-Option > .wq--label > .wq--main {
  align-items: stretch;
  display: initial !important;
  flex-wrap: nowrap;
  justify-content: flex-start;
}

@media screen and (min-width: 1400px) {
  #wq-monitor .wq-for-entry .wq-for-entry {
    flex-basis: initial !important;
  }
  .wq-Form .wq-Monitor > .wq--entries > .wq--entry > .wq-for-category {
    display: block;
    flex: initial !important;
    order: 30;
  }
  .wq--prop.wq-for-entry {
    margin-left: var(--space-sm);
  }
  .wq-Form .wq-Monitor > .wq--footer > .wq--entry > .wq--prop {
    padding: var(--space-xs) var(--space-sm) !important;
  }
}
@media screen and (min-width: 768px) {
  .wq-Form .wq-Option > .wq--label > .wq--main > .wq--note {
    font-size: 1.1rem !important;
  }
}
.page-aes-naire #wq-selector-detail-1 .wq--head .wq--main .wq--name::after, .page-aes-naire #wq-selector-detail-3 .wq--head .wq--main .wq--name::after, .page-aes-naire #wq-selector-detail-7 .wq--head .wq--main .wq--name::after {
  content: "必須";
  font-size: var(--font-xs) !important;
  line-height: 1.8rem !important;
  background-color: #fff;
  padding: 2px 2px;
  border-radius: 4px;
  border: solid 1px #de2c0c;
  color: #de2c0c !important;
  margin-left: var(--space-xs);
}

@media (min-width: 768px) {
  .wq--head .wq--main .wq--note {
    padding-right: var(--space-sm) !important;
  }
}
.page-aes-hakuoshi #wq-selector-detail-1 .wq--head .wq--main .wq--name::after, .page-aes-hakuoshi #wq-selector-detail-2 .wq--head .wq--main .wq--name::after, .page-aes-hakuoshi #wq-selector-detail-3 .wq--head .wq--main .wq--name::after, .page-aes-hakuoshi #wq-selector-detail-4 .wq--head .wq--main .wq--name::after, .page-aes-hakuoshi #wq-selector-detail-7 .wq--head .wq--main .wq--name::after {
  content: "必須";
  font-size: var(--font-xs) !important;
  line-height: 1.8rem !important;
  background-color: #fff;
  padding: 2px 2px;
  border-radius: 4px;
  border: solid 1px #de2c0c;
  color: #de2c0c !important;
  margin-left: var(--space-xs);
}

@media (min-width: 768px) {
  .page-aes-hakuoshi .wq--main {
    display: initial;
  }
  .page-aes-hakuoshi #wq-selector-detail-4 .wq-Option:nth-child(n+5) {
    margin-top: var(--space-sm);
  }
  .page-aes-hakuoshi #wq-selector-detail-4 .wq-Option:nth-child(5), .page-aes-hakuoshi #wq-selector-detail-4 .wq-Option:nth-child(9) {
    margin-left: 0px;
  }
}
@media (max-width: 893px) {
  #wq-selector-detail-1 .wq-Option {
    flex: 50%;
    max-width: 50%;
    padding: 0 var(--space-xs);
    margin-bottom: var(--space-md);
  }
  .page-aes-hakuoshi #wq-selector-detail-2 .wq-Option {
    flex: 50%;
    max-width: 50%;
    padding: 0 var(--space-xs);
    margin-bottom: var(--space-md);
  }
  #wq-selector-detail-4 .wq-Option {
    flex: 30%;
    max-width: 50%;
    padding: 0 var(--space-xs);
    margin-bottom: var(--space-md);
  }
  .wq-Form .wq-Option > .wq--label > .wq--main > .wq--note {
    font-size: 12px !important;
  }
  .form {
    padding: var(--space-md) !important;
    border-radius: 0;
    margin-left: calc((100vw - 100%) / 2 * -1);
    margin-right: calc((100vw - 100%) / 2 * -1);
  }
}
@media screen and (min-width: 768px) and (max-width: 894px) {
  #wq-selector-detail-1 div.wq-Option + div.wq-Option {
    margin-left: 0px !important;
  }
}
@media (min-width: 768px) {
  .page-aes-hakuoshi .wq-Form > :not(:last-child), .page-aes-naire .wq-Form > :not(:last-child) {
    margin-bottom: 0px;
  }
  .page-aes-hakuoshi .form .wq-Attributes, .page-aes-naire .form .wq-Attributes {
    margin-top: 0px;
  }
  .page-aes-hakuoshi .wq-Form .wq-Quantity > .wq--head, .page-aes-naire .wq-Form .wq-Quantity > .wq--head, .page-aes-hakuoshi .wq-Form .wq-Selector > .wq--head, .page-aes-naire .wq-Form .wq-Selector > .wq--head, .page-aes-hakuoshi .wq-Form .wq-Slider > .wq--head, .page-aes-naire .wq-Form .wq-Slider > .wq--head {
    padding: 0px !important;
    font-size: 14px;
    font-weight: 700;
    line-height: 24px;
  }
}
@media (max-width: 893px) {
  #wq-selector-detail-2 div.wq-Option + div.wq-Option {
    margin-left: 0px !important;
  }
  #wq-selector-detail-4 div.wq-Option + div.wq-Option {
    margin-left: 0px !important;
  }
}
